The Free Software movement has at its core the idea that people have the freedom to use, study, share, and improve the software on their computers. The modern developer “ecosystem” has co-opted this to create a two-tier society: a developer has the freedom to use, study, share, and improve the tools and libraries that developer puts to use in creating software that must be accepted as-is, and used only in the ways permitted in the Terms of Service and End User Licence Agreement. I’ve got mine, so fuck you.
Your web application is probably split, broadly speaking, into a front-end bit that runs in the browser and a back-end bit that runs on somebody else’s computer.
The back-end bit is on somebody else’s computer, so you chose not to adopt the Affero GPL and don’t need to spill any precious freedom on the consumers of your service. The fact that you’re using Node.js (non-copyleft Free Software), a billion node modules (all most likely non-copyleft Free Software), losing your customer’s data in MongoDB (copyleft Free Software), and deploying on GNU/Linux (copyleft Free Software) with Docker (non-copyleft Free Software) and Kubernetes (non-copyleft Free Software) got you what you wanted quickly and cheaply, but there’s no need to permit anyone else access to those freedoms.
The front-end bit is on your customers’ computers, so you definitely don’t want to accidentally spill any precious freedom there! Even though you used a gallon of polyfills and shims (non-copyleft Free Software) and Angular (non-copyleft Free Software) to get what you wanted quickly and cheaply, there’s no need to permit anyone else access to those freedoms.
And of course you edited all that JavaScript with VSCode (non-copyleft Free Software).
The fact that the browser used to run that JavaScript might itself be Free Software is immaterial. The freedom to not have any freedom is not freedom.
That’s true in the mobile world too. Your free software compilers and runtimes and libraries all go to build opaque blobs that must be run as-is on somebody else’s phone, whether or not that phone has a kernel that’s Free Software. We got the bits to build our platforms and our apps quickly and cheaply, thanks to Free Software. We’ve got ours, fuck you.
But, you argue, this is all immaterial. People who aren’t developers, well, they aren’t developers, they can’t change software, why does any of this matter? Because, as all the crime dramas attest, people need motive, MO, and opportunity. Remove the freedom and the opportunity is removed: maybe someone would go out and learn a bit of programming if they had a problem they wanted to solve and the opportunity to solve it. Or maybe they’d go out and find a gigging coder, or a student who wanted a side project, or one of us pros who needs to keep their activity chart green in order to stay employable. Maybe we would benefit more from our jobs as people who change software, if there were more opportunities to change software.
The current division of software freedom into the haves and the have nots is arbitrary, artificial, and unnecessary.
Pingback: New top story on Hacker News: Open Source: because I got mine, so fuck you | The Internet Junkyard
I agree that it’s arbitrary and artificial, but I consider it a necessary evil, for the moment.
I would love to sit around and write and support free software all day. Sadly, that’s a virtually impossible gig to land. Customers will gladly pay $0, if that’s an option, and rarely a penny more. Companies occasionally pay (especially if you’re a big name in the open source world already), but only if you happen to make something of strategic value to that company. Governments have an interest in sponsoring knowledge workers to build tools for everyone, yet even so, it’s increasingly difficult to extract any money for this (the only exception I’ve found is if you happen to work for a government-sponsored research lab, and again, your subject matter is constrained to the point of being useless for almost everyone).
The minute my government institutes a universal basic income, I’ll release all my software as open-source, and celebrate. The only issue, to me, is money. I don’t happen to run a hundred-billion-dollar search engine that can sell ads to fund my other work. Of several methods I’ve tried so far, selling licenses is the only method I’ve found that works. My landlord takes cash or check, but not pull requests.
It’s a bit of a shame that I can’t release all my source code today, but from where I sit, it’s more like “Giant tech companies: we got ours, so fuck you”. The enemy isn’t the lack of desire for everything to be open-source. It’s simply the lack of funds with which to do so.
Pingback: Professional Development 7/17/2017 – 7/23/2017 – The Software Mentor
People have to eat to live. It takes money to eat. Giving away all your work for free is contrary to that major concern. People doing OSS already are doing it in their spare time or sharing code they already got paid for writing (and still own the rights to). Your rant seems like what all the entitled twats of the modern age are whinging about… they want everything for free. As a professional developer, I pay for tools I use that require payment and I don’t pay for tools I use that don’t require it. I charge for my work so I can eat. So fuck you.
Pingback: Professional Development – 2017 – Week 30 – Geoff Mazeroff
I can’t even find this argument wrong. There are people out there making money from Free Software (they work at Red Hat, Embecosm, Collabora, Canonical, Mozilla, Oracle, Apple, Google, Facebook, and elsewhere). Giving users freedom does not imply giving up any claim to financial benefit. It is a lot less protectionist than proprietary software development though.