Why I relearned to code
I relearned to code during the covid lockdowns, and none of it was meant to lead to a job. The 're' is real: I had studied it the first time around, Java papers in a science degree near the turn of the century, then a post-graduate diploma in information systems built on the LAMP stack a few years later. But I fell into New Zealand telecommunications rather than development, and that became the career: twenty years working up from the help desk through service delivery to product management, and I had no intention of leaving it. This time I worked through The Odin Project and freeCodeCamp, both free, both built around projects rather than lectures. That is the part that confuses people. Learning to code is supposed to be a means to an end, and the end is supposed to be a developer role.
Every "why I learned to code" post I found told the same story. Someone in an unrelated job teaches themselves, switches careers, and lands a developer role. freeCodeCamp's own much-shared piece is built around exactly that, getting a developer job in ten months. It is a good story. It just was not mine, and I got tired of measuring my reason against it.
There is a softer version that presents itself as the counter-take. The "you don't need to become a developer" listicle: learn a little Python, pick up some SQL, make yourself more valuable to your team, stand out in your field. It sounds like permission to learn for its own sake, but read it again and it is still selling a career benefit. It is CV insurance in a gentler voice. My reason had nothing to do with my CV either.
The real motive was smaller than any of that. I kept having ideas for small, useful tools, and then I would either pay someone to build them or let them go. Neither felt good. Paying someone means the thing exists but you do not understand it, and every change after that is another invoice. Letting it go means the idea just sits there. What I wanted was to close the gap between having an idea and being able to make it exist. Not for money, not for a title, for the same reason people build furniture or restore an old car: to make the thing yourself and know how it works.
The obvious objection now is that the tools have changed. With AI assistants and no-code builders, you can describe a small app in a sentence and watch it appear, so why learn the actual code. Just prompt the machine.
I use those tools every day, so I am not dismissing them. But I have seen what happens when AI is your only builder. You ship things you cannot explain and cannot fix. The first time something breaks in a way the model did not anticipate, you are stuck, because you never understood the thing you were running. That is the same trap as paying a contractor, only faster and cheaper. Learning enough to read and steer the code is what turns "I paid for a tool I do not understand" into "I built a tool I own." The AI still writes most of it. The difference is that I can tell when it is wrong.
I should be honest about where I am, because this is not a graduation photo. I read code at the structural level and follow what a file is doing, but syntax still slips, and generics and async still blur when I look straight at them. "Unassisted" is a slippery word anyway, since even typing into an editor there is always autocomplete and a linter at my elbow. On the live projects I lean hard on AI, directing it, reviewing what it writes, and prioritising what gets built next, so I have not hand-written whole components for anything that ships. I have in the Next.js course, but that is guided typing, closer to tracing than composing. A route built from an empty file on a real project, with no model writing it for me, is still a milestone ahead of me. If you want proof that this turns you into a developer, I am not it.
What I have instead is two things that exist because I decided to build them. This site is one. The Westgate Baptist rebuild is the other, deliberately on the same stack so the two projects teach each other. Neither would exist if I had waited to feel qualified, and neither is something I paid someone else to understand on my behalf.
The reason to start, if you are in a job you like and keep having small ideas you cannot build, is not that coding will change your career. It is that it closes the distance between wanting a thing to exist and making it exist, and that distance is worth closing for its own sake.
Comments