April 19, 2024

The mountain of shit theory

Uriel Fanelli's blog in English

Fediverse

The year of the Linux desktop.

This year, did you know, is the year of the linux desktop. And it is good news, so much so that every year it is: we do not miss anything. And living in the year of the linux desktop is fantastic and unique, so much so that among my colleagues we are two or three who use linux, and the others are regularly in domain with their windows. That is, it is never the year of the Linux desktop.


Why the use of Linux as a work OS on personal computers has always been marginal, and always will be, is mainly due to the dullness and incompetence of those who make, and discuss, the Linux desktop. .

First of all, I would exclude a priori all those gentlemen who, not being able to own an SUV to measure their cock, use a discussion that sees the "vi" editor and the "emacs" editor opposing, two programs that were already old when I I was young.

Of course, having the "unix philosophy" and having good, robust, highly tested command line programs that compose each other is nice: except that, in addition to the controversy between vi and emacs, this megalorcheomachy does not produce anything useful. And it could (but I'll explain later).

The problem with the Linux “desktop” is that it is traditionally considered the graphical environment, that is, the great achievement is thought to be having a satisfactory graphical environment. This comes from two things: the first is a religion that sees APple as an absolute model, the second is that in the past just starting xwindows was a challenge, and the rest was spent configuring the window manager.

But the problem is that on planet Earth the word "desktop computer" means something different.

The word “Desktop” indicates a set of office automation services that you can access. Office automation is everything that improves your productivity in an integrated work environment.

It means I don't give a shit if Gnome has a cleaner interface, I care a lot more than how well it allows me to transfer a file from myself to my colleague.

Before a row of stunned bother to tell me "you can use this and that, open the terminal and do so 'and what'", I have only used linux for 27 years for work. I know it. I was there when these things were invented. We sent packs of pasta to Australia to thank the programmers who made Samba. I know it.

But the problem is that when a windows user wants to do it, he doesn't have to do this and that to move the file. He just has to move the file.

In a nutshell, that is, the reason why the linux desktop does not spread is that the scoundrels who make Gnome and Kde, but also other environments, have not yet realized the concept of office automation.

Just to do what a windows computer does when "logon" into the domain, I have to install 9 software, all of which are quite laborious to configure. And again I just scratched the feature set of Microsoft's domain.

Now you can talk to me about radius and LDAP and all that for days, but currently, Microsoft is light years ahead on this topic. Or rather: you wanted to stay behind, because you were too busy measuring your cock by discussing vi versus emacs.

Still under the heading "office automation", so far in the linux world I have not seen anything comparable to Microsoft Exchange. Not only for "mail": if you had ever read its features, how it integrates with the domain and with your OS, and with sharepoint, and with Teams, and with the messenger, and with Office … even this is unsurpassed, and not only that: let's say that there is nothing comparable.

Yes, of course, you will tell me about your office of 7 enlightened people who only use Linux with LDAP and SMTP, and that's okay for them. Repeat this for 10,000 clients without a 3000 systems team, and we talk about it. Because the point is that yes, maybe you can do the same things on linux, but you need a huge amount of system work, which instead comes already done in the windows desktop.

The point to understand is that there is no "desktop" as a rectangle of pixels that you see on the screen. There is a layer of office automation services that the person accesses by looking at them on a monitor, represented graphically.

There is no such thing for linux: the linux desktop is simply a rectangle of pixels that decorates the windows and allows you to configure the single computer: about how it will interact with the working environment, you can see little and nothing.

The linux desktop simply does not exist. It only exists if we redefine the term "desktop" as a rectangle of pixels, window decoration, and icons. But it hasn't been like that for at least 20 years.


I don't want to criticize too much the subtle hipster boozy of those who do Gnome or KDE. If they want to continue discussing icons and buttons, go ahead. After all, some find it interesting to understand whether it is better to keep the bird to the right or to the left. Who cares about the new KDE widgets?

The real problem is the landing elements who would like to have my age while I would like to have theirs (but only the age) and think they look more like an expert if they spend their time talking about command lines in Etruscan, hidden options of unknown commands, which by now can only be found with the “apropos” command of the Necronomicon, and obviously of vi against emacs.

The idea that the Unix philosophy is to have small, robust, tested and simple programs that interface with each other is an idea I approve of. I myself have been using Linux as a desktop at work for about twenty years now, even at the cost of scaling up my manager to get a permit when the rules dictate windows.

But the problem is, if you really believed it, now linux would have its domain equivalent and its Exchange equivalent, and all the necessary integration.

Which it is not.


Let's get to the point above. Why are there no equivalents of these programs in the Linux world? The answer will be that it is not possible, or is radically difficult, for a group of volunteers to write and maintain a codebase like the one needed to make Office, Exchange, the domain controller, Azure, etc.

Very true.

But not quite. Because Linux comes with nearly ~ 80,000 programs that really do everything. And if the jerks who spend their time battling the bird discussing vi versus emacs weren't the idiots they are, they would have noticed that a good linux distribution already had everything when it comes to the command line, and only interfaces are missing. .

Since developing the graphical interface to something is MUCH cheaper than developing the business logic, the result is that if these idiots, instead of discussing command lines and measuring who writes the longest line, had written graphical interfaces to the same commands, today they would have MUCH more office automation than Windows.


Let's take the example of writing an email client. It is a very simple job, because it deals with writing ONLY the interface. You certainly don't have to write the business logic, which is already written: there are commands like "fetchmail" and "sendmail" that do this. Your GUI just needs to call these commands. And you don't even need to design the database that contains the messages, because you already have the Maildir format.

It is, that is, to really follow the philosophy of Unix and to use those famous robust, stable, small and simple programs that combine together.

You don't need to develop "thunderbird" in full. You just need the graphical interface, and have some of the ~ 80,000 small programs available to invoke in the background. Everything is already there.

Likewise, writing a word processor is not complicated because you don't have to write everything already: Linux comes with LATeX, so you just have to write a graphical interface that creates LAteX documents. A program called LyX ( www.lyx.org ) does this.

Likewise, writing a spreadsheet program is not as complicated as with windows, because Linux comes with programs like R, such as Octave, so it is a question of displaying text tables that come out of these programs. And even if you want to do graphs, you can always call gnuplot, which is already ready and stable and tested.

Why is it important to say this?

Because Microsoft can write and maintain 500 Million Lines of Code without any problems, when it does Office. But you poor losers who do OpenOffice / LibreOffice don't kill us.

The Linux world has not managed to develop its own office automation because anyone who prepares to do so completely forgets the wealth of good command line code that exists, and starts doing everything from scratch instead of equipping the existing one with a 'graphic interface.

And of this, all those narcissistic jerks who spend their time grappling their dick discussing "vi versus emacs" and how to write a longer command line, rather than using this CLI knowledge to develop a graphical interface, are particularly guilty. .

There is no need for unfair business practices to beat you: you are so stupid that you screw it up your ass on your own.


And so linux struggles. thunderbird doesn't need to implement the email part, because it's already there, it's called fetchmail. And to send, sendmail would be enough with the appropriate command line. And to save, the Maildir format already exists.

Thunderbird could be a mere graphical interface to existing commands: the code would be simpler, and it would probably work even better. Ditto for Evolution, the attempt to reinvent Outlook: you will NEVER be able to compete with Microsoft like this.

When you have things like rsync, you don't need to develop crazy stuff to do what dropbox does with files. You just had to develop a similar interface.

And if we go into the world of browsers, the error is even more catastrophic. At Mozilla corporation they are so intent on measuring their pea using Rust that they have not noticed one thing: using tools like YACC, BISON, LEXX and co, it is possible and easy to write an html + css compiler. And even a javascript compiler is not very complicated. To see the Mozilla foundation losing only because it chose to fight Google on its own ground is sad.


Over the last 20 years, opensource programmers have wanted to challenge Microsoft on its terrain, that of writing immense applications from scratch. Obviously they lost. You can tell me as much as you like about Radius, no-domain and LDAP, but in the end, nothing competes with a microsoft domain controller anymore. And this considering the possibility of writing subsystems of ssh, it is incredible: it would be possible to do what a microsoft domain does if you only wrote an ssh subsystem that allows a domain controller to change some things in linux.

Hand. Those who make this kind of software will prefer to start over, starting from scratch, without having the same firepower. And without producing the same benefits.

In general it would be possible to produce enormously complex systems by equipping things that already exist with a graphical interface: just yesterday I heard a guy say “but with Virtual Machine Manager, virsh and KVM, who needs VirtualBox?”. I don't know, who needs it? Who has not yet understood that Linux has it all, and what is missing is the UI.


In short:

The linux desktop does not exist, at most there is a rectangle of pixels, more or less colored and decorated, capable of causing competitions on who has it longer using GNOME or KDE. The desktop in a practical sense, on the other hand, is a layer of office automation services that do not exist on linux.

At the limit there are "alternatives", which are poorer than those on windows because the few who have built the alternative have decided NOT to make use of the past heritage of cli programs, taking only the slightest effort of write graphical interfaces.

And the browser you are reading this page with could simply be the graphical interface to a compiler, which would save you two gigabytes of RAM for each tab.

But someone didn't want to. And as if that weren't enough, now he shoots the poses because he uses Rust.

If you don't like that the linux desktop doesn't exist, you can blame the following characters:

  1. those two who spend their time debating vi versus emacs.
  2. Those of Gnome that instead of doing four versions of the same shit of everything, doing a refactoring of everything, instead of writing graphical interfaces to the many powerful programs such as latex or gnuplot.
  3. Those of KDE, who instead of measuring the distance between pea and navel, making every hair of the mozilla icon cock configurable, could write a graphical interface for commands like sss, and make it easy to get domain.
  4. Those of LibreOffice and Openoffice, who started reinventing things that already existed from scratch, instead of focusing on providing an office-like UI for suites such as Latex, GhostScript, R, Octave, GnuPlot, postgres, and others.
  5. all those who spend their lives rewriting alternatives to the cloud, on a system that lacked only the UI to put on rsync (for files), fetchmail / sendmail (for mail), and so on.
  6. all those who spend their lives writing the browser and its engines, rather than an interface to a compiler.

in short, to all those who have not yet understood that the desktop does not exist as a rectangle of decorated pixels, but as an access point to a set of office automation services.

And therefore, that Linux has no desktop, which is why 2023 will never be the year of the linux desktop either.

And this happens precisely because of the Stallmann-like mentality of the pure and hard. Because actually, a HUGE successful linux desktop exists.

It is called "Android".


Is Android Linux? Just like GNU is Linux.

Android uses the linux kernel. The rest comes from the GNU consortium, so you should say GNU / Linux. Right.

Similarly, we should say Android / Linux when we refer to Android. The Kernel is linux, the rest is Android.

But if Android / Linux is a successful desktop and GNU / Linux is not, perhaps you should ask yourself if by chance, I mean by chance, the Vogon attitude of the GNU consortium has nothing to do with it.

And not at the level of behavior. At the level of mentality.

Leave a Reply

Your email address will not be published. Required fields are marked *