Weeknotes 09×01: Is this craft seaworthy?

Craft and structure: The Spinnaker Tower and HMS Warrior in Portsmouth
Craft and structure: The Spinnaker Tower and HMS Warrior in Portsmouth

Where is my head?

  • A weeknotes wilderness – it’s been a few weeks since posting, but I’m not really counting. Everything feels blurry, and I have disparate notes entered into my pixelated diary. If August is haystack month where everyone is in holiday, October is anything but Stoptober, work wise. I felt the equinox slam into us, and the slowly shortening daylight gives an urgency to human activity. Welcome to series 9, I guess. We’ll see if there’s time.

  • In big news, perhaps, I have found my “craft” which I lovingly speak of so often, like dreaming of an island to retire to. A post on creativity and a chat on “developer PTSD” have given me a mirror onto what I’m trying to do. It is bigger than I thought, but not unexpected. It is not solely the act of coding, nor solely the act of managing people, nor of keeping up with technology or any of those things. It is not even the sum of all of these things, but the multiplication of them. The whole-system view of making innovation work, and it is impossible to decisively separate out code practice from team process from individuals from user needs from risk from passion. It sounds like a craft without boundaries, but really the boundary is simply “innovation that works”.

  • The practice of this craft mostly comes down to the fact that one person can’t do everything. This is embedded into software engineering anyway – why do something when the computer can do it for you? As such, software engineering is the me challenge as team engineering, cultural engineering, process engineering – how do you configure a space to allow things to flow within it? This is tai chi at its core, too. Everything becomes about space and structure.

  • Which is why it made me laugh out loud when Sam referred to me as “King of Anti-Structure”, at least for weeknoting – check out her great list of weeknote structures here. I must write something separately on this, but yes, it is related. Exploring through chaos helps us find links and patterns. Finding those patterns is key to developing our own structures. Structures are always restrictive, and chaos will regrow like weeds. The cycle continues.

  • Processes and rituals are nothing without understanding. I wrote that earlier, then coincidentally read Catherine Howe’s latest post on dogma and change, What happens if no-one is right? In any network, there are people with one set of processes, people with another set, and these both reflect two separate modes of understanding/organisational memory. There are then two forms of “meta” actors – which may overlap: 1. Agents of change, who seek to adjust and overhaul a certain set of processes, and 2. Dot-joiners, who seek to merely bring different mindsets/tribes/teams together.

  • A weekend trip to the flagstoned dockyards of Portsmouth’s past, where the Victory stands proud against the rain while the Mary Rose slumbers. These craft are almighty, culminating in the brutal Victorian ambition of the iron-boned HMS Warrior, caught between the eras of sail and steam. I’m affected by the engineering that happened, the interplay between ship design, the time’s modern technology, and the gall of crew sizes of 700-plus. The craft of craft.

HMS Alliance submarine in Portsmouth
Below the surface: HMS Alliance out of her natural habitat

What has actually been happening?

  • I had to return to some very old Visual Basic code that is still in regular operation. Internal tools really don’t need to be updated to be tech, unless they’re either not working properly for process, or they’re dependent on something that changes rapidly. Visual Basic and Excel are bizarrely very “stable” platforms (and SQL, of course). Much more stable than ancient IE’s proprietary code. When choosing tech, always try to avoid anything that mixes proprietary functionality with a set of standards – one will always be discarded soon. VB and Excel are happy, isolated beasts with their own agenda.

  • The last few weeks have really seen a switch in my own tech involvement. The dev duo, in conjunction with the whole company, are working on a huge migration (“the most complex thing we’ve ever done” as I think I put it) and are knocking it out of the park. I’ve picked up on a few headier details, but otherwise handed it over.

  • This has meant I’ve been freer to do more planning around it to try to arrange work vs deadlines. A simple Google doc with a table in it has been good – no GANTT charts here. Just rows per sprint, with dates and comms deadlines. It’s raw, and duplicates data from elsewhere, but possible because the team is communicating constantly and solidly. In fact, this is possibly the most “agile” we’ve been as a team – a lot of things on parallel streams are being discovered as we go, extra work has been added, work has been dropped, and everything’s been re-ordered a dozen times. The original September release date was definitely optimistic, but we’re slipping in a controlled, communicated way. Deadlines are being fully committed to now though, so our risk is that we’re complacent, and miss something big.

  • I’ve also found some time to start looking at code with Emma (senior researcher) who would like to learn more. Again with the structure – a codebase as a whole, especially an old one in a language you don’t know, is really daunting. So my main work here was to work out how it worked (🤔😬😲) and then not just fix it, but carve up the changes needed into a set of smaller challenges. Going through and setting up some empty function calls with Emma helped this dissection, and we were able to work on different bits separately, then bring it all together quickly. I forget what it’s like being a new coder, but it really doesn’t have to be tricky or scary.

  • As part of focusing on the bigger craft, I’m also trying to work out how to “refactor” a few other responsibilities. This doesn’t always mean just offloading work onto someone else – sometimes it means going back to the drawing board and working out a different way to do it. I have a useful chat with the Management Team on how my/the Product Owner role could/should look different, and chat with Luke and Emma on clearing up and handing over reigns on our USA work. In both cases, the aim is to open up the work to others, as I think we’ve become overly-dependent on a small number of people for these (ie 1-2 people each), which risks isolation and bus factorness. I can also see an increased need to use that new craft in new ways in a year or so, and now, with so many changes in people, is a good time to do something about it.

  • The train was cancelled one morning, but I use the time to clear out my immediate inbox (OK, inboxes plural – I might have 3). Takes me half an hour, but I end up booking myself in to a new, daily email slot, 12-12.30. Does it work? No. Am I going to carry on with it? Yes.

  • Management Team meetings feel a bit double-edged – I suspect I tend to use the time to raise things I think are important to just keep in our collective conscious, but usually I don’t have much of a plan beyond that, which risks agenda items being a bit vague, at least to begin with. But conversations to explore an idea are always useful, for me. Maybe I’m just “good” at exploiting other people as sounding boards, but perhaps these meetings aren’t the best place for it? … Maybe I can pick these up in more 1-1 conversations though. I don’t know, everyone is pretty busy.

  • On a positive note – everyone except John (who was ill) was in the office on Monday, and we welcomed new data analyst Mary to the team. There was a crazy buzz of people which is rare, as most people work remote or part time, and I always get astonished that I’m in a position to give people a job/career, and that my code weirdly supports or gives people some sort of “life”, and even this sense of… “belonging” that gets created as part of a small company. Seriously, that blows my mind if I stop to think about it. So I won’t.

A photo of lots of fake arms with naval tattoos
An army of arms: Naval tattoo exhibiton

Also published on Medium.