Software and neoliberalism


I think a basic distinction needs to be introduced here, between technical domains that function according to various logics, and the ideology (neoliberalism, for example) that says that society is a system that should function according to some such logic, the “should” typically being a mixture of description and prescription (akin to what Laruelle calls an “amphibology”). It isn’t the logic itself that’s neoliberal, it’s the deployment of that logic in a particular hegemonic social project.

Foucauldians and critical theorists tend to want to see technical domains as embedded in epistemic formations, the way e.g. “psychiatric medicine” is theorised by Foucault as embedded in a wider system of power/knowledge, characterised by a continuous two-way transit between power relations and conceptual structures. The argument I would make is that computer technology is fundamentally unlike psychiatric medicine, because it has its own hard, objectively specifiable, intrinsic constraints which determine both its own character and development, and how it can be ideologically embedded or reflected. The halting problem, for example, just is not a social artifact: there is no possible alternative ideological dispensation under which computation-without-the-halting-problem could proceed. It constrains absolutely and unilaterally what computation can and cannot be. Technological determinism!

Some familiar features of the way we use computers could be, and in all likelihood would be, different under counterfactual social conditions. You get a glimpse of a parallel universe when you use a complete Smalltalk environment, for example, where the entire system down to the lowest level is available for inspection and modification. Anyone who remembers tinkering with home computers in the 1980s will remember the moment when the grey IBM PCs started to take over, and a computer went from being something you hacked on (in machine code, if you were really good) to something you ran spreadsheets on. That’s an interesting story to tell; but it’s a story about how s particular software stack has been put together, not a story about the fundamental nature of software itself. Conway’s law states that “organizations which design systems … are constrained to produce designs which are copies of the communication structures of these organizations”, and that’s at least half-true at least half of the time. A corollary is that different forms of social organisation might well give rise to different designs for working software systems. In order to think software as such, one needs to think about what would remain invariant across such transformations; otherwise you’re just doing social anthropology, again.