Structure and Interpretation of Computer Programmers

I make it easier and faster for you to write high-quality software.

Friday, August 7, 2020

Concrete freedoms

Discussions about free software or open source software can always seem a bit abstract. Who cares if I’ve got the source code, if I’m never going to read it or change it? Why would I want “free” versions of my apps when there are already plenty of zero-cost (i.e. as free as I need) alternatives in my App Store?

This has been the year in which Apple tightened the screws on the App Store, making it clear that anyone who isn’t giving them their 30% or 15% cut or isn’t Netflix or Spotify is on thin ice. In an Orwellian move, they remote-killed Charlie Monroe’s apps and told users that they couldn’t run apps they’d paid for, because the apps would damage their computers.

At the base of the definition of free and open source software are the four freedoms. The first:

The freedom to run the program as you wish, for any purpose (freedom 0).

This is freedom “zero” not just because of the C-style zero indexing pun, but because it was added into the space preceding freedom one after the other three were written. The Free Software Foundation didn’t think it needed explicitly stating, but apparently it does.

In a free software world, YOU are free to run software as you wish, for any purpose. Some trillion-dollar online company pretending to be a bricks-and-mortar retailer equivalent isn’t going to come along and say “sorry, we’ve decided we don’t want you running that, and rather than explain why we’re just going to say it’s for your own good.” They aren’t going to stop developers from sharing or selling their software, on the basis that they haven’t paid enough of a tithe to the mothership.

These four freedoms may seem abstract, but they have real and material consequences. So does their absence.

posted by Graham at 17:15  

No Comments »

No comments yet.

RSS feed for comments on this post. TrackBack URI

Leave a comment

Powered by WordPress