Day #0: A Brief History Lesson
Credit where credit is due. This idea came right from a Tech with Tim video on how to make money from coding. The suggestion was to do a 100-day challenge as the start of a personal brand. So here it is. I’m going to spend the next 100 days learning how to code. The results, both good and bad, will be posted here on my blog for everyone to see.
A Brief History Lesson #
First, we should establish a bit of history. I’m not new to programming, but I’m very rusty and inexperienced in modern coding languages and techniques. More than 20 years ago, I was employed for a period of time as a web developer, building sites with PHP and MySQL. I also built several Windows apps in Visual Basic. Life took me away from coding for many years.
I re-discovered coding about a year ago after re-discovering chess. I’m fascinated by chess, but I was dealing with anxiety when playing real games. (Thanks GothamChess for normalizing that for us all) I turned to the idea of computer chess as a way to enjoy the game and not have to deal with the anxiety of playing against actual people. I played well against bots.
I started poking around and rediscovering coding through various chess engine tutorials. I copy-coded a chess engine in C. I made several attempts to write an engine in Rust. I may revisit this one. After a few weeks, I found myself not interested in coding but only learning it as a means to an end.I wans’t interested in the coding. Coding is impossible to learn if it’s not something you’re passionate about.
Fortunately, I am passionate about learning, and even though my re-introduction to coding was put on the shelf, it’s been recently dusted off and I’m genuinely interested to see where it goes.
Here We Go Again #
The second (or third) bout with coding was ignited by a Dan Martell video. (Seriously, if you don’t know who this guy is, look him up). He has a popular YouTube channel and his content focuses on entrepreneurship, particularly around software development. In several videos (this one in particular) he lays out the steps he’d take if starting over. Step One is to learn a high-value skill. He lists five: coding, content creation, copywriting, project management and sales.
All of those I have done. Meaning I’ve been paid professionally for providing those services, but I’ve never been able to manifest one of them into a sustainable business. I’m not blaming them, but they never worked for me. Despite that, I knew that coding was not an option. Too hard. Too much to learn. Too many people doing it. Wasn’t for me.
Except it’s all I could think about for days after watching that video. I realized that my mistake was writing off that skill for no reason. I love to learn new things. Coding is endless. I enjoy building useful things. Coding is useful. My lifestyle prevents me from building physical things (more on that later), but I could satisfy my desire to construct by doing it digitally. Coding is a valuable life skill that I can teach to my children.
Coding is Really Hard #
Yes, coding is hard to learn. Programming is even harder (yes, they are different). But when faced with a choice between two paths, take the harder one. As the kids used to say, the juice is worth the squeeze.
My goal is to spend three hours every day learning to code. At the end of the day (hopefully) I’ll summarize the day’s progress in a blog post that I will post to my website. I’ll include code examples as written and after 100 days, we can revisit some of them and see how far I’ve progressed. I haven’t decided which other platforms I’ll share this journey on. As you’ll recall, content creation is not an enjoyable process for me. But then again, neither is copywriting, yet here we are.
In hindsight, I’m beginning to understand the key to that Dan Martell video is to not only pick a skill and become great at it but also develop the other four. If you want a job as a programmer, being a great coder is enough. If you want to build something amazing, you need to tell people about it (content creation), describe it in detail (copywriting), keep everything on track (project management), and market it to the world (selling).
This is going to be interesting…