One might think governments would be good at software. They have: millions of users; massive complexity; deep pockets; bloated costs.

Yet they are terrible at it. They don’t use it as often as they should, they spend a fortune on it, they roll it out slowly, and the finished product is rarely good.

The multi-decade failure of almost all governments, everywhere, to build software tells us this is not merely a skill issue. It’s something fundamental to the way government works.

Onno Eric Blom is the co-founder of Herprogrammeer de Overheid (Recoding Government), a new Dutch foundation whose mission is to help the Dutch state build digital infrastructure.

He appears to have cracked it. In less than two years, Herprogrammeer de Overheid has delivered approximately 90 per cent savings on government software projects. Now the Dutch government, greedy for further savings, has established a new agency to roll out these ideas on a national scale.

The following conversation has been lightly edited for clarity.

Why build digital infrastructure?

Seán Keyes: Why did you set up Herprogrammeer de Overheid?

Onno Eric Blom: We have a background as a group of people starting the institute in the tech industry, and to us it seemed like the most credible pillar we could start with was state capacity — and then specifically digitisation of the state, because a proper digital government can deliver on services, can do it in a quick and user-friendly manner, and can do it without wasting a lot of money.

Whereas a government that is not digitised properly is basically being held captive by their own IT systems, and you see productivity in the state declining year over year.

The Netherlands of course has a reputation for great state capacity. Unfortunately a lot of that is victories from the past, where we used to have, for example, tax authorities where people from all over the world came to see how good we were at automating stuff. But this was in the 80s, and basically the systems have not changed a lot since then.

Seán Keyes: What does a really efficient and well-built digital infrastructure feel like and look like? Are there any examples of places that do it very well?

Onno Eric Blom: A toddler can use an iPad, right? That’s because this product has been tested with users over and over again to the point that it’s really easy to use and intuitive. And often government services don’t feel like this. This is a result of the way that they were built. So we try to bring the government into a position where it can build with its users and build iteratively, so services are as easy and intuitive as you would expect from a tech company.

Also, the way that delivery currently happens in most governments is by first creating policy and then sending it to agencies to deliver on that policy, which then procure IT systems, which then get built in a waterfall model. So basically by the time that engineers start building software, all of the really important design decisions — which would be called product decisions in a tech company — have already been made.

So if you run into the fact that, for example, most of your citizens do not understand a taxation system with 260 different points of incentives, the decisions have already been made in the policy phase and already been made in parliament.

Our foundation is currently called Recoding Government. The reason we called it that originally was obviously a nod to Jennifer Pahlka’s book Recoding America. It was also because, if you want to deliver good services, you need not only to build software in a different way — you need to build government in a different way. You need to build in a way where you basically start building prototypes and start designing services while you are still in the policy creation phase.

Do not use a waterfall process

Seán Keyes: So you’re saying that the way the government builds these software products is downstream of the way they make decisions. They make decisions about what they want — that’s called making legislation and drawing up regulations — and then, at the very last step, they hire a developer to go and build it. And in software terms, that type of process is called a waterfall process.

Onno Eric Blom: Yeah. To be very exact, you can do this thing where you make all the policy decisions beforehand and you’ve basically already decided what the product and service needs to look like, but then you still do two-week sprints and some people call that agile. Of course it has nothing to do with agile, because really all the decisions around legislation and design have already been made.

So what the pilot is that we’ve been doing is to do this type of work in a policy department while still designing the policy legislation. You cannot only build these IT projects for — I don’t even really like calling them projects, because it’s a continuous development kind of thing. The government approaches them as projects, which means that systems get delivered and then they stand still for decades. But obviously they should be continuously improved.

And by doing that in the policy creation phase, not only do you save hundreds of millions per project sometimes, but you get way better services and way better policy.

Seán Keyes: By contrast, the other way of designing software products is iterative. Before you talk about building in this way in the government context, do you want to just quickly sketch out what an iterative software development process looks like and why that makes sense?

Onno Eric Blom: Yes, of course. So the traditional, old-fashioned waterfall idea is basically you come up with the entire design of the system first. People who call themselves architects in government often do this — they come up with the entirety of what a system should look like and then you start building it. Of course, as it turns out, almost every IT project is way too complex to do this properly. You need to predict the future in a way that’s impossible.

So what the software industry has learned over time is to work in two-week sprints, where you come up with these very bite-sized ideas of what you’re going to build next. And as you run into problems and as you talk to your users while building the software — you talk to your users a lot, maybe even five times a week, and they tell you what’s shit about the current version of your product — then you steer into a different direction. You choose a different implementation. And if an implementation doesn’t work, you can roll it back and it’s two weeks of work, which is no problem whatsoever.

If you work in the traditional waterfall model and you run into problems or your users don’t understand it, you launch with a big bang. You just build the whole thing to spec, then you launch, and then your users start telling you that your product sucks — but it’s already been built and the building phase they think is over now.

Developer-legislators

Seán Keyes: So you have software developers — are they inputting into the actual drafting and creation of regulations and legislation and policies?

Onno Eric Blom: Yes, that’s what should happen. You shouldn’t consider policymaking to be an abstract thing you do in a building very high in the sky. When I talk to policymakers, often they are these macro people — this policy should have this result for this percentage of the population, et cetera — very high-level stuff.

But when you deliver services, and to be honest almost everything the government does has services as an endpoint, then you should really think about whether, during the policymaking, you should try to see what a prototype would look like for how this would play out in practice. Which also means prototyping whether you can actually get this information from other departments — this is often a big problem in governments because the data warehousing and infrastructure is not great.

So you try to build at least a prototype of the actual system, which also means thinking about how your agency will deliver on this policy. It’s not just about policy at the macro level but also how your agency delivers on it. We always draw this triangle: policymakers, delivery — which means agencies — and then the technical team. That should basically be a multidisciplinary, holistic team which works on creating this policy, which means they look at it macro but also micro, and also at the technical implementation, and also how this works out for citizens in practice — by showing it to them and letting them tell you how bad your ideas actually are.

Seán Keyes: And in practice, does this mean that you’re asking policymakers to give up control? At some point in the process, are the software developers saying to the civil servants or the politicians, “Actually, you thought you wanted this, but in fact you want this other thing”?

Onno Eric Blom: Policymakers, surprise surprise, actually want their policy to be delivered. So as it turns out, policymakers like this a lot. They actually like working in two-week sprints and they like actually seeing the product and the service improve — the design improve over time. Policymakers are really not the bottleneck here. They really like it.

The people who don’t like it are basically the 50 per cent of government which is hired to be compliance officers — either in a legal way, or in a privacy way, or in a security way. And of course we need to think about all of these things. The problem is that the way these frameworks or tests or compliance hoops that you have to jump through are often structured is in this old paradigm of waterfall.

So if you tell your security officer, “Hey, we want to test with 20 users,” they’re going to tell you, “Well, that means you have to adhere to all the privacy and security standards that a service delivered to 50 million people has to adhere to.” And this, of course, is totally impractical and doesn’t make any sense whatsoever.

Better software at 10 per cent the cost

Seán Keyes: What have you built using this method?

Onno Eric Blom: The first project we started with was with the Dutch social benefits department. This was a redesign of how childcare benefits work. Currently in the Dutch system, if you are eligible for childcare benefits, you get these benefits deposited into your bank account and you wire that money to the childcare facilities as a parent.

But as it turns out, if it turns out afterwards that you are ineligible for these benefits, the government will come after you and try to get that money back. We’ve had a huge tax benefit scandal with this, with more than 10,000 families affected. Tens of thousands of parents basically had their lives ruined by this. So the Dutch government decided they don’t want this ever to happen again.

The new system makes two promises: the money doesn’t go to the parent, it goes to the childcare facilities directly, and if the childcare facilities are wired the money, then that money is never revoked. The state should be certain that they are eligible for this money. So just the IT component for this law was budgeted between €160 and €280 million. What we did — I think we were in talks with the social benefits department for about half a year. We convinced them, instead of outsourcing, to build it internally. That’s the only way to build it — you’re going to build it together in sprints with the policy people. So there’s no point in outsourcing any of this because you don’t know what you’re going to build.

They recruited the team on the government payroll to build internal capability, and we sent one person from our foundation who is a product person. We also had some very good and formidable civil servants on the inside. I don’t want to mention a specific number until the ministry makes this public, but let’s say it’s not impossible that it will get delivered for a tenth of the price. That is very much in the realm of possibilities. .

Seán Keyes: All right. I’m sold on the benefits and I’m sold on the method.

Is it difficult? One of the ingredients of this is that smart software people are sitting on the government side of the table and are not contracted, not outsourced. Is it difficult to bring in the right people on civil service pay scales, on government pay scales?

Onno Eric Blom: Yes, although I would say pay is not the biggest obstacle. The biggest obstacle is that good tech people do not want to work in a waterfall model. They just don’t. They know it sucks. They know they won’t be able to deliver and they don’t want to work this way. They want to work in an organisation that ships, that works with citizens and creates great things. So that is number one.

Number two, the way that government pay scales are often structured — at least currently in the Netherlands — is that you can join as an engineer and get paid relatively well in junior positions, maybe even mid-level positions, but if you want to grow into senior positions, you’re going to have to become a manager. There is no way to make a promotion really without becoming a manager. And most technical people, or at least a big part of them, don’t want to do that. They want to grow in their pay scale based on their technical expertise.

So one of the things we got into our coalition agreement is to redesign the pay scale system in the Netherlands so that you can make a career based on technical expertise alone. Because the thing we currently do — which is unbelievably stupid, and we don’t do it on purpose, we just do it in practice — is we don’t let these people make a career. They quit the civil service and then we hire them back as consultants for triple the price. And this is why government is filled with consultants, and most of them are former civil servants. They are actually IT people — Capgemini and companies like that — and these companies add, in my opinion, very little value.

Seán Keyes: I work on sort of infrastructure, complex projects stuff, which is a different domain. But we’re talking about a domain where the state is the client and one that is very complex. And the exact same dynamic occurs in which a lack of client-side capacity bottlenecks the whole thing.

Onno Eric Blom: I 100 per cent agree. If you allow me to be a little bit philosophical — often when we think about these issues, we think about them in a dichotomy of state versus market. People on the left are pro-state. They say if it’s important, the state should do it because it’s a right — it’s a human right to have housing, so the state should do it. Then people on the right say if it’s important then we should definitely let the market do it, because that’s where you get cost-effective goods.

The truth is that this is a deeply unproductive dichotomy to draw, because neither the government nor the market is going to do everything. They’re going to need to contract many things, and even if they contract these things, the question is how you shape that market. The productive question to ask is: how should the government interface with the market?

You look at what you actually need, which means the government needs to have far more expertise about the thing they’re actually buying, instead of outsourcing responsibility. They outsource very specific needs which actually exist in the market.

To give you an example, our VAT tax system was just outsourced. They literally created a competition for who should build the VAT tax system, and it was framed as an off-the-shelf idea — as if there are off-the-shelf VAT tax system companies — for €200 million. It doesn’t exist. So they gave this to an American company, which is a big problem in terms of sovereignty, to let your VAT tax system run on American tech. But also it cost €200 million, allegedly fixed price — of course it’s never going to happen, it’s going to have massive cost overruns and run into the billions.

What they should have done is asked themselves the question: what does a VAT tax system consist of? That means application, security, hosting, et cetera — you can buy these actual things because there are actual markets for them. And then you can buy it in a modular way, where you say one company can never own adjacent parts of the tax stack. And then you probably could have bought it for €20 million. Maybe I’m off a little bit, but it’s definitely the right order of magnitude.

Seán Keyes: But to do that, you need people on the government side of the desk who are capable of understanding what you just said. You’re talking about a massive upgrade of talent and resource and capability into the system, just on the software side, just to build software-focused delivery. That’s obviously an HR challenge and a process challenge — how do you think about that? Is it something where you could have, say, the Netherlands digital unit which works with social security, health, education separately? Or does it need to be a broad-based thing where every department from the ground up needs to be building this kind of competency into itself?

Onno Eric Blom: This is a great question. After working on this first project, of course we realised we’re not, as a foundation, going to be able to help every part of government. So what we should do is create a government digital service that can do this work— a Dutch digital service — which is in our current coalition agreement. We’re very happy about that of course.

What this body should have in terms of mandate is that any IT project above €5 million should go through their standards, and these standards are basic stuff like: you should have validated this with your users, you should build open source if you can, you should have a test-and-learn methodology.

Seán Keyes: And this is every IT project over €5 million?

Onno Eric Blom: Yes, every IT project. And then, of course, most departments don’t know how to work in this way yet, so you can block their ideas from starting, but also you can say: if you don’t know how to do it in an iterative, test-and-learn way, then we can help you in a strategic, tactical, and operational way to actually have an alternative for procuring it or for doing it the old way. That means sending in multidisciplinary teams and assisting them in what I would call digital transformation — it’s really about organisational transformation.

So you create a hub-and-spoke model where in the centre you have the digital service, which manages and hosts maybe a few central services like a sovereign cloud and maybe a central government website where everything can be found very easily. And then a decentralised hub-and-spoke system where you coach the rest of government to be able to do it in this way as well.