S02E04: Windin’ down for Christmas

The end of the year is rapidly approaching, which has meant the slow wind down of most customer requests. This has, in turn, lent me more time to do some strategic thinking about my next few years and draw maps.

Monday was a nice quiet day. A client got in touch asking about delivery of their software. We’d actually already delivered it, so there’s a clear lesson from me in clarifying communications and making sure that the definition of done for new work includes letting the client know. It’s the first time it’s happened and I suspect it’s a function of everyone being much busier. It’s annoying, but thankfully not the end of the world. We’ve got some content to tweak and then they’ll be live.

Development has moved to committing to main branch via pull requests. It’s a good first step towards DevOps, but it’s causing a little bit of initial slowness as we identify areas we need to improve before we can go all the way. I’m glad we’re surfacing them, but it’s an unforeseen hurdle that’s slowing down delivery of new features. I’m happy with this tradeoff as it’ll make us faster in the long run — even if it means I’ve got fewer fun new features to show off.

Tuesday was a mammoth technical day. I spoke to the lead dev about our technical debt: as a startup, we generated loads for the same reason that running away from monstrous creatures builds up lactic acid in the muscles and carbon dioxide in the lungs. If the choice is between short-term pain and long-term death, we always choose short-term pain — but now that we’re successful, we’ve got to get rid of it in order to scale to the next order of magnitude. It’s better than over-engineering in the first place, because that guarantees you‘ll never get feedback from your audience, but it means we go from rapid delivery to a slightly more pedestrian pace as we, metaphorically speaking, lie down on the ground and grip our sides, saying “I’m fine, I’m fine, just-woo-agh-just give me a minute”.¹

You’re absolutely right, Bojack

The SMT was the usual fiery discussion. The three of us believe in being honest with each other, and discussion can get very frank. We overran by half an hour, and that’s really frustrating. For colleagues with childcare, 1730 is a hard stop and if we can’t ensure we run to time we risk losing those excellent colleagues. I’m going to spend some time over Christmas thinking about the best way to make this work: longer, less frequent meetings? Shorter, more frequent? Or just an aggressive approach to keeping to time? If you’ve got experience in this field please add your ideas in the comments below.

On Wednesday we had our retrospective. There was a lot of good to talk about, some issues that simply refuse to die, and one solid critique of my behaviour as a leader. There are times when I get too carried away with my experience and knowledge and dictate instructions to the team. There are a couple of things wrong with this:

  • From a leadership perspective: it takes away agency from my team, and makes them feel as if I don’t believe they would have come to this conclusion/technology/answer by themselves. That’s a shitty way to make people feel.
  • From a senior management perspective: my time is valuable. If I’m spending it telling people things they already know, I’m wasting my most valuable resource.
  • From a financial officer perspective: I’m responsible for the costs incurred from development time, and if they’re spending time listening to me tell them something they already know then I’m using company money inefficiently.

Management is really bloody difficult, and a skill I’m still learning. The fact my team are comfortable calling me out when I mess up is something I count as a massive positive.

I’m getting there. I think. I hope?

Thursday was my last lecture in FoC and my last mentoring session of the year. I feel slightly better armed for the year ahead, both in terms of my work and my degree. With the morning free I acquired secret Santa presents for all and sundry: Oxford Street at 10am on a Thursday meant most shops were still relatively quiet. I did my best to walk almost everywhere in preparation for the office party later on.


After the office party I headed over to see some former DDaT colleagues in the Fountain and Ink. It’s really nice to see them and talk about what’s going on in Government and on the scheme, as well as getting an understanding of what works and what doesn’t in their current roles so I can use that learning in my own recruitment campaigns.

Plus, any opportunity to catch up on gossip is an opportunity I can’t miss.

Friday started our next sprint. We’ve got some people off over the duration, but enough of the team are working that we’ve committed to getting some work out of the door. I spent some time with my colleague Felix, who’s gone from zero coding knowledge to building something exciting that fills a very niche user need. In order to exceed his objective he’s got to have it deployed by the end of the year, and it looks like he’s on track. I’m really pleased that he’s making such excellent progress — in part because it’s just great to see people shine, but also because it adds evidence to my belief that giving people space, resources, and a clear direction gets quality results.

There’s another bit of management that sucks — I would have absolutely loved to take the project myself, but I don’t have the time. Instead, I have to support someone who’ll take longer to get it done than I would — but, more importantly, they’ll learn valuable skills and I’ll be able to use the time more efficiently.

I’ve seen managers either claim an idea and then never progress it², frustrating everyone else, or reluctantly letting someone else take it before barging in and rewriting the whole thing. I’m doing my best not to do that.


¹ I went with Bojack Horseman, but this was my first pick.

First image when I Google “stitch”, and you’d better believe it’s staying

² A concept called “cookie licking”. No, really.

S02E03: Do you want to build a program?

Yup, now it’s in your head too

This week was also a pretty bad week pain-wise. My infection from last week retreated from my jaw and made its last stand in my sinuses, which left me absolutely crippled with agonising pain.

Everything about humans is badly designed.⁰

Monday was a fantastically busy day as I caught up with emails and colleagues. I chatted architecture with our new technical architect and outlined my vision for how our technology will scale to support half a million users in the next two years¹. It’s (relatively) small fry after government, but for our tiny startup it’s absolutely huge. It’s exciting, but as ever I’m far away from the actual fun of making stuff. As a consequence I set myself the challenge of building a proof of concept microservice out of some of our data over Christmas.

I spent the evening at university. Mondays are Principles of Programming. I’m self-taught and have built little web services here and there, both as proof-of-concept for managers while in the service and as hobby items for my own amusement. As a result I’ve struggled with rehashing hashes, listening to lists and or even getting into ints.


However, this session was so much better as it got into the theory of Object-Oriented-Programming, or OOP.

Tangential reference or not, if you ever think I’m not going to reference Pitch Perfect you’re wrong.

It was really interesting to see all the ways Python both is, and is pretending really hard to be, an OOP language. It was a great way to wind up the penultimate session of the term.

Tuesday I got feedback on our Posting Template. Our current Fast Streamer is brilliant, and I’m incredibly eager to get some more of them seconded out to us. It’s a great program and huge props to the whole team for keeping it going. They’re also using Google Docs, so I got comments back in a useful format and could edit the same document, ensuring we only had one version and didn’t have to fill up inboxes with “Version 3.1-final-final-corrections-final”.

From the incredible presentation “Git for Humans” by Alice Bartlett

Bam. Whole thing finished and submitted in half a day. #winning

At home I felt surprisingly tired and sore around the head, but figured it was the last remnants of the infection. It sort of was.

On Wednesday I woke up in debilitating agony. It was a sharp, focused pain around the right side of my face, from cheek to temple but focused particularly around my eye.

It was the least fun I think I’ve ever had.

It pretty much ruined my day, to be honest.

However, the rest of my team was getting on with brilliant work. One of our devs delivered a really exciting new product — an automated onboarding tool for new clients. Considering that this process usually takes about a week of staff time, this is a giant leap forward and something I’m so excited to see. We’re trialling it internally on our existing queue of customers (in case it explodes in our faces) but we’re eventually going to roll it out as a service to let new clients totally self-on board and further reduce costs.

Saving taxpayers’ money remains my eternal goal

Thursday was my usual day off, and when I woke up all trace of the infection and illness had disappeared. There isn’t a single better feeling, nor any sentiment more alienating, than getting over an illness. You suddenly enjoy tiny pleasures. You breathe deeply. You look around yourself and marvel at the world. You dance through raindrops, relishing the cold sting that’s wiped away by the warmth of your moving, working body.

That last bit’s more literal. I usually walk from Cannon Street to university, because I’m basically a sedentary creature and I like food so a walk is the best way to keep myself at least vaguely in shape. Usually the prospect of a 45 minute walk in a downpour would dishearten me, but today I danced. I splashed in puddles.

I upturned my face and drank in the glory of sensation.

Then I got to St Pauls and my feet were squishing when I walked so I caught the tube the rest of the way.

My Information systems class was the last one of the term. Next week is revision, but since the term’s lectures have been focused on Agile and Scrum I’m reasonably confident I know the content. In Fundamentals of Computing we examined problems that computers can’t solve and watched this video, which if I’m honest I’m still utterly, utterly perplexed by.

Answers on a postcard please.

I also got to see Louise Cato and Sam Villis in the evening. These two women are brilliant, smart, insightful people and the opportunity to talk to them is so valuable that it made the perfect end to the day. There was a lot to reflect on during the journey home, and yet more ideas for my final project. I’ve started keeping a note of ideas, and they currently run the gamut of fun open-source things to money-making pie-in-the-sky ideas.²

Finally, on Friday, I was back in the office. We did some backlog grooming and trimmed out some more of the ancient dead wood. This regular cleaning forces us to reconsider whether the idea we had is the right one, and whether or not it’s the right time for it. If it’s the right idea at the wrong time, it goes into our roadmap. If it’s the wrong idea, then it goes in the bin and we ask ourselves how it ended up in our backlog in the first place.

Whenever the answer is “because we didn’t have a roadmap” I do a happy dance.

I also prepped the agenda for our SMT next Tuesday and got a debrief from the CEO about a potential new product. A client we pitched to a little while ago has come back and told us they’ve got funding, so we need to talk about how we’ll approach it and what we’ll need. It’s a really exciting opportunity, and if the funding is at the right level it means I’ll be able to look at bringing in another team member very soon to own it.

Exciting times.

Unrelated to that — for now — I also spoke to a friend who’s unsatisfied in their job and looking to move. The dissatisfaction is caused by a lack of control over their career, learning, and development. It’s a stupid way for organisations to lose brilliant people, but a great lesson for someone just starting out in business.

By the by — if you’re reading this and thinking that the employee might be one of yours, please take this as a sign from the universe to start trying to fix your culture.³

(self, others)

I’ve got early sight of Miguel Grinberg’s new Python Mega Tutorial, which takes novice Python developers through their first web app. I think it’s brilliant: well written, clear, and perfect for someone who’d like to do web development but doesn’t know where to start.

I’m quite keen to get more Civil Servants coding because I think a basic understanding of building tech and how easy/not-at-all-easy it is is a valuable thing. I know my audience is mostly digital Civil Servants, so: if I offered a course that covered basic Python, then building a rudimentary web service, then (if you’re interested) more complex services — would you be interested? Would your colleagues be interested? Does such a thing already exist?

Let me know here or on Twitter.

#listening

I’m going to see Hamilton: An American Musical in January which is NEXT FREAKING MONTH, PEOPLE so that soundtrack’s been on for every day this week and will continue. I’m halfway to working out whether I can make it our hold music.

https://open.spotify.com/embed/album/1kCHru7uhxBUdzkm4gzRQc


⁰ Except for that example beloved by morons everywhere, which is the proximity of anus and genitalia. If someone ever makes this joke to you, ask them where else they would put the part of the body that excretes. Hands? Belly button? Feet?

¹ Eek.

² That’s my pastry products delivered by drone idea, by the way

³ It could be you. If it isn’t now it will be. Fix it!

S02E02: Betrayed by my own face

This week is sponsored by the feeling of pain.

Content note: I talk about throwing up in this blog⁰.

Having returned from a weekend that involved many bottles of incredibly good vodka, I returned home with a twinge in my jaw. Being socialised as a man required me to say that to everyone who asked, because agonising pain is not something chaps are really allowed to admit to unless your arm’s been separated from your body.¹

As a result, on Monday I shotgunned a couple of ibuprofen on an empty stomach and then promptly vomited noisily. I’m not sure if that was the ibuprofen or the fact that airports are hideous cesspits, but it happened and it was not enjoyable. Side note: there is a TARDIS-like quality to the amount of stuff you think is inside you and the amount that somehow comes out of you when you’re ill. It’s totally weird. I tried to take the day off, but work kept coming in. I answered the questions I could and stayed close to the bathroom in case of further eruptions.


On Tuesday my boss went to speak to one of our first ever clients and had a really good, really frank discussion about how they’ve been using the product so far. In general the feedback was good but there are a few items we really need to get moving on. There were also a couple of really exciting suggestions that we’ve added to our roadmap.² Emails remained continuous. They’re a good sign that our content isn’t up to scratch, but frustratingly the responses take up the time we’d use to write the content. It’s an absolutely frustrating vicious circle.

My jaw hurt even more. My partner reminded me that we live within a ten minute walk of two dentist surgeries, that things don’t just get better by themselves, and that if I continued to sit around whining but refusing to do anything about it she’d smother me in my sleep.

Wednesday: I called the surgery and got an appointment the same day for 12 o’clock. It cost me £20.³ It was an extremely short appointment that went something like this:

Me: I think it’s infected

Doctor: Let’s have a look. Oh yeah, that’s definitely infected. I’m going to drip some anesthetic on it.

Me, seeing the doctor reach for a syringe whose needle was at least as long as my leg⁴: I’m fine with tablets, honestly.⁵

Her, laughing: Oh no, this is just so I can drip it more accurately! Haha!

Me, externally: Haha!

Me, internally: This is how I die.⁶

The rest of the day was dedicated to preparing Jira tickets for some custom work for a new client. I made some progress on automating this process and I’ve got some ideas about how to make it better. I’m currently tossing up between storing multiple API keys and writing something that will act as a pass-through in Python, or learning Google’s Java-esque equivalent of Microsoft VBA.⁷

You’re goddamn right it is Ben

On Thursday I met a friend for lunch and realised that I was a bit early⁸, so headed to class and did some more work on my assignments. I’m not allowed to open source them because plagiarism?, but once they’ve been graded I’ll be able to show them to you. I know you’re keen.

Friday was the first day of a new sprint, and we spent the afternoon on our retro. I felt it had been very sketchy on my part due to extended not-being-there. We had a good discussion that focused on what I need to do to enable the team to work with even less input from me. One of my major bugbears was that we’ve been blindsided by a couple of high priority items, so we trimmed 20% of the lowest priority work from this sprint in an attempt to give ourselves a buffer. If we get extra work we can take it on, and if not we’ll have that extra work to get on with. I’m looking forward to the next retro to see how it works out.

We’re also looking at changing our pricing structure, so we spent a couple of hours going over some models in Google sheets. I love Google sheets. It’s not as robust as some Excel workbooks I saw in Government, but that’s because those workbooks were being used instead of databases. Yes, they don’t work that well. But they’re not supposed to. The fact that you’ve made your car run on thousands of hamsters in wheels doesn’t mean you should recommend it to anyone else. Nor should you complain about the lack of hamsters in your new car.

What went well

  • Sorted out my tooth!
  • Tweet about how being a grown up is about toothache got good engagement!
  • That’s about it
  • Yikes

What didn’t go well

  • General illness

I am literally incapable of not doing this, and now neither can you
  • General feeling of not having enough time, more than likely caused by illness

SEE?
  • Toothache which persists even now. Boo.

⁰ So help me Michael

¹ This is Deeply Unhealthy, and with any luck I’ll get over it soon.

² We have a public roadmap that I suspect almost nobody looks at, but to be honest it’s more for me to store ideas away from the trash-fire that is Jira.

³ Good lord, what a beautiful thing universal healthcare is

⁴ Literally.

⁵ I’m just not okay with needles

⁶ I did not die, apparently

⁷ This is my favorite kind of conundrum

⁸ A week early to be specific

S02E01: Some time later

I go up progressively more early every morning this week. It was awful until I got up at 0430, at which point it was better. It’s a demonstration of sleep cycles, and one great lesson is that I can get up at 0430 and still do a good day of work and social interaction as well as have time for a run.

I am absolutely not going to do that, but it’s a great proof of concept.

Monday

Monday’s overwhelming feeling was total, freezing cold. The heater in our office has packed up for the winter and is spending the season on Southeastern trains, helping them implement sauna mode across the network. I spent a not-inconsiderate amount of time capturing requirements for an upcoming client. It’s currently a very, very labour intensive process so I need to find a way to automate it in a way that’s useful to Mark, who implements the customisations. The work is best done as a batch piece, and so is the collection — but unfortunately not the same batch. I have to transform it somewhere in the middle, or push the ability to customise all the way out to the client.

Tuesday

Tuesday felt non-stop. I got a solid series of hour-long working periods done, including writing up the role template for Felix Tomlinson’s potential replacement. He’s done sterling work, and we’re hopeful we can get a couple of new people in to replace him and develop their digital skills. Speaking to him was immensely useful but sometimes a little difficult, as he picked apart some of the flakier, vaguer things that are in the role description. Some of it is necessary because we’re asked now what we’ll be doing from March to September. As a startup there’s always a chance we’ll pivot, and specificity ties us down too much.

I’ve never seen F.R.I.E.N.D.S, but with all those initials I assume it’s a forerunner to Agents of S.H.I.EL.D

The form itself is a Word Doc with macros in it, which our Google Docs struggled with. It was a little frustrating because an online form would be more accessible, but on the other hand if you’ve got to hand the forms out to people then lines in a spreadsheet are really hard to grasp.

I also had the chance to catch up with Morgan, who with her husband offered some wonderfully frank advice about my own career and future. It was occasionally brutal, but that’s what’s best about advice from people you love and trust. Brutality gets to the heart of the problem and expresses it painfully so that you can identify it and deal with it.

Wednesday

Last day in the office before I head to Poland with my old conference team. I’m in love with the fact that we still hang out and I hope the current team end up the same. This time we headed to Poland, where one of our number is at the College of Europe in Warsaw.

There were a few customer queries, and one that I couldn’t fix and had to pass back to development. There have been a few like this that have disrupted our sprints; it slows down delivery of the bigger items but it can’t be helped. It’s frustrating though, so I’m going to see if I’ve got the funds to get one more developer so we can have a rota of people on “bug-fixing” duty.

I also can’t work out if that should include me. Do you expect senior management to be fixing bugs in code, or just giving you the headroom to do it yourself?

In the last hour of the day two momentous things happened. First, our Fast Streamer published a blog off the back of Michael Brunton-Spall’s excellent post⁰. As he’s not on Twitter, I posted it and then my phone blew up.¹ A few solid conversations followed, but annoyingly they’re all on Twitter so poor Felix only has my word to go on that it got a reaction. If you’ve not seen it, read it here and then go and argue with him about it. Here’s my favourite pull quote from it:

The “death march” bit was mine. The prediction was slightly off. It was the second.

I also had a great board meeting where we signed off strategic goals for the next five years. I like having an idea of what I’ve delivering to, and I’m absolutely loving the freedom I get in how to deliver it.

Thursday

Thursday morning I ironed and packed my suitcase before heading into university. The Information Systems module — essentially a beginner’s guide to Scrum — is quite old hat for me now, but I still enjoy attending the lectures. There are definitely benefits to going all the way back to basics, as I’ve always worked with teams that had been doing Scrum for a while.

Fundamentals of computing is still a total mind-melt. Don’t ask.

Friday

Friday is a blur of waking up at 0430, being ready to leave at 0500, realising I’d forgotten my passport at 0501 and waking up my partner as I looked for it. To her everlasting credit she didn’t kill me on the spot, so that saved my weekend. Then to Luton, to Poland, and once there a tour of the College of Europe’s campus and two bottles of gin between 9 people. And some vodka. And apparently I had to give a giant stuffed bear a fireman’s lift.

I am at least as perplexed as you are by this image

Weekend

We walked around the old Jewish ghetto. It’s full of information, and the whole thing is incredible. The absolute viciousness with which people not so distant from us methodically, efficiently, and indifferently murdered millions of others is hard to get your head around until you walk round a place that contained 300,000 people and then didn’t any more.

We also ate, talked, debated endlessly and did the things you do when you meet with old friends. I love it. I love them.



Reading

@_why’s (poignant) guide to Ruby: it’s the most hilarious guidebook to a programming language I’ve ever read. Please go and read it, particularly if I’ve promised to teach you how to code.

Feeling

Sore. My final wisdom tooth took the opportunity this weekend to erupt through my gums. Unwise in the extreme.

Thinking

About statistical analysis of estimates against time, and whether story points represent the best balance between accuracy and effort. There’ll be another post about this soon.


⁰ “Agile” and “linguistic prescriptivism” are mutually exclusive, so the first digital type to whine that it’s “blog post” and not “blog” is going to get my literal boot up their bum.

¹ Not literally.

S02E00: Here’s what you missed

We’re back, and better than ever

Welcome back, sports fans. It’s been a while. Things have happened.

University: I’ve got three modules this term. Principles of Programming I, Fundamentals of Computing, and Information Systems — or PoP, FoC, and IS. PoP is for beginners and teaches Python; I’ve been using it for a little while in my side projects and so I’m reasonably confident. IS deals mostly with Agile, particularly Scrum — another framework I’m confident using. As a consequence I’m focusing most of my time on FoC, which is just as well because it’s blowing my tiny mind.

Pictured: my tiny mind

There’s focus on concepts like infinite sets and 32-bit integers and hungry philosophers, and my brain is getting soggier all the time. Computers, it turns out, are extremely complicated.

This season is going to see a steady increase in workload and complexity, so balancing it is going to be one of the key character arcs that unfold. I take one day a week to study, but my lectures are only in the afternoon. So instead of studying in the mornings I nose around Whitehall and ask friends and former colleagues for coffee and to pick their brains about things. It has been an effective tactic so far.

Work: I’m pulled a million different ways at the moment, and I’m quite enjoying it. I’m taking care of a product and sponsoring a move to IaaS; I’m writing up job descriptions; and I’m planning the long-term technology strategy for the whole organisation. Doing this mostly means taking a punt on where culture is moving and then skating in that direction. Some initial steps are easy and have a great benefit: putting our application into a container has improved how quickly we can get new features and fixes into production.

I’m also trying to learn as much as I can about making remote work work from as many people as I can, including people who think it’s a terrible idea. Finding out what they feel makes it terrible gives me a strong indication of things to avoid.

Oh, and I got business cards!

This is naturally going to form the complementary arc to the university story. Working only four days a week and keeping everything rolling demands I keep a strict handle on what I agree to do. This is hard for two reasons:

  1. Doing cool but ultimately frivolous stuff has to be deprioritised (boo)
  2. Boring but necessary tasks have to take precedence (boo)
  3. Sometimes you think of something at the last minute that has to be included, and you end up going over your self-imposed limits

Off-by-one jokes are the second best thing in the world

Our Fast Streamer’s suggestion that we run stand-ups in our little team has massively helped with this, because it’s surfaced a lot of 2s before they become 3s.

There are going to be enormous challenges ahead. I’ve drawn a lot of useful advice from the rest of the community, and their continued stories have encouraged me to jump back in.

Here’s to a new season.

S01 E10

The Dragon and the Wolf

This is the season finale. There are a couple of story arcs budding and some that will be closed off-screen. Those reading the book of my daily life have long since given up yelling at the producer’s additions, subtractions, and poetic license and are instead now enjoying the Easter eggs thrown in as knowing winks to a shared joke.

This season came at a grotesquely perfect moment. I was in the right place professionally, the right job was advertised, the timing came together seamlessly. The whole thing seems engineered in sitcom land. On reflection, I’ve enjoyed other weeknoters’ writing more: their truths resonate all the louder with me because I know they are in the past of my life — or the future.

There’s going to be a short hiatus. Meeting with my fellow weeknoters I realised that for all of us these notes have been an outlet. They’re quasi-private and, for me, have been a sort of passive aggressive means of effecting change. For an introvert like me, unable to come up with a fully-formed idea in the confines of a noisy meeting, it’s an opportunity to talk about change I’d like to make. A rehearsal for the real thing.

But next season I’ll be moving into a role where I’ve got access to all the levers. I can’t grouse that management aren’t fixing things, because that’s me now. I’ve got to put in place a culture of openness such that everyone I work with will be willing and able and feel supported to join this brilliant, vibrant, extelligent[0] community. I hope you’ll continue to join me as I try, fail, and try again. I hope you’ll continue to be supportive, kind, and helpful.

If nothing else, I hope you continue to encourage me to drink four caipirinhas on a school night and talk about Doing Good late into the evening.


Monday was spent in absolutely back to back meetings and concluded with a visit to Monroe, a smallish client with an interesting new proposition. I also lined up further client meetings. Only one item went onto my promise tracker, which probably reflects the frantic nature of my day. As a sidenote, this tracker is turning up some genuinely valuable data. Even though I’m on hiatus next week, I may push something out via twitter.

On Tuesday I took two new starters on a whistlestop tour of our software, both front and back. The new starters work for our sister company, and will be using our software day-to-day. Presenting it to staff gives me an opportunity to see it through fresh eyes and helps again to identify areas we need to work on. It was really nice to meet them and to get a handle on how we’ll manage — remote staff working as account managers is a model I’d like to adopt in the near future.[1] I met Morgan in the afternoon and had an extremely positive discussion with some good pointers for me. We talked about the future, and nihilism, and why it is that us millennials feel entitled to things like nice colleagues, remote working, and a work-life balance.[2]

Wednesday I had giant, hour-long stretches of uninterrupted time and consequently got loads done. I spent an hour analysing and commenting on a shared process document, then reviewed and commented on it with the CEO of the company that supplies our developers. His guidance is really valuable and he’s totally open to trying out new ways of working. My director and I finally booked travel, so we’re going to go out and see the team in late September. I’m hugely excited to get into a room and talk about containerisation, software architecture, and automating deployment into cloud infrastructure.


They’re based in Spain, which means it’ll be unconscionably hot, but as long as there’s air conditioning I’m sure I’ll be fine.

I also got to meet some of the other members of the family, and it was an absolute joy. It’s already been covered everywhere else, but my conclusions were:

  • two and a half drinks is just enough to spark conversations that are deep, connected, witty, reflective, and the best.
  • Three drinks is just enough to make you forget everything that was said half a drink ago but remember it was brilliant[3]
  • There are more ways through the Civil Service than I thought possible, and on reflection I don’t know if I’d do it again the way I did
  • is a glorious community and I’m proud to be part of it

On Thursday I was at a training session where I got to learn how to present confidently. Two things I was told to focus on where time-keeping and snappier titles. This was the original, apparently “unsnappy” title:

I don’t see it personally

So I tweaked it to:


and that got a better reaction. To be fair, the colour is a lot more exciting.

Friday I worked from home as I was throwing a little inner party an I wanted to log off at 5.30 and get cooking. In future, I’d like to be able to work from home without feeling like I need a reason — or, rather, without needing a special reason. S02 character arc sorted.

For those interested I made a steak and ale pie. I made too much of it. I will be eating it for the next week.

Fade to black.

Credits.


Reading/Learning: Docker. Always Docker. But it’s meant I’ve drawn my first logical architecture diagram in a year, which is pleasing.

Listening: to trains not running over the next week, as I work from home to avoid the chaos at the London Terminals


[0] Extelligence is the intelligence that lives outside your head, and means your development can increase exponentially by accessing it.

[1] Remote work means our talent pool expands beyond those who live within the M25, and although London is still the greatest city in the world I am willing to accept there may be excellent candidates outwith its bounds.

[2] There is a connection between these things.

[3] This is widely understood to be the worst feeling in the world.

S01 E09

The one before the season finale

This has been an incredibly difficult week. Everything is happening simultaneously, and I don’t feel like I can keep on top of it. I’m struck by the fact that we limit WIP to reduce waste, and that has a knock-on effect: it forces us to stop promising due dates. That’s a benefit to us, because it means we can deliver quality work that’s ready when it’s ready, but it’s bad for customers who won’t necessarily know when they’ll need to put aside time for training.

There’s also the law of diminishing returns. I would like to track every item of work I’m doing, down to the smallest task, on a board. However, I’d need to include “writing things on the board” on the board. Then I’d need to include ‘writing “writing things on the board”’ on the board, and that level of recursion makes my head ‘splodey.

Pictured: ‘splodey head

In any case — I’m going to try, for the next sprint, to at least scribble down everything I promise to do, explicit or implicit, with customers, colleagues or myself, and track what happens to those promises. Whether I deliver (early, on time or late), deprioritise, or abandon them all together. I’d love to make this open, but some of it will be sensitive, and I don’t want to add an extra step into the workflow of figuring that out before I add it to my list.

I’m going to use a Google form to collect data and Google sheets to do the calculations. I’ll publish the resultant data in a couple of weeks, so stay tuned for that.

Here’s the Google Script code:

https://gist.github.com/jonodrew/7ffbfc977ad08e47c4cf2aff02df4a0b.js

YEAH, SPREADSHEETS

And now: the week

Monday was a day full of frustrations that pulled me this way and that. A day where I didn’t feel like anything really progressed, but I still managed to use up all my time. I hate days like that.

Tuesday we finished up a new client’s instance — Madison[0]. I got to do a tiny bit of graphic design and my usual testing. Automating this is a constant theme of work and something I’m now hoping to get done by the end of this year — the first promise I’ll need to enter into my tracker.

Wednesday I presented two papers to my board and received some good feedback. I can’t talk about the content yet, but I’m really hopeful that with some tweaks we can them policy. Fingers crossed.

Kimmy has my back

I also chatted to someone joining the DaT Fast Stream in September to chat about the scheme and their future plans. I’m leaving, and I know it’s the right thing for me, but seeing other people preparing to start this journey is making me hyper-nostalgic. I hope it dies down, because re-applying in five years is going to look silly.

Thursday I went through some customisations for Munroe[1] and then sat down and tried to plan out how we could make this process less labour intensive.

I appreciate this is now bordering on an obsession

I got out of the office a little early to eat steak at High Timber (recommended) and see Much Ado About Nothing at the Globe (also recommend, with caveats). The production is set in the Mexican revolution, and the actors are all extremely British. I found this quite jarring; had this been set in the Haitian revolution, there would have been no thought of getting a majority-white cast to throw in some patois and appropriate national dress — yet for some reason Mexican culture appears to be far game. This at a time when the US President was elected on a platform of anti-Mexican, wall-building policies. It is beautiful. I’m just not convinced that’s a good enough reason to do it.

Friday is retrospective day, and we had a great conversation about what went well and what didn’t go well. I’ve seen a big improvement in these conversations and we all came away with things to work on for the next sprint. I’m a great advocate for retros and for giving time to them: you can’t knock them out quickly and it’s incredibly important to reflect, as a team, on where things are going wrong — and to do it frequently. If you’re not doing it now, try doing it in two weeks time. Put time in everyone’s diaries and battle through the awkwardness.

I’ve had very little time to do my 10% of time this week, but I am making good progress with my O’Reilly book on Docker. I’ve got slightly stuck on my current chapter — I suspect because it needs more than an hour to properly absorb — so I’m hoping to carve out an afternoon next week to crack through it. (That’s promise number two!)


[0] Madison the president, as opposed to the place in Wisconsin. New clients get US president codenames[1]

[1] Not the codenames of US presidents, because it turns out they’re actually a thing, not made up by the West Wing, and the current POTUS codename is “Mogul”

S01 E08

The one where I go back to work

Hooooo boy

This has been…a week. I’m in a Starbucks by Embankment with a juice, watching the world go by, and trying my best to decompress.

50% tastier when it’s got your name on it. True fact

Monday was almost entirely taken up with briefings from my very little team about what had happened in my absence. As I mentioned last time, not as much of the process I’d put in place survived my leaving. This makes me worry that it’s just me keeping things moving, and that’s absolutely terrible for us because it means we can only scale as far as I can work. I came away with a lot to think about, but the overriding element is automation: it seems to be the least complex answer to at least two problems. One subsequent problem of automation, however, would leap out and surprise me later in the week.

On Tuesday I met up with my peer-mentor. Morgan is a former Fast Streamer and has been mentioned here before. She had some great insights for me, and I’m hopeful I returned the favour. She also mentioned a role in her team she’s hoping to get a DaT Fast Streamer to fill and for a moment I was tempted to head back — the opportunities to do amazing technical work are absolutely there, so don’t let anyone tell you they aren’t. Richard, who heads up the firm we employ for development, was in the office too — so it was an incredibly good opportunity to hash out some problems we’d been having and look at the longer term. We have Big Plans, and some details to work out. They’ll be published soon, because making things open makes them better.

On Wednesday I did my manual testing thing, going through completed tickets. Halfway through I was pulled out to do something else, and consequently a fairly large feature went on to our production servers without our clients getting warning. It’s a great feature, and it’s going to help — and for the most part it was welcomed — but I don’t want that to happen again. So if I can work out how to automate some of our processes, I’ll need to work out how to stop automating others.

I also presented a discussion paper to my boss. I like getting the bare bones of a discussion together, and letting a discussion flow from there. Some people recommend “strong opinions, weakly held” but to me that sounds like a recipe for a strong-minded senior person to bulldoze everyone else with rubbish ideas. What else does it require to make it work? If it’s an office full of extroverts then it might not be for me, a closet introvert.

Thursday I’d put aside half a day for Sprint Planning. It’s one of my favourite agile ceremonies, because there’s literally no better way to communicate to devs — particularly those in a remote team — precisely what you’re trying to achieve. I got some really valuable feedback about my user stories: they’re too vague with no clearly defined outcome. We had an explicit conversation about capacity, about what we expect from each other, and about clarity. We cleared up a lot. I’ve never been so confident about a future sprint.

We also finished in 2 hours. BOOM.

Then, right at the end of the day, I called a new client in the United States. Nothing prepares me for the accents in the Southern United States. They’re glorious, but I’ve only ever heard them in films. At some point I ought to head out there. Probably not soon though.

That day finished with bubbles and old colleagues and a couple of daiquiris that, it turns out, I insisted on shaking because I Am A Hipster Twat.

Friday was absolutely non-stop. New clients, like buses, have all clumped together and jumped on at the same time. I spent half a day collecting everything required to get them onboarded smoothly before leaping sideways into a meeting to talk about, among other things, IT provision and folder hierarchies.

I will always be the cool kid in my head

At the very last minute my US-based colleague and I managed to configure a client’s payment gateway to pay us at point of sale, as opposed to invoicing at the end of a period. It means our cashflow is better, and the client doesn’t need to spend any of their finance department’s time on invoices and the like.

I wrote up technical documentation on how to do it in future and called it a day. I felt absolutely drained, so went on a giant walk that took me from Southwark station to Charing Cross via North Lambeth and Westminster. Long walks — any exercise, really — absolutely relax me. There’s a glorious quote by Pratchett about a policeman’s walk, a sort of easy stroll where the swinging pendulum of the leg propels the body forward. It’s really stupid, but these kinds of mindless things: one foot, then the other, then the other — totally frees your brain from everything else.

So that’s why I wrote these notes now. Because I feel a little bit energised by juice and people walking by and strolling across the city.


What I’m reading: reactions to Google DudeBro’s manifesto, particularly those that have insights into how to avoid hiring them. This is my favourite. Also trying to self-correct my management, and this piece that I literally just read is resonating a lot. Check it out from my favourite CEO Jason Fried.

What I’m listening to: Ear Hustle. An absolutely breathtaking insight into the US prison system. The episode before last talked about solitary confinement. It’s intense. It’s messed up. It’s reminded me a lot of the sterling work MoJ digital do with prisoners: they’re people and pretending they’re not and locking them in circumstances that are deleterious to their mental health is, well, criminal.

What I’m learning: Docker. It might have some valuable applications in my context, and if not it’s very cool right now.

Hansel and Docker. Really hot right now.

S01 E07

The one where I start to say goodbye

Another week of Russian, which culminated in a brief handwriting lesson. My handwriting is apparently awful, which is oddly reassuring — although I’ve still some way to go before I get to “Russian doctor” level:

Good luck!

There’s not much to share workwise from this week as I’m still on leave, so this will be a very short weeknotes. However, a couple of things have popped out at me that I want to remember.

Firstly: I’m bad at ignoring work emails. As a consequence people are more likely to contact me, and it becomes a destructive circle. I might need to just uninstall emails on my personal devices while I’m away.

Second: before I go on leave, I have to be better at planning. I’m hoping to get my colleagues and the organisation to a place where I’m less and less needed, but while we’re still finding our way it’s unfair of me to act like we’re not. I’ve got to get better at listening to what colleagues need, because colleagues are users too.

YOUR COLLEAGUES ARE GOING TO USE THIS, SO MAKE IT AS GOOD AS IT CAN BE

Third: I’ve handed in my notice. As of September 1, I won’t be a Civil Servant any more. That realisation hit me harder than I thought it would. From the age of 19, I’ve been interested in serving in politics — I know I’m not good at running for office. I am a person who does things, and I’m never happier than when I can wrestle with the kind of thorny problems visionary people come up with.

I know I’ll be back. My initial contract is for 2 years, with an option to extend. My end goal is to return to the Civil Service, so whether that’s in 2 years or 5 I guarantee you’ve not seen the last of me. There’s still so much to do to get the Service to a properly user-focussed, agile organisation. I’ll be returning when I’ve got the experience to run a directorate in exactly that way. In the meantime I’ll be following the careers of my fellow Digital and Technology Fast Streamers, luminaries like Kit, and of course all of my fellow writers.

Lastly I’ll answer three questions posed by the One Team Gov team, with an eye on my time in the Service.

What was hard? Learning patience and the realisation that everyone is doing the best they can with what they’ve got. I’ve slipped into the trap of thinking “An idiot wrote this/put this process in place/is directing this programme” many times, because it’s a sop to my ego — “If only everyone were as clever as me!” and turns cultural issues into individual issues. Neither of these things are true: everyone is slogging their guts out and doing the best within their contexts. It’s up to senior leaders to provide the cover for those people to reach across silos or to take up a sledgehammer and get rid of them altogether — a reminder that all difficult problems are cultural.

What was fun? Everything. I’ve got the honour of speaking to the incoming cohort of Fast Streamers in August, and I’ll say now what I’ll say then: this is the most fun I’ve ever had in a job. The people you’ll work with, both Fast Streamers and not, are completely committed to an ideal. That’s hard to find elsewhere. The opportunity to organise a 600-person conference, to explore graphic design and recruit web developers and teach and learn with colleagues who become friends is absolutely awesome. I’ve been behind the scenes at Heathrow Airport; organised an experience day for students that involved a speaker from GCHQ; written submissions about Twitter and watched a hacker demolish something I’d built. This job is a cool job.

What made you proud? Helping other specialisms see the value of user-centric digital services. Building services that people will use. Brokering compromise between absolute security and absolute usability, and keeping everyone excited and committed to the solution. Going to universities up and down the country to talk to students about why they should join. Learning to code. Building things. Building teams. Working with the best people in the world.

Oh, and sometimes your job will involve attaching 800 lanyards to cards. Be okay with that

Weeknotes S01 E06

The one with Russian

My brain has absolutely melted out of my ears.

Monday was day one of my immersive Russian course. I’m taking it through the Russian Language Centre at Pushkin House, and I have to say it’s incredibly good. There’s no better way to learn anything that to immerse yourself in it, and starting with other absolute beginners permits you to let go of the fear of looking stupid. We all look stupid. Let’s do it together. Looking at my notes I’m genuinely stunned how far I’ve come since this point; on Monday we covered the printed alphabet[1] and by Friday we had conversations that included adjectives, the genitive and locative cases, and numbers. More on that as we get to it.

So that’s A, B, wait B again, half a T, don’t know, E maybe, E again, okay I give up

Tuesday we covered gender, of which there are three. I am curious about how long the concept of gender will last in language — it is problematic and forces a culture where non-binary people don’t exist, because there isn’t language to describe them. You could just call feminine “Type 1” nouns, masculine “Type 2”, neuter “Type 3” and avoid the problem — but considering that these linguistic institutions have been around for a long time, I’m not hopeful.

Today I mastered the ы sound, which Wikipedia reckons is like the i in hit. If so, I recant my previous statement, because mine sounds nothing like that.

I also got to speak to Morgan B, who’s a former Fast Streamer-turned-Product Owner. She’s completely brilliant and gave me a great reading recommendation — Radical Candor by Kim Scott. We’ve set up fortnightly chats where I’m hoping we can support each other — she’s learning to code (also Ruby) and has some cracking insights about leadership. More than anything else it’s valuable to have someone to bounce ideas around with who’s not immediately in your context.

Radical candor is a new concept to me, and I’ve already got some hard truths. Highly recommend.

Wednesday and we’re halfway through the week and a quarter of the way through the course. We talked about what we have and don’t have, which introduced the genitive case: the case you use where (generally) you’d use ‘of’ in English. It’s absolutely brain melty, but two of my classmates — undergrads reading classics — are absolutely in their element. One of them has mentioned that they can’t wait for the locative case.

[This gif may have been stolen from another weeknoter]

On Thursday I found out I got the job that has been the main story arc for this season. With another four episodes to go before I start, there’ll be an “emotional review of the season” episode in the pipeline if I know the writers. Now comes the difficult bit: actually doing the job. There are going to be some huge challenges ahead, and I’m so excited to get started.

I dropped into the office to look at paperwork and negotiate my salary, which I hope will be the last time anyone has to do so in the company. I’ve been inspired by Basecamp and the Fast Stream to offer the same salary to everyone doing the same job. It’ll probably drive away high performers who are totally driven by money, but maybe it’ll open the door to people who don’t like the aggressive approach required in negotiating and are worried they’d be underselling themselves. It’ll be a significant shift. Tune in next season to see how it works out!

Friday and my brain, now entirely fluid, got one last stir before serving. Despite being on leave we had a minor crisis at work, and so I had to take calls before and after class. It’s not ideal, but we’re still so very small that this will happen from time to time. My absolute goal is that it won’t keep happening, and it won’t happen to anyone working for me

That was my week.


[1] Russian handwritten alphabet looks, by turns, exactly the same and then wildly different.

Reading/learning/listening

  • Radical Candor, by Kim Scott
  • Russian (obviously)
  • The West Wing Weekly podcast — watching along with someone else, even if they’re in your ear, is lovely. Like a bookclub, but for your eyes.