09 2 / 2012

Rookies at Work, Part 3: Missing “parts” in the Rails for Zombies course at Code School

As you might know from my previous post, “Rookies at Work, Part 2: Look who I met on the path to computer literacy,” I put Microsoft C# aside because I found Ruby on Rails more appealing as an absolute beginner. Instead, I chose the Rails for Zombies course provided by Code School. It looked like an ideal starting point for a coding rookie… but the first signs of doubt are cropping up.

I reached out to Gregg Pollack, an instructor at Code School, and he encouraged me to share feedback with his team along my learning path, which I’m happy to do in this blog post. If you picked Ruby on Rails as your entry point to coding as I did, read on. You might learn what likeminded rookies struggle with on their path to computer literacy.

While writing, I’m pausing the third section of the first Rails for Zombies course, because I believe three essential parts are missing.

Missing Part 1: Teach by example.
In the Rails for Zombies course, you’re building your first Twitter application. It would be cool if Code School provided a link to an app identical to the one you’re supposed to build. You could then click through it to see which functionalities you’re going to design and implement.

It’s a “Begin with the end in mind” approach that makes it easier for a student to connect the dots. It’s similar to building a house: Your architect might create a miniature model of your home and, in addition, present a master plan with all the functional details, like doors, windows, etc. It’s tremendously helpful to start a project with an example of the desired result. Can you please fix that, dear Code School instructors?

Missing Part 2: The big picture.
In the third section of the Rails for Zombies course, you’re suddenly confronted with HTML and JavaScript, which seem to collude with Ruby on Rails within the application you’re working on. At that point, I realized Code School is not targeting rookies like me, but rather folks with some HTML and JavaScript experience under their belt. This was not clear when I began the course.

I assume other absolute beginners are taking the Rails for Zombies course, so here’s my suggestion: It would be very helpful if Code School provided a big picture overview: “In this course, you will code some elements of your application, such as X, X and X. To build the entire application, you must acquire some HTML and JavaScript coding skills. Which elements of your app do they represent? Well, HTML does X, X and X, while JavaScript does X, X and X.”

If you don’t have the big picture at the beginning, you’re stumbling through the course like a blind mole. It would be’s pretty simple for folks at Code School to fix that and it would be tremendously helpful for us rookies to understand Ruby on Rails in the context of building web applications.

Missing Part #3: Understanding the ecosystem.
“API, Stylesheets, JavaScript Libraries… Really nice Ajax search features…” Wait a second, what are you guys talking about? All these terms and concepts unfamiliar to a rookie appear in the third section of the course like zombies from their graves. Code School can fix this by providing additional homework , for example: 
“These are the most important components you need to know about the Ruby on Rails ecosystem. Become familiar with the following sites: X, X and X and read the following blogs: X, X and X. In addition, look up the following terms at Wikipedia: X, X and X.”

As a beginner, you start with a blank slate. Besides learning to code, you also want to familiarize yourself with the Ruby on Rails ecosystem. Some guidance in the form of additional homework assignments would be very helpful.

That’s it for today, except for one question: What’s your opinion on the length of my blog posts? Previous ones were fairly long, and I’m wondering if you prefer reading shorter or longer posts. If you vote shorter, I can split the content into smaller chunks. Of course, I’m also curious to hear what you guys at Code School think about my course suggestions, along with my rookie compatriots. Just shoot me a line at Twitter @RafaelKnuth or leave a comment in the box below. Thanks!

The picture above belongs to Code School. I shamelessly borrowed it without asking permission to publish. Hope the Code School guys are fine with that! (Please let me know otherwise.)