-
Notifications
You must be signed in to change notification settings - Fork 1
Description
As much fun as nap is, we aren't doing a good job explaining why the resourceful architecture is a Good Thing™. It's tricky to explain as well, and because there are multiple concerns – often times cross cutting – that nap tries to tackle it's tempting to compartmentalize them and so it often becomes an almost academic discussion, for lack of a better description. There's no 10-second soundbite that really captures the essence of it, and "organizing your application to adhere to the six contraints of REST" is, well, not very palatable.
To that end, one idea is to implement a reasonably complex application – something you might find in the real world, so no to-do app – which can then be used as sort of a reference project to discuss various different subject matters. Such topics might include the simplistic view of things, like "how do I render a view?" or "how do I get data?"; to more complex topics like "what's content negotiation?" or "how do I drive a client using hypermedia?"
Its not entirely clear to me what that application might be, but we should probably take this opportunity to come up with some requirements for it and maybe we can work our way backwards from there to figure out what a suitable fit might be. I do think it's important that it's an actual real-world thing with some purpose, and not just a contrived hello-world style example. It'd also be good to pick something that's not too esoteric, so that there are good products out there that we can be inspired by and not be spending lots of time figuring out UX or features.
Some random ideas:
- A chat application, much like Slack or HipChat. Reasonably complex, covers a lot of topics and not least tackles the problem of realtime streaming. Also offers up an opportunity to demo a server side aspect. (See Isomorphic/universal operation #15.)
- Email. Again reasonably complex, and kind of similar to chat albeit perhaps less realtime and sort of less social. Plenty of
- A game of some kind. Games often lend themselves very well to the notion of splitting things up into resources, and can also present good opportunities to discuss hypermedia. Consider a small puzzle/adventure game, where interactions and affordances are all hypermedia driven, such that the actual application becomes small and is driven by the data. Perhaps difficult to scope and come up with ideas for though, unless we blatantly steal some simple game. (Like LIFE or Jones in the Fast Lane for example.)