Modern Operating Systems considered Harmful
Posted: Sun Aug 08, 2021 10:25 am
Since the dawn of computing, the main goal was to run a program. This was originally a simple goal - maybe something as simple as calculating a formula. However, as time's gone on, computers have become more and more complex. The entire concept behind software is that you don't necessarily know what you want to do yet, so you need to perform late-binding. Unfortunately, software (and operating systems) have gotten far ahead of themselves, and I think this is a problem.
In the ideal operating system, files are made the main focus. Rather than trying to find the best program, the user just needs to open the file. This style is seen in things like Xerox's GlobalView and the original Macintosh. Most operating systems work differently, though. They create an environment with endless amounts of imported shared libraries. On Windows, you have to deal with installers that copy DLLs to GOD knows where on your hard drive. On Linux, you have package managers that install millions of dependancies. What? You don't like ImageMagick? Sux. MacOS is actually the closest I can think of to the ideal, which is horrifying to say. They have it set up to just drag and drop a program in, which is admittedly closer to what I want. Unfortunately, that's not the only issue.
Other issues come with the heritage of the operating systems. With MacOS, you immediately have flaws from its background in Unix. Similarly, Linux is flawed because it's a copy of Unix with none of the actual Unix. With Windows, you have decades of backwards compatibility layered on top of itself, making it impossible to have any consistency.
My suggested solution is to go backwards. I believe that if we start at Smalltalk-80 and build machines that run Smalltalk bytecode, we can have a starting point for an actually well made operating system.
In the ideal operating system, files are made the main focus. Rather than trying to find the best program, the user just needs to open the file. This style is seen in things like Xerox's GlobalView and the original Macintosh. Most operating systems work differently, though. They create an environment with endless amounts of imported shared libraries. On Windows, you have to deal with installers that copy DLLs to GOD knows where on your hard drive. On Linux, you have package managers that install millions of dependancies. What? You don't like ImageMagick? Sux. MacOS is actually the closest I can think of to the ideal, which is horrifying to say. They have it set up to just drag and drop a program in, which is admittedly closer to what I want. Unfortunately, that's not the only issue.
Other issues come with the heritage of the operating systems. With MacOS, you immediately have flaws from its background in Unix. Similarly, Linux is flawed because it's a copy of Unix with none of the actual Unix. With Windows, you have decades of backwards compatibility layered on top of itself, making it impossible to have any consistency.
My suggested solution is to go backwards. I believe that if we start at Smalltalk-80 and build machines that run Smalltalk bytecode, we can have a starting point for an actually well made operating system.