My Self-Taught Coding Journey

I don’t know when it started. Could have been when one of my students asked if he could stay in during recess to practice “Scratch” (a simplified coding program intended for kids) and I saw how much fun he was having. It could have been when I met a guy who was doing freelance programming work and I thought, “Wow, that’d be a wicked way to make good money while being location-independent”. It could have been sometime else entirely, or a combination of them all.

Either way, at some point in 2016, I decided I wanted to learn to code.

I registered for a free online course through Coursera. I did so with a friend who also wanted to dabble in coding. He selected this Python course through the University of Michigan, and I said, “Sure, why not?” If I’d chosen the course, I probably would have spent hours looking at all different courses and reviews, deliberating entirely too much. Having him select the course made it nice and simple.

And so it began – my journey into learning Python and coding.

For a couple months after, I’d been talking about learning to code. When I was in Toronto in December/January, I visited a bunch of coding bootcamps around the city to explore that incredibly expensive and intensive route. I researched online bootcamps, and college and university programs. I ultimately decided to take the self-taught route (for now, at least). And the more I learn, the more I want to continue down this path. I’m prepared for the possibility that, at some point, I’ll decide that this isn’t a career path I want… but right now I don’t see that happening.

I left Toronto at the end of January with travel being a priority next only to learning to code. I arrived in Cartagena, Colombia and spent some time exploring the city, hanging out with fellow travelers, and learning about Colombia. I also became a regular at this lovely cafe where I spent hours each day researching online learning options.

I moved to Medellin and quickly wrapped up this research, putting into place a more concrete plan. I’m working through two Python courses right now, and spending a lot of time writing code that doesn’t work, fixing it, breaking it, fixing it, pulling my hair out, taking a break, and repeating… and in the end having a kick-ass (IMO) program that I built that actually works. Right now, these programs are things like the most basic to-do list and a very simple guess-the-number game, but each program is more complex than the last and they all provide a sense of immense satisfaction when I finally get it to work. (Sidenote: If you want to give my game a try, let me know! I’m happy to send it your way!)

I didn’t intend for this journey to completely take over my life, but it has. I wake up each day and start coding. I end each day coding. I take breaks in between, but this is essentially my life, and I wouldn’t have it any other way. What’s great is that this is an option I’m choosing. No one is defining how much time I need to spend on a task, what I need to learn, or how I need to learn it (though I am limited in the “how” options since I’m not paying anything right now). I can go as fast or as slow as I want. I can change my learning path, decide which projects and courses are best for me, spend as much or as little time as I want learning. Now this is what I call education!

I’d like to post with a little more detail about the process of planning out a self-taught learning path, but for now I just wanted to keep you posted with what’s been consuming my life. I hope you’re following your passions, whatever they may be. Remember, it’s never too late to learn something new!

From Medellín, Colombia,

Hasta la próxima!


Share your thoughts!

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

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

Google+ photo

You are commenting using your Google+ 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