Don’t laugh, but I’m currently obsessed with those tacky car renovation programs on Netflix. Rust Valley Restorers being the latest viewing. I really love it, because they take the most decrepit cars and bring them back to life, in a big way.
Plus they’re always talking about their ‘shop’. They are promoting the shop, working at the shop, hiring and training staff at the shop, returning to the shop, hating on the shop.
My daughters dislike Rust Valley Restorers, even though it would be excellent bedtime viewing. But in many ways, it really encompasses what I want out of my professional life.
Often, after daddy daycare duties, I refer to going to ’the shop’ (upstairs office) to ‘code the Linux kernel’ (usually C# .Net, although they don’t know the difference). I imagine the coding equivalent of cutting out panels, welding, sanding and painting. A totally awesome pastime, but sadly, neither daughter seems interested in an apprenticeship in my shop. Not yet, anyhow.
When Work Became Craft
At some point, my profession became a vocation, and work stopped being so much about earning a living.
Instead, software development (extending into software requirements and business analysis) became something more akin to a craft or a skill. Something to practice, refine, and discuss philosophically with others. Having a community of like-minded people to do this with really helped.
This shift changed everything about how I work:
- Job mindset:
- Do what the client asks, take the paycheck, move on.
- Craft mindset:
- Say no to requests that compromise quality. Recommend what actually works. Take pride in the outcome, not just the billable hours.
Mike and Avery from Rust Valley Restorers don’t ask the customer how to rebuild a big block engine. They know their craft. The customer trusts their judgment or goes elsewhere.
The Freedom of Specialisation
I’m no longer interested in (or at peace with) the whole inside/outside IR35 waste of time. I’m pretty sure Mike, Avery and the Rust Valley Restorers aren’t either.
Regardless of what tax wrapper the innovation-killing UK government wants to impose, clients hiring Frank Ray still get the same thing - craftsmanship and a vocation beyond a salaried paycheck.
Nice looking branding and a clever Ltd company website are no longer necessary to ensure the control I require for good professional workmanship. Instead, I simply say ’no’ to any requests that may compromise quality.
Why should the client tell you how to install a new transmission or rebuild a big block engine? Why should they tell me how to structure requirements for offshore teams or design a BA process?
It’s a completely new approach from my previous day rate contracting. My shop sells what it sells. Most clients really benefit from what I do best. A smaller number of clients should probably buy from elsewhere.
What Software Craftsmanship Actually Looks Like
Treating software development as craft means:
You develop expertise, not just skills. Anyone can write code. Craftspeople know which patterns to use, when to refactor, and when to leave things alone. That comes from years of practice and reflection.
You care about the outcome, not just the output. Writing 1,000 lines of code isn’t craftsmanship. Writing 200 lines that solve the problem elegantly and maintainably: that’s craft.
You say no to bad work. The hardest part of craftsmanship: turning down projects that would compromise quality. Rust Valley Restorers won’t restore a car if the frame’s too far gone. I won’t write requirements for teams that ignore them.
You build a community of practice. Craftspeople need other craftspeople. To learn from, to challenge assumptions, to share techniques. Software development works best when it’s collaborative and reflective, not isolated and transactional.
You charge for expertise, not time. Day rates reward presence. Craftsmanship deserves premium pricing because you bring judgment, pattern recognition, and years of refined skill.
Surrey Valley Coders
Perhaps Netflix will make a series about my ‘shop’ one day. Surrey Valley Coders would be a good title.
It would show the reality of treating software development as craft: the boring parts (reading documentation, refactoring legacy code, writing clear requirements), the satisfying parts (watching offshore teams deliver quality because the requirements were actually clear), and the philosophical parts (what does ‘good enough’ really mean?).
Not as dramatic as cutting metal and rebuilding engines. But the mindset’s the same.
Finding work you care about enough to call it craft; that’s worth more than any IR35 determination or day rate negotiation.