Going all in with SPAs (Single Page Web Applications book)

All development related reviews. Engines, Tutorials, books, ect.
Post Reply
User avatar
Jackolantern
Posts: 10893
Joined: Wed Jul 01, 2009 11:00 pm

Going all in with SPAs (Single Page Web Applications book)

Post by Jackolantern »

To those not familiar, an SPA is a "Single Page (Web) Application", and it moves a lot of the logic from the server to the client. Many HTML5 games are actually SPAs.

After really taking a while to figure out what I want to do, thinking about what kind of development makes me most happy, and considering a little bit about what I actually want to do when I get done with college (it is a small gamble, since even if SPAs are largely a fad, I can always just pick something else up), I have decided to go all in with SPAs. I have always enjoyed doing heavy, real-time client-side JS development, both for games and outside of games.

So I picked up "Single Page Web Applications: Javascript End-to-End" by Michael Mikowski, and have been reading the hell out of it. It has been amazing so far, and I feel like this is what I have been missing! It shows how to structure very large client-side JS applications (one of the things that got me into a ton of trouble with my MUD) safely and neatly, discusses tons of best practices, how to set up the back-end to work as a RESTful service interface, how to make browser features like back, forward and history work as they should, how to make a SPA more SEO friendly, and how to treat client-side application development more like desktop application development.

The book does not teach any JS MVC frameworks (Ember.js, Backbone, Knockout), since it is their view that developers should have a handle on doing it for themselves before picking-up a framework. I tend to agree, and am glad the author lays a foundation in a framework-agnostic way. There are enough books and resources on using those frameworks. The book also uses node.js and MongoDB for the back-end, which works well for me (I am also wanting to dig deeper into node).

So far it is one of the few programming books I have gotten that I literally can't put down, versus all the others I forced myself to read. Part of that is how great the book is and how loaded it is with answers I have wanted for a long time, and part of that is also how much the subject of complex client-side applications interests me. But I highly recommend the book to anyone who wants to build large client-side applications (including games), but wants to learn how to structure Javascript to play to its strengths and keep everything neat and maintainable. I have more than enough client-side messes of my own to prove how out-of-control it can get with no forethought.
The indelible lord of tl;dr
User avatar
Epiales
Posts: 1119
Joined: Thu Aug 15, 2013 1:38 am

Re: Going all in with SPAs (Single Page Web Applications boo

Post by Epiales »

Awesome m8! I"m very glad u found it an interesting find. I gave up on node and JS for the time being. That surprises me b/c I'm a very, very fast learner, and not much of a quitter. But for some reason I still have php stuck in my head. I don't know all of php, but I have learned a tremendous amount here. You guys have been superior here than any other place. Some day though, I may jump into node, js, mongo, and all that fun stuff. You guys make it sound so awesome, and I feel so insignificant when it comes to those things. Unfortunately, I've picked this up at 42 years old. I could only imagine what I could have done 20 years ago with my learning ability. Seriously, I used to read almost entire books from memory. In college I made straight A's and B's because I would record the classes and go home and memorize everything the professors said word for word, to the point, they though I was cheating LMAO. I still remember many of the essays and questions/answers I gave in college about 20 years ago. I love knowledge. My knowledge though was spent with computers. I can take them apart, to practically nothing, and build it from scratch. I never got into the programming side of things until recently. Yeah, a few years ago I designed a social network site and wrote a few chat systems, but then I stopped. I just wish I would have been this enthusiastic about programming when I was younger. But hey, I'm enjoying it now as a hobby. Some day I might finish a working copy of a game. Who knows. But you all would receive the credit if I ever did.

I've been all over the internet searching and getting guidance, but this place is the kudos. Nothing out there like this. I wish I was a rich person instead of disabled, b/c I'd for sure donate for all the help and knowledge here. I still say to this day.. Knowledge is NOTHING if you don't use it. That's what motivates me to learn, and then apply what I've learned.

Anyway, I'm really glad you found a great read. It excites me to know people are happy over little things like finding a great book and learning from it, instead of all the stupid things in life that don't amount to a hill of beans.

Keep up the great work and again, thanks for a great site everyone!
Nothing fancy, but a work in progress!

http://gameplaytoday.net
User avatar
hallsofvallhalla
Site Admin
Posts: 12031
Joined: Wed Apr 22, 2009 11:29 pm

Re: Going all in with SPAs (Single Page Web Applications boo

Post by hallsofvallhalla »

ohhh sounds awesome! Will have to pick this one up. About time for a new book.
User avatar
Jackolantern
Posts: 10893
Joined: Wed Jul 01, 2009 11:00 pm

Re: Going all in with SPAs (Single Page Web Applications boo

Post by Jackolantern »

(lol, just noticed I called it "MongoJS"; too many "somethingJS" things in Javascript today)

Thank you, Epiales! I can understand dropping node. I did several times before finally getting it and running with it. It is somewhat complicated to go to node from PHP because PHP uses a completely different method of development (script/page-based with concurrency handled in Apache), whereas node works more like a .NET or Java application (application-based, with concurrency handled in your code). But it is amazingly powerful for real-time multiplayer games, and about as easy as it gets in that arena because of Socket.io.

And I highly recommend it, Halls. I think you would enjoy it! :cool:
The indelible lord of tl;dr
User avatar
Jackolantern
Posts: 10893
Joined: Wed Jul 01, 2009 11:00 pm

Re: Going all in with SPAs (Single Page Web Applications boo

Post by Jackolantern »

For anyone interesting in dipping their feet in with SPAs but not quite ready to buy this book yet, I found a pretty nice free ebook intro to SPAs that appears to use a lot of the same methodology here. You can read it online, or download a free PDF :cool:
The indelible lord of tl;dr
Post Reply

Return to “Development Related”