- [00:05] DracoBlue (~Adium@ip-vlan-obckunde-02-217-66-60-14.pixelpark.net) joined #rest.
- [00:16] grove (~grove@aggw006.cappelendamm.no) joined #rest.
- [00:16] DracoBlue (~Adium@ip-vlan-obckunde-02-217-66-60-14.pixelpark.net) left #rest.
- [00:21] ivanfi (~ivanfi@62.159.77.165) joined #rest.
- [00:34] KevBurns (~kevburnsj@c-76-126-10-63.hsd1.ca.comcast.net) left irc:
- [00:38] <trygvis> fu-manchu: can't you just have a link with a rel=schema or something similar?
- [01:18] apok (~apok@96.24.67.22) left irc: Quit: apok
- [02:01] tomayac_ (~tomayac@213.61.101.1) joined #rest.
- [02:23] mogsie (~mogsie@62.101.198.35) left irc: Remote host closed the connection
- [02:24] mogsie (~mogsie@62.101.198.35) joined #rest.
- [02:41] <mikekelly> fu-manchu, trygvis : some people are using HAL and making their rels URIs
- [02:41] <mikekelly> those URIs then expose schema docs
- [02:45] tomayac_ (~tomayac@213.61.101.1) left irc: Quit: tomayac_
- [02:50] Wombert (~Wombert@dslb-092-075-029-037.pools.arcor-ip.net) joined #rest.
- [03:09] <trygvis> I don't get it, how would I know if a random URI is the schema?
- [03:18] <mikekelly> trygvis: huh? it's not a random URI it's the link which lead to your getting to the resource in question
- [03:19] <trygvis> I don't see the relation between fu-manchu's question and how HAL would solve his problem
- [03:20] <mikekelly> hold on.. why did you suggest rel=schema ?
- [03:21] <trygvis> to find the schema of a part of the given resource
- [03:22] <trygvis> it could describe the content of collection+json's Data object for example
- [03:23] Wombert (~Wombert@dslb-092-075-029-037.pools.arcor-ip.net) left irc: Quit: Wombert
- [03:38] Wombert (~Wombert@dslb-092-075-029-037.pools.arcor-ip.net) joined #rest.
- [03:48] <mikekelly> trygvis: x_offset = ((x - @bounds[:left]) * @ratio) + (@pointsize) y_offset = ((y - middle_y) * @ratio)
- [03:48] <mikekelly> erm
- [03:48] <mikekelly> woops?
- [03:49] <mikekelly> nothing to see here.
- [05:05] williamstw (~twilliams@apache/committer/twilliams) left irc: Ping timeout: 255 seconds
- [05:07] sbanwart (~sbanwart@99-177-126-136.lightspeed.bcvloh.sbcglobal.net) joined #rest.
- [05:12] gchristensen (~gchristen@unaffiliated/grahamc) joined #rest.
- [05:19] sbanwart (~sbanwart@99-177-126-136.lightspeed.bcvloh.sbcglobal.net) left irc: Remote host closed the connection
- [05:19] sbanwart (~sbanwart@99-177-126-136.lightspeed.bcvloh.sbcglobal.net) joined #rest.
- [05:28] sbanwart (~sbanwart@99-177-126-136.lightspeed.bcvloh.sbcglobal.net) left irc: Read error: Operation timed out
- [05:31] sbanwart (~sbanwart@99-177-126-136.lightspeed.bcvloh.sbcglobal.net) joined #rest.
- [05:33] <mikekelly> I think I need to get a lot better at asking questions
- [05:34] <mikekelly> I have a horrible tendency of second guessing an answer and end up asking a follow up question to the answer that hasn't even been given yet
- [05:55] Split (~split@84.34.147.60) left irc: Ping timeout: 252 seconds
- [06:02] Split (~split@84.34.147.60) joined #rest.
- [06:03] DracoBlue (~Adium@ip-vlan-obckunde-02-217-66-60-14.pixelpark.net) joined #rest.
- [06:03] DracoBlue (~Adium@ip-vlan-obckunde-02-217-66-60-14.pixelpark.net) left irc: Client Quit
- [06:07] DracoBlue (~Adium@ip-vlan-obckunde-02-217-66-60-14.pixelpark.net) joined #rest.
- [06:07] DracoBlue (~Adium@ip-vlan-obckunde-02-217-66-60-14.pixelpark.net) left #rest.
- [06:14] bigbluehat (~bigblueha@nmd.sbx08595.greensc.wayport.net) joined #rest.
- [06:15] sbanwart_ (~sbanwart@99.177.126.136) joined #rest.
- [06:15] sbanwart (~sbanwart@99-177-126-136.lightspeed.bcvloh.sbcglobal.net) left irc: Ping timeout: 258 seconds
- [06:21] mamund is back
- [06:24] tehviking (u2893@gateway/web/irccloud.com/x-kphabrkkakjajxfb) joined #rest.
- [06:41] mephju (~mephju@dslb-188-103-175-105.pools.arcor-ip.net) joined #rest.
- [06:49] <fu-manchu> trygvis: I could use a 'rel' attribute, of course, but that doesn't really answer my original question: should or SHOULD?
- [06:50] <fu-manchu> I'm going with SHOULD unless I hear otherwise...
- [06:50] <gchristensen> mikekelly: http://catb.org/~esr/faqs/smart-questions.html is my go-to on how to ask questions
- [06:50] <fu-manchu> because at least that will make implementers and authors have a chance to stop and think about it
- [07:13] <mikekelly> fu-manchu: out of interest - what is the base type of this new media type ?
- [07:18] <fu-manchu> JSON
- [07:18] <fu-manchu> it's a format for representing questionnaires
- [07:22] sbanwart_ (~sbanwart@99.177.126.136) left irc: Ping timeout: 245 seconds
- [07:29] DracoBlue (~Adium@ip-vlan-obckunde-02-217-66-60-14.pixelpark.net) joined #rest.
- [07:30] DracoBlue (~Adium@ip-vlan-obckunde-02-217-66-60-14.pixelpark.net) left #rest.
- [07:31] DracoBlue1 (~Adium@ip-vlan-obckunde-02-217-66-60-14.pixelpark.net) joined #rest.
- [07:33] <mikekelly> fu-manchu: do you need a new media type for tha t?
- [07:44] ivanfi (~ivanfi@62.159.77.165) left #rest.
- [07:47] <bigbluehat> mamund: sometime you might enjoy checking this app out: https://github.com/bradley-holt/tasked
- [07:47] <bigbluehat> Bradley was hoping to #restfest this year, but didn't make it
- [07:48] <bigbluehat> I've not used the app yet, but it's an AtomPub based Task management thinger
- [07:48] <bigbluehat> if it's good, it might be a good Hypermedia API example
- [07:48] <bigbluehat> if it's not good, there's a fabulous little "fork" button on that page ;)
- [07:49] <mamund> bigbluehat: thanks for the pointers
- [07:49] <mamund> i included a task example in my Hypermedia book based on the Collection+JSON media type (which is very close to Atom/AtomPub).
- [07:50] grove (~grove@aggw006.cappelendamm.no) left irc: Quit: grove
- [07:58] apok (~apok@96.24.67.22) joined #rest.
- [08:00] <bigbluehat> related to the above app: https://github.com/bradley-holt/zinc-app
- [08:00] <bigbluehat> Zend AtomPub basically
- [08:06] <mikekelly> zf is so wack
- [08:08] <mikekelly> si
- [08:08] <mikekelly> n
- [08:08] <mikekelly> c
- [08:08] <mikekelly> e
- [08:08] <mikekelly>
- [08:08] <mikekelly> s
- [08:08] <mikekelly> i
- [08:08] <mikekelly> n
- [08:08] <mikekelly> c
- [08:08] <mikekelly> e
- [08:08] <mikekelly> w
- [08:08] <mikekelly> t
- [08:08] <mikekelly> f
- [08:08] <mikekelly> w
- [08:08] <mikekelly> y
- [08:08] <mikekelly> i
- [08:08] <mikekelly> s
- [08:08] <mikekelly> t
- [08:08] <mikekelly> h
- [08:08] <mikekelly> i
- [08:08] <mikekelly> s
- [08:09] <mikekelly> h
- [08:09] <mikekelly> a
- [08:09] <mikekelly> p
- [08:09] Last message repeated 1 time(s).
- [08:09] <mikekelly> e
- [08:09] <mikekelly> n
- [08:09] <mikekelly> e
- [08:09] <mikekelly> d
- [08:09] <mikekelly> ....
- [08:09] <mikekelly> oh hahaha, was leaning on my other keyboard
- [08:09] <mikekelly> :D
- [08:10] <mikekelly> bigbluehat: is your cms fully ported over to couchdb now ?
- [08:11] sbanwart_ (~sbanwart@66.6.175.18) joined #rest.
- [08:11] <bigbluehat> Mike_L: sadly, no
- [08:11] <bigbluehat> bah
- [08:11] <bigbluehat> mikekelly: no
- [08:11] <bigbluehat> sorry Mike_L…Adium fale :-P
- [08:11] <mikekelly> ..big
- [08:12] <bigbluehat> mikekelly: it's nearly ready as a rendering engine for the JSON formats of the content
- [08:12] <bigbluehat> but not UI yet
- [08:12] <mikekelly> bigbluehat: is the production version on top of zf ?
- [08:13] <bigbluehat> no, CakePHP :-P
- [08:13] <bigbluehat> old decision...
- [08:13] <mikekelly> oh, cool
- [08:13] <mikekelly> oh is that not what all the cool kids use these day s?
- [08:13] <bigbluehat> used CakePHP since before it changed hands from Pies (the original author)
- [08:13] <bigbluehat> I have no idea ;)
- [08:13] <mikekelly> :-)
- [08:13] <bigbluehat> I'm actually not a huge MVC fan
- [08:14] <bigbluehat> I like separation of concerns
- [08:14] gchristensen -> itrebal
- [08:14] <bigbluehat> but am a bigger Unix Way follower than MVC
- [08:14] <bigbluehat> meaning pipes & filters
- [08:14] <bigbluehat> and am wanting to move to much smaller "apps" that do one thing under REST API's
- [08:14] <mamund> bigbluehat: pipe & filter FTW
- [08:14] <bigbluehat> most MVC frameworks tend to introduce some heavy conceptual overhead
- [08:14] <bigbluehat> and often performance overhead....
- [08:14] <mikekelly> mamund: in powershell? -_-
- [08:15] <mamund> ROFL
- [08:15] <mikekelly> bigbluehat: if you call controllers resources and views representations it's not so bad
- [08:16] <mikekelly> then you just need a router that's not shit.
- [08:16] <mikekelly> and you basically have pipe filter
- [08:16] <bigbluehat> yep
- [08:16] <bigbluehat> but it often doesn't look that way when you grab MVC code
- [08:16] <mikekelly> well actually
- [08:16] <mamund> mikekelly: saw a great tweet yesterday...
- [08:16] <bigbluehat> I "get" that now, but didn't when I started
- [08:16] <mikekelly> bigbluehat: it often isn't that's the problem
- [08:16] <bigbluehat> sort of bought in to the full-stack MVC thing, and got tangled in the weeds
- [08:17] <mikekelly> most MVC frameworks get it horribly wrong
- [08:17] <mikekelly> witness ZF
- [08:17] <mamund> "first, open up a shell..." <- "then what?"
- [08:17] <mikekelly> and the shite built on top of it like Magenturd
- [08:17] <mamund> "then all your windows devs are confused!"
- [08:18] <mikekelly> lol.
- [08:18] <mamund> had to laugh since that woulda been me a few yrs ago<g>
- [08:18] <mamund> still deal w/ that every day w/ clients.
- [08:18] <mikekelly> writing a logging daemon in node this afternoon \o/
- [08:19] <mamund> just yesterday someone i was paring w/ asked me (in a pained voice...)
- [08:19] <mikekelly> unix programming is fun
- [08:19] <mamund> "dude, why are you using VIM? can't we just open this up in Visual Studio?"
- [08:19] <mikekelly> hahaha
- [08:19] <mamund> :)
- [08:19] <mikekelly> what was the codebase js ?
- [08:20] <mamund> XML/XSLT, JS, CSS
- [08:20] apok (~apok@96.24.67.22) left irc: Quit: apok
- [08:21] <mikekelly> hehe
- [08:21] <mikekelly> i guess you were driving then?
- [08:21] <mamund> i switched<g>
- [08:23] <mikekelly> haha
- [08:23] <mikekelly> heathen!
- [08:23] <mikekelly> the benefit of becoming au-fait with basic vi is a lot of the tools become a lot more intuitive cos they use the vi bindings
- [08:24] <mikekelly> like navigating a git diff
- [08:35] itrebal (~gchristen@unaffiliated/grahamc) left irc: Quit: Leaving...
- [08:37] grove (~grove@193.201.9.46.customer.cdi.no) joined #rest.
- [08:38] bigbluehat (~bigblueha@nmd.sbx08595.greensc.wayport.net) left irc: Quit: Leaving.
- [08:47] Hakon|mbp (~hakon1@84.202.136.151) joined #rest.
- [08:48] gchristensen (~gchristen@unaffiliated/grahamc) joined #rest.
- [08:51] mamund was away
- [08:51] <mamund> mikekelly: one of the big reasons i finally knuckled down to learn vi..
- [08:51] <mamund> is that now, i can ssh to my machine from anywhere and get some editing work done, if needed.
- [08:52] <mamund> this is esp. helpful when i am at a client location and need to "reach into" my own machine to take care of a few things, etc.
- [08:55] gchristensen -> itrebal
- [09:18] wav1 (~Adium@cpe-70-112-49-11.austin.res.rr.com) joined #rest.
- [09:41] technoweenie (~technowee@host-86-220-9-69.midco.net) joined #rest.
- [09:47] sbanwart_ (~sbanwart@66.6.175.18) left irc: Ping timeout: 240 seconds
- [09:50] <mikekelly> mamund: I think I need a bit of help getting to grips with this profile prorposal that James Snell is talking about
- [09:50] <mikekelly> because the only way I can parse what he's talking about
- [09:50] <mikekelly> is if I think about it as a convention for how to express conventions
- [09:50] <mikekelly> is that right ?
- [09:51] <mamund> yeah
- [09:51] <mamund> or a side-media type thingy
- [09:51] <mamund> layering
- [09:51] <mamund> ?
- [09:51] <mikekelly> is it not fair to think of that as 'very xmly' and 'not very jsony' ?
- [09:51] <mamund> well, if he wants "namespace-y-goodess" - yep
- [09:52] <mamund> xml sure has a history of "piling stuff on"
- [09:52] <mamund> not sure that has served them well on the HTTP front
- [09:52] <mamund> but has worked _very_ well within a single machine/app
- [09:53] <mikekelly> I guess I just don't really see the generalised metadata profile thing as much of a constraint at all
- [09:53] <mikekelly> it's kind of constraining but 'up a level' at media type design phase
- [09:53] <mikekelly> it's not very "practical"
- [09:53] <mamund> well, it's not "as much of a constraint" as a media type proper
- [09:53] <mamund> well, design and implementation, yes
- [09:54] <mikekelly> whereas something like hal or collection+json is actually constraining in a usable way
- [09:54] <mikekelly> also, I think my problem is also that media type specifications aren't consumed by machines - they're human media
- [09:54] <mamund> well, CJ relies on basic CRUD+Query semantics defined in the type
- [09:54] <mamund> but the actual data semantics (what appears in a message, etc.) is documented OOB using a "profile" type document
- [09:55] <mamund> yes, specs are not machine-consumables.
- [09:55] <mikekelly> so is it fair to say that brings into question how useful meta-conventions are
- [09:55] <mamund> sure it does
- [09:55] <mamund> that's really the issue w/ RDF, eh?
- [09:55] <mikekelly> ok good then I'm not just being an argumentative ass.
- [09:56] <mamund> LOL
- [09:56] <mikekelly> INDEED.
- [09:56] <mamund> well, not sure i'd go that far !
- [09:56] <mikekelly> that is the money quote for me
- [09:56] <mikekelly> that is exactly what RDF gets *horribly* wrong
- [09:56] <mikekelly> I don't know all the snazzy words or how to construct that into some architect'y sounding statement
- [09:56] <mamund> well, i've not yet seen any *sane* approach to adding domain semantics for existing media types
- [09:57] <mikekelly> not even my beloved?
- [09:58] <mamund> i don't see domain semantics in HAL. am i missing it?
- [09:58] wav1 (~Adium@cpe-70-112-49-11.austin.res.rr.com) left irc: Quit: Leaving.
- [09:58] <mikekelly> well the mechanism for adding domain semantics is the model hal encourages
- [09:58] <mikekelly> follow a link with some expectation
- [09:58] <mamund> not sure i get that phrase
- [09:58] <mamund> ok
- [09:58] <mamund> in HAL the domain semantics are expressed via the @rel
- [09:59] <mikekelly> i.e. resources don't bite their own teeth - your interpretation as a client establishes semantics
- [09:59] <mamund> and the body itself
- [09:59] wav1 (~Adium@cpe-70-112-49-11.austin.res.rr.com) joined #rest.
- [09:59] <trygvis> mamund: you got to mean echo pipe | filter > FTW
- [09:59] <mamund> well, in apps i write, my servers need to be able to communicate domain-specific infomraiton w/ condifedence clients will undersstand it
- [10:00] <mikekelly> mamund: you mean you tell your clients they can bookmark any URL ?
- [10:00] <mamund> trygvis: < LOL!
- [10:00] <mikekelly> mamund: forget bookmark - use any URL as an entry point
- [10:01] <mikekelly> because, for me, that is implicit in that desire for confidence
- [10:01] <mamund> i provide at least one vazlid starting point URI, usually there are several
- [10:02] <mamund> it's not the SP that i mean, tho.
- [10:02] <mamund> i mean, for representations and transitions....
- [10:02] <mikekelly> so if they're approaching from a link
- [10:02] <mamund> in app i write servers are responsible for telling clients which transitions are valid *at-this-point-in-time-for-you"
- [10:03] <mamund> that means not showing links that are not valid right now...
- [10:03] <mikekelly> sure - that's a matter of setting the context
- [10:03] <mamund> and it means rejecting attempts to activate links (i.e. from a starting point) that are not valid now
- [10:03] <mikekelly> I guess my question is why can you not use rels to set the context
- [10:04] <mikekelly> 'go here (this link) and have the follwoing expectations..'
- [10:05] <mamund> yes, that's what i do
- [10:05] <mamund> i also usually provide templates and forms, too.
- [10:06] KevBurns (~kevburnsj@c-76-126-10-63.hsd1.ca.comcast.net) joined #rest.
- [10:06] <mamund> anyway, HAL *allows* setting rels (and documenting the related data elements)
- [10:06] <mamund> but HAL has none of that data *predefined*
- [10:07] <mamund> there is self and that's it, right?
- [10:08] <mamund> so, you are essentially, documenting a profile when using HAL, right?
- [10:09] <mamund> "here is the list of rel values to expect and the associated data elements that MUST/SHOULD/MAY appear in response representations associated w/ that rel
- [10:09] <mamund> right?
- [10:09] <mikekelly> right
- [10:09] <mamund> so that's a "layer" a "profile"
- [10:10] <mikekelly> profiles seem to undermine the principal of pre-established entry points and discoverability
- [10:10] <mamund> not seeing that
- [10:10] <mamund> why?
- [10:11] <mikekelly> mamund: well the important thing about the profile is it's contained in the preceding link
- [10:11] <mikekelly> not anchored against the resource itself
- [10:11] <Ngarthl> why not?
- [10:11] <mamund> who said that?
- [10:11] <mamund> LOL
- [10:11] <Ngarthl> ;)
- [10:12] <mikekelly> why does it undermine it? beacuse it's hinged on the idea that the resource needs to be able to estbalish its own meaning
- [10:12] mamund has to step away for a while. bbl
- [10:12] <mikekelly> i.e. it could be got to on its own, out of context
- [10:12] <mikekelly> i.e. it's an entry point
- [10:13] <mikekelly> i.e. it's doesn't have to be discovered it can just be 'got at'
- [10:13] <Ngarthl> if the profile is embedded in metadata, then this is in-band
- [10:13] <mikekelly> it's not about beign in or out of band
- [10:13] <mikekelly> it's about not having resources type themselves
- [10:15] <Ngarthl> why shouldn't they do that?
- [10:15] <mikekelly> serendipitous reuse
- [10:16] <mikekelly> and because it's a solution to something that should be a non-problem if you have entry points and a discoverable application
- [10:16] <mikekelly> that invites people to use non-entry URLs as entry URLs
- [10:18] <mikekelly> if your resource doesn't type itself someone can't just jump into the middle of your app, they would have to traverse their way to it in order to know what it meant
- [10:18] <mikekelly> that's how entry points are disinct right ?
- [10:19] <mikekelly> there the only resource(s) where clients should 'jump in'
- [10:19] <mikekelly> they're^
- [10:20] <Ngarthl> you are now having two contradictory statementes: 1. 19:13:33 mikekelly | it's about not having resources type themselves, and then 2. 19:18:00 mikekelly | if your resource doesn't type itself someone can't just jump into the middle of your app,
- [10:21] <mikekelly> why? I'm saying clients shouldn't be able to do that
- [10:21] <mikekelly> they are complementary statements
- [10:21] <mikekelly> "A REST API should never have “typed” resources that are significant to the client. Specification authors may use resource types for describing server implementation behind the interface, but those types must be irrelevant and invisible to the client. The only types that are significant to a client are the current representation’s media type and standardized relation names."
- [10:29] <Ngarthl> fair enough. a representation may still be "typed" in a way.
- [10:31] <Ngarthl> following a link to resource, and its representation could contain a profile of sorts. if a UA does not understand the profile, the underlaying representation still allows serendipitous reuse
- [10:31] sbanwart_ (~sbanwart@66.181.75.251) joined #rest.
- [10:32] sbanwart_ (~sbanwart@66.181.75.251) left irc: Remote host closed the connection
- [10:33] sbanwart (~sbanwart@66.181.75.251) joined #rest.
- [10:58] KevBurns (~kevburnsj@c-76-126-10-63.hsd1.ca.comcast.net) left irc:
- [11:06] DracoBlue1 (~Adium@ip-vlan-obckunde-02-217-66-60-14.pixelpark.net) left #rest.
- [11:10] mamund is back
- [11:10] <mamund> mike
- [11:10] <mamund> mikekelly, Ngarthl: did we sort out this "type" issue?
- [11:11] <mamund> profiles !== "type"
- [11:11] <Ngarthl> yes
- [11:11] <Ngarthl> i thinks so
- [11:11] <mamund> k
- [11:17] <mamund> http://twitter.com/#!/mamund/status/141958558362243072
- [11:18] <mamund> includes link to TOC for "Hypermedia APIs" book.
- [11:20] <wav1> reading it now :) (the book)
- [11:20] nuclearsandwich (~nuclearsa@173.247.193.198) joined #rest.
- [11:23] <mamund> cool!
- [11:23] <mamund> looking forward to any comments/feedback, etc.
- [11:24] <mamund> ok, slightly diff topic....
- [11:24] mamund hopes no one shoots him on this...
- [11:25] <mamund> i am looking to "grok" the SOA mythos.
- [11:25] <mamund> is Thomas Erl and his gang a good/valid/acknolwedged source?
- [11:32] mamund hears crickets
- [11:33] <wav1> ive got this guys book
- [11:33] <wav1> http://www.amazon.com/Applied-SOA-Service-Oriented-Architecture-Strategies/dp/0470223650
- [11:34] <wav1> writes on infoq http://www.infoq.com/articles/RESTSOAFuture is kind of controversial
- [11:42] <mamund> thanks
- [11:43] <mamund> i've had some interaction w/ rosen in the past.
- [11:43] <mamund> wav1: what do you think of the material (the book)?
- [12:16] <mikekelly> mamund: if a profile doesn't type a resource what's it's purpose ?
- [12:17] <mamund> when i write profiles, they contain the domain semantic details
- [12:17] <mamund> and they "map" those details to the target media type
- [12:17] darrelmiller (~darrelmil@70.24.176.11) left irc: Quit: ~ Trillian Astra - www.trillian.im ~
- [12:17] <mamund> profiles include identifying state values of interest...
- [12:18] <mamund> all the transition identifiers (@rel, @class)
- [12:18] <mikekelly> the domain semantic details specifically for that resource
- [12:18] <mamund> domain-specific data names for representations returned, etc.
- [12:18] <mamund> well, not for the profile i write
- [12:18] <mikekelly> so the profile is general across the entire application
- [12:18] <mikekelly> or it's different depedning on the resource
- [12:19] <mikekelly> ?
- [12:19] <mamund> my profiles cover a domian-space
- [12:20] <mamund> i.e. handling a todo list, handling a purchase order, etc.
- [12:20] <mikekelly> right..
- [12:20] <mikekelly> I don't get it.
- [12:20] <mamund> ok
- [12:20] <mikekelly> no offence but.. what's the point ?
- [12:20] <mamund> ahh...
- [12:20] <mamund> to "get something done"?
- [12:20] <mikekelly> well.. you have an entry point
- [12:21] <mikekelly> rel="todo-list" href=".."
- [12:21] <mikekelly> and describe the 'profile' in docs against the todo-list relation ?
- [12:22] <mamund> you asking me how i use profiles?
- [12:22] <mikekelly> well I'm asking what the point of something that's basically redundant
- [12:22] <mamund> ohhh....
- [12:22] <mikekelly> I think I understand how you use it
- [12:22] <mamund> i see, you handle this some other way
- [12:22] <mamund> what way is that?
- [12:22] <mikekelly> I'd link into some 'domain' space with a relation
- [12:23] <mikekelly> and whatever is in your profiles in agianst that domain space link
- [12:23] <mikekelly> once
- [12:23] <mikekelly> it doesn't need to appear in every resoruce beyond that
- [12:23] <mikekelly> it's redundant - the client already knows what domain space its in becuase it navigated there
- [12:24] <mamund> ahhh
- [12:24] <mikekelly> btw I don't ever document an app in these terms
- [12:24] <mamund> so the only thing you are talking about is whether this data should appear in each response?
- [12:24] <mamund> this link?
- [12:24] <mamund> how *do* you document an app?
- [12:25] <mamund> feel free to send sometinng along if that's faster
- [12:25] <mikekelly> the api doc says hello, etc - then invites them to learn about the entry point (i.e. it's URI, it's signififance, etc)
- [12:25] <mamund> mostly interested in structure and general approach
- [12:26] <mikekelly> the doc that explains the entry point then describes the state, links, and embedded resources to expect
- [12:26] <mamund> here's an example of a profile document. http://amundsen.com/hypermedia/profiles/
- [12:26] <mikekelly> s/links/link relations
- [12:26] <mamund> there are "holes" in this one, but the general struct/approach is the same for me today.
- [12:27] <mikekelly> and each of the link relations link the documentation off to another doc describing that link relation in a similar fashion
- [12:27] <mamund> so, you don't include a profile link in each response...
- [12:27] <mikekelly> but basically the documentation has exactly he same structure as the application
- [12:28] <mikekelly> the entry point of the documentation
- [12:28] <mamund> but you *do* include a link to an explaining document in every *link*?
- [12:28] <mikekelly> and then you follow link relations
- [12:28] <mikekelly> mamund: the rels are usually pluggable into some URI pattern yeah
- [12:29] <mamund> oh...
- [12:29] <mikekelly> that's more of a convenience thing more than anything
- [12:29] <mamund> so every rel is either an actual link or...
- [12:29] <mamund> the lcient knows the convention for constructing a valid link using the rel, right>
- [12:29] <mikekelly> it's just a token
- [12:29] <mikekelly> mamund: yeah that's part of the docs for the entry point
- [12:29] <mamund> intersting
- [12:30] <mikekelly> in hal+xml you can do fancy CURIes
- [12:30] <mamund> so you could potentially have dozens of docs
- [12:30] <mamund> do you have one you can share?
- [12:30] <mamund> (offline if yo klike)
- [12:30] <mikekelly> right - and the way you discover your way through the docs directly maps to the way the machine client will discover the app
- [12:30] <mikekelly> mamund: no I don't own any of the services I've doc'd
- [12:30] <mikekelly> and none of them are public
- [12:31] <mamund> so a "newcomer" dev needs to discover all these things and then read the docs as he/she finds them.
- [12:31] <mikekelly> it's kind of annoying which is why I'm working on something
- [12:31] <mamund> ok.
- [12:31] <mikekelly> mamund: riht
- [12:31] <mikekelly> right
- [12:31] <mikekelly> the idea being that they go through the mental model of discovery
- [12:31] <mikekelly> as much as anything
- [12:31] <mamund> huh
- [12:31] <mikekelly> i.e. I don't give them a list of types of resources
- [12:31] <mikekelly> they just get an entry point
- [12:32] <mikekelly> and then gradually they discover the documentation by following links
- [12:32] <mamund> so day one, i need to either get someone else to give me the list of rels, or just go along step by step, discover a new rel in response and then code up that rel's semantics.
- [12:32] <mikekelly> yeah you would write traversal from an entry point
- [12:33] <mikekelly> and follow along with the code you're writing in the docs
- [12:33] <mamund> how can i be assured i "hit all of the possible rels"?
- [12:33] sbanwart (~sbanwart@66.181.75.251) left irc: Ping timeout: 248 seconds
- [12:34] <mikekelly> you can't, presumably you have some objective when you come to the docs
- [12:34] <mamund> the docs?
- [12:34] <mamund> wait
- [12:34] <mikekelly> I could add a feature 2 seconds after you finish your client
- [12:34] <mamund> there's docs, too?
- [12:34] <mikekelly> same difference
- [12:34] <mikekelly> yeah the docs are a discoverable app
- [12:34] <mikekelly> htat's what I've just been describing
- [12:35] <mamund> ok, so that's the same thing you were describing, not a sep doc.
- [12:35] <mamund> ok
- [12:35] <mikekelly> well the doc is spearate from the app
- [12:35] <mamund> so, the key here is you provide no "central" documentation for any "domain" or "app" etc.
- [12:35] <mamund> you provide documentation for rels
- [12:36] <mikekelly> indeed
- [12:36] <mamund> each rel has a doc
- [12:36] <mamund> that doc includes any important semantic details that would help the client deal with the associated response.
- [12:36] <mamund> and it is a guide for servers on how to construct valid responses for that rel.
- [12:36] <mikekelly> yep
- [12:36] <mamund> understood.
- [12:37] <mikekelly> so in my world a profile doesn't really make any sense
- [12:37] <mamund> fwiw, i would *really* like to see some of these in real life
- [12:37] <mikekelly> :|
- [12:37] <mamund> what would it take to get you to share? make up some demo? etc.?
- [12:37] <mikekelly> yeah if I can afford the time - what with all the jibber jabber on google+, IRC, twitter. my job
- [12:38] <mikekelly> tbh I'm trying to get a personal project out of the door which will be very public
- [12:38] <mamund> ok, cool.
- [12:38] <mamund> this will be very helpoful to me.
- [12:38] <mamund> do you know if darrel is doing the same thing?
- [12:38] <mamund> since he's using HAL?
- [12:38] <mikekelly> nah I don't know
- [12:38] <mamund> ok
- [12:39] <mamund> this pattern is not a "requirement" of HAL, right?
- [12:39] <mamund> just your convention.
- [12:39] <mikekelly> but does that explain why profiles seem redundant to me
- [12:39] <mamund> like i use a profile.
- [12:39] <mamund> yes, it does
- [12:39] <mamund> that's what i'd like to leanr more agbout it
- [12:39] <mamund> see one
- [12:39] <mikekelly> mamund: well yeah it's really up to you how you do that - your app could do whatever it wante
- [12:39] <mamund> work with it
- [12:39] <mamund> sure, np
- [12:39] <mikekelly> I don't really see a point in HAL overspecifying app specifics like that
- [12:39] <mamund> agreed
- [12:39] <mamund> i don't make any requirements like that, either
- [12:39] <mikekelly> I have lots of opinions I left out of HAL :D
- [12:40] <mamund> heeee
- [12:40] <mamund> btw - enjoyed the link to the TAO translation.
- [12:40] <mikekelly> hahaha
- [12:40] <mamund> that's good work there.
- [12:40] <mikekelly> I KNEW you were going to mention that.
- [12:40] <mamund> your fmaily is quite deep!
- [12:40] <mikekelly> yeah my brother's a smart dude
- [12:40] <mamund> very interseting interpreation/
- [12:40] <mikekelly> it's not very conventional
- [12:41] <mamund> :)
- [12:41] <mikekelly> he's spent over a year on it so far
- [12:41] <mamund> it's good
- [12:41] <mikekelly> his primary objective is to tranlsate it into as normal sounding words as possible, rather than just try and sound clever
- [12:42] <mikekelly> which appeals to plebs like me, basically
- [12:42] <mamund> :)
- [12:42] <mikekelly> he's slogging through the second half, which he thought would be easier but turns out it's harder
- [12:42] <mikekelly> apparently
- [12:43] <mamund> huh
- [12:43] <mikekelly> so funny - I knew you were going to mention that tao tweet :)
- [12:43] <mamund> ohhhhhhh
- [12:44] <mikekelly> right at that moment I could feel it coming
- [12:44] <mikekelly> chip away at the unnessential and all that :)
- [12:44] <mamund> haha
- [12:45] <mikekelly> the HAL application that can be shown is not the true HAL (application)
- [12:45] <mamund> 0.o
- [12:45] <mikekelly> basically, tao is an awesome excuse for talking nonsense
- [12:46] <mikekelly> which I can totally get on board with tbh
- [12:46] <mamund> oh yeah
- [12:51] mogsie (~mogsie@62.101.198.35) left irc: Remote host closed the connection
- [12:56] <mikekelly> I shall pass on your complements mamund :)
- [13:26] ordnungswidrig (~Adium@178-26-157-0-dynip.superkabel.de) joined #rest.
- [13:43] ordnungswidrig1 (~Adium@178-26-157-0-dynip.superkabel.de) joined #rest.
- [13:47] ordnungswidrig (~Adium@178-26-157-0-dynip.superkabel.de) left irc: Ping timeout: 244 seconds
- [13:49] ordnungswidrig (~Adium@178-26-157-0-dynip.superkabel.de) joined #rest.
- [13:53] ordnungswidrig1 (~Adium@178-26-157-0-dynip.superkabel.de) left irc: Ping timeout: 244 seconds
- [14:11] <mamund> ha! http://lists.w3.org/Archives/Public/public-html/2011Nov/0234.html
- [14:11] <mamund> it's alive!!!!!
- [14:12] <mikekelly> ruh roh.
- [14:13] <mikekelly> katz out the bag
- [14:13] <mikekelly> NAILED IT
- [14:13] <mikekelly> TOTALLY NAILED IT
- [14:13] <mikekelly> YEEEAAAAAAH
- [14:13] <mikekelly> I'm sad.
- [14:13] <mikekelly> sorry.
- [14:14] <mikekelly> carry on
- [14:19] <mamund> LOL
- [14:30] <mamund> ok, it's been real....
- [14:30] mamund grabs his coat and bolts for the door
- [14:41] nuclearsandwich (~nuclearsa@173.247.193.198) left irc: Remote host closed the connection
- [15:09] wav1 (~Adium@cpe-70-112-49-11.austin.res.rr.com) left irc: Quit: Leaving.
- [15:18] itrebal (~gchristen@unaffiliated/grahamc) left irc: Ping timeout: 260 seconds
- [15:23] grove (~grove@193.201.9.46.customer.cdi.no) left irc: Quit: grove
- [15:47] twilliams (~twilliams@apache/committer/twilliams) joined #rest.
- [16:16] Wombert (~Wombert@dslb-092-075-029-037.pools.arcor-ip.net) left irc: Quit: Wombert
- [19:21] nuclearsandwich (~nuclearsa@sjs-mh-wifi-1-1-lc-int.sjsu.edu) joined #rest.
- [20:06] Guest45999 (~scott@78.129.202.63) left irc: Quit: Quit
- [20:06] _scott (~scott@78.129.202.63) joined #rest.
- [20:15] nuclearsandwich (~nuclearsa@sjs-mh-wifi-1-1-lc-int.sjsu.edu) left irc: Remote host closed the connection
- [20:16] nuclearsandwich (~nuclearsa@sjs-mh-wifi-1-1-lc-int.sjsu.edu) joined #rest.
- [20:20] nuclearsandwich (~nuclearsa@sjs-mh-wifi-1-1-lc-int.sjsu.edu) left irc: Remote host closed the connection
- [20:43] mephju (~mephju@dslb-188-103-175-105.pools.arcor-ip.net) left irc: Ping timeout: 248 seconds
- [20:54] mephju (~mephju@dslb-178-008-032-122.pools.arcor-ip.net) joined #rest.
- [22:27] grove (~grove@aggw006.cappelendamm.no) joined #rest.
- [00:00] --- Thu Dec 1 2011