Ever since I started writing on this blog, I've been getting questions from people who aren't programmers – like product managers, sales reps, and people from other domains – questions about how they can learn programming and break into the software industry.
So far, I've been pointing them to an article I wrote last year, that lists all the Ruby and Rails books I found really helpful. It also gives a step-by-step path they can follow to learn enough before moving to the next step.
But over time, I've realized that purchasing books and reading them end-to-end can be a big barrier to many (even though I think it's the best way to learn). To add to that, I've always wanted to do more to teach people Ruby and spread the joy of programming in Ruby with everyone.
A couple of months ago, I moved back to India from Canada, and have started teaching programming to few kids as well as some adult learners who wanted to switch careers. It just feels so good to show them some of the basic concepts in programming and see them start coding in Ruby.
So I thought why not do the same (teach programming with Ruby) on my blog, where anyone in the world can read these articles?
So let's make it official. I am starting a dedicated page on the blog to teach the basics of programming as best as I can, and to give a taste of the Ruby programming language. We will start from the absolute basics but cover (almost) everything there's to not only learn, but master the Ruby programming language, over time.
Check it out here: Learn to Program with Ruby
This page has two objectives:
- Teach Ruby to non-programmers, and
- Spread the joy of programming Ruby with the world (which was one of the original goal of this blog)
So, who is this for?
In contrast to this main blog, which mainly covers intermediate to advanced topics in Ruby and Rails (as I learn them myself), this tutorial is tailored for absolute beginners.
It is primarily for someone who has never programmed before, but wants to learn to program, as well as a practicing developer who wants to learn Ruby.
My goal is to teach the absolute basics of programming, and deepen your understanding of the Ruby programming language. Not only to learn, but do it systematically, in public and to explain it in simple words to others, to be consistent with the ongoing theme of this blog.
Even if you're a practicing Rails developer, I still invite you to take a look, as I believe that we can always improve, grow, and extract more out of our education.
After learning and writing everyday for two years, I've realized that any topic, no matter how basic, can be made much more interesting if you dig deep enough.
Sometimes, when you look at things again with a fresh pair of eyes, you end up learning stuff you never knew before. I for sure have learned a few more things about Ruby that I didn't know before, while writing the first draft.
So I invite you to have a look, and let me know what you think. If you know someone who is interested in learning to program, but doesn't know where to start, please point them to this page. I welcome any questions you have, no matter how basic they are.
Let's learn to program!