Learning to code, I struggled with whether I was legitimate. There was a threshold of knowledge I needed to cross to be validated as a real programmer. By the way, I never crossed that threshold. I just stopped giving a shit. Among all the job titles I've had in my career—developer, engineer, idea engineer, experience architect, architect—each triggered my impostor syndrome. Perhaps the most honest title was the one I hated the most: "software integrator." In the end, that's what I (we) do the most. I integrate software to make solutions. It's rare to get an opportunity to design and code something from scratch. There was always a jQuery Plugin, a Ruby Gem, a Composer package, an NPM library.
Today I was tinkering with an idea I had for adding MIDI background music to the site. As it happens, you can't simply play a MIDI file in an audio HTML tag. A MIDI file doesn't contain audio data. It's a sequence of instructions: "play note C4 at velocity 80 for 200ms on channel 1." In order to play MIDI on a website, you need, at least, a parser to read the score, oscillators to be the instruments, and the Web Audio API timeline as the conductor. Hell of a project for such a simple ask, and that's why there are plenty of JavaScript libraries that do just that and more. But in the name of the rebellious spirit of this site, I should take on building my own MIDI player that works exactly as I want. To be an extension of my digital self and an expression of me.
What was intended to be a space for experimentation turned out, once more, to be an integration job. Only this time, instead of installing an NPM library that sort of does what I need, I prompted Claude AI to build the library to spec. For most of my career, I found the available tool and bent my vision to fit it, compromising along the way. Now I start with the vision and prompt for personal software that aligns with me. The cliché democratization of creation. Liberating. This is better. This is the closest the execution has been to the idea. It also dilutes the essence of what I thought made me a programmer, or maybe it's my impostor syndrome talking. Did we romanticize the craft too much? I doubt line workers had existential crises when they traded the hammer for the machine that swung it—at least those lucky enough to keep a job as an integrator.