

Single page apps in depth (new free book) - mixu
http://singlepageappbook.com/

======
emilepetrone
I was expecting the book to be on a single page

~~~
callmeed
A book about woodworking doesn't have to be made of wood, does it?

~~~
shill
Actually, most woodworking books are made from wood.

~~~
cnunciato
A day later and I'm still laughing over this. :)

------
pfraze
Gave this a quick skim, matches with a lot of what I've been thinking lately.
I particularly like idea of isolating modules from the DOM so they can be
tested in the CLI-- could also enable reuse on server & client.

Look forward to reading the whole thing tonight.

------
fshen
I'v did some single apps. * <https://trakrapp.com/> (server's certificate has
expired) an issue tracking app. with Backbone, Jquery. *
<http://mei.fm/create> Wwn's online stack editing app. (need to signin to get
full functionality). A team structure the code with the help of Jquery,
Mustache.js, Underscore. * <http://rssminer.net/demo> .yet another RSS reader.
I write it with Jquery, Mustache.js, Underscore.

------
cnp
This is quite nearly the PERFECT book, one that every web developer should
read front to back.

~~~
rudasn
I haven't read through the whole thing [1], but I really like the fact that he
actually discusses different approaches when trying to achieve a goal and
instead of just mentioning them. He has an opinion and is not afraid to
express it and that's good because it encourages thinking and discussion.

[1] Only read through <http://singlepageappbook.com/detail1.html> (on Views)

------
ssn
Don't call this a 'book'. I know it is a great plug but it is simply not true.

~~~
floptikal
It is not a book because...?

~~~
ssn
What distinguishes a book is the 'form factor'. Obviously we are talking about
an e-book. Nonetheless little care has been put into producing a 'book': not
TOC, no index, no page numbers, etc.

(Obviously this is all independent of the content.)

~~~
ezequiel-garzon
These are outdated requests, maybe with the exception of the TOC, which soon
should also be taken care of by technology [1].

Regarding the index, if you are willing to visit the single-page version, a
simple CTRL-F gives you the 70 references to "DOM", for instance. Your modern
browser quickly shows how those references are spread in the document. That is
pretty much an optimal index to me, with an unlimited number of entries,
rendering the separate and physically constrained notion of index obsolete.

And why pages? In today's world of wildly diverse screen sizes and
resolutions, please let the content flow. I remember being led to the wrong
place of a book in my college years just because the edition I consulted
happened to different from the author's, but I found that reasonable in the
paper age. Semantically demarcated concepts such as chapters or sections have
always been referred in this way, and rightly so. If you think about it, page
numbers only helped you locate verbatim excerpts such as "to be, or not to be"
in [2]. A completely valid and efficient artifact of the pre-digital era,
which has now become dispensable, just as indexes have.

[1] [http://dev.w3.org/html5/spec/headings-and-
sections.html#outl...](http://dev.w3.org/html5/spec/headings-and-
sections.html#outlines)

[2] <http://www.gutenberg.org/files/27761/27761-h/27761-h.htm>

------
cardivvy
here is my single page app www.cardivvy.com

its simple app using api to get list of car2go available cars, parking spots,
with a simple Google Map mashup.

it isn't DOM->Model->View structure. its simple call to api to retrieve json
using php and javascript and php/html presentation.

any generalized suggestions about how to do this as DOM->Model->View
structure?

where does the api call fit? in DOM

------
zaphod1984
thanks for the book! currently reading it on my kindle and really enjoying it!

is there any possibility to donate or contribute?

------
heretohelp
I'm a little skeptical from my initial skim of this.

His attacks on using the DOM to store information make me think he's never
know the joy of a clean data-binding setup.

~~~
niels
I'd say databinding is useful for smaller convenience plugins, not for the
architecture of larger JavaScript applications. From my quick skim this book
is spot on.

~~~
heretohelp
It is your opinion that the answer to making a larger JavaScript application
is one big bucket of state Object?

Tell me you've got something better than that.

~~~
danso
Seriously? So you think Backbone.js and the like are just a fad?

~~~
heretohelp
I'm not fond of the way Backbone.js works. It solves none of the hard problems
of making an SPA. (AngularJS is guilty of this too, albeit from a different
angle.)

------
rsanchez1
This is my preferred solution to single page apps:

<http://www.enyojs.com>

