There’s no shortage of resources when learning to code and one of the toughest parts of learning anything new is knowing where to start. I am, by no means, an expert on the best ways to learn programming, and there’s still tons of great stuff I’ve yet to discover, but from my journey thus far, this is my list of favorites:


1. Learn to Program- Chris Pine
This is, imho, one of the best “introduction to programming” books and is a great place to start. The book reads like a friend is mentoring you, lots of great metaphors and examples. I read this cover to cover in Thailand before I read anything else and felt it gave me a great foundation for the more exhaustive tomes to come. I’ve heard repeated recommendations also for Learn Ruby The Hard Way (which has books in other languages) but haven’t read it.

2. Eloquent Ruby- Russ Olsen
A fantastic intermediate pure Ruby book. Opens your eyes to the possibilities of the language.

3. Practical Object-Oriented Design in Ruby- Sandi Metz
A great primer to OO development. Really helps you understand why and how you should organize your code. (Design Patterns would be a good next text, it’s a classic, but it’s pretty advance and dense.)

This a really thorough ruby on rails reference. Challenging, but awesome


This is *the* resource when you’re gearing up to interview, but even if you’re not, the comprehensive list of programming algorithms gave me a much deeper understanding of the syntax and science behind the code. Could not recommend more highly.
6. HTML & CSS- John Duckett
 Pretty and well-organized, but now it’s out of date, so you should complement it with this Flexbox article and this CSS reference After this, just keep up with the mind-blowing tech demos on Codrops (like and you’ll always be on the cutting edge of HTML/CSS/SVG.

Things of the internets

Hands down my favorite online tutorial. Whether you’re completely new to programming or just picking up the basics of a new language, they’ve found a great sweet spot in how to teach the material.


2. Programming Ruby
As someone who is OCD about the nuances of a syntax, this was my bible. This was the first thing I read that really got me over the first learning curve and started providing context for all the moving parts. Love. this.

3. Rosetta Code
Another OCD love, Rosetta Code solves common algorithms IN ALMOST EVERY LANGUAGE. Since I was learning ruby on rails, which has a vast and magical library of built in functions, this was how i compensated.
This site gamifies coding problems and is highly addictive. One of the first coding problems I really attempted was a “go through a list of numbers and say if it’s prime or not.”. I was so proud of my unnecessarily verbose 56 line answer (which worked great!), until I saw that someone had done it in… one line. I was hooked after that.

Version control is one of the more difficult concepts to master and it looks deceptively easy… until you have your first rebase nightmare. I did many many many many tutorials and this was my favorite.

5. Git the simple guide

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s