Recently, and once again, I have stumbled across someone (more or less) claiming the Year Of The Linux Desktop (wonder whether the acronym YOTLD already made it through) might be in 2019. And I wonder…
Well, throughout the last two decades, The Year Of The Linux Desktop apparently became either the ultimate vaporware or the ultimate running gag among techies, always good for longer threads in places such as reddit or Twitter. Needless to say: So far, this didn’t happen. GNU/Linux and “open source” software continues to thrive in certain server environments and developer infrastructure but still seems to have its difficulties on the desktop, ending up in developers building FLOSS web based applications on top of shiny MacOS laptops. And, in some ways, I think there’s not much likely to change about this anytime soon. Having been into desktop Linux as user ever since the late 1990s and early pre-releases of GNOME and KDE, I still see no YOTLD happen anytime soon. Looking at my personal and professional environment, I see a couple of reasons for that…
Target Group Limits
When I got into Software Libre back in the late 1990s by reading the GNU Manifesto, I was enticed by the idea of having professional-grade software developed in such a “collaborative”, open way, with business ideas placed all around to live off this collaborative effort without forcing people through restrictive EULAs. In 2018 however, things look a bit different: Though there indeed are projects living just like that, it seems the majority of FLOSS projects also in the desktop environments is driven by volunteer enthusiasts either in their spare time or for building tools to satisfy personal needs and requirements. A load of these people have a background in technology somehow, are programmers, systems engineers, CS students and the like. Chances are these tools work for them, and for all people alike with a similar background.
This is perfectly fine. However, not everyone out there is capable of writing computer programs, and people who are, in example, professionally into video or audio engineering might be neither skilled nor enthusiastic enough to even remotely consider writing their tools themselves. If they don’t manage to find a couple of developers ready and able to understand and accept their requirements, they will be left with some proprietary software as their only choice. Same goes for virtually any other field of specialization where dedicated software is required, for virtually everything beyond “standard” office, e-mail or web applications. We lack diversity here, and we are missing focus on non-technical professional end users. Personally, I always felt both a bit amused and concerned seeing applications that provide a plug-in or scripting mechanism and a documented procedure for programmatic extension even before a finished user interface and (end-user) documentation. This perfectly works for a tech-savvy target group – and possibly for no one else…
Diversity in all the wrong places
I wrote before that we lack diversity in the GNU/Linux or FLOSS desktop, which is a bit harsh. We do have diversity, but we have it in ways and places that are difficult to handle: There’s a wagonload of different GNU/Linux distributions and desktop variants of operating systems such as FreeBSD. There’s GNOME, KDE, XFCE and a load of other desktop environments or window managers for these desktops. There are bunches of different approaches to package management and software distribution, there are distributions with different variants of libraries, kernels, GUI environments (see XOrg vs. Wayland vs. Mir in the past), and much more. We’re left with a complex environment, and though this is good from a freedom-of-choice point of view, it’s difficult in other ways: For example, it makes moving applications to GNU/Linux for “proprietary” vendors more dificult.
Like it or not, but in my business environment, I do have a lot of specialized business software for things such as technical calculations, accounting, … which would very easily run on a GNU/Linux platform too but those in charge of maintaining them don’t even consider doing so because there are so many technical decisions to make that eventually limit the application to one very special GNU/Linux variant (distribution, desktop), while on MS Windows and .NET it’s way easier to have well-integrated development tools, commercial-grade support, API documentation and a runtime that allows for using your application on most of the supported versions of that system. One could argue whether running proprietary software on top of GNU/Linux is generally desirable, but the other way ’round, world’s not black or white, and there’s quite a potential of small and mid-sized company desktops that could very well run GNU/Linux or FLOSS for most of its tasks if just that couple of business-critical applications they use was able to easily run on that platform too. It wouldn’t make a perfect world that is all-FLOSS, but it would help increase FLOSS desktop adoption for sure.
Desktop? What desktop?
All this, so far, still works out in this way or the other. But the most critical thing I see these days: Who is actually still using desktop computers? Who would be the target group for a real FLOSS or GNU/Linux desktop environment? Right now, more than ever, I see people using computing devices, communicate and “work” online. Yet, there are way more people now using tablets, smartphones and the like than I ever had non-technical people in my environment ever before using laptop or even desktop computers.
And it gets worse: Many of those who still do use those devices don’t actually seem to need much more software than just Chrome or another up-to-date web browser, because everything from e-mail to calendaring to chat and communication in general as well as even office work (looking at you, Google Docs) happens online in the browser. From that point of view, being a bit rude, it’s safe to say desktop GNU/Linux is way easier than ever before in the late 2010s also because, essentially, for a load of use cases you don’t need much more than a rudimentary GUI and a decent web browser and not much else. Unfortunately, most of the browsers are built on top of Google Chrome, which bears the risk of establishing a technological monoculture similar to early 2000s predominance of Microsoft Internet Explorer. We should have learnt from that. And, likewise, even while either using Firefox, Chromium, Iridium, Brave or some other up-to-date browser that’s not directly Chrome, people end up interacting with web services that are difficult from a FLOSS as well as from a privacy point of view. In such a setup, having a Software Libre desktop environment is both nice and mostly pointless…
And now…?
Nice doing some complaining, but how to deal with these mess? Generally, looking at my environment and experiences of the last two decades, I see several options. The first one would be to actually focus on the idea of a FLOSS desktop and do whatever it takes to make it happen, no matter whether in a YOTLD or not. This, possibly, would require to figure out who’s the target group of such an approach, what is needed to make those users happy and how to achieve this in the best way possible. Another option might be to give up on the desktop at least for now and rather focus on the server and “cloud” side of things, to make sure we do have decent FLOSS browsers and acceptable web services accessible to users who are able to use in example the Google services today. And even another option might be to completely leave the desktop where it is now – a good, working environment for a relatively small group of users – and focus on FLOSS on smartphones and tables (where things look considerably more bleak these days, just thinking about Software Libre on Android or iPhone). Maybe we should take a look at supporting LineageOS or /e/ to build libre software for common smartphones and apps that are on par with (or even better) than stock offerings pre-installed on most Android or iOS devices.
But maybe, in some ways, it would “just” suffice to actually do a Year Of The Linux Desktop, as a community and, maybe similar to Ubuntus One Hundred Papercuts project earlier, make a considerable effort to building an easily usable, easily available FLOSS desktop system for as many different types of users as somehow possible. I don’t think this is something that can’t be done, I just have absolutely no idea how to get it started…
(Originally posted at https://dm.zimmer428.net/2018/09/years-of-linux-and-floss-desktop/ ; gotta take on writing again as I also wanted to continue my musings on microservices but this sort of got into my way...)
Top comments (10)
Well what possibly could be won is a smoother experience for non-technical end users wanting to do work using a FLOSS desktop for whichever reasons, which isn't that easy right now. And having more users on such platforms might make building and offering software for these platforms more interesting, too. I'd just like to see a bit more competition in this field which right now practically comes down to MacOS on Apple hardware and Windows on everything else. ;)
Maybe so, yes. A better move, from that point of view, would be a stronger drive towards programming models, APIs, libraries that support all these platforms. Maybe a new approach towards something such as POSIX but with a wider set of features. Not sure...
I always liked what Java intended to do, here (even though they failed to deliver most of this vision). For making current developers of "proprietary" software aware that there's a valid and usable world outside Windows and Apple, focussing on (GNU/)Linux might be a good first step here.
(1) Well yes - but in 2018 (compared to the late 1990s), most of the means of getting to work with GNU/Linux desktops are by magnitudes easier. Hardware support seems less an issue now, most of the distribution installers are self-explanatory, and at least some of the desktops provide a good experience out of the box. Actually I've been into quite a load of Linux Install Parties in the late 1990s and early 2000s helping users to do just that - but at the very least with Knoppix and Ubuntu appearing, this virtually came to an end. Getting into a GNU/Linux desktop is not that much of an issue anymore.
(2) That's again personal experience. Two examples here: I have a community of people among my friends who are into sustainability and ecology, and they use Windows laptops. They might as well use GNU/Linux and they actually and really much would like to do so, but they have a very special software for managing their activities which is Windows-only - a small specialized tool built by a small dev team somewhere in Germany. We tried getting this to work with Wine and Crossover a while ago but it didn't really work. Other thing: Internally, part of our company started adopting an arcane tool for managing document templates in office environments, which (of course ...) is built as a Word addin and doesn't work at all with Word running on any other platform. So far, it was pretty easy to work with internal documents on my GNU/Linux host using LibreOffice, but with such a tool in my tool chain, this gets a bit more difficult and requires a VM locally or remote.
The problem I see here: Right that "unless you need software..." is not an edge case but the actual problem in keeping a lot of people from really having a choice. If you want or need work to be done that eventually is tied to a particular application and this application is Windows-only, there's not much you really can do. And I'd really like to see some change in that. ;)
Yes, of course.
I was and still am enthusiastic enough about that to bother dealing with these things. Yes of course, it's just a tool. There are reasons, however, why I have seen people wanting to "not" use Windows or Apple. People who don't trust both and consider GNU/Linux a better choice if they care about privacy. People who want to keep using older hardware that still is usable yet doesn't work well with recent Windows variants anymore. People like me who consciously want to have Software Libre on their machines for whichever non-technical reasons. There are different reasons - but at the very end, having even one single special application forcing me into an operating system choice seems not a good thing. ;)
Agree. Yes. That seems way more desirable indeed. But even way more difficult to achieve. That's where this diversity issue hits things again: There are things such as POSIX or LSB, but people and distributions violate these either out of ignorance or consciously because they don't agree with the ideas. That makes things difficult - both for standards in general and for a more "homogenous" (GNU/)Linux desktop environment as well...