Weeknotes 05×02: Modularise all the things


Monday, and things are busy. We’re in switchover mode, deploying our last sprint’s work to a beta site for user and load testing, while also ramping up on the next chunk of work.

Which all means I’m very delivery-focused at the moment. But I’m also out of the office a fair bit over the next few weeks, so I’m spending a lot of my time trying to get all the blocks in place. Briefly, my focus is:

  • setting out a high level overview of what the blocks of code are, and how they should talk to each other
  • making sure any obscure technical information is thought about and written down, so I’m not a bottleneck when I’m away

I’m having to have a fair bit of faith in what I’ve set up, because we’ve got less than 3 weeks to get something delivered. It’s going to be interesting.

As I said last week, closing stuff off needs to remain a strong focus – fast progress needs to clear stuff out so we can concentrate on the harder stuff without too much overhead.

We’re going to need guns. Lots of guns.


OK, this plan is going well so far. We’re on a pretty big task – it’s the first time we’ve voted something a 13 in a few years. But I’ve learnt a few things since the last time. The mix of (lean business needs + code decoupling required to write unit tests) has really helped me understand where a “system” can and should be divided. In any system, there are natural “breaks” which define certain holistic chunks – we call these “departments”, “teams” or “silos” when thinking about an organisation. We call them “classes”, “microservices”, “modules”, “libraries” and so on when talking about code.

Some sort of git branch management analogy, or merely the onset of winter?

Any system has them, and so I wonder if there is a general rule of modular interaction that one can define and refine – I’ve probably seen something along these lines in the past, and my writing probably reflects my mind trying to remember it.

In a way, it’s another version of “joining the dots”, except in this case the dots don’t exist yet and have to be forced into shape. My main aim has been to define the modules we need, and the ways in which they interact – and to then translate this into tasks, and how the tasks overlay. I feel like I could really work with someone else in this framework in future – I could identify the tech modules and someone else could define the “work modules”.

I’m also now wondering if it’s possible to apply this to my Product Owner role, where I’m going through product feedback and categorising/refining/estimating/prioritising potential stories. What are the dots, the subdots, and the superdots here? (Yes, I’m thinking fractal dots.)


Mixed start to the day. Made good progress on the crossword on the way in, but half the phones were down. Bit stormy today too.

A month in review

Had the first monthly catch up with John, our new developer, with a nice mix of feedback for both of us, I think. Having someone new on board is a good opportunity for reflection. Hopefully I put some of his fears to rest, and I think mine were – I’m always slightly anxious when someone new joins. Do they think they made the right decision in joining? Thankfully, reminded me that our ethical value is really, well, valued, and that if we can formalise it in the right way, it can be very powerful.

(Or probably very cheesy, if done in the wrong way.)

Closure, closure, closure

Slightly annoyed we didn’t get to close off part A of our current work as I’d hoped, but in hindsight it was probably optimistic. Momentum had been good, but the two remaining tasks were the largest, and required a fair bit of review and testing. I had to leave early, so there’s a chance it will come together in the next hour or so.

And we did make a start on the next stage anyway, which is good. But was hoping for a clean break. Tomorrow looks plausible. Bought chocolates for the team for when the first part gets closed, anyway.

Spent a lot of my day running updates on my machine. Windows wanted an update which meant also then updating VirtualBox, followed by Vagrant. Computers are stupid.

Chipped in a few notes for our monthly roundup/lookahead, which randomly again reminds me that I should make a start on an extremely lightweight ethical business framework.

(Note – should get feedback on whether our ethical values are ones that people agree with, and buy into.)

Went through and tidied up potential user stories for Hive Pixie – pleased with a quick decision on ordering priorities and identifying story clarity, will be interesting to see if our partners agree with the proposals which are coming together in my head.

Lost 10-0 at table football. Blaming the receding head cold and tiredness. Need to up my game here.

The office “Christmas tree” made its appearance. Need to up our game here.

It’s a path, which is definitely some sort of analogy


OK, we wrapped Part A. And the team have cracked in with Part B. This is good. Just need to make sure I dedicate some attention to the right places early next week and we should be fine.

Running a daily diary makes me think there should be some easy daily mood-ometer for work progress. Maybe a personal research thing next year – buttons, API, database, bosh.

Also did lots of tidying-up communication and starting to get some dates in January’s calendar. I think the sprint work has actually given me a good, productive attitude today. Happy reinforcement cycles.

Next week is all over the place though. Will have to wait and see a bit.

View Map

About Me | RSS | Other stuff
Comments welcome via the blog, or to @6loss on Twitter