Doc Searls wrote a magnificant column for an upcoming issue of LJ. He uses the movie "Matrix" to raise issues similar to the one I'm about to raise. His upcoming column should be considered a must-read for anyone who cares about free software and free speech.

The world depicted in a different movie, "Brazil", is similar to that of Matrix in that it is governed by controlling self-interest. Freedom, as in free speech, is a partial cure for controlling self-interest, which is what makes the concept of free software superior to any other type of software. But there's more to free software than concept. There's implementation. And that's where free software sometimes gets into trouble with self-interest.

I like the movie Brazil, written and directed by former Monty Python member Terry Gilliam. I don't love the movie, because it's often pessimistic and depressing. But Terry Gilliam truly nailed some philosophical and social ills by making a caricature of them in the movie. It's the way he exaggerated the problems that makes his observations both poignant and funny, if sometimes in a dark way.

I mentioned Brazil in a presentation I gave at LinuxWorld Expo, and I was surprised by the number of people who haven't seen the movie. Perhaps I shouldn't be. It wasn't a box office hit, but it seems like the kind of cult classic that would appeal to many people I know in the Linux community. Regardless, I won't assume you've seen the movie, so I'll need to fill you in on some details in order to get to my point.

The world in the movie Brazil is one of extremes. Bureaucracy is so out of hand that it is almost impossible to accomplish anything at all. The paperwork necessary to get your air conditioner fixed is ridiculously specific and changes arbitrarily, making it seem like the paperwork serves no purpose other than to prevent anyone from having their problems solved. At one point in the movie, a renegade "superhero" repairman (played by Robert DeNiro) bypasses the bureaucracy and fixes people's air conditioning without any paperwork at all. Thanks to the pessimistic nature of the film, even he eventually gets consumed by paperwork (literally - he is attacked and defeated by papers).

Runaway bureaucracy is the extreme that most people notice when they see the movie. Many people with whom I have discussed the movie don't quite grasp another important caricature of the possible future, even though the symbolism is ubiquitous throughout the film. The air conditioning in apartments consists of hoses and wires strewn about without any thought to organization or easy of maintenance. Each phone has an old phono plug which you must insert into the right jack in order to make a connection. Computer terminals are little more than antiquated typewriters with tiny CRTs. The CRTs are too small to be useful, so each one has a big magnifying glass in front of it (which makes the image readable, if somewhat distorted).

You probably get the imagery, but do you get the point? Technology exists almost entirely for the benefit of those who control it, whether those in control are government, corporations, or both in cooperation. The producers of these products spare every expense and only deliver something that is marginally functional. No consideration whatsoever is given to making the products appeal to the end-user.

The concepts of competition and choice do not exist in this world. The characters in the movie are frustrated by the system, by the inadequate devices, and by the bureaucracy, but with the exception of some "terrorists", they seem to take it for granted that this is how it works, and that's just the way things are.

Brazil meets Microsoft

Why would anyone tolerate a computer terminal that is a typewriter connected to a tiny CRT and a magnifying glass? They would only tolerate it if they believed they had no choice.

One might just as well ask why anyone tolerated the constant crashes and reboots of Windows 3.1 and Windows 9x? Why does anyone tolerate the security vulnerabilities in all versions of Windows? Microsoft gets away with some of the worst software design in history because people believe they don't have a choice. Whether or not anyone truly has a choice is not the issue. Outside of our (fortunately, growing) world of Linux users, most people take it for granted that they will get Windows on the PC they purchase. They take it for granted that they will need anti-virus software to protect them. They don't usually know if the software or the operating system they use is spying on what they do. Those who do care don't seem to care enough to do anything about it. They are as resigned as the people who bang on the typewriters and stare into the magnifying glass.

Fortunately, we don't live in a world like the one in the movie Brazil where there are NO choices. We only live in a world where choices are limited, and people often have the illusion of choice when there are few to none, and the illusion that there is no choice when there are alternatives.

Brazil and innovation

Microsoft would be a perfect fit for the world depicted in the movie Brazil. Microsoft is more interested in serving its own purposes than serving the customer. Microsoft's primary mission is to eliminate competition, and by doing so, grant itself the freedom to ignore any further innovation and simply collect its "tax" on the service it provides. This is how it managed to get away with delivering one of the world's worst operating systems for so long. It had virtually no competition. All Microsoft had to do is sit back and collect its "per-PC tax" on every unit sold. Lacking any perceived choices, people put up with the crap that Microsoft delivered in the same way that the people in Brazil (the movie) put up with the typewriters and CRTs with magnifying glasses.

In the world outside of the Brazil movie, however, choices do crop up occasionally. Anything that resembles a choice makes Microsoft paranoid, and Microsoft does whatever is necessary to eliminate it. No competitors have a cash reserve or monopoly like Microsoft has, so in most cases Microsoft can manipulate its existing contracts, pay off competitors or strike restrictive deals with them. This is how it eliminated products like OS/2 and Corel Linux, and convinced Apple not to give preference to the Netscape browser.

Enter Linux. Microsoft can stop a company like Corel from focusing on Linux because Corel has Windows products to sell. But when it comes to Linux itself, or Linux-focused companies, Microsoft has no leverage. When it comes to free software, Microsoft has no leverage. Therefore, when free software threatens Microsoft, it has few other options except to compete fair and square. This is a good thing for those people who use Microsoft products. Does anyone really think Windows XP would be as stable as it is if it weren't for the emerging threat of Linux as a viable alternative? Microsoft never focused on stability until Linux gained notoriety as an operating system that never crashes. Similarly, once Microsoft won more than 50% of the browser market share, all work on Internet Explorer came to a crashing halt. It was only after Firefox became a credible threat that Microsoft went back and added competitive features.

If you're like me, however, you have more hopes for free software than to relegate it to the role of keeping Microsoft on its toes.

Brazil meets Linux

Unfortunately, there is a little of the Brazil world in Linux, too, which is the ultimate point of this column. In the world of Linux, however, the limiting force isn't one of controlling self-interest. It's simply about self-interest. It is self-interest that often makes free software self-limiting.

Granted, controlling self-interest, which is what motivates a company like Microsoft, produces much more dangerous software. The funny thing about Microsoft's software is that it's sometimes easier to use at the start of its life span than free software. It only falls behind in ease of use as soon as the "controlling" part kicks in and there's no more motivation to innovate. In contrast, a lot of free software starts out with self-interest as the motivating force. So while it may be more functional and less dangerous (in terms of stability and security), it often lacks ease of use.

Why does so much free software lack ease of use? Free software in general is born and raised to scratch an itch. In many cases - certainly not all, but many - once the itch is scratched, the application ceases to be interesting to the people who are best equipped to make it better. Put another way, many free software applications are ready when "it works for me and I know how to use it". If it's a project that involves more than a lead developer and a few contributors, you can modify that to "ready when it works for us and we know how to use it".

What you end up with is an application that, to the end user, doesn't seem all that much better than the typewriters with CRTs and magnifying glasses. Only in this case, the problem is that the developers haven't come to the realization that they are not alone in this world. Once they've satisfied their own self-interest, there's no point in wondering how others feel about things like the user interface, or how well it integrates with other software and hardware.

A case study in self-interest

This is why programs like digiKam (a KDE photo management tool) and F-Spot (a GNOME photo management tool) have similar unintuitive methods of saving photos to a CD. In the former case, you select an album and then click the menu selections Album->Export->Archive to CD. In the latter, you select pictures and then click the menu selections File->Export->Export to CD. In sharp contrast, the Linspire Lphoto program has a menu all its own labelled "Burn CD".

This isn't an isolated case with these three photo management tools. You have to select Image->Email Images from the menu to email images from digiKam. You have to select File->Send Email to email an image from F-Spot. Lphoto has a big button labelled "Send EMail" on the main screen.

Why is there such a big difference between how friendly Lphoto is to the user vs. digiKam or F-Spot? Because Lphoto was created by Linspire, which was designed to compete with Windows. Linspire designed Lphoto with the goal of winning customers away from a platform that offers easy-to-use software. Linspire is certainly motivated by self-interest, but it also accounted for the interests of the end-user. So it isn't a matter of Linspire not having self-interest. It's a matter of Linspire not settling for what worked well enough to satisfy its self-interest. It thought about the customer, too, and considered what kinds of customers would use the product.

digiKam and F-Spot, on the other hand, are programs designed by geeks, for geeks. Maybe if you ask the developers if that's what they had in mind, they'd deny it, and I don't think they'd be lying. But the user interface betrays their concept of what it means to design software for end-users. These programs are designed according to a geek's measure of when self-interest has been satisfied. The programs work. The developers know how to use them. People like the developers can figure out how to use them. So they'd probably ask, where's the problem?

The problem is that they haven't learned that the world is not limited to them, or people like them. There are people out there who view digiKam and F-Spot as only a minor improvement over using a typewriter with a CRT and magnifying glass. Sure, they're functional, but they're not designed to make things as pleasant as possible for the customer.

Self-limiting self-interest

Now here's the clincher. Lphoto is GPL. That's right. It's free software. So the problem is not with free software. The problem is that much of free software design is motivated primarily, and sometimes only by self-interest. Whether the self-interest is one of control, like in the case of Microsoft, or one of myopia, like in the case of software designed by and for geeks, self-interest is always self-limiting. Software can never reach its potential as long as the design is driven primarily or only by self-interest.

I think the designers of programs like F-Spot and digiKam have good intentions. I hope they, along with all the other geeks who design software for geeks, will take this self-limiting principle to heart and look beyond their own self-interests as they continue to improve their free software.


Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

Brazil - it's a team game.

Phill Rogers's picture

You're missing a major point in the criticism of open source coders stopping when their itch is scratched.
It's a collective (usually but not necessarily community) thing, involving much standing on the shoulders of others.
There are many aspects to a polished project:
Architecture design
UI design
Expecting the programmers to do it all is not only unfair but it's a failure to use the right tool for the job.
Once their specialist job is done, let each contributor get on with their part in the next project.

And with exquisite timing...'s picture

...TV viewers able to pick up UK Freeview channels can catch Brazil next Sunday (23rd July) on BBC4 at 10pm. Not sure which of the many edits this is, but the running time is 135 minutes and to my knowledge, UK TV has never shown the bastardized Sheinberg version.


self-interest expanded...

Paul Hubert's picture

In years past, I've written tools out of self-interest, but usually (also out of self-interest) designed or REWROTE to introduce or improve flexibiity and maintainability.

I wonder, however, who writes tools simply for themselves or for a very limited audience?

Doesn't some thought of 'I think this could benefit a wider audience' enter in? It could be pride, it could also be simply a desire to share.

Now, as to why a completely FREE effort sits and languishes could easily be a number of things as we already know. When there's ONE developer, personal issues (including finances, demands of 'the day job', etc.) are more likely to have a more significant impact.

Now, "Open Source" might _enable_ others to participate, but that raises the problem of entering someone else's code and mindset. And, collaboration doesn't always work well, as I'm sure most of us also already know.

I once created an environment designed to invite other programmers to participate. Essentially, no one came. But that was limited to the programmers where I worked as it was well before access to the WWW. With a much wider audience (it was also limited to a particular computer platform!), there might have been SOME chance...

When it comes to FOSS, however, how often there, or anywhere else for that matter, does any developer start a project strictly FOR someone else? Perhaps if she/he is helping some charitable/religious organization? Isn't SIL (Summer Institute for Linguistics) doing something like that for free fonts??

But, then the interest, itself, is likely to be more narrow (tho not with fonts, I expect! :-) ).

Chairman Gates vs freedom

Anonymous's picture

"Technology exists almost entirely for the benefit of those who control it, whether those in control are government, corporations, or both in cooperation."

It's that last bit that is diffucult: there are no significant safeguards to protect citizens from abuse by corporations. Even fewer to protect from non-profit or 'charitable' organizations. Historically, these have had relatively little reach compared to governments. But now with telecommunications, including what's left of the Internet, that reach is global.

Recent years have seen stronger attempts at merging the worst points of business and government, heading towards that Brazil-like state of controlling-self interest. It's possible that the next few years will see more serious attempts and worse infractions.

Take the U.S. as example: what happens when one interest controls the inner workings of a critical number and distribution of voting machines and tally machines? what happens when one interest has significant influence over the news media, both public and private? what happens when one interest starts to affect data formats and communication protocols to the point where they can be de-commoditized and controlled? what happens when one interest is able to buy up most of the Washington lobbyists relevant to its domain? what happens when one interest is able to target hundreds of millions in 'charitable donations' to block competitors and gain both mindshare and marketshare?

What then if a single interest manages all of the above and then floats their chairman as a candidate in the 2008 presidential election?

Priorities and ways of working

Seegras's picture

Well, I think the point with "Burn to CD" or "Email" isn't exactly a question of user-friendlyness, but of priorities. I never would have the idea to burn photographs on CD or email pictures. I put them on web pages and mail the URL. And since I would never do something like this, I would look upon such buttons as clutter, irrelevant, superfluous. Now, I am of course a computer person, so are the programmers, so I can assume that they've got a similar way of working like me, and thus set the GUI to priorities of what they consider reasonable.

> I never would have the

Anonymous's picture

> I never would have the idea to burn photographs on CD or
> email pictures. I put them on web pages and mail the URL.

And that means you belong to an invisibly tiny minority.

> I am of course a computer person, so are the programmers, so
> I can assume that they've got a similar way of working like
> me, and thus set the GUI to priorities of what they consider
> reasonable.

And that is indeed the point Nick Petreley is making. You
repeat it without grasping significance and implications.

That too

Anonymous's picture

Lphoto has a big button for publishing the photos to a web page, too. There's one for making a graphic the desktop background. There's a button for red-eye and the red-eye reduction works really well.

It is just overall much easier to use for average people because it is designed for average people.

That too

Anonymous's picture

Lphoto has a big button for publishing the photos to a web page, too. There's one for making a graphic the desktop background. There's a button for red-eye and the red-eye reduction works really well.

It is just overall much easier to use for average people because it is designed for average people.

More than one itch to scratch

rwp's picture

Brazil is my favorite movie. Like you, I'm surprised so few people have seen it; it's a real gem. Broadcast television aired it once. When I saw that, I called my mom and told her to watch it. Guess what - they cut the ending! Oy.

The movie is certainly a graphic, if somewhat hyperbolic, illustration of monopoly stagnation. I find another interesting aspect to the movie in that all the inefficiencies are absorbed by various levels of toiling middle managers. And when you finally reach the very top, then, well, let's not spoil it for anyone...

I'm not seeing the limitation of self-interest that you do in your conclusion, though. It's in Linspire's self-interest to compete with Microsoft. That's the itch they want to scratch. As you point out, competing with Microsoft (or Apple, etc.) on the useability front doesn't seem to be a high priority for many free software developers. I think that's just fine. Because there are others who _do_ care about such things.

I'm no Ayn Randian anarchist; I do believe that protecting freedom requires society to regulate itself via various restrictions and prohibitions, etc. I'm not trying to argue that unencumbered self-interest alone will take us to utopia. I simply disagree with the notion that free software developers should feel guilty about ignoring useability issues. It's their prerogative to do so. And if they choose to concern themselves with battling Microsoft and UI issues, well, that's their prerogative also.

Sure, the free software development process can make useability issues difficult to deal with. One of the hallmarks of useability is consistency, which is a rather difficult thing to impose on a choir of developers all doing their own thing.

But I wouldn't have it any other way.


Nicholas Petreley's picture

Yeah, that cut ending is Universal's "Love Conquers All" edition of Brazil. They cut out a lot more than just the ending.

Here's a decent (not great but pretty good) site with faqs and inside info on Brazil. It explains the internal controversy and why there are a number of different versions.

Unofficial Brazil site

I agree with your hypothesis

Mark Lillywhite's picture

I agree with your hypothesis that the drivers for both Linux and Microsoft are self-interest, but your solution isn't going to wash. In what way is it in the self-interest of the authors of DigiKam or F-Spot (disclaimer: I've used neither) to learn what a non-technical end-user wants? You don't address this, but I think that's actually the key. How do we get free-software writers to want to talk to end users? Talking to end users is arduous and frustrating, especially if you wrote the software yourself. So I think the answer is, "you can't". If such a scenario was likely in the open-source world then it would have already self-organised, years ago.

To me, this is the conundrum of free software. For many people, writing code is fun, and that's all it's about. That's fine, but it's why we see feature bloat, usability issues and untested code in free software. Some projects achieve a critical mass of developers who are, for whatever reason, representative of the requirements of end-users; but these projects are very rare, and neither the Linux kernel nor Apache would be on my personal list of such projects.

But we can't point the finger of blame for the problems of free software at the authors. They're contributing what they can. They can't "learn" to go and socialise with strangers who find fault with their software. Those that could, already have; and clearly it's not happening enough.

The problem, to my mind, is that end-users are not hiring enough developers. IBM, RedHat and their ilk have the same problem as Microsoft, being that their self-interest is not necessarily that of their customers. But Ford, Boeing, General Motors, and organisations whose business is not IT could hire developers who contribute usability patches to open source software.

So how do we engage the self-interst of these companies to get them to hire in the first place? And what sort of company would be interested in the usability of photo software? Wal-Mart?

Surely, a dozen software developers would cost less than the licensing fees that Ford or Wal-Mart send to Microsoft. These developers could contribute changes to OpenOffice to meet Ford's needs within months. I don't hear of it happening, but I think that's the general direction of the solution, and it's certainly why Linspire's software seems more friendly than Gnome or KDE's.

Free rider problem

Anonymous's picture

But Ford, Boeing, General Motors, and organisations [...] could hire developers who contribute usability patches to open source software.

Self-interest is the reason you won't see them do it: If Ford considers to spend a million US$ of changing OpenOffice, they can say: "Hey, maybe somebody else is going to spend the money to make most of the changes we want. And we won't have to pay for them, because Free Software requires redistribution. We better wait."

Everybody else, of course, argues the same way, and thus nobody hires developers to make the changes. The problem is known for all public goods, and is called the Free rider problem.

This is also the central problem of the Free Software philosophy: The negative effects of self-interest are usually controlled by competition but one day, Free Software will be the monopoly software stack. Who's going to care about the interests of consumers, then? Nobody will! The more GPL libraries spread, the more choice will be removed. The remaining projects will have no interests whatsoever in supplying what consumers want.

The result is just the same waste of resources as depicted in the editorial above.

To anonymous re 'Free Rider'

Anonymous's picture

To anonymous re 'Free Rider' problem:
At least if, in the future, entities (be they corporations, governments, schools, individuals) do wish to innovate, they'll have the source code to do so.

With the black-box system of closed-software this is simply not possible. The brains of thousands or millions of enthusiastic people out there that could be put to work improving closed software are untapped because they simply cannot get the source code.

Help is on the way

Joe Buck's picture

There's a very promising project that I think is going to wind up making things better for everyone: the One Laptop Per Child project. Even if the ambition of getting a cheap, rugged laptop in the hands of third world kids around the world is not achieved, those guys are doing some amazing work at addressing everything that makes free software unintuitive, or bloated, or fragile, and just fixing it. Like your Linspire example, these are people who are going beyond just scratching their own itch and addressing end-user issues. Since their target audience is children who have no experience of Windows XP, they are free to do the right thing, instead of being held captive by users who think that "usability" means "copy Windows XP, along with all of its oddities, because I know how to use that".

Microsoft buys people

joaquin's picture

Unlike the G7 or other wealthy countries a windows cd is not 400 U$S dollars, that would be highly unreasonable. As piracy is one of the biggest markets and competitor number one for microsoft, windows can be payed in montlhy fees or u can get your windows installed for a reasonable price compared with a linux box. but so whatever . m$ fear number one is the alliances huge companies make each other. Dell has made an alliance with Brazil goverment, it also has a proactive gpl policy. Deputees had sign and agreement for a total linux migration of public computers time limit 2008. The sad side of this story is that recently the Education and technology Minister has been fired. Why does microsoft has that tendeance of putting it s noose where it souldn't?? I worked for Dell here in my city. Sad thing though that every market M$ movement is against competition and a step towards monopoly, Every computer was Brazilian-Dell
joaquin from argentina