S02E07: HECKING EXCITED

Short days, long week. Go figure.

Remember how last week I talked about how I was using Toggl to track my time?

Here’s this week’s approximate shape:

What is this, a graph for ants?

If you can’t see, it basically shakes out to about 25% each for sales, CTO stuff, and Product Owner-y stuff, with the rest given over to admin, customer operations, and eating lunch.

Eating lunch is important team. Protect your lunchtime like a mother bear protecting her cubs.

The sales part is because my boss is taking a well-deserved break, so I’m managing that part as best I can while he’s away. It’s a massive gear shift from CTO work and I can’t say I love it, but speaking to customers is always positive because sometimes they’ll have a brilliant feature idea that I hadn’t had.

I spent most of Monday on the strategy and budget for the next couple of years, as well as writing up a training agenda for a new customer that I’m going to see very soon. I wrote code for ten minutes, and as you’d expect it didn’t work.

I got a ticket to #ukgc18, which is SUPER HECKING EXCITING

This guy knows what I’m talking about

And in the evening I went to university, and I think I’ve started to get Java.

On Tuesday I spent half the day on a new guide for customers using our new, fabulous, mostly-automated, product-generating-machine. The rest of the day was a struggle, because my esteemed colleague Felix had secured himself a couple of days of user research training. I answered emails and fixed a particularly difficult customer issue, and since I was feeling pretty pleased with myself I reopened my pet project: software to organise the shuffling of people, when there’s people to be shuffled.⁰

And I got weirdly annoyed that you can’t specify the type of arguments you pass to functions, so I googled it and it turns out you can¹. So now my code looks b-e-a-utiful:

I’m using the Civil Service as a use case, but it would probably work anywhere

It’s good brain exercise, and maybe one day someone will find some use for it.

Wednesday is retro day, and I think this has been the most successful one yet. We came out with some really great metrics for things we could do better, gave each other meaningful praise, and generally came out as a better team.³ It was a good feeling. I love retros, but to be fair I’ve said that a lot before. I do. Continuous improvement forever. Continuously.

In the evening I developed my software’s logic a bit more. There are a lot of things to check. I suspect I may need a data scientist before long.

On Thursday I went to uni, finished my coursework, discovered the administration office for my program and had my first Computer Systems lecture, where I learned that the average mark was 49% and a pass is 50%.

https://media.giphy.com/media/F8deaO3psSKiY/giphy.gif

It’s a day that starts at 1330 and ends at 2100, which is just incredibly unfair. All the same, what I’m learning is incredibly cool — although I’m still struggling to link it back to my day-to-day.

If I’ve made a mistake, it will at least hold the record for the most expensive mistake of my life to date.

Friday was an office day, and Felix and I finally got to check in. I had a preliminary chat in the morning with a potential new employee — my first in this new role — and in the afternoon did some pairing with Felix. We did sprint planning just before we went home, and the team talked me through what they’re going to be doing next to meet the sprint goal. It was non-stop, and a couple of my meetings ran over. They ran over because there were important things to discuss — is there any way to make that kind of meeting run to time? Help please.

If you’re going to be at #ukgc18 tomorrow, give me a wave. Some of us weeknoters may be pitching on this very subject, so…watch this space?


⁰ Okay, this is a weird obsession of mine, but: a number of graduate programs rotate their grads around departments, business areas, planetary moons, that sort of thing. They do this with the aim of turning out all-rounders. Unfortunately it’s a thing that seems simple and turns out to get trickier quickly, and I’ve been trying to convince HR teams to use computers to do it. I have been doing this approximately forever. I’ve now given up now, and it’s turned into an exercise to see how pretty/artful/efficient I can make my code. I’m now down to 23s to match 500 candidates to roles, with each candidate getting a match 80% suitable or better.

¹ Java man, it creeps up on you. It’s a gateway language, before you know it I’ll be functional programming and ranting about monads.²

² Wow, that is a specific joke

³ Metrics are important, as long as they can be linked to an actual outcome. When faced with a meaningless metric ask why until it goes away or you understand it.

S02E06:

Feeling of the week: non-stop

To counter this feeling, or just to get to grips with where I’m spending my time, I’ve started using Toggl to track my time. I’m trying to keep it high level for the moment: just whether it’s product work, strategic work, or customer operations. All of these have value, but I think with my new role I should be skewing towards the strategic.⁰

Song of the week: non-stop

Monday I spent the morning training a new team on our flagship product, filmapp. There were a couple of minor things that I should have set up beforehand that I’m absolutely kicking myself about, but they were fixable in the moment and the rest of the presentation went smoothly. One bit of feedback was that the system was “intuitive” — which is absolutely my favourite kind of feedback.

Back in the office I caught up on emails. Since logging my time I’ve noticed I spend at least an hour a day on emails, so I’m going to make a concerted effort to do that in blocks rather than in blobs. One of those emails was confirmation that we’ve secured two more Fast Streamers starting in March, and I’m absolutely over the moon. We’ve got a number of juicy opportunities for them and I absolutely cannot wait to meet them.¹

Tuesday I got to do some coding!

I was digging out some numbers about users and applications to support a decision about scaling. That meant writing database queries, and man alive there’s no better feeling than just getting stuck into a couple of hours of data munging.²

Who’s with me?

We had our monthly SMT meeting and everything appears to be going well. I’m aiming to increase our staff by two in the next three months: one junior developer and one customer operations team member. “Customer operations team member” is a horrible mouthful, so they’re going to be COps. Specifically a COps practitioner, who’ll eventually lead a team of COps. Hard-bitten, user-focussed, problem-solving COps. They’ll drink tea like it’s water. They’ll get to the root of a problem like armillaria ostoyae that feed exclusively on problem trees.

I said armillaria ostoyae. *taps mic* is this thing on?

We closed out the day with backlog grooming. More hard challenges from my colleagues that ended in really fruitful discussions and a rejigging of future priorities.

Wednesday a big meeting was canceled, which on the one hand was a massive bummer — we’ve been gearing up for it for a couple of weeks — but on the other gave me an opportunity to talk to the dev team about upcoming work. They’ve started to limit their WIP at my gentle prompting⁴ and have had real success. Among other things there’s been an increase in team communication, since if WIP is full you have no choice but to go unblock it before starting anything new.

Yay for WIP limits!

I had a great check-in with another new client, who’s expecting to go live very soon. There are a few tweaks to be made — local by-laws that applicants need to be aware of, for example — but they’re otherwise ready to go.

We also tried out our totally new, totally awesome automated instance generator. It works in a totally boring, plain English, exactly how-it’s-supposed-to-work way.


Boring is brilliant when you launch a new product for the first time. It’s exactly what you want. I am very nervous of people who like being in chaotic situations.

Thursday back to uni, and an in-class test. But time for a coffee with one of my oldest mentors⁵ first and a discussion about an MBA. She’s set me some challenges for our next meeting. If anyone has recommendations of finance books for manager types, please put them in the comments!

Friday I worked from home on the technology strategy. Coincidentally, the Government’s Shared Services strategy was launched at the same time. It’s a joke of a document that literally puts user needs last…


…tries to plan the next ten years, and is rammed with nonsense jargon that sounds like it came directly from a consultancy.

Still, it was helpful in showing me what not to do, so there’s a silver lining there. It also hints at what systems government might be buying in the future, so that’s a good market signal to build in to analysis.

As the afternoon rolled around I got a chance to preview some technical debt. It’s some really great work that improves the speed of our service, and I’m very excited to get it rolled out next week.

I ended the week on a massive high: I headed to see my sister’s new flat, and took along an enormous tiramisu made by Antonio, who owns an Italian store in Lewisham. It was decadent. Go there. Buy some. Tell him I sent you.


⁰ I’m absolutely willing to be proven wrong on this

¹ Full disclosure: I was a Fast Streamer and I had my issues with the programme. But I can say with honesty that it consistently turns out thoughtful, curious, eager people who learn quickly and get stuff done. If you’re interested in offering a secondment leave me a comment and I’ll dig out the email address for you.

² I looked up “munging” out of idle curiosity. I do not recommend you do the same. The definition starts “Go to a graveyard” and let’s face it, there’s no way it’s going to get better after that.³

³ How on earth munging can be associated with data and the definition above, of which we will not speak, is totally beyond me.

⁴ Read: me furiously limiting my own WIP and suggesting it as an experiment in retros.

S02E05

What day is it?

Monday threw out my mental model for the week. I’ve talked before about how m’colleague and Fast Streamer Felix gets a day off a week to do training and work on his final project. These are normally Monday, but this week we planned to close the office on Thursday and work from home on Friday — so he switched his training day to match.

Long story short, every day felt a day ahead all week and left me with a migraine and a permanently perplexed expression.


I spent some time with a mountain of paperwork for a client. It was a nice throwback to my days in government; reams of paper and questions that have never been tested with users. It was a struggle that would dog me for the rest of the week.

Tuesday: This was mostly taken up by backlog grooming. I also talked through my suggested sprint goals for the next few sprints, and got some really good, hard questions from the team. I know I mentioned this last week, but this is sort of in the opposite direction: it’s so good to have people who can quiz me on my thinking to help me clarify it for myself.

Still, it’s also very stressful. It’s a difficult line to walk between honest, helpful critique of someone’s thinking and making them feel like they’ve not done anything right, and that difficulty is compounded when the presenter themselves struggles with their own authenticity. I’m trying to decouple my opinions on what we should do with the emotion behind it: the fact that I’ve worked really hard on some plan doesn’t automatically confer brilliance on it. Smaller feedback loops help with this — putting just enough effort in it to make a skeleton plan means I’m less emotionally invested in it.

Plus if it works I can do a skeleton dance

Wednesday was a good day. I moved the dev team over to Scrum when I started back in season 1. For the first time I’ve given them two high level sprint goals and asked them to talk me through their approach to meeting them. The response was really very positive; I talked last week about how taking agency away from workers makes them feel shitty, so it figures that the inverse is also true. It’s also less stress (but also slightly more?) on my part. I don’t need to spend as much time writing out tickets and explaining my thinking; instead, I ask the team to come up with the approach and then think through it and make sure it reaches the goals. In Russian, this is Доверяй, но проверяй: Trust, but verify.

This excellent working day, where I think I demonstrated strategic thinking and an eye for detail was somewhat kiboshed by an email from a supplier of Christmas presents, who’d be shipping a gift I’d selected. I had, for reasons best left unconsidered, put in a postcode that did not at all resemble my own. So it’s almost certainly not going to arrive, and I’m going to look like a turnip.

It’s my go-to insult at the moment. Gender-neutral and meaningless, but with a good mouth-feel

Thursday was, as ever, my day off. I went to locate presents: two were cloistered at the local delivery office, and three had to be purchased from central London. It was…a challenge. The jewelry shop in particular was rank with the smell of fear and Lynx Africa. There’s not much more to say about Thursday, aside from the fact that emails were building up ominously. If this were being shot for television¹ then this is where we’d cut between a dam just beginning to burst or a support starting to creak and splinter and me, mundanely fighting through the crowds on Oxford Street.

Friday and my last day at work until Wednesday. I learned more about our CRM, answered an absolute flurry of last minute emails², and talked to Felix about deploying his extremely impressive piece of software onto the interwebs. And then I clocked off at four thirty.

And then I came back, because the US still had a number of hours left before they clocked off and the paperwork from Monday needed a couple of minor tweaks that had to come from my brain.

And then I really did clock off.


¹ Sorry, when

² and received a positive avalanche of out-of-offices from people who’d set up automatic forwarding to people who’d also gone on leave

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.³

#programming(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!

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 #weeknotes community, and their continued stories have encouraged me to jump back in.

Here’s to a new season.

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.