Weeknotes 05×02: Modularise all the things

Monday

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.

Wednesday

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

Thursday

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

Friday

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

Weeknotes 05×01: On comms curation, professional synchronicity, and my own flow

Meta Business

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

Usually I take a week off every 6 episodes – this time round, it was two weeks. But it was a deliberate decision – I needed the rest, Feeling pretty tired in the run up to the end of the year, and trying to lift some of the pressure on myself. I’m going to go back to some fairly unstructured notes for a bit too; no season aims this time, and length/style of notes will be as needed.

I’ve also started using the open source Diary software on my phone, for no reason other than it’s open source? I like the Markdown approach too, and the way you can add in maps for where you are, but it’s so far looking harder to get the content out into other places. And TBH, it was pretty bloody hard with Evernote, anyway.

Monday: Communication as Curation 

Trains. Times, routines, patterns, rhythms. All to get not somewhere, but anywhere. An infrastructure to allow flexibility, mobility. Go anywhere, do anything.

Lewes

Tunneling through the boarded up walkways at London Bridge, I notice the signs and boards standing out. Travel disruptions, station constructions – everything is in flux and subject to change. When things change fast, clarity of information is key.

The structure for clarity needs to be in place before it’s needed. The process for feeding into that structure needs to be smart, and understood as an artisan aspect of communication.

Communication is about curation. Working it what not to say, as well as what to say.

Shoreditch

So many plans today. It feels like we’ve gone from no plans to too many plans. What’s the best way of organising them, interleaving them like shuffled cards?

If I follow my thoughts on structure before process, should I establish a theoretical structure for priorities before going any further?

Wednesday/Thursday: Is Sychronicity a Job? 

Flurries and fortitude. A scrabble to sprint, the scrum feels as organised as it could be.

It’s odd having a few days out of the office at this point. Everyone that’s been in is heads down in detail. Everyone else needs a higher level conversation. I don’t like to distract people from the details, but it’s a necessary evil. I spend a lot of my time working out who knows what, and who needs to talk to who.

I’ve come to conclusion that this is scary I bring to the job. Synchronicity.

The problem is, it’s not a formal skill. It doesn’t get recognised as a tech skill. Maybe it falls under “project manager” or “leader” or something, but it’s a strange and hard art and is more important than a lot of other things.

But as a result of it being an internal awareness, an instinct more than a role, I’m not really sure where to go with it next.

Other weeknoters have noticed this and I should get in touch with them about it.
Also started categorising my week tasks according to whether I’m planning something, doing something, or supporting others in recognition of this “joining the dots”. These feel like useful categories to try to balance.

Friday: Flow Friday

Beta release day. Not enough closure focus? I can do context, planning and admin. I can do closure for myself. It’s a lot harder to clamp down across a team – so many people have been involved that disentangling them in order to close tasks is fairly complicated.

Hopefully I can learn from this for the next chunk of work. In fact, here’s a personal aim for the next 3 weeks: close as much as possible, as early as possible. Practice closure. Closure is agile.

Otherwise spent a lot of time today planning out code architecture on a giant white board.

This is my flow

Doing this, I realise how much I enjoy this – the sketching, the way it goes in with work planning. I’ve learned that the way code splits up (decouples) is directly related to the way the team splits up. And some people are driven by sticking headphones on and getting their mental teeth into a well-defined chunk of work, while others really appreciate shadowing and peer-working on a particular area.

So yeah, code design is my flow area, moreso than coding itself.
East Croydon
 

Workweek 04×06: That last little step…

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

It’s Friday Monday – what have I done, and what have I learnt?

On direct action vs teamwork

Been in something of a maelstrom this week, which has really highlighted the fact that I seem to have two main roles. On the one hand, I’ve been getting more 1:1s in the calendar and really trying to help other members of the team get a chance to reflect. On the other hand, we have a lot on and I need to be very hands-to-the-pumps with it.

So I’ve been helping others get on with stuff, while getting on with stuff. Which is fine, but the two are very different mindsets, I find. Pretty tiring to be constantly assessing whether you should do something, or delegate it (because someone else is interested, or I don’t have time). Whether to let people get on with something and learn from it, or step in to move the work forward.

It’s not a conflict, as such. But it does risk confusion as well as tiredness – confusion on my part if I forget what I’m supposed to do, and confusion for other people if they’re not sure if they can get on with something or need to check. Confusion and the slowness that arises from it isn’t a Welcome Thing, not when we’re super busy, and not just before Christmas.

I don’t really have an answer, if there even is one. But if feels like a tension that needs some sort of resolution – maybe changing the workload in the new year will help, or maybe it’s something more fundamental, structural, definitional that needs some further investigation.

Do all team leaders get this?

On tidying and doing up

One of the big pushes this week gone has been around company strategy. We (Stefan, Luke and myself as the senior management team) have been choosing the areas we want to focus on over the next year, splitting them up between us, and defining them. But to move things on, we meet to finalise this and actually communicate it to people. Otherwise whats the point?

We had a couple of meetings going through our thoughts (cobbled together into a Google doc), which I then added some basic formatting, structuring, and consistency to (plus an overview, title page, etc). By end of Friday it was looking much better – certainly good to present to the team on Monday morning.

It made me realise how easy it is to skip over the “decoration” stage – which feels like something separate to the apparent “proper” stuff, the content, the semantic meat. All this stuff is essential, but it’s also all just thoughts – core concepts, a record of decisions made and a series of reasonings. It says nothing to anyone else who hasn’t been part of that process. Or, at least, not very much, and that act of “saying something” is key. Layout and formatting is the UI of concept recording, along with the act and process of dissemination over time. A document without decent formatting is like a website that makes you want to stab your eyes out. A document that never gets passed around is like a website that isn’t linked to.

It’s a shame that we didn’t have more time/focus to consider this stuff, I guess. But at the same time, it’s very much an ongoing process and will roll out over the next few days and weeks.

It just made me think about how important that last little step is.

On the last 6 weeks

So this is “episode” 6 of “series” 4. As is my “tradition”, I take a week off weeknotes after 6 weeks to give myself a rest and a chance to reflect and start again.

At the start of this series, I identified 3 aims I wanted to make some change on. How did I do? Brief thoughts follow.

1. Tech direction – some serious thought time on this

  • Not as much time on kicking off our identified team aims as I’d like…
  • … However, there have been movements around VMs, environments, bug fixing, etc. Pockets of some dedicated time to get things going. Small pebbles, perhaps.
  • 1:1s have been useful in driving this – even if each person only has a single thing to progress over a month, that can add up to a lot over a few people.
  • Moreover, this has led to a lot of ideas for what to do next – I need to run a few internal sessions to go over a few key aspects of our work, so it’s not just me that understands the underlying concepts.
  • So a sneaky one this, and not as overt as back when we were having Roadmap meetings and the like. But some interesting progress being made, in among the busyness.

2. Have a finish line for our Storm Box project

  • This changed tack a bit at the start of the series, and I handed over my project management duties on this (very ongoing) project.
  • It’s not quite as clear a line as some of us would hope for, but we are hard at work on a Christmas delivery schedule (always a shudder), and more importantly, it feels like there’s a renewed effort in the team to really get this out of the way.
  • It’s felt really good to pick some task cards off our planning board after they’ve been up there for what feels like lifetimes.
  • Keep pushing, basically. I can see a light now.

3. Investigate “craft”: “Look for sharp edges, dissatisfaction, things that stick out and contend against the nature of the universe.

  • I’m not quite sure what to say here, but maybe that reflects a much deeper, more long-term shift than a lack of any change. Um. On the whole, I’ve been finishing days exhausted, but would describe myself as “busy, but in a productive way”. There’s a lot on, but it feels like we’re setting things up well, not just responding to needs with quick hacks.
  • What I realise, writing this up, is how much this depends on the team as a whole, and how much of the “craft” manifests as what gets made, as a result of the processes and pushes within the organisation. Is it possible to separate the effort from the outcome, or are they joined interminably like a torch and it’s light? I’m tempted to think the latter.
  • If that’s the case, my craft is something that both encompasses and cuts through everything – the craft of a team delivering something.

On other things

  • Exercise is awesome. Went for some walks in the evening, felt great the next day for it. Screen time in the evening is a killer.
  • We discussed a potential project on radioactive waste, which was a great discussion and really helped ask and answer some really difficult, but valuable questions around what we want to do.
  • It felt great to do some 1:1s with people I hadn’t talked to like that for over a year. If I didn’t have to do anything, I think I could easily just listen to people’s stories.
  • Induction for a new member of staff feels really streamlined now, even when we’re up against it with other work going on.
  • I got to meet Prem in Brighton again, who is looking for funding to help rebuild his home village after it burnt down.

On other places

On film

Workweek 04×05: On Choosing Lives and Organisational Filter-bubbles

About Me | RSS | Other stuff

Comments welcome via the blog, or to @6loss on Twitter

It’s Friday, I’m tired and it’s been a weird week. What have I done and what have I learnt?

The week started at 8pm on Sunday, really. #son2, excited and tired in the grey zone between bathtime and bedtime, cracked his bonce and gave us a bloody scare, literally. 999, late night drives, knocked down hospitals – it’s just how parents roll. A free ambulance service will always blows my mind.

Which all meant Monday was mostly cancelled in order to make the return to hospital. I had two interviews for our new en developer role lined up, which Luke boldly and graciously took on by himself. It also meant I had to leave the team to crack on with the work on custom data for Australia, which I had dearly hoped to have been supporting on.

Oh well, such is Iife. So this week was Wednesday (3 interviews), Thursday (Sprint planning) and Friday (Manchester for a Hive Pixie user group).

On interviews and the ability to choose lives

I think this is possibly the fourth time I’ve been through the entire process and round of interviewing, from writing the ad, filtering CVs, chatting to people and making a decision. It would be interesting to look back at earlier efforts (the last time was over 2 years ago) – I felt a lot more confident this time.

Subtle changes. For the job ad, I aimed for something broader than just “techie wanted”. In particular, I wanted to think about:

1) team fit, and communication in particular. I really value clear comms, and structures processes these days – a person can be a brilliant coder, but that’s not as important as a brilliant team.

2) avoiding tech “culture”, and I’m not entirely sure if that means anything beyond simply checking my self to avoid any subconscious biases. Everyone knows you should avoid using terms like “rockstar”, “ninja” and whatnot. (And if you don’t, here’s a great survey from 2011). But I’m curious (paranoid?) about other similar, yet unidentified language biases – gender biases in particular, as I would love to see more female coders*, but potentially other biases too.

So the application hopefully moved more towards a reflection of both company values and my personal values, as well as the technical needs of the company – but I’m no longer convinced that pure coding knowledge is the primary skill I’m looking for…

I was a bit apprehensive at first, as we weren’t overrun with applications – maybe I’d been too specific, or expected too much, or our tech stack wasn’t trendy enough, or everyone had already got jobs… But, fortunately, Kim pulled out some stats for previous adverts, and we were certainly no worse than previous rounds. Minor panic sort of over.

Fortunately (or through karma), the CVs were a good mix – probably better than previous rounds, anecdotally. We invited 7 and interviewed 5, and the final choice came down to between 3 people. I think that’s the first time that’s happened, and it’s horrible to have to turn people down. But it gave me faith in our hiring process as a Thing.

For the record, of the X applicants, Y were female (with 1 more which wasn’t clear). I also had another enquiry by email from a female developer, who decided not to apply.

The interviews were, on the whole, really good too – I think everyone was interesting, which is perhaps a good thing to judge your selection by. There were some great chats, a range of backgrounds, and I just really enjoyed hearing about people’s life stories. We always start with introductions and a (friendly) “why are you here?” question that gets people explaining their history and their current aims in life. Through 1:1s and Annual Reviews, I’ve really learnt (I think) to push people forward and guide them a bit, so there was a instinctual urge to do this with all the strangers I was suddenly sat in the same room as.

So yeah, each interview is a story, a life of its own, intermingled with other lives. It’s weird choosing one life to suddenly collide with. But there you go. That’s HR, innit?

* IMHO, there are aspects of the coding profession which are fairly lacking generally – a focus on “coding” (rather than design, resilience, communication, etc) for a start. From experience, many females have an aptitude for not just the logic of choice, but thinking through broader contexts. For some reason though, they’re far less likely to pick this up as a challenge though.

On the gap between raw users and the filter-bubble of organisational ritual

Got up at 5.30 am because it was user group day for Hive Pixie and so I got to go to Manchester because I is Product Owner (semi – on OCSI’s side of the partnership at least). This was exciting and a bit scary because we hadn’t run one before for this product (except for a different set of users a few weeks back, which I had to miss) and there’s always a good chance that people just want to groan and grumble at you.

From my experience with the XY user group last year though (and users generally), it helps to go into these things with a healthy mix of humility, direction, and inspiration. And a big notepad. So all fine.

Had a good chat with the taxi driver before getting dropped off at the lovely Great Places HQ. Introduced myself, did some listening, wrote everything down, and put in with some questions and rambled on about the difficulties of data a bit.

What struck me, and why I’m so glad I went, is the getting feedback direct from users is so rich – so visceral, almost.

What do I mean? Usually I’m fairly “protected” back in the office. I do software stuff and project admin stuff and write up stories and make sure we get input from our partners and our user support agents. That link to users via the last two is essential to understanding priorities. But, I know now, it’s also inherently only partial – a glass, darkly.

Back at the office, the feedback from users is always filtered through the processes and culture that we’ve established, and the inherent restrictions of both our tools and our written language. User support can tell me a user is annoyed, sure, but it’s still just a report. Partners can tell me something’s an important development, but I’ll still prioiritise it according to a rational comparative process.

Company process, and the environment, is a filter bubble. This is probably fine – it removes a lot of overhead and standardises work to make it easier, but it’s not everything, and it’s definitely not a replacement for the Real World.

The richness of user groups is the raw data. There are facial gestures and tones of voice which imply so much but can never be transcribed. There are short stories which aren’t unique except in the fact that a user has chosen to draw on them at that very moment, revealing – subtly – their mindset and all the connotations they attach to a conversation about what you’ve made.

I don’t know if there’s a way to capture that, and to translate it into “spec” – or maybe stories are the best way to do that, but our storytelling skills are too weak, or we get too caught up in formal definitions of “User Stories [TM]”. Maybe I’m finally just deriving the user stories paradigm from scratch. Dear God.

Anyway, like interviews, I really enjoyed it. It got me excited, because I know what’s possible, I love finding something to help people, and (hopefully) I’m in a position to do it.

On the go elsewhere

  • I worked on some of the company aims and strategy ahead of next week, felt productive.
  • I caught up with Alex for a 1:1.
  • I did some dev work, but mostly failed unit tests and peer-coding to debug sql.
  • I started some text for our handbook for guidance on remote and alone working.

On film

Bonus Haiku

A line of trees

Embroiled in the mist

Off to meet strangers

Workweek 04×04: On (Semi-)Mental Labour, 1-to-1s, and Pumpkins

It’s Friday. What was I mainly up to this week, how did I do it, and what did I learn on the way?

I had two days off in the middle of this week, so Monday, Thursday and Friday were hectic yet productive. On Monday I thought it was Friday and on Thursday I thought it was Monday.

On physical being, mental labour, and nurturing the miniscule arts

One thing I’ve been doing outside of work for the last two weeks is some exercises, after seeing a physio a fortnight ago. I’m apparently at that stage of life (says the physio) – kids and all that midlife crisis stuff – where I sit down and stress de rigueur and everything stops being bendy.

I’d noticed a general tiredness over the last few years (those 6am starts knock me out for the whole day) so it’s been really good to have someone basically force physical movement on me. It’s not been much, but I do feel more active – just the way I move around the office, really. But a little bit of added physical motion does seem to do a few wonders for the brain too. Engagement with mental work seems to be linked with an ability to use the body as a whole.

The history of mental work seems odder and odder, sometimes. We want “productivity” so we virtualise work, put the manual labour under the control of robots and algorithms, and yet still convince ourselves that staring at a screen non- stop for 8+ hours is the best way to Get Things Done. From experience, the art of mental working – the miniscule, daily art that goes into every single thing we think of – is clearly elevated if it is allowed to flourish: a growth which requires a sort of nurturing, just like a plant. The physical body must match the mind, as if we can employ our limbs as extensions of our neural pathways. And the chance to rest and recuperate must be built in, like going for a walk after a heavy meal.

I’m not saying I do any of this. On the contrary, I’ve noticed the discrepancy more as I’ve gone back to heavier coding, and writing up notes. I feel the drudge of banging out word after word, and find it grimly amusing when I know I should take a break, but the lure of keystrokes-per-hour binds me to some invisible treadmill. It all seems so foreign at times.

On the passion and process of 1-to-1s

I finally caught up with a couple of the team on Thursday and Friday, with some long overdue 1-to-1s. I’m not sure why they didn’t happen for a few months – I suspect a heady cocktail of holidays, workload, meetings, fresh plans and other important things. However this post on checking people’s flow state got me re-energised. (Louise Cato’s post on Experiments in 1-2-1’s is also very relevant here.)

As it happened, I didn’t manage to bring in an assessment of “flow” in the end. But it was good to catch up. And I think I do mean it like that – over the years I’ve played with how I do 1:1s, with various things to check in on (actions from last time, annual aims, logging what’s been happening for reference, etc.) and semi-structured formats for writing up notes.

But I think I was letting the process overshadow the “friendly catchup” aspect, and I suspect I stopped enjoying it, and started turning it into me assessing myself instead of me supporting others. Writing stuff up is useful, important and all that, but also a huge pain in the arse when you’re either busy (like, always) or you don’t have a good reason for writing down what you’re writing down.

So I’m still sticking to a skeleton structure, but it’s a bit more lightweight than before. I want to spend more time chatting, listening, offering support – not writing everything down so I can look back on it in a year’s time. I’ve told myself that scant notes are “good enough”. And whereas before I would list “actions done, actions not done, actions partially done, new actions, recent work, other notes…”, now it’s as close to this as I get:

  • Aims for next time / future
  • Actions
  • Notes

The first two of these should be enough to jog my memory at the next 1-to-1, I’m e conjunction with annual aims. The last is useful when it gets to annual review time. So far, this lighter structure fits better – fits my style at least. I don’t know if other people find things different though? Maybe I don’t need to?

On the radar

On account of histories

Other things that happened this week:

  • I went through the CVs for the latest job application round, A good, diverse mix and some good applicants.
  • I introduced Obi and Emma to the latest chats about our USA work, which felt good to bring other people in and lift it out of my head.
  • I went along to a local meeting and sat through a chat on the local neighbourhood plan, which reminded me just how much what we do can affect people’s every day life and the spaces outside of their front doors. I should write about this one day soon.
  • I had a chat about our underlying technology and what it could be useful for in its own right.
  • I made a decision to re-factor something, which may have taken a day, but I think it will save time later and definitely save lots of time later on. And more importantly, it will save confusion – which is especially important as I know I’m not around much next week to help out.
  • I made some unit tests, and fixed some code as a result. I am so enamoured with unit testing now.
  • I fixed a few bugs and issues with the websites, which was nice to get back to doing.
  • We had a Cava Carve-off using pumpkins from Joel’s allotment.

On film