in weeknotes

Weeknotes S04E21: a coat of many colours

There’s a lot in here this week, and hopefully something for everyone.

sonnet #1

I am older now and my bones grumble
Sinews squeal and joints protest as age rusts;
decays; that which in my youth was supple
and despite these wicked blows of time lusts

still the creaking heart 'neath hoary rib-bones
My reach exceeds my grasp, and grasp I might
for breath from under whiskered lips still groans
and rheumy eyes blink wide at morning light

this little critch of earth and wind fears not
the coming cold, the icy wind, the night
for it has fire, roof, leaf and water hot
Lock out the ice, the gale! Let here be quiet

Boreas, old man, you're in fine fettle
While I am snug with my new kettle

limbo number five

As ever, the course of true love ne’er did run smooth. Nor the process of moving house or job. I am proving hard to replace – a failure of the market, rather than the peculiar uniqueness of me – and so I may not be able to move as quickly as I was hoping.

Ditto the house move. I have a date selected for my Show and Tell (Moving into a new flat Service), but no date of delivery for the service itself. Only a vague promise of future delivery. If it is before Christmas I shall, frankly, be boggled.

On the other hand, though…

The extra weeks I have mean I’m more confident that I’ll be able to finish off everything I’ve in flight. I’ll be able to write handover documents at my leisure, rather than in a desperate panic at the end. I’ve a little more time to save a few extra pennies. I might even be able to buy some of the more frivolous things I want for the flat.1you can’t convince me that a cat running wheel is not an excellent investment

In short, I’m trying to apply myself to reframing bad things that happen in my life as good things. It’s totally lame, I agree, but it also works? And if it’s lame, but it works, then it’s not lame.

problem solving

I am the kind of person who likes solving problems. I like them even when they frustrate me, like when two datasets are almost identical but one of them uses em-dashes2 and the other uses ‘n’ dashes3 and, let me assure you, that’s not a difference you can easily spot by eye.

The thing about problem solving is that it’s a wide field, which is one of the reason I found myself sitting around a wide table with about 20 other people, eyes glazed over, ear focused on the sound of pins being forced into place.

Picking locks is both perfectly joyful and endlessly frustrating. It is the slow and careful sensing of a problem. It is the refocusing of your senses until only touch, only hearing, have any meaning. The world slides out of focus and for a moment there is just you, and this shiny lump of metal, and the Balance of tension in your wrist and your wrench. Three clicks, but it won’t turn, so you relax a little. Pushing it harder won’t help. You need to back off, take a different approach. Pick from the back this time.

It is a skill that has almost no practical use. There has never been an occasion in my life when I’ve thought to myself “if only I could pick locks”. For that I am deeply grateful. I believe we should all have a skill that has no value to anyone but ourselves.

Let us be amateurs, and connoisseurs of amateurs.

a failure to communicate

I’m going to talk about something that happened at work and I’m going to try to unpack it as much as possible.

I’ve been working hard on a product I’ve mentioned before. It is the best code I’ve ever written. I am very happy with it. It is very difficult. In some areas, it’s just a lot of boilerplate code – the same thing written over and over again with minor changes. With enough time I could work out how to make it perfectly beautiful (and entirely inaccessible) but that’s not what I’m going to be diving into.

I’ve spent several hours obsessing over how to write new code to solve the existing problem, when the simplest answer was to provide a template solution and ask the team to conform to that template going forward. It wouldn’t be a big ask, and to be honest something similar is already on the backlog. Despite this, I found myself preferring to soldier on, trying to solve 14 specific cases of one general problem.

I’ve been reflecting on this over the day, and I think there are a couple of things at play here.

i like it

I got into programming to solve problems. Here I have 14 problems, with some similarities. And these problems are reasonably fun to solve, because after the first one it becomes a question of how much I can re-use and optimise higher-level classes to solve the new problem. It becomes a joyful, iterative process. I probably can solve it. I might still do that, if I’ve got a spare weekend, because it’s just a very enjoyable way to occupy my brain but also because then I’m definitely impressive. I’m the brilliant person who was able to solve the problem even he, the brilliant person, thought couldn’t be done.

It’s just a hero complex hidden behind doing things for good. I might be working at the weekend, doing overtime to solve this problem, but it’s fine because it’s in the public interest.

A hero must be willing to risk themselves for something greater.

(The public sector heroes I meet up with occasionally are doing a sterling job of redefining the word, though, and I’m grateful they’re doing it)

I like programming, but that’s not what I mean when I say i like it, is it?

I like to be the hero.

if i can’t do this, can i do anything?

Asking a team to do extra work because I want to spend my time on more valuable things assumes I can do the more valuable things. But something like this seems so trivial, on the face of it, that perhaps my unwillingness to face up to it proves that I’m not really as good as I think I am. And if it’s a difficult thing, then I should do it. For personal development.

Right. So either way I should do it.

And if I don’t do it, are they going to realise I’m faking it? Are they going to realise that I’ve no formal qualifications and that I’ve taught myself by hacking shit together? Are they going to get a proper developer in, one who understands object-oriented programming and flow control and monads, who’ll reveal me as the definite fake that I am?

Okay shit now I definitely have to do it.

Besides, what makes my time so much more valuable than theirs? We’re all drastically overpaid as it is. And who am I to them? Some idiot trying to disrupt their perfectly good processes and tasking them with more work when they’re already worked hard enough as it is.

Better to do it myself so they don’t have bad feelings towards the product.

maybe they’ll say no

I’m not in this for the conflict. If I want to ask them to do this I’ll need to set up a meeting, and that’s not going to be for several weeks. And if they say no I’ll still have to do this except I’ll have two weeks fewer to have done it.

not all of this is true. not all of it is untrue

I think my biggest challenge will continue to be coming to terms with my professional abilities, and valuing them highly enough myself. At the very least, I hope the next 12 months will show me what progress I can make, and make me better at carrying a knowledge of my own value into negotiations.

Write a Comment

Comment