Capitalism and Computing

[linkstandalone] Capitalism and Computing

Why title this so provocatively? Well, it's true for a lot of reasons. (A) Let me get into the criticism, (B) let me provide a description (a fair one, I believe) of the current corporate landscape, (C) and a vision of the future.


The first point is the vulnerability and weakness we face in computing in a capitalist setting. Capitalism fluorishes when there is a centralized resource which can be owned, and rented out. That is, a central entity (the boss, the capitalist, etc.) owns a resource - a server, some software, etc. The only way to utilize that resource is to rent it out from them (which is even more true now that software is no longer really 'purchasable', but requires an annual license, or whatever).


Centralized resources though are the easiest to commercially exploit. It's totally possible to adapt a more diffuse and 'federated' system, where everyone runs a software/protocol on their own server. Of course, probably some people will still work on other people's servers for various reasons particular to their own situation - but there will be no central jackpot hit - ie a company - which makes 'cracking the code' extremely tantalizing. Hitting 30,000 companies and government agencies is much more tantalizing than hitting like 30.


To maintain the monopoly on the server... well, that's just regular capitalism. To maintain a monopoly on the software, they need to keep the source code on lockdown. No one can see it. This leads to a problem though - unlike in the open-source community, where flaws are public and fixed by the public (ie the masses of programmers who enjoy coding), a closed-source system requires using (A) a traditional corporate business model (which is not necessarily the most efficient thing for actually 'getting work done' - it is effective for extracting wealth from the labor of workers though), and sometimes (B) trying to cram into this a culture that emulates open-source - this means enormous companies whith many developers, with an ostensibly laid-back environment. You got to treat the programmers right, or else you get ugly software.


The problem with this is is you miss out on the combinatorial effect of having open-source software - having so many eyes on the software means bugs are identified faster. Having a non-exploitative model means that updates and changes to the software are made only (or at least overwhelmingly) because of the merit of that change to the software - no tangential considerations such as profit or 'cost-benefit' are factored in. There is no concern that your enterprise will 'look bad', no cloak beneath which the flaws can be hidden and left to fester. Companies try to make up for this by having lots of programmers, but closed-source still ultimately hinders this effort, and cramming it into a for-profit model slows and mutates organic development.


This is fine and good if you are just making a product - Adobe Photoshop might have a subpar development pipeline (Idk, just using as an example), but at the end of the day, it is a usable piece of software, and looks nice too. The problem is when you combine 'cloud based' rent-seeking behavior on an extremely insecure infrastructure with a closed-source model. The problem is, the 0-day can be anywhere, and a hack works regardless if everyone can see the code, or if only the company can see the code.


What this means is that (A) lots of businesses, government agencies, and individuals are lured into doing things on 'the cloud' - and this often means a few central hubs. (B) they are using closed software which has a high 'opportunity bounty' to crack, and only a select group of people is able to view it to try and fix it when it breaks. (C) This is a little tangential, but these companies collect lots of data on us, and store lots of data on us - as hacks like Equifax remind us, part of the problem is not simply corporate and government spying; it's the fundamental vulnerability of having millions of people's compromising information stored in central facilities, particularly if the software for those facilities is closed and maintained by a limited group of people, ultimately working for the 0-day-inefficient profit-motive. Part of the reason people shouldn't be liberally handing out their information (implicitly or explicitly) to centralized organizations is it is inherently exploitable by (A) those agencies themselves, but also (B) malicious rogue actors who breach those agencies and are more likely to more aggressively assault their victims (ie predictive social networks based on your geo-location vs identiy theft).


(Now I want to be clear about one thing here, and this is quite the socialist point - I am NOT arguing that software engineers and developers at the likes of Google, Microsoft, and Apple do not do the things they do because it fulfills them. Pretty much every developer does (although from reports of people in FAANGM, often it is the case you do soul-draining work). But it is the case that the capitalist framework they toil in means their labor-value is stolen (by billionaire executives, for example), and that their full potential is not realized.)


Don't Keep All Your Eggs in One Basket - and the problem with good non-commodities

Why do we have this system? Are there alternatives? Well yes, there are alternatives. Basically, the most secure we could be is federated server systems with open-source software running them. This is not a perfect solution - no solution will ever be - but it is about distributing information and resources, which not only disempowers the government and large corporations, but it gives the larger political-economic system greater security, as there is no 'central hub' which can be attacked.


The problem with this route, in capitalism, is that well, resources require money and capital. On top of this is the problem of advertising - how to get people to believe this, when corporate advertising (propaganda) inundates us with messaging that says otherwise? When anti-tech-corporation stance is associated with crazy alt-right? This is the problem we face in capitalism.


You might say 'start a business' - the problem is it's unclear what you would be selling. This idea that 'starting a business' is the solution for any problem is quite obvious when you run into a decommodified... thing is laughable. Linux, for example, is pretty damn decommodified. Companies that do traffic on Linux do not actually traffic on Linux - they traffic on having an out-of-the-box Linux experience, using good hardware, and presumably hardware that does not spy on you. PinePhone or Purism phones, for example, allow you to physically disengage features like the camera or bluetooth, as a way to ensure your privacy. Furthermore, they cut down on the spying your device does on you, and as many phones make it extremely hard to 'root' and install a different OS, simply the provision of hardware that you actually own is a marketable service. What is not the commodity is Linux - this is because if you have a device that is truly yours (ie you could do whatever you want to it, within the hardware capacity of that device (you ain't installing Linux on an abacus)).


So now we run into the big problem - how to get cheap laptops with Linux on them? We see chromebooks going for super cheap. Why can't Linux have that? Because, I presume, either (A) Google cuts deals with laptop manufacturers and/or (B) because there is not enough marketing for Linux, so it is doesn't seem a wise market decision for those manufacturers to put Linux on a computer... cause who is gonna buy an 'Ubuntu book' when there is a Chromebook? The problem here is that Linux cannot really be advertised by traditional means - who would actually do that? The Linux Foundation? Seeing as they are partly bankrolled by large corporations (not a criticism, just an empirical observation), this seems unlikely. Also even without the implied 'conflict of interest' issues with their sponsors, why would the Linux foundation waste money on advertising, when they don't turn a profit on the enterprise? It doesn't make sense. And they can't commodify it, because if they did, the Linux developer world would just fork Linux, and start a new project that was basically the same thing, and leave the Linux Foundation in the dust.


So now we can come back to the problem. Why don't people just go to federated servers running open-source software? (A) Partly because that software is unfamiliar - that gets back to the vicious cycle that prevents Linux from 'making it'. (B) Because for the individual business, it may make short term profit sense to go with a big corporation who will do 'the hard work' than run their own server (which would be less of a problem if people were a bit more computer literate, and if big corporations, like Nvidia, did not make it a pain in the ass to run basic hardware on Linux). (C) A networking effect - as more people use a certain ecosystem, more people get on it. This particular ecosystem is flawed and dangerous though. (D) there is a profit-motive for these corporations to keep their software closed (and thus vulnerable), to trap people into their ecosystem (such as by making devices 'un-rootable', as a very vulgar example), and to keep everything in central servers. And seeing as there seems to be no consequences for catastrophic failure, such as the Exchange hack or the SolarWind's Orion hack, then why do anything to enhance security in a structural way? We are gonna keep getting hacked and hit, and as we saw in the town near Tampa (that almost got poisoned by lye), this can have real world consequences. In a capitalist system though, these issues are brushed under the rug as an "oops", not recognized as symptoms of, and thus calls-to-action to change, a system which fundamentally absolves individuals of any security-awareness, and which is fundamentally insecure.