When I saw the failure of healthcare.gov I thought, Maybe now engineering will get the respect it deserves. The consumer portal critical to Obama’s Affordable Care Act, which has been failing each day since its release two weeks ago is yet another display of why high-quality engineering matters. This calamity – avoidable, predictable and a disaster for our President, his signature legislation and the public – is proof that engineering, and the process of creating great software, matters much more than people realize.
Good process engenders high-quality products. When you see a broken image on a website, or an automated email that doesn’t make sense it’s not just the email that’s broken. It’s the process of which it is the result. Maybe the developer was too busy to pay attention, or maybe QA has a bug. Maybe the writer introduced an error just before the message was sent, or maybe the server wasn’t prepared for the load. Regardless of the specific reason the fix will come in the form of a better process that makes this error less likely to happen next time.
The same is true for healthcare.gov. We’re now learning that the site had little testing and will take months to fix. Eventually, the teams working on this will get there, but unless they’re fixing the process through which this mistake occurred in the first place it’s bound to happen again.
Better software across all industries, to me, is what the excitement around Learn to Code is trying to achieve. It doesn’t mean everyone will be writing software, but it does mean everyone will be listening to engineers. Beyond the celebrity interviews, teaching everyone to code is about teaching everyone to respect the difficulty, subtly and importance of thinking about engineering as a core competency, not a simple add on to the process of serving consumers. Other countries like England are already doing this. They’re beating us in their respect for data, engineering and process, and it shows in everything from consumer’s interactions with the NHS to the legibility of their gas bills. “Learn to Code” is the primal scream of engineers who need better process to do better. It’s about giving engineering a seat at the table.
Maybe Obama’s “tech surge” is the right approach – it’s certainly a broad enough PR phrase to encompass truly refactoring the process to produce good, stable software. The problem is that we won’t know for a while. That’s the thing about process: from the outside you only get to judge it by the outcome, and new outcomes for healthcare.gov appear far away.
Instead, what we can do is continue demanding more respect for engineering and an engineering mindset everywhere. If more people knew how hard it is to create high-quality software we would be given a greater voice in its creation. How often do business school students who’ve never written a line of HTML ask engineers to “just build them a website for their great idea?” At core, theirs is a lack of respect for engineering, and one that Learn to Code promises to ameliorate. That’s unquestionably a good thing, and I think we’re making progress. Hopefully, the failure and fixing of healthcare.gov will help, too.