So here's what happened...

Shortly after I started Death by Wordpress, I got pulled off the project that had me spending most of my time on that CMS in the first place. My disdain for intent to work on Wordpress — usually by hacking away at it via the plugin API, and all too often having to dive into the core to find out WTF it was doing under there — as highlighted here, hit a brick wall. The hours I spent battling Wordpress during my working hours were the source of inspiration for the few posts that came prior to the post you're reading now (which were originally on No inspiration, no posts.

Meanwhile, I've spent the past year working in a fiery, coding inferno. The project I was moved on to was so bad, it made me want to quit development. I'm not joking. There were (and still are) so many things wrong with the project that I can't help but think that the "architect" — yes, it's in quotes, because imagine that if I were speaking to you in person, I would be using highly exaggerated air quotes — was just taking the fucking piss out of everybody involved in the project. Who in their right fucking mind would think that it's a good idea to build a system that requires you to export all the fucking content, every single fucking time you add or edit anything? In a business that is all about content, that literally depends on and is all about publishing, how could this ever have been considered acceptable? The "architect", I guess, was very good a convincing people that he knew what he was talking about (he was certainly good at belittling and patronising them). He should have been a fucking salesman.

Well...that was aggressive. And rightly so. I lost more hair than I would have liked as a result of being on that train crash of a project and attempting to turn it into something vaguely resembling what should have been delivered in the first place: a platform on which you can create some content, publish it, and have it appear on the website pretty much immediately — you know, like virtually every other content creation platform in existence — rather than waiting an hour and a half for an export to finish that can only be safely done by a developer, or someone tech-savvy enough not to fuck it up.

OK, that got aggressive again. I'm trying not to be, but I've experienced so much frustration and anger, and disappointment, while working on this architecture (if you can call it that; it seems less like it was designed and rather more like a bunch of "cool" technologies were thrown together with some buzzwords, had a piss-up, and then procreated by accident, dumped the offspring, and then the orphaned offspring patched together an "architecture" without having any clue what they were doing... I'm not sure any of that makes sense either, but this illustrates just how little sense the whole thing makes), for so many different reasons, that every time I, or anyone, starts speaking about it, I can't help but spin off into a rant about it.

But I'm going off topic. The point is, the project was a vampire, or a leech, if you prefer. It drained me. I shed energy (and sanity, and sleep) profusely while battling the project. And this was just while maintaining it. When I was tasked with improving it, to deliver instant publishing, things got worse, because in order to do so I had to delve even deeper into the architecture and the code. Horrors awaited me. Obscure bugs that would take hours to figure out, and leave me whipping "FFS" and "WTF" through the air like shurikens, once I finally figured out the obscenity that had caused the bug in the first place.

Attempting to expurgate the project left me with no energy to write, or even think about writing. I was either trained obsessively on resolving some aspect of the work I was doing, or doing everything in my power to purge the experiences of the day from my mind. There was no room for reflection. And it wasn't safe to vent, because venting lead to anger that made my fists clench and seek targets.

But I'm back now. I think I'm in a place where I can speak — or write — about my experiences without wanting to burn the world down (yes, that is seriously how I felt). I'll go into some of the details of this train wreck of a project soon. For now, I just want to say this:

Code has consequences. A poor solution can have a massive impact on the people who are left to live with it. It's not just about the money that get's wasted. More important is the time. You can always regain money, but you can't regain time. Or hair (I don't believe the adverts).

Don't be evil. Don't be a dick. Don't be selfish. Think about the people you serve: your users. Think about your fellow developers, who'll inherit your work. Aim higher. Strive for quality. Don't be one of those people who does just enough to get paid. Those people cause problems. As developers, we're not supposed to cause problems, we're meant to solve them.