I’ve recently had a hard time finding motivation. Not in all areas of my life, just in one that is close to my heart - programming. The story I commonly recite is that in the seventh grade, I was given an 11-inch MacBook Air at school as part of a learning initiative. This laptop ended up inadvertently changing my life forever. That device almost singlehandedly got me interested in programming, and gave me the skills that years later allowed my high school robotics team to achieve victory, and later gave me a career. This device meant everything to me, but it wasn’t the device that was valuable, it was the things I learned on it.
I remember I started off slow. Some Codecademy, then learning JavaScript, then Python. My love of programming was growing, and I even made various custom applications in my teens to make some money (through selling the software). All of this later blossomed into the start of my career during my early twenties at a web agency and then later in government.
All of this context is important to understand that I have been programming as a hobby for a while now. I have loved every moment of it (well, almost every moment of it). I still get chills when writing a particularly efficient bit of code.
The rise of Artificial Intelligence in software engineering cannot be overstated. It’s seemingly replacing almost every junior software engineering position you can imagine. To some degree, I get why. Fire up something like GitHub CoPilot and it becomes apparent that 90% of the gruntwork junior engineers used to do can be automated away in a few keystrokes now. It now seems almost taboo to write code by hand in this environment now that an HR person can just vibe-code an entire CRM (albeit not well).
I can confirm from first-hand experience that these tools are wonders, and we’re going to have to figure out as an industry what the new junior-level work should look like lest we lose an entire generation of engineers. With all of this in mind, I still love the simple elegance of writing code by hand. To me, and many of you reading this, there is an art form to it.
I was having a conversation recently where I talked about this motivation problem. My basic argument was this: why should I write code for fun, when the machine can do it for me? I understand that at this stage in AI’s development, this is a bit of a fallacy, but it is truly how I felt at the time. They brought up an interesting thought: just because AI can generate “art”, that doesn’t mean that you can’t enjoy making art. This took me aback for a minute, and I had to take some time to think about this. We’ve had cameras for nearly 200 years, but people still pick up a paintbrush. The existence of a more efficient way to capture a landscape didn’t kill the joy of mixing colors on a canvas. For me, manual coding is becoming that canvas.
Through this lens, there is nothing wrong with desiring to write code by hand. It can still be fun, and AI shouldn’t be something used to demotivate an individual. While I think the ship is sailing when it comes to paid work in the profession without the use of AI, you can still maintain the hobby for personal enjoyment.
There is an unexpected upside to the hobby of programming in the age of AI too. I find it to be true that I enjoy the hobby less than I used to since spending 40 hours a week on it. My desire to program recently has gone up though. Why is that? I posit that the reason is that AI is lifting the burden I have on a day-to-day basis when it comes to my work. This is differentiating it enough in my mind that it feels like a different task altogether. There is always going to be some overlap between programming, and using AI to generate code, but that largely feels like different tasks. In essence, AI takes the labor out of the job, which leaves love for the hobby
Much like many of you, I have fears about the long-term survival of the industry. I like to keep in mind that other industries have evolved, and so too will programming. It will become a more enterprise-focused, mature industry. That may scare some of you, but I think it’s high time that programming loses its extreme ups and downs. I want stability in this industry, and I believe that will come. In the meantime, don’t forget to enjoy a side project or two along the way.