This morning I spent some time using ChooseYourOwnApplication. The web site describes it as:
In this session, you will embark on a "Choose Your Own Adventure"-style project where you will make decisions as you develop a Single-Page Application (SPA). You will make technology choices that include JavaScript or CoffeeScript, Backbone or Knockout, ASP.NET or Rails or Node.js, and Heroku or Azure. When you complete your adventure, you will have a fully-working application built with the technologies of your choosing. The best part is, you can keep coding and recoding until you have not one but many incredible implementations of the Single-Page Application.
I went through the first two major sections this morning. I chose using JavaScript over CoffeeScript, Knockout over Backbone, and Node as a back end. In each step of the process you make small changes to the application and gradually make it more and more powerful.
Overall I absolutely loved it. It was easily one of the most fun tutorials I've ever gone through. I plan on going through it again with Backbone (which has very poor documentation imo), and this brings up my only complaint. From what I can see there is no way to start from an earlier decision. You can only restart at the beginning.
Anyway - check it out and let me know what you think.

Archived Comments
This is fun, but I found a bug in the backbone-javascript route. It's not readily apparent who to contact to report it.
Wow, you are correct and that is kind of a major bummer. As a blogger, it bugs me when sites don't provide a way to contact them back. Maybe we just aren't seeing it (still digging).
Wow, if you go to the company site, even the contact form there is busted: http://www.srtsolutions.com...
For me it says, "Oops! We could not locate your form."
I'm sending an email to the address on the contact form. I'm going to mention your comment and have them post back to you directly.
Perhaps the next adventure should be a contact form.
#snap
Ok, email sent. That's truly weird, but I'm willing to let it slide if they can update the site. ;)
Thanks, Ray!
Sean and Raymond,
Thanks a ton for pointing this out. It was certainly a silly oversite. We've created a google group for anyone who would like to discuss CYOApp further:
https://groups.google.com/f...
We also maintain a Twitter account if you'd prefer that route:
https://twitter.com/cyoapp
These links (and more) have been added to our "Credits" page as well as our landing page.
The person responsible for the SRT contact form is looking at that as well. It was completely unrelated, but made for a hilarious comedy of errors. See, I'm laughing with you! That's how it works :)
Anyways, thanks for the heads up. I also fixed the code typo while I was at it.
Thanks for the fixes and updates Brian, and most of all, for creating such a kick ass app.
Hey - so any chance of being able to go back and make changes w/o starting over? Ie, maybe I want to switch from Node.js to ASP.Net w/o starting a new adventure.
Possible?
Raymond,
That is actually on our short list of new features. We wanted to get it out before we released at CodeMash last month, but it simply din't make the cut. We are hoping to get that feature in before our next conference in April, but with all the billable work we are currently looking at, I'm not sure it will happen immediately.
The best we have for the time being is to create a new adventure, and just fly through the chapters you've already done. At the bottom of every page, there is a "Download Source" and "See This Changeset" link. You can use those to pick up at any point and continue on.
Thanks for the compliments and the impressions! We saw about a 10% increase in our user base today alone!
Cool - very nice to know it is in the works at least. Thanks again for the info.
Allow me to take the opportunity to point out that *this* is the type of responsive development (as opposed to responsive design, of course) that the rapid, non-enterprise web needs, particularly with this type of site. Problem submitted, fix assigned, and reply/fix initiated. Even if it were to take a while to code/test/implement, the direct and non-glazed response to your user base is itself worth its weight in gold, IMO. Thank you for providing a great example of that. If we can minify code, we can certainly simplify the response mechanism for valid user concerns. Great job, guys/gals!
-S