Introduction
Note: Yes, what I’m referring to as AIs are LLMs.
AI integration into programs is becoming more and more common. Although “Arch Linux tiling window manager elitists” may roll their eyes when they hear people raving about how great it is that AI is being integrated into everything, there is one critique that I have not heard.
This is not an article to present an opinion for or against AI, but one to present one of the absurdities that comes with integrating AI into everything. I am of course referring to a clear breach of the Unix philosophy.
What is the Unix philosophy?
The Unix philosophy is a philosophy in computing. It states that every program on a computer should do only one job, and do it correctly. For example, it would be stupid for your email client to have its own text editor; it should use the systems standard text editor. Your email client’s sole purpose should be to send and receive emails. Most email clients do have their own text editor, which I consider a bad thing. My email client (muttwizard/neomutt) uses NeoVim (neovim) to write emails, which is a much more sensible thing to do. The Unix operating systems and their derivatives (i.e. Linux and BSD) are build around this philosophy.
Why is the Unix philosophy important?
There are many advantages to software built around the Unix philosophy. For example, it makes systems very modular; you can swap out individual parts of that system and have it still work perfectly. This makes systems very customizable, and easy to configure. To use the case of my email client, I am able to swap out the text editor to whatever I want, and have every program use that editor. Minimalist software that follows the Unix philosophy is far more extensible, and far more consistent.
How is AI integration breaching this philosophy?
The main problem with AI integration is that there is a chatbot in every program on your computer. Instead of there being 1 chatbot program, there are 50 different chatbots all in different programs. Not only does this cause UIs to be cluttered and inconsistent, but you can’t swap out what chatbot you are using. If there was only one chatbot program (whether the back end is hosted locally or on a separate server) that every program integrated itself with, you could swap out what chatbot you’re using, and have a far more consistent experience. I must mention that this should only be in programs that actually benefit from having a chatbot; not every program needs one!
However, we definitely won’t see this in the world of proprietary software because each program wants to push their own AI model. This is yet another reason to use open source software, although hardly use AI so this doesn’t really affect me.
Contact me
If you have any questions, comments, or feedback, you can find my contact details here.