The Daily Parker

Politics, Weather, Photography, and the Dog

Hidden complexity in software could be a problem

The Atlantic worries that there's a "coming software apocalypse:"

There will be more bad days for software. It's important that we get better at making it, because if we don't, and as software becomes more sophisticated and connected—as it takes control of more critical functions—those days could get worse.

The problem is that programmers are having a hard time keeping up with their own creations. Since the 1980s, the way programmers work and the tools they use have changed remarkably little. There is a small but growing chorus that worries the status quo is unsustainable. “Even very good programmers are struggling to make sense of the systems that they are working with,” says Chris Granger, a software developer who worked as a lead at Microsoft on Visual Studio, an IDE that costs $1,199 a year and is used by nearly a third of all professional programmers. He told me that while he was at Microsoft, he arranged an end-to-end study of Visual Studio, the only one that had ever been done. For a month and a half, he watched behind a one-way mirror as people wrote code. “How do they use tools? How do they think?” he said. “How do they sit at the computer, do they touch the mouse, do they not touch the mouse? All these things that we have dogma around that we haven’t actually tested empirically.”

The findings surprised him. “Visual Studio is one of the single largest pieces of software in the world,” he said. “It’s over 55 million lines of code. And one of the things that I found out in this study is more than 98 percent of it is completely irrelevant. All this work had been put into this thing, but it missed the fundamental problems that people faced. And the biggest one that I took away from it was that basically people are playing computer inside their head.” 

I'm not sure that there's a coming apocalypse. Things get more complex; we have adapted pretty well as a species. I imagine taking any of today's top technologists forward 1000 or 2000 years (or even 100 or 200) and watching their heads explode. A bronze-age Egyptian wouldn't understand a telescope. An iron-age Roman wouldn't understand movable type. And Guttenberg himself wouldn't understand a light bulb, let alone the 1920x1200 LED monitors I have in front of me.

So I'm not too worried about an apocalypse. But as a programmer, I'm very worried about crappy software.

Also, it's interesting that the author singled out Visual Studio, which is the tool I use most often to write software. (I wrote all this blog's customizations with it, for example.)

Comments are closed