To date, I have written very little about “Artificial Intelligence” (AI). I am disheartened and exhausted by this bubble and its associated hype — perhaps you are, too — and have felt little motivation to whinge about it here. What would be the point? There are already ample sources of smart criticism of the hype.1 In my own life, I simply avoid using these tools and do my best not to contribute to the hype or legitimize these companies in any way. Recently, however, the question was raised for me: how far does this boycott go?
Drew DeVault’s post, A eulogy for Vim, brought to my attention the fact that my text editor of choice — NeoVim — uses, or at least accepts, contributions written with the help of Large Language Model (LLM) programming tools. Drew, like me, tries to avoid supporting this bubble, so he created a fork of Vim from a point far enough back in its history that it is untainted by “AI.” The question for me, then, is: does my continued use of NeoVim contribute to what I see as a capitalist, fascist project? Do I come to the same conclusion that Drew did, i.e. do I need to find a new text editor?
Drew provided a link to the NeoVim GitHub repository with all the
issues tagged AI Assisted
. As I write, this search returns
0 results. I’m not sure if this is a bug in GitHub’s search, or if
these tags were removed because there was some kind of backlash.
Nonetheless, the broader question this raised for me remains
relevant whether or not it currently applies to NeoVim.
For some time now I’ve had a heuristic I use when it comes to the blogs I follow in my feed reader: I unfollowed anyone who was carrying water for the “AI” industry. In the web development circles I still inhabit, this usually took the form of posts describing how the author found a way to work with “AI.” I see this as carrying water for the industry because, at least at first, a lot of discourse around “AI”-generated code was that it all sucked. So anyone who went out of their way to come up with a use for “AI” in their work, or a way to micromanage it into doing something that didn’t suck was doing the industry a favor. It was free advertising for products that the companies producing them had largely failed to sell anyone on.
Typically, these posts did not even bother to mention the social and environmental harms associated with LLMs. Regardless of whether or not an LLM can be a useful tool for programming, the companies building these tools are engaging in a fundamentally anti-labor project. The people who run these companies have been pretty open about their desire for their “AI” to take your job. Why are you bending over backwards to sanitize their image a little and legitimize their products? And then we have the problem of the resources required to run models so large. It’s great that you figured out that if you prompt the LLM Just Right, and then check its output very carefully you get something usable, but have you considered whether or not that result is really worth the cost? At a time when we are fast approaching — and even crossing — tipping points for our warming climate, is it really worth keeping coal-fired power plants open just so you don’t have to write your own unit tests?
Whether or not “AI” works is, for me, beside the point. Even if these tools somehow worked flawlessly, they don’t justify the social and environmental harms. Therefore, I do not use them.
Which brings us back to the question of using tools that were built using “AI.” In an ideal world, I’d be able to put together a functioning computer using 100% hand-coded, artisanal software, but the “AI” hype machine is relentless, and these tools are beginning to pervade more and more software projects.
When I saw that NeoVim was accepting “AI”-assisted contributions, my first thought was, “Great. Now I have to replace my text editor.” But with what, though? Vim’s user interface is unique. Some other editors include “Vim modes,” or offer plugins that implement Vim-like navigation, but it’s never a full implementation of Vim’s interface — something I’ve used for decades. I’ve tried several times to move to another editor and I always come back to Vim because its way of working with text is so deeply ingrained for me. This is no doubt why Drew DeVault’s solution was to fork Vim: Vim is unique, accept no substitutes.
And where does that stop? There’s a lot of software — much of it invisible to me — that makes my computer run. Do I have to audit all of it regularly for “AI” use? Should I? Some software I might be able to replace relatively easily. If, for example, System76 started using “AI” in their COSMIC desktop environment, I could probably switch back to GNOME or set up a Sway desktop again. But what would I do if something like systemd or the Linux kernel started using “AI”? What alternatives do I have for something so fundamental to my computing setup?
Indeed, just this morning Drew wrote another post showing how to
replace rsync (a staple program for me) with
ssh and tar because
rsync is slop now.
And while it might be relatively painless for me to swap out
rsync for Drew’s cute trick with tar, this
post led me to the
Open Slopware
project, where, lo and behold, I discovered that the Linux kernel is
listed as one of the projects tainted by LLMs.
It may be worth noting here that I am not entirely on board with the use of the word “slop” to describe any use of an LLM to generate code. Slop feels most valuable to me as a term to describe art/media (writing, images, audio, or video) generated wholly by “AI.” It’s a form of content farming; a way to easily and quickly generate a lot of stuff that you can put on the web to attract attention. For the software equivalent, we have the phrase “vibe coding,” which, I think, has a set of associated problems that are largely distinct from the problems with “slop.” But expanding further on this is probably best left to a separate post.
So where does this leave me? I think it is reasonable to make the
moral choice as often as possible, even if one falls short of aligning
every decision one makes with one’s morals. So I don’t have to audit
all of the software I use and completely avoid any “taint of
LLMs.” Maybe that looks like sticking with Linux,
dropping rsync in favor of Drew’s solution, and maybe
even rewriting my entire NeoVim config in Vimscript so I can switch to
Drew’s
Vim Classic fork.
Or maybe what the Open Slopware project shows us is that
“AI” has become so pervasive that trying to avoid it is
nigh impossible. Choosing to use or not use a piece of software based
on their policy for “AI” contributions is probably not
really going to move the needle on “AI's”2
assault on the world. Perhaps it would be better to focus on tactics
other than boycotting and accept that some things are outside my
control. As they say,
there is no ethical consumption under capitalism.
For now, at least, I don’t see myself upending my computing life to play whack-a-mole with “AI” policies. I think that’s a fool’s errand. There are just too many applications listed on Open Slopware on which I rely that don’t have any alternatives whatsoever. What a time to be alive.
Footnotes
-
404 Media, Baldur Bjarnason, and Mystery AI Hype Theater 3000 just to name a few. ↩︎
-
Boy, insisting on putting scare quotes around “AI” every time I write it is getting awkward, isn’t it? ↩︎