I’ve tried learning programming countless times. After about twenty posts just like this one, I think I’ve finally figured out why it never seems to stick and I quit after a week of intense study.
I’m an adult and, as such, tend to think about grown up things. Top of mind is taking care of my family, maintaining our household, paying bills, etc. All that stuff we hate thinking about but which keeps us all awake every night. And, like most adults, I have limited free time. That limited free time, combined with all those grown up worries, typically means that I approach learning new things with the thought, “how can I use this to make a little money, advance my career, and take care of my family” in the back of my mind.
So, when I sit down to learn programming, I immediately start looking at professional tools, complex tutorials, and ways to build apps and release them as quickly as possible. Which is nonsense, because I haven’t fully grasped the basics yet. It’s all of that grown up thinking that weighs down the learning process and burns me out before I’ve even begun.
What’s the solution, then?
To approach learning to program like I would learning anything back when I was a kid. To have some fun with it. To sit in awe of a new subject and pick it apart until I understand what’s going on beneath the magic.
To that end, I’m scrapping all of the usual tutorials. Instead of trying to build a Twitter clone or implement an API from scratch, I’m going to spend my limited free time creating wizards and writing my own interactive stories. I’ll be digging into Ruby Wizardry by Eric Weinstein and almost certainly enjoying myself while I do it.
I figure that, once I know the basics and find out if I actually enjoy programming, I’ll worry about all the grown up parts later. Apps can wait. APIs can be saved for another day. Right now I just want to chew on some kid-sized pieces and rediscover the joy of learning something from scratch.
Expect a few articles here about the journey.