🏡

Mistakes were made

Amidst all of the strategy and re-platforming and various bits of normal delivery things, we are trying to get better at building this app as a kind of loose federation. As I’ve probably mentioned six thousand times: everyone wants and/or needs their thing to be in the NHS App. Ok, fine, but how?

New teams are constantly asking to add a thing. Probably one new request every week. We also get new teams going “Oh hi, we’ve redesigned your home screen for you”, which rankles. Everyone thinks they can do it better. Mostly they don’t yet know what they don’t know about why things are the way they are. We could do more to help teams who are beginning to engage to understand how it all works. Certainly. And sometimes these other teams have really good ideas and I’d like to be able to incorporate them or build on them. We don’t have a good process for this yet.

In an attempt to make it easier for these teams to come at the work with the right mindset, here is a list of the typical problems we see:

  • teams over-estimate how important their thing is, relative to everything else
  • teams believe their thing is a discrete thing
  • teams can’t or won’t change their thing to benefit all of the other things
  • teams don’t realise how much variation there is in the live app
  • teams haven’t considered anything but the happy paths
  • teams don’t know what can and can’t be segmented in the app
  • teams come to us late, when very little can be changed

These mistakes are made so often that it is probably safe to assume that there are structural causes behind them. I’ve written about the incentives involved before. Every team here is responsible for some small domain, making it entirely natural to focus on improving that specific area. Occasionally, this works out. Most of the time, it leads to us shipping our org chart. We could publish guidance (we do, but there are major elements missing), run communities of practice (same), set up an assurance function (this too, but not for everyone), alter our structure (oh dear, please not again), or change the incentives (now we’re talking).

One challenge is that teams don’t know how changing their thing would benefit the rest of the app. That is hard analysis to do because it requires you to know about, well, everything. It mostly falls on us to do it for other teams, and we already have a version of this analysis, even if it doesn’t go far enough. Teams then need the time and willingness to act on the analysis. It is a lopsided arrangement, with us always telling other people how to change something they’ve put a lot of effort into. That’s essentially the other side of non-app teams saying they’ve redesigned our home screen.


Some people[1] showed me the sketch on Friday about how to rework a fairly chunky bit of the NHS App. It is an area of the app that involves about six different teams, making it a contested and complicated space. The sketch is precisely the kind of thing we get really worked up about – “Hands off!”, “The nerve of these people!”, etc – but it is also a very good idea. I’d like to pursue it. Doing so without pissing off all of my colleagues might be difficult. Or not. We shall find out this coming week.

I think our typical reaction to this kind of proposal is a mistake. We’ve been dealing with the realities of assembling and running this contraption for a long time, and sometimes we really do know better. But when you’ve been in the shit for too long, it becomes hard to see new opportunities clearly. We get fixed in our ways, a kind of learned helplessness develops, and we can be a little dismissive of new ideas. The problem with criticising anyone else for wanting tight control over the thing they administer is that we – the app team – do exactly the same thing. Everyone needs to change, us included.

Physician, heal thyself.


  1. Ralph’s post this week is about almost exactly the same thing, which I only realised when adding this link. Go read it, please! ↩︎

All posts: