Yet, just as evolution produced a thumb for the panda out of a wrist bone, so the modern movement retains obvious remnants of its geek past. Developers are listening to users to an extent that was unheard-of not too long ago, but free software projects remain oriented largely towards developers, and probably always will.

Short of a radical social mutation, the situation could hardly be otherwise, given the community's origins and purposes. In effect, insisting that the community be less geeky is demanding that it magically transform into something else. The most you can expect is more accommodation for people other than developers.

Moreover, the first free software developers were volunteers, free of the restrictions of commercial developers and often prone to questioning authority in the first place. Their preferences and predispositions made free software a highly political community, where everyone feels they have a right to critique decisions and debate processes.

Today, volunteers have been partially replaced in many projects by paid workers, but their political legacy, like the geekiness, remains. If anything, the fact that projects now consist of representatives of competing commercial interests, each advancing their company's goals while looking for common ground with everyone else, means that the modern free software project is more political than ever. To expect otherwise is about as reasonable as expecting elephants to become more aerodynamic. For evolutionary reasons, it isn't about to happen.

The Idealistic Core

However, where the free software community is most strongly bound by its origins is in members' enthusiasm for various concepts of freedom. What exactly the community means by freedom is the subject of countless articles, but can be broadly summarized as user control of computing -- in other words, software that users can use or change as they want and that has no back doors, digital locks, or other devices that intrude on privacy or limit users' control of how their computers are used. As a corollary, it also means software that users can learn to modify and configure for themselves.

Opinions are divided in the community about how best to obtain that freedom. For those who use the term "open source" to describe their beliefs, freedom is best obtained by the ability of developers to code as they want. By contrast, free software advocates express more concern for freedom for all levels of users.

Beyond that, the political distinctions get murky. For example, while some open source supporters care chiefly for developers' freedoms, others see freedom for developers as the first step towards freedom for all. At the same time, although the free software position sounds superficially more egalitarian, some interpretations of it can be as elitist as some open source positions. Still, what the two positions have in common is a belief that, like Jeffersonian democracy, free software assumes an informed and active community, and works best when it has one.

It is this concept of freedom that is the distinguishing feature of free software. Without it, the movement might find more acceptance, but, if the community ever managed to cut itself off from its roots and become less political, then it would no longer have a point. Developers would no longer have a mission to make a better world, and corporate sponsors would no longer have a more efficient and cost-effective alternative to in-house development and secrecy.

Instead, developers would become hobbyists, and users do-it-yourselfers, no different from weekend artisans who stubbornly insist on using handsaws and hammers when chainsaws and nail guns already exist. For the technically-minded, free software would continue to have a certain fascination, but, for many of those currently involved, free software would cease to have any purpose.