Two and a half years ago, I started doing every computer science and web development tutorial I could find. If I were starting again today, knowing what I now know, I’d do it something like this.
Start with the basics of computer science and programming.
- Introduction to Computer Science I, David Malan, Harvard Extension School
- Understanding Computers and the Internet, David Malan, Harvard Extension School
- Introduction to Computer Science and Programming, John Guttag, MIT
- Introduction to Electrical Engineering and Computer Science I, various instructors, MIT
- Introduction to Computer Science (CS101), Building a Search Engine, David Evans, Udacity
Understand the fundamental interaction between your computer and the internet.
- Building Dynamic Websites, David Malan, Harvard Extension School
- cURL project
- Charles or Live HTTP Headers
Learn about databases and how to search them with SQL.
Learn the basics of Rails with RailsGuides. And, then get deeper with Ruby on Rails Tutorial: Learn Web Development with Rails, Michael Hartl. Watch Railscasts for detailed lessons on implementing Rails.
- jQuery tutorials
And some other fun stuff.
That’s the plan. I wouldn’t stick to it strictly. That’s what makes it so much more fun to learn with less structure. I’d bounce around as I find things I’m interested in. I’d fast forward through the less interesting parts. And, I’d build stuff whenever I could. While I’m doing all this, I’d be reading Hacker News, searching Google and stackoverflow for answers to questions that arise, and checking the documentation of whatever I’m learning.
I hope this is helpful for someone.