I kind of hate the tendency of programs to grow ever more general purpose due to a failure of the operating system to provide adequate tools, integrations and multitasking

The primary examples I can think of are browsers and text editors / IDEs

The fact that browsers have tabs is a failure of the operating system to provide good windowing (which would include tabs)
The fact that IDEs have their own file browser is a failure of the OS file browser to have a widget mode

The biggest failure in terms of multitasking and integrations occurs in the terminal. The graphical shell already has a lot of features that terminal users are forced to reinvent, or provide via a surrounding graphical shell in terminal emulators. Tmux, Emacs, Bash job control, multiple VTs—these are all poor substitutes for window management. The terminal doesn't even have a clipboard so Vim reinvents it.

It's possible the Vi yank feature came before actual computer clipboards, but Vim still has this reimplementation for some reason. The same applies to the other terminal deficiencies, I think. So the terminal is really a different kind of deficiency. Windowing in the browser has exceeded normal windowing, but a whole system that many people use exclusively has exceeded the terminal in capabilities.

Perhaps the next logical step, then, is that the windowing system will be subsumed by the browser. Just as windowing used to be a program launched from the terminal, and now the terminal is a program launched from the graphical shell.

Will we accumulate more and more such layers over time? I hope not. I hope we take the lessons from new layers and instead use them to make a more robust ground layer. I don't think building an ever higher tower of user interface abstractions is wise. That's something Windows NT got right, conceptually.

@anselmschueler do you know an os without these flaws window managers don't seem to help

@anselmschueler > windowing system will be subsumed by the browser

I'm sorry to be the one to tell you, but this is already occurring. For my main job I am encouraged to not to use the windows of my os or even the tabs of my browser but _tabs in my browser, of rdp sessions on a remote machinr, to access a web-ui. Within the same logical network!_

@anselmschueler I think the IDE example is flawed to its core because you don’t explore files in an IDE, you navigate a code base. I don’t think an OS would / should know about abstractions such as source folders, packages, namespaces etc.
@odrotbohm actually after consideration, I disagree. It is not fundamentally flawed, merely flawed.
@anselmschueler A hill I am willing to die on: mental models of software projects are not based on a file tree. https://odrotbohm.de/2025/11/jmolecules-2.0-stereotypical/#bringing-stereotypes-to-life-in-ides
Oliver Drotbohm - jMolecules 2.0 – Stereotypical

@odrotbohm I agree, I would find flaw in the concept of the file tree