The offboarding document
I took over a project in June where the previous developer had left properly, with everything written down, and it was so unusual that I spent the first morning slightly suspicious of it.
25 posts filed under Agency, newest first.
I took over a project in June where the previous developer had left properly, with everything written down, and it was so unusual that I spent the first morning slightly suspicious of it.
I went looking for writing about how developers price their work and found essentially one post, in a field where thousands of people publish constantly and every one of them has to answer this question.
The pattern has a name and a literature, and the literature is about banks with 40 teams, and I have a 40-page site for a firm of surveyors, and the mechanics scale down further than anybody writes about.
This is the third proposal to rewrite the same system in five years, all three from competent people acting in good faith, and the interesting question isn't whether they're right, it's why the proposal keeps arriving.
A site I built in 2018 was serving malware by the summer of 2021, and nobody involved did anything wrong, and that's what I find hard about it.
A project finished about 40% over and there was no change log at all, because in-house doesn't have one. That turned out to be the most useful thing I learned all year.
It was in the proposal as a bullet point, in a list of things we believe in. The client asked what it meant in practice and nobody in the room could answer.
Three going-away parties in eight weeks, all on video calls. Six recruiter messages in one week. I'd rather think about the mechanism than about how it feels.
Moving a store from a server we controlled to one we don't was sold internally as an infrastructure decision, and it is not an infrastructure decision, it's a decision about which problems you're allowed to have.
I said yes on a call last month while a voice in my head was very clearly saying don't. What I'd have needed in that moment wasn't courage.
Three days on a retainer, removing things. The client asked what they'd got for it, reasonably and without any edge, and I did not have an answer ready.
WordPress is the boring right answer for a lot of small business sites, and almost all of the reasons are about the person who has to edit the thing on a Tuesday when I'm not there.
Set in January, written in a document. The site is now more than twice it and nobody broke a rule, because there was never a moment where anybody had to say no.
A client asked whether we could drop Internet Explorer and I said yes, cheerfully, in a meeting, and the next twenty minutes were among the worst I've had this year.
I said an afternoon. It was four days. The gap between those two numbers is a data model I had never looked at properly.
Someone asks how long the checkout will take. What you believe is a lopsided curve with a long tail. What comes out is one number, and by Thursday it's a date in a plan.
A static build is faster, cheaper, safer and better in almost every measurable way, and it keeps losing to a CMS on the one axis I don't get to measure, which is a person changing a price on a Tuesday afternoon.
Clients hand you a solution and call it a requirement, and most of the job is quietly working backwards to the problem underneath it without being a jerk about it.
The testing pyramid assumes your software is mostly logic, and a brochure site is mostly templates, content and CSS, so the bottom of the pyramid ends up testing functions I wrote to have something to test.
A client should own their domain, their hosting, their repository, their analytics and every account their business runs through, and in three years I have met perhaps two who did.
A brief arrives as a numbered list of features, and every line on it is somebody's guess at a solution to a problem that isn't written down anywhere in the document.
Eighteen months on Slack. It fixed several real problems, and I still can't work out why my day feels more fragmented than it did when the tool was worse.
Nobody signs off a list of browsers in week one. So it gets decided in a corridor in week six, by whoever is standing there, and by then it's a concession rather than a decision.
The brief said refresh the look and feel, and the client meant it sincerely, and the reason that sentence is expensive has nothing to do with the look and feel and everything to do with the four years of decisions sitting underneath it.
I have built four of these now and exactly one is still alive. The difference between them was never the quality of the document, it was whether opening it was a decision somebody had to make.