Monthly Archives: March 2014

Drawing the Line

I’ve had some experiences recently where very devoted and thoughtful free software advocates have told me that they prefer not to consider the tenets of free software when they evaluate the merits of network services. They’re referring primarily to the essay from RMS that explains that other issues are more prevalent in that situation – people should avoid using services over software, and when using services, they should leave the decision about the software choice to the administrator of the server.

While I understand the arguments put forward in the essay, and I understand that people think that way, I tend not to. It seemed like a good idea to talk about the dissonance I have with other free software advocates.

In the prior generation of hackers, I think there was, and is, a lot of focus on being aware of what was going on in systems where you were active, where you had an account or spent time working on things. People wanted the source code to programs they actually ran, but programs they didn’t run weren’t as important. This is largely, I think, because single machines, or smallish clusters, held most of the computing power any single person would need. There were network services, but for the most part they were ancillary, or peer-to-peer, and the protocol or service backend didn’t really matter, and even if it did, it played such a minor role in the day-to-day computing of a person.

However, this generation, in my opinion, is far more focused on the web, and networks in general. We grew up working on the web, playing games, writing documents, even working on code, without necessarily running much code on our own computers. We matured in the time of Google Docs, Dropbox, GitHub, Facebook, Twitter, and the rest. Our lives are on the web, and software is slowly being pushed away from our computers.

Not that that’s a bad thing. For software like Google Docs, sure, it’s not ideal, because the software making the word processor (or spreadsheet, or presentation) is non-free JavaScript running on our computer. But the primary function of a lot of these services is to provide us with a centralized connection to other people using the web. We talk to friends on Facebook, we collaborate with people live on Google Docs, and so on.

So, the import to us is a bit higher. Especially for me, I struggle constantly with a need to be connected and a relative inability to accomplish connection. I can try to pull people into free, distributed networks like pump.io and MediaGoblin, but it’s hard to convince them that the benefits outweigh losing the network effect of Twitter or Flickr. While it’s easy for me to not use those services, it’s hard to not have a connection to people who are important to me.

So, we build web applications that help us connect and give us that nice feeling that the rest of the world is experiencing. pump.io springs up, Diaspora starts to work a little bit, free web games crop up every once in a while, and MediaGoblin provides a free image hosting service. But there’s still a big disconnect.

While I appreciate RMS’s focus on building normal-software replacements for SaaSS services out there, I’m going to look towards the future, and this generation of hackers, and what they need. They need something they can call their own while still feeling connected to the world. Let’s not fight the wave, and evolve with it instead. The AGPL already does a great job of this, but we need to throw our development resources behind it, too.

I encourage you to think long and hard before signing up for the next non-free web service. Encourage people to be a little more mindful. Run your own instance of a free service that accomplishes a similar task. Let’s move forward instead of still thinking like we’re in the past.