I've recently seen a lot of interest in people who are looking to learn programming. So I put together a quick guide with lots of help from other people: http://everydayutilitarian.com/essays/learn-code
Let me know (via comments here or email - peter@peterhurford.com) if you try this guide, so I can get feedback on how it goes for you.
Also, feel free to also reach out to me with comments on how to improve the guide – I’m still relatively new to programming myself and have not yet implemented all these steps personally. I'd cross-post it here, but I want to keep the document up-to-date and it would be much easier to do that in just one place.
Solving Project Euler problems, writing command line apps, creating games using Pygame or some JavaScript game development framework (or just a command-line hangman)? Or, even better, some programming project you are interested in for its own sake.
You mean doesn't? Yeah, I agree, my suggestions are not nearly as fleshed out as Peter's. I certainly don't mean to discourage folks like you. I think learning Ruby on Rails is a great idea. I wouldn't suggest that someone who's partway through the path Peter outlined retool for a different set of skills. And once you've mastered one model of programming that will give you a leg up for learning others. It may be that learning Ruby on Rails is currently the best way to master programming just because of the existence of beginner guides like Peter's and coding bootcamps.
If someone is having significant trouble following the route Peter outlined, however, I think I might have something useful to say. If you're using Ruby on Rails to write apps, you'll be using a lot of different technologies (HTML, CSS, HTTP, a database, maybe JavaScript, and Ruby) that interface with each other in weird ways. And Rails is full of magic and shortcuts that make things faster when you know what you're doing but make it harder to form a mental model as a beginner. I think I remember reading that Sinatra was used instead of Rails by at least one of the major coding bootcamps for the majority of the course because it's better for developing a mental model. Rails can be pretty hard for even experienced programmers to master because of all the magic. Point being, if you've having trouble (especially if you're not understanding things as thoroughly as you might like), you could still make a great programmer, and I'd recommend programming some command line games in Ruby, using Sinatra instead of Rails, and mastering technologies one at a time without shortcuts.
Project Euler is a really good tool for getting the hang of a new language, imo. Strongly recommend it to anyone who wants an interesting project that will teach basic skills.
I actually did mean does :) Sinatra is definitely easier to understand than Rails and I agree that if the first code I had worked on with ruby was Rails instead of Sinatra I would have been pretty fucking confused (note that, at least in App Academy's case, the precourse work involves a fair amount of pure ruby). The real benefit of the bootcamps (I hope, anyway) is taking someone fro... (read more)