Workweek 02×07: Bonus Stream of Consciousness
I had an idea to do this as a bonus season finale as I’m over my original plan of 6 episodes a series, and I was thinking in a Buffy-style dream-sequence approach. It didn’t work out like that. I’ll save that for Series 3.
This week. Separate the wheat from the chaff. Things I have to do. Things I should do. Things I like doing. Things I don’t need to do/shouldn’t be doing. I’ve got a busy head on me these week as I plummet into annual leave time. I’m off for the next two weeks, and already relishing the chance to reset my brain.
What are the big questions I have about what I should be doing?
1: External links? Competition, collaboration, community?
2: How relaxed should I be?
3: Balance? Maybe Work [tm] divides into…
- puzzle solving
- personal (email, etc)
I’ll leave these here as draft notes. Blog like no-one’s reading.
My aims this week are mostly focused on going away cleanly. I’ll admit it, I really hate the run up to going on holiday. So much pressure to leave things handed over and not blocked in annual leave purgatory.
1:1s with Lawrence and Alex.
Chat to HACT, nice lot, plus Flo rocks.
Look at documenting my VM setup and accidentally turn it into starting a fresh VM, which fails to work.
There are interviews in the office. I try to make some progress on my VM set up in the background, and tidy up last sprint / prep for next sprint for tomorrow.
Had first “official” retro in a while, and not a technical one this time. Alex taking on the reins of running the meeting, and trying his hardest to stay out of the discussion – this is hard, and kind of feels like it would be great for anyone to be able to facilitate a retro, so we can all take it in turns. But that’s even harder, so.
Had a good, if too-brief chat between Flo as user support and me/Stefan as POs on how to improve how we line things up before the sprint – it’s probably a long overdue chat, but always worth having. Lots of chat on expectations which is probably a codeword for “shared understanding”? Anyway, it was good that we all coincidentally decided we wanted to talk about the same thing. One to pick up when I’m back from holiday.
Thursday: become the joker.
Sprint went well. I think it helps having a retro beforehand for “clusters” of people to just get in the same mindset.
Struck by the difference between client requests and our own internal processes. As a data – handling team, a core of what we do is moving data between systems. This means we have to map data from structure A to structure B a lot – or interpret between data structures.
Data structures are both objectively and subjectively better or worse. De-duplication is *usually* better as a rule. Scalability is always a bugger.
The challenge as a company handing out data is to put effective decoupling between these systems, so that each side of the equation can do what it needs to do best. This is the whole point of APIs. There is minimal unnecessary risk spread across the system as a whole.
You know that bit in films where the bad guy falls off a tower, but manages to grab the good guy and threatens to take them both down? That’s basically how I see data systems, and what you’re always trying to avoid. It’s called “end scene coupling” (no it’s not), and the risk is that a defect in one side (the guy about to plummet 50 floors) causes a massive upset on the other side.
In Batman, (spoiler) Batman falls off the top of a belfry tower as he battles the Joker. The joker offers to help him up, but a moment of tension reveals – gasp! – it’s a fake hand!
Now I’m not saying at should all be psychopathic criminals, but the Joker’s little joke there is actually a great example of decoupling – maybe he could have used the hand if he wanted to. But his soul wasn’t defined by it. The hand was an intermediary between joker and batman. A proxy layer. Disposable risk.
How can we achieve this disposable proxy risk layer as an organisation? How can we do things our way (because we’re pretty good at what we do, and we’ll want to improve it) while at the same time doing things the way an external party want it?
And really, the data schema style introduction was just a ploy. Really, the same question is true of any process – an agile team “interfacing” with another team, me as an individual “interfacing” with existing company processes and cultures. Internal-interface-external.
I have a chance to play with this when I get back from holiday. Run a project as a black box. Work out the comms architecture to sit alongside it. Avoid coupling, momentum.
Had a late call with our American clients, and while I always find conference calls the worst way to do database design, feels like there’s a good way forwards. Looking forward to picking this one up and giving it some proper attention when I get back too.
Friday: end of term.
Worked from home as feel a cold coming on. Typical.
Mostly tidying. Writing up. Making sure everything is handed over smoothly. Some tech chat.
Now it’s 9.30pm and I’ve just sorted out some Skype refunds, and hit Inbox Zero. Holiday time.