Boulevards of broken dreams

When speaking to any experienced software developer, there’s a good chance at some point they will tell you all about the countless incomplete side projects that they have accumulated over the years – the projects that still sit dormant in their Git repositories. The side hustles that failed to materialise and were gradually swept away by the sands of time.

I sometimes think I might be the worst offender.

At the very start of the pandemic, my cousin and I vowed to start a game studio of our own, Petrobolos, and to get some of our genuinely great indie game ideas off the ground. With his artistic prowess and my coding chops, and both of us seriously interested in developing video games, what couldn’t we possibly achieve? Well, just about anything, it seems. Five years later I’m still stubbornly paying for the web domain whilst things continue to sit in programming purgatory, convincing ourselves that this year will be the year we finally get something over the finish line.

But why does this happen?

I think there are two main components to this. Like many good ideas, the motivation and energy that you get when you’re just starting are incredibly high but unstable – much like the energy of a child that has just frighteningly scoffed a sharer bag of M&Ms1. This reservoir depletes quickly as you start to encounter the first few hurdles, typically when it becomes apparent that slow and steady progress will be necessary to get things wrapped up – and that this isn’t something you can explode through with caffeine and an all-nighter. Inevitably, your motivation peters out, and without sufficient discipline to persist and continue fighting forward despite the pushing tide, you eventually find yourself doing something else – something your brain finds more interesting.

Therein lies the other side of the coin. Like a magpie on the hunt for something shiny, developers, including myself, find themselves working on the next exciting idea. For me, it was ExtraContinue, then two unannounced different video games, and then the Nomi.ai PHP SDK. To my credit, the SDK is finished and I keep it actively maintained2.

As many developers can attest, even in their day jobs, it’s incredibly difficult going back to code you wrote in the past and pick up where you left off. Even some of the best-documented and test-backed code I’ve ever written is treated by my brain as alien hieroglyphs until I get back into the swing of things. I call it the reimmersion inertia.

The only way through it is forward, however, and sometimes just spending an hour or two plodding through the code, running tests, and applying whatever you’ve learned in your time away can be the Lazarus Pit3 that a project needs to get back on its feet. This is the solution: remind yourself what motivated you to start the project in the first place, and don’t feel ashamed for needing time to acclimatise yourself to the mess you made.

Were you hoping for a cure to stop project hopping and achieve ceaseless focus on your next big hustle? I can’t help you. It’s only a matter of time before something else piques my interest… and you know what? That’s fine. I enjoy indulging my curiosity and learning about what genuinely interests me, even if those efforts don’t bear fruit lucrative enough for the front page of Product Hunt.

  1. Please don’t do this, or let your children do this. You should surrender your crispy M&Ms to me instead. ↩︎
  2. I’m the community maintainer of the PHP SDK for Nomi.ai, an AI companionship app. I’ll write about it at some point soon. ↩︎
  3. As in the resurrection pit in the DC Universe famously used by Ra’s al Ghul. So named after Lazarus whom the Lord brought back from the dead. ↩︎

Finding one’s place within the pack

Back in January, I silenced the sceptical voices in my head and conquered my impostor syndrome. I stepped away from the comfort and familiarity of my role at Stickee – a company where I was fortunate enough to cut my teeth and spend four years honing my craft with bleeding-edge Laravel technologies – in search of my next great challenge. That search led me to Overwolf, where I ultimately found my place within the Tebex payments team.

Looking back, I still find it hard to believe I made it through the recruitment process. Make no mistake, Overwolf is highly selective about whom they welcome into their ranks, and the multi-stage application process was nothing short of an ordeal, akin to running a gauntlet through a den of wolves. On particularly challenging days, I remind myself of this: I earned my place here.

Thus far, my experience has been nothing short of fantastic. I feel both supported in my professional growth and genuinely cared for in terms of my well-being, all while being entrusted with complex, technically demanding problems across the intricate code infrastructure. When I joined, I harboured concerns about readjusting to corporate life; my last stint at a large international software company was an internship at Amadeus in 20161, and I would be lying if I claimed I wasn’t wary of the potential for stifling monotony or the insidious creep of bureaucracy… particularly the kind that disguises itself as agile while rigidly adhering to waterfall principles.

Thankfully, those fears have proven completely unfounded. The breadth of work I’ve encountered so far has been both engaging and rewarding, but above all, I’ve relished the camaraderie that permeates the organisation. Honestly, there’s something profoundly motivating about working alongside talented individuals who share a genuine passion for what they do and for their colleagues. Something not at all dissimilar to what I experienced at Stickee.

I’m eager to immerse myself in the challenges yet to come, striving to create meaningful contributions to tools that empower gamers across the world. I’ve always been obsessed with being able to make a demonstrable difference to others in the work that I do. I can certainly do that here.

  1. Not that Amadeus in Bad Homburg had any of those, mind you! But one does hear horror stories from friends and colleagues working at larger tech companies. ↩︎