I started programming ten years ago as a hobby. There was a game I wanted to make. I was really just interested in the technical problem of working out the game mechanics. So I read a fantastic textbook about Java and made the basic game as an Android app. I’m embarrassed to admit that I got bored of the project once the difficult parts were finished. I had little desire to turn the RPG into an actual story.
I got a few programming job interviews during that time, but no offers materialized. Then I started working as a podcast editor & publisher, and kept learning web development as a hobby. In 2022, when I’d been unemployed for about six months, I was offered a job as a web developer for a big eCommerce site. I gratefully accepted the contract, and loved (almost) every minute of being a JavaScript developer.
The job lasted two years. When they laid me off I thought it would be relatively easy to get a new job. But the months went by as hundreds of applications went ignored. I obsessively tweaked my resume, to no avail! I worked obsessively on a storyboarding app I’d dreamed up (python and JavaScript, in pywebview), but deep down I knew I didn’t care about the project. It was a whim, and I worked frantically to keep despair at bay.
Research suggested that a LOT of other developers had also been laid off, worldwide. I feared I was competing with more experienced devs, stepping down from heaven to steal attention away from my glorious resume. I was scared. I was sad. And somehow this sadness was associated with a desire to learn more about programming.
I kept thinking about that game that I never finished. I wanted to make it as a desktop application. And I wanted to be a more serious programmer. I had tinkered with Rust and Nim, but they seemed to be alternatives to C++ and C. It seemed weird to learn these newer languages without understanding the beast that had spawned them.
I wanted a challenge. I wanted deeper knowledge. I wanted to be able to stand beside the more experienced devs. I’ve never had imposter syndrome, but I know where I stand. I’m a good programmer, but with limited experience and no formal technical education (although I do possess a prestigious Salesforce B2C certificate, my bachelor’s degree is a journalism major).
When I started reading Programming: Principles and Practice Using C++, I found it was exactly what my brain needed. I know that every programming language has endless depths to plumb, but with C++ you have no choice but to dive deep. There are endless possibilities for doing things better, for structuring your project… and for making horrible mistakes.
I restarted my old game using SDL2. I found the documentation lacking (until I understood how the components interact). Many tutorials are available, but they focus on performing specific functions rather than explaining the basic components. So I asked deepai.org to explain how the basic components work together as a system, and then I was off to the races.
This has completely reinvigorated my love of programming. I love being in a codebase with many problems to solve, a whole landscape of puzzles, a horizon of unfolding solutions. I figured that if I was competing with my betters, I needed to step up.
My biggest problem now is prying myself away from the IDE so I can actually send more resumes…
Leave a Reply