We face an important choice in our lives as technophiles, hackers, geeks: the choice between proprietary software and free/open source software. What platforms we choose to use are important. We have a choice between Windows, OS X, and Linux (not to mention the several less popular choices). We choose between Android or iOS. We choose hardware that requires nonfree drivers or ones that don’t. We choose to store our data in someone else’s cloud or in our own. How do we make the right choice?
I think it’s important to consider the basic motivations behind the software you choose to use. Why did the author write it? What are their goals? How might that influence the future (or present) direction of this software?
In the case of most proprietary software, the motivations are to make money. They make decisions that benefit the company rather than the user. If you’re paying for the software, they might use vendor lock-in strategies to prevent you from having ownership of your data. If you don’t pay for the software, they might place ads on it, sell your personal information, etc. When Cloud Storage Incorporated is sold to Somewhat Less Trustworthy Business, who’s to say that your data is in good hands?
In the case of most open source1 software, however, things are different. The decisions the developers make are generally working in the interests of the user. In open source, people work as people, not as companies. You can find the name and email address of the person who wrote a particular feature and send them bugs and questions.
An open source Facebook wouldn’t be rearranging and filtering your timeline to best suit their advertisers interests. An open source iCloud would include import and export tools so you can take your data elsewhere if you so choose. An open source phone wouldn’t be loaded with unremovable crapware, and even if it was, you could patch it.
When you install software on Linux, you get cryptographically verified packages from individuals you can trust. You can look up who packaged your software and get to know them personally, or even help them out! You can download the files necessary to build the package from scratch and do so, adding any tweaks and customizations as you wish. You don’t have a human point of contact for Facebook or GMail.
Yes, there is a usability tradeoff. It is often more difficult to use open source software. However, it’s also often more powerful, tweakable, flexible, and hackable.
Next time you decide what software you should use, ask yourself: does this software serve my interests or someone else’s?
I’m certain some readers will take offense at my language choice in this article with respect to free/libre/open source software - I chose my words intentionally. I’ll talk more about my opinions on the free software movement in a later post. ↩