This is basically link propagation of Lars Wirzenius’s article “40 years of programming” which made the rounds a few weeks ago:
I think it would have been preferable to link the article directly.
I think they’re both good reads and so appreciate both authors’ points of view.
Why is software development political ?
Imagine a country made up of flurbs and blorbs. Flurbs make up the majority of the government and don’t recognise the existence of blorbs.
You are writing open source census software, do you include blorbs?
If you do, you get labelled a blorb sympathiser and the government stops funding development. Maybe throws you in prison.
If you don’t, you get labelled a member of the Flurbian autocracy and are orchastrated from the hugely blorb open source community.
If you add a togglable option, you’re still seen as sympathetic to the Flurbs because you are participating in oppressive regimes. And also supporting a blorb uprising by making them think they have a voice. Staying “neutral” is still picking a side.
So basically, you are forced to pick from a number of options based on your political (or strategic) view.
Everything is political
Because software controls so many aspects of our lives. If we dont keep it open and respecting of our privacy, lots of people suffer.
2 things:
-
Literal politics. Rarbg had project members volunteer to fight in the Russia-Ukraine war… For both the side of Russia, and the side of Ukraine
-
Drama. Contributing takes a lot of time and effort. People get attached to their ideas and contributions. When people start drifting apart and fighting, third parties have to play politics to keep people happy and working towards a common goal
Those are only secondary politics in software development. You missed the primary politics of software - the power struggle expressed through code itself. It comes in many forms. But perhaps the most obvious one is the attempt by software corporates to wrestle control and freedom away from the user using DRM, Trusted computing, locked down devices, dark patterns, etc and relegate the user to the status of a renter.
-
Political means more than just parties and institutions of government. Society and economy is inherently political. Who owns what is produced and the tools used to produce it is inherently political. Therefore software development, just like any other type or work or other economic interaction, is political.
It gives power over your users.