I love macOS and I’m a professional. I mean, I get paid for what I do. I’m a professional, right?
But surely you can imagine ways that macOS could be better suited to your needs. Why (to give an example that's easy to explain briefly, not necessarily the most important one) are the various things you have open organized primarily by which application can open them, instead of which task they're relevant to? You can organize your browser tabs by task by using multiple windows, but why can't those windows hold anything relevant to the task they represent except browser tabs? Why can't you have your terminal and text editor grouped with your webpages? It's because less sophisticated users expect each window to belong to exactly one "application," and because software vendors assume that their job is to make self contained "applications," and not composable graphical components.
I actually used a desktop that let you group content from different application in the same group of tabs for a couple years in college, by using i3/sway and a custom Firefox extension. It's an upgrade over just workspaces. I stopped working this way because I switched to tree-style-tabs and there's no window manager that gives you anything like that, and it was on net a workflow improvement.
Thought it will still be interesting to see where that will go in the next 20 years. Like you said with the convergence of desktop and mobile devices on the one hand I can't see traditional OS's surviving but on the other hand I don't se another option given that's the only medium to build the higher level software.
Why not? The only officially-supported way to build iOS apps right now is using Xcode on a Mac. What would be the difference between using the Xcode app on a Mac or the Xcode app on an iPad with a keyboard?
Xcode for macOS isn't designed for that, but no reason xcode for iPadOS couldn't be.
The Xerox Parc and Smalltalk are the ancestors of today’s WIMP UI. If you look at Squeak (or Pharo) you’ll see how is possible to make a desktop UI that’s more composable than the usual Unix shell. The problem is not the desktop paradigm, but a lack of commercial interest.
I think we can do better than squeak/pharo, but they're fine, really. They're at least the kind of thing I'm talking about.
Yes, Windows and Mac copied the WIMP UI. But, they ignored the composable message passing architecture. The goal of Smalltalk was to make a computing environment with a GUI, the programming language was like C to Unix.
During the 9x-2000 there was a lot of hype on providing the same system composition capabilities in Windows and Mac: ActiveX, Windows Scripting Host, AppleScript, etc. But, these things are dying. Those frameworks are not cross-platform, and they were not designed with security in mind. The interest shifted to the web.
My point is: It's possible to make a programable/extensible desktop UI. But, today the cost of doing it is high, and the interest is low.
> I think we can do better than squeak/pharo
I agree. I used Smalltalk -to work- for 3yrs. Smalltalk is full of good ideas, but it also has many bad ones.
I'll love to see something better too... In a sense JavaScript and the browser share some of the St GUI capabilities: you can inspect, experiment, and browse the code of any app. But, in other aspects the web platform is terrible.
I hope that the competence between Apple (pushing for apps in iOS/iPadOS) and Google (pushing for PWA), will renew the interest on creating environments where anybody can code and tinker with other apps. (if PWAs evolve to have the same capabilities as native apps, Apple will need work hard on removing the app creation barriers to compete -I don't see native Android apps as a competence to Apple iOS... but I might be wrong)
iOS and MacOS are both converging on Shortcuts to accomplish this.
But they cannot in principle accomodate software developers.
But no desktop operating systems are well suited to being used primarily by professionals, not even Linux. The desktop paradigm is fine, but it was designed with the idea of making computers more accessible, and it inhibits composing different pieces of software together, which is what a professional-first operating system should optimize for.
I'm not sure how viable a good professional OS is. It would arguably require graphical software vendors through the biggest design paradigm shift in their history, to serve a relatively small market. The transition to the desktop paradigm wasn't as demanding — you just switched from taking control of the graphics hardware and controlling the entire screen to doing basically the same thing, just with the OS as a proxy so that you're rendering to a smaller rectangle. Composable graphical interfaces means abandoning the idea of having complete control over your rectangles.