This Hackaday post about the 30th anniversary of the release of Windows95 struck a nostalgia chord with me this morning. My first full-time job was supporting Windows95 during the launch (and for a year or so after), and the experience taught me a lot.


The only version of Windows that I ever thought was worth a damn as an operating system is WindowsNT 3.51, but Windows95 paired with Office95 could be made to provide a very tidy productivity machine requiring only the most comoddity-est of commodity hardware. For all of its faults, it is for this reason that I manage to have some fond memories of such machines.
It makes me wonder, what would it take to recreate that experience using current hardware and software. Maybe a GNU/Linux system could be coaxed into it, or maybe something else like HaikuOS, or something completely new.
I thought maybe ElementaryOS could fit this bill, and in many ways it does, but as I've used it daily over the last few months, I've run into many "papercut issues"*, and the deliberately constrained, opinionated approach the OS takes has made it hard to side-step these problems the way I would with other Linux distros. I'm still optimistic that these problems can be remedied, as I really want to find a comfortable way for people to start using free and open source computing, but reflecting on Windows95 this morning has me wondering if I should be considering other paths.
So what would such a system look like? Let's start by describing what I remember about Windows95 + Office95 (in other words, the good parts).
According to Microsoft, Windows95 could run on any 32-bit Intel-compatible processor (386DX or better) and 4 megabytes of RAM (technically possible, but far from ideal). So if we translate that to modern hardware I think it would be fair to require a 64 bit processor and 4GB of RAM. That's plenty of room for GNU/Linux with a window manager and it's more than enough for HaikuOS, and it's fairly inexpensive hardware-wise.
On the software side, Windows95 + Office95 provided:
* A (more or less) multitasking operating system
* Command line interface (CLI)
* Graphical interface (GUI)
* File system with support for removable media, CD-ROM, etc.
* File system maintenance tools (formatting, defragmenting, etc.)
* Networking and network filesystem/redirector
* Visual, step-by-step configuration of applications and system components (Wizards)
* Visual, tree-based file manager
* Printing (local and network)
* Word Processor
* Spreadsheet
* Presentation software
* Graphical Database
* Web Browser
* Email Client
There's more but that's what comes to mind immediately. Notable user interface features of Windows95 include the Start menu, two-pane tree-based file manager and configuration "Wizards", all of which are fairly commonplace now but were fairly new ideas at the time and had a major impact on the usability of the system for new users.
I don't see much on this list that couldn't be composed out of existing FOSS parts, and Haiku covers a number of them as well, but I don't know of any system that delivers them all in a way that is as tightly-integrated and consistently implement way as Windows95. Very simple examples are the way that "File Open" dialogs behave differently between applications, even in a tightly-managed Linux distro like ElementaryOS.

The File -> Open dialog in ElementaryOS's Code application "opens" the folders and file immediately when clicked.

In addition to looking different visually (different icons, etc.) the File -> Open dialog from Gnumeric requires double-clicking to open folders and files.
This sort of inconsistency is not only annoying, but also leads to very serious errors like overwriting files. There are long and rational explanations for these differences but none of that helps make the system easier to use.
A system on-par with the experience of Windows95 would eliminate these inconsistencies so that using each of the included applications to do the same actions (opening a file, printing, etc.) in the same way, allowing muscle memory to take-over. This not only reduces errors, but it also reduces fatigue and cognitive overhead needed to complete actual work (as opposed to fooling-around with the computer).
You could argue that if you stick to the applications provided with ElementaryOS these inconsistencies are minimized, but Elementary doesn't include enough applications to get much work done, and I've found that the applications that are included are buggier than the general-purpose versions of the software they are based on (Elementary's Email is essentially Geary, which is much less buggy than the version included in Elementary). If you replace the included applications with the un-bundled versions the number of papercuts goes down, but the level of integration goes down as well.
I think Elementary is probably doing the best job of this than any other Linux distro, but even so, it has a long way to go from the level of "tightness" of the 30-year-old, admittedly shitty Windows95, and I think that this has a lot to do with why FOSS software alienates a lot of people.
It's not as simple as saying "FOSS needs to focus on user interface". What's missing is a more holistic understanding of what people who use computers to get things done (as opposed to people like me who like to screw-around with computers) need. Maybe using a decades-old system that provided some of this "wholeness" as a reference can help us come-up with something that people can adopt with joy and without hesitation as they seek refuge from the AI-based enshittification of Windows and MacOS.