complexity

The Facebook Method of Dealing With Complexity

Computer systems used to be weak, so we had to make their world simple and standardized. They now can handle almost endless complexity—but we still need to understand how to make the world simple, so we don’t risk burdening the majority of users with the needless complexity of the few.

One of my mentors, the late Harvard Business School professor James McKenney, used to tell the story about how he, in the early days of computers, was asked by Sears to come up with a computer system to automate their inventory. He quickly discovered that keeping track of just one category of product—men’s socks—would exhaust all the computing and storage available in the world at the time, thanks to a large set of attributes (size, color, material, pattern, length, etc.) and the exponential effect of combinatorial complexity.

At that time, the world simply was too complex for the computers to handle. To automate their world, Sears would have to simplify it—combine some attributes into singular codes or leave them out, for instance—to make it automatable.

Since then computers have gotten immensely more powerful, storage practically free, and our compression algorithms more sophisticated. Now we can automate a lot more. But the issue of combinatorial complexity is still here—except now it is the human being who can no longer handle the complexity, especially when dealing with large, bureaucratically created computer systems.

Bureaucratic systems can get very complicated because there are many cases, some only subtly different. When the system interacts with a user, it has to go through many steps just to find out what characteristics the user has. Even if 95 percent of the users are the same, everyone has to do the work required of the most complicated 5 percent. The automated system winds up throwing at everyone the complexity that only a few actually have.

Here’s an example: A consultant from a large IT services company recently visited my office. We discussed the problem of large public systems—the kind you find in healthcare, tax authorities, social services, the military and so on. These systems are typically enormously complicated because they have to cater to a very complex world—complex because decades of dealing with the public and the public servants have led to an accumulation of rules, regulations, practices and traditions clinging to everything like barnacles to a medieval man o’ war. Consequently, these systems are rather likely to end up as project management disasters in the papers. (This problem is not new, and by no means limited to the public sector. The private sector probably has just about as many project disasters as the public, but is better at hiding them.)

As I see it, the problem is the architects of public systems seek to automate first, and then simplify. They put off simplifications because so many people would be involved in in the approval process. Simplification means choosing not to do something. That is very hard, because in professional environments there are many specialists who will insist that the specific complexity be included. The ones arguing for simplification are fewer and have less specific arguments. Even so, it would be much more effective to work the other way around: seek first to simplify, then to automate.

The IT consultant mentioned a specific example: “Gender” as a database record field. Rather naively, I thought there might be only three choices for gender: man, woman, and undetermined (as with an incoming accident victim or unborn child). It turns out to be much more complicated: There are, apparently, many classifications of gender aside from the main two, all pertaining to a very small portion of humanity. All these variations, in turn, trigger combinatorial complexity and everything becomes very complicated indeed.

On hearing this, I thought to myself—what if, instead of putting all the complexity into the systems from the start, we did it the Facebook way? Facebook only asks you for a few choices about yourself regarding age, gender, work title and so on. One of them sticks in my mind. When it asks whether you “are in a relationship,” it presents only the alternatives “Yes,” “No,” and “It’s Complicated.”

(Yes, I am aware that Facebook has a much more elaborate set of answers now. See below and stop ruining my point.)

Some very successful bureaucratic systems won because they, effectively, did this. In the ‘90s, the Norwegian Tax Administration, under a dynamic leader named Bjarne Hope (who unfortunately died relatively young) decided that all the time Norwegians spent filling out their tax returns was not very productive— the government already had most of the necessary information from employers, banks, and other sources. Instead, the Norwegian Tax Authority pre-filled a two-page simplified tax form and sent it out with a very simple question: “Here is what we have about your tax year—are the numbers correct?” If yes, all you had to do was sign and send it in. (From the mid-2000s, you could do that via cell phone text message, and from around 2010, you did not have to do anything at all.) If no, you would write in the correct numbers next to the wrong ones, sign, and send them in.

In the beginning, this system only worked for around 30 percent of the population—those with only one job, a fixed salary, and only standard deductions. Year by year, with a combination of simplification of the tax code and new systems functionality, the system expanded and now works for about 80 percent of the population. My own tax situation is complicated: One main job, several side jobs, and I run a few small companies. Yet, last year I did my taxes by taking a look at my suggested tax return (online, of course) and then not doing anything at all, since it was correct. (I can also do my companies’ taxes online, directly from my accounting system.)

Most Norwegians think very highly of the Tax Administration, though they complain (naturally) about high taxes. All because they started with the premise of first automating the simple stuff, then continuing a process of simplification and systems expansion. A side benefit, of course, is that it put pressure on the politicians to simplify the tax code so that more people could simply accept their forms.

In my view, we need a lot more of “Yes, No, and It’s Complicated.” What do you think?

You’ll probably answer that it is, indeed, complicated…