How many layers of UI inconsistencies are in Windows 11?
ntdotdev.wordpress.com
ntdotdev.wordpress.com
For instance right in the first Task Manager screenshot, I have no clue what those tab icons on the left side actually mean - with one exception: "users". There are two icons that both look like hamburger menues FFS.
Run commands are great for me, but it sucks when I have to walk someone through something over the phone. It’s gotten to the point where I can’t walk people through the gui methods anymore and it’s actually easier to explain how to open a run prompt and type xyz
Which I think hints at the problem. Internally, Microsoft must not be dogfooding (or is it dogfeeding?) their GUI. It's an over-correction from the time when Windows was criticized for being too reliant on visual tools for administration and devs asked for better automation. Well, now scripting is the preferred way to interact with the OS and the GUI plays second fiddle.
What is that?
It’s really unfortunate how dismissive of the entire ui design profession so much of HN is. Not a great look IMO
But these people are not rewarded in today's industry. The criteria for good UI design these days is all about "lOoKs mOdErN". Plus the field seems increasingly tied to HTML/CSS/JS. Development teams as a whole are not incentivized to do UI design with an emphasis on making the user's work easier... they're incentivized by engagement KPIs and the like. So there's a trendline towards more sizzle and less steak.
I don't understand
Bravo, Microsoft.
Why would you not dismiss a profession that actively makes your life worse?
If the new design was adequate, it would probably be adopted in a release or two. If it were better, there would be demand to get it to all the well used components. There might still be some components left behind, there's a lot of components.
A truly inspiring design might pull everything forward automatically... But that's asking a lot.
Because you cannot legitimately look at the W11 task manager and tell me it was designed with any sort of professional UI/UX in mind. It's busy work to keep a job. And if it is then there's something deeply wrong where no UX theory is being applied, or they're being overruled to make it "app-y".
I'm fond of saying UIs designed by engineers look exactly like UIs designed by engineers. I'm not saying that all designers are always better than all programmers, but when you've studied visual composition, it shows.
I mean just look at the scorching replies you are getting. You definitely offended some people who fall into this "I know better than any stoopid artist" category.
The job of a UI designer is to make the UI usable. Looking pretty in screenshots must always be a lower priority than being functional and accessible.
Usability--what you are describing--is the UX or user experience, buttons colors composition affordance is the UI, connecting the buttons to the REST endpoints is frontend, servicing the REST endpoints is backend, making sure the backend is running and so is the gateway is devops. At least that's what it has been for 20+ years.
> Usability--what you are describing--is the UX or user experience, buttons colors composition affordance is the UI,
Considering these to be separate disciplines is just more of the same madness. They're inextricable.
> At least that's what it has been for 20+ years.
I think it's more that over the past 15-20 years there's been a growing trend of people forgetting that "look and feel" doesn't just mean "look".
Not if you've actually done both. ;-)
Here's an example:
UX would be: on beginning a customer purchase, do we use a funnel pattern (isolating the purchase experience from the layout template), or is there backout that allows the user back to the store instead of back through the path.
UI would be: how do we design the checkout template, what colors and fonts from the corporate palette do we use where
Totally unrelated.
Make sense?
You cannot decide whether a small piece of what you call "UI" is good without considering its place within the larger context that you call "UX". A dialog box that is very pretty, fits well with the overall aesthetics of the application and the platform/OS, and properly does what it says it does—would still be an example of bad UI if it's one of those dialog boxes that shouldn't exist in the first place and is a product of the developers/designers fundamentally misunderstanding the workflow or goals of their users.
This distinction you're trying to make is really not productive. Its too vague and subjective about where to draw the line, and I'm pretty sure most people who are adamant that a line must be drawn are people who will subsequently neglect things on one side of the line as "somebody else's problem".
Here's another example: user focus. When an important event occurs, should the user not be able to continue a task and be stopped until a decision is made, or should they continue to work and have the error as a notification? At what point in the experience is the user flow of execution halted for input? This is UX because it doesn't care about the UI. UI is after the UX decision and whether you implement it with a popup, or an alternate screen that overlays, or even a CLI prompt in the case when it is not a graphical UI. Maybe a good way for you to conceptually separate them is to think about the behavior and forget whether you are using a GUI or a CLI to implement it.
I can see this is pointless because clearly you have no experience with either in a professional context. I feel like you're just trying to "win" here and not really listening.
Don't be an ass.
You seem to have finally elucidated a meaningful, unambiguous distinction between UI and UX as you see it: UX is purely abstract, can be described with nothing more than flowcharts and probably is concerned with what kind of mental model the user forms for how the application works behind the scenes, while UI is any concrete realization of an interface; any discussion of a real on-screen layout of information and controls would fall under UI rather than UX.
I can see how that distinction could be useful in a more or less academic way. Unfortunately, even using your definitions there are a lot of usability concerns to UI, as I originally claimed but you took exception to. Bad UI layouts can lead to objectively, measurably worse usability (eg. number of clicks required, hard-to-hit targets, etc). Those problems are real: you cannot assess usability in your purely abstract "UX" context and then completely set aside usability concerns in favor of aesthetics when you start drawing a real UI. You have to constantly keep usability in mind throughout the entire design process, even when fine-tuning your final UI layout.
(Your definitions of UX vs UI would also seem to lead to "UX Designer" being a job title in the same vein as the kind of "software architects" who don't contribute at all to writing, reviewing or testing the actual code.)
But the terms have different meanings.
UX would be "what drawer will the utensils be within the kitchen? Usually close to the microwave/stove/fridge."
UI would be "Does this drawer need handles or can you open it from the bottom?"
My favorite example is VS Code vs Rider.
VS code looks like a toy. A big stack of unlabeled vage icons that require a decade of context to intuit. Compiling your program takes three clicks and a context switch away from your code! Unless you're a normal person who hasn't memorized those icons, and then it's six or seven clicks while you fumble through the menus.
Rider is a classic ugly UI. everything has labels or tooltips. There's a goddamn toolbar with all your common controls. Building your code requires one single click.
Not a single person is going to stare at your landing page like it's a genuine Picasso. Your ui is not going to be placed in the museum of modern art.
A UI is a tool. If someone has to ask you how to use it, it's not very good. If your users are fumbling through menus after the first hour, it's a bad design. If a user has to have the documentation open at all times to decode your hieroglyphic icons, it's a bad design.
As for my own UI design, the core philosophy is first-order accessibility. If you have to do a task every time you open the program, then that task is accessible with one or zero clicks. If a user asks me what a button does, it gets a better label or a helpful tooltip as well as a mention in the docs. My UIs look like something out of windows 95: simple controls laid out in a grid in clearly delineated functional groups. Everything is labeled and laid out in a way that places the most common controls in VERY OBVIOUS and CONVENIENT locations. It's ugly because it's designed to be used and not looked at.
If a user spends time in my program that isn't related to the task they're doing, I've done something wrong. If someone has to ask me how to do something, it means I have to rethink my design. If users are relying on documentation to navigate my program, I need to redesign.
I respect ui designers who build helpful and useful UIs. I don't respect designers who drop all text and sprinkle a dozen abstract images on a vast barren wasteland of screen space.
ETA: I'm an engineer and I build engineer style UIs: brutal in their simplicity, and utilitarian above all else. Literally not one person who will ever use my programs will care that it's ugly so long as it works.
At some point we've lost the idea that programs should be useful more than they are "pretty". It's a trend that I find frankly abhorrent, and I believe it's one of the major factors that's making software as an entire field worse and not better.
Maybe because you’ve spent time in those older OS interfaces and are therefore more familiar? Your post amounts to “new things have a learning curve”.
That's right. There's archeological layers of UI design in context menus now.
[1] https://ntdotdev.files.wordpress.com/2022/12/image-4.png
Actually it does follow the faux usability trend where ”options confuse user”, and the perfect UI is just an uniform off-white screen with no controls
There are a few things out there, but I always trust a good ol’ registry hack over a 3rd party exe.
Why do people even mention this? As you said, it has a toggle. How did it “kill your decade old reflex” when it literally takes 5 seconds to fix it?
At the end of the day, I don't care about it the slightest. The reason I mention it is because it's a small thing in a long chain of abuse that Microsoft inflicts on the people via its product. A reminder that you're not the boss, things will change, and you'll suck it up, because you won't have alternatives. And I really hate this reminder. I actually stopped using it as my main driver ages ago, and they can still relight the hatred in me so easily with things like this.
It's the single most annoying thing to me ... the rest of the changes I can live with.
It can be done with RegEdit and some minor changes to HKEY_CURRENT_USER\SOFTWARE\CLASSES\CLSID.
Information is online.
One thing that surprises me a lot, though, is that a lot of applications seem to need to be upgraded one-by-one, even if the UI is largely the same and only the styling needs to be upgraded. I never developed for Windows UI, but does it mean that there is no single reusable UI Kit, where just the styling could be changed from OS version to another? Do all these examples demonstrate that different applications are compiled with different UI Frameworks that are all in use and supported?
I believe some are no longer supported, but are still in use internally.
For example the Services (or any mmc based) UI with no filter/search integrated is absurd. Heck they just "redesigned" Task Manager and none of the tabs have filter/search functionality which is annoying to say the least.
I suppose you can start typing with the inner tab having focus, and it SOMETIMES finds the correct thing, but it isn't reliable and is hidden functionality that people just need to know is a thing.
Props to them adding an address-bar to RegEdit though (in the W10 Creators Update) and multi-tab Powershell terminal. Very welcome and positive improvements. Wish we had more stuff like that.
I'm tired of Microsoft actively making things worse instead of actually improving what they already have.
If I suspect a nefarious app is running in the background somewhere I have to manually read the list to find it and kill it.
End of the day one of two things is happening, either no one influential at MS uses Windows or their structure is so broken that pointing out something like this it isn’t even possible to action the feature to be built.
In Win 11 22h2, if you start it as a regular user, you get the new interface. If you run it as administrator, you get the old one.
It also somehow manages to often maximize behind the taskbar. Or cut the output on the righ-hand side of the info in the performance / memory pane.
or
tasklist /FI "IMAGENAME eq malicious.exe"
The fact that another obscure application (at least obscure to most people) can do this does not mean it is ok for task manager not to have this very basic feature.
I still remember the day I found out the envvar configuration screen had been updated, and finally:
* could be resized so you could see more than 4 envvars at a time, and had a scrollbar taller than 5mm to scroll through the list
* could be resized so you could actually see the entire envvar value without having to slowly move the cursor rightwards or copy it to notepad
* added a bespoke list editor for PATH so you wouldn't forget the separator or paste the new path at entirely the wrong location half the time
At that moment the sun started shining brighter. God was the old dialog unusable shit.
yes, examples include win32, mfc, wpf, winui 2, winui 3 are all UI frameworks that MS has released over the years, all of which are still in active use, some more than others.
For example, WPF is probably one of the most widely used, even though MS keeps trying to kill it.
See https://www.codeproject.com/Articles/620045/Custom-Controls-... (I can't remember where the documentation for this is on MSDN, but I'm sure it's somewhere).
Be aware though Microsoft considers its WinUI 3 framework as the primary framework for implementing its Fluent design language and controls. (WinUI 2 will get you there too but has recently been deprecated.) Win32, common controls, WPF, WinForms, etc. are considered legacy technologies and cannot officially make use of many Fluent styles or controls.
AI could also translate mouse clicks/coordinates accordingly if it moves stuff around.
You could even have "UI themes", tell the AI to re-render in Windows 2000/XP/11 style.
EDIT: the downvotes I'm getting with no comments are funny. This will happen in the next 7 years because solving this problem once it's much cheaper than fixing all the apps one by one.
Java came out when I was young, with a huge JRE installation, slow startup times, GC pauses and Java Swing.
Then Electron came out, making a “hello world” gui app need 800mb of RAM. Electron makes Java feel light and nimble.
Honorable mention for docker convincing windows and macos developers to write software inside slow virtual machines for no reason.
Recently, despite the tireless work of photoanalysisd on my Mac, and Microsoft teams on windows, things were starting to get faster again. Thank goodness for you, parent commenter. I can worry no longer. I was starting to wonder if the curse might be lifted.
I can see it now. It’s 2026. My fans spin up as a 8gb neural net live-translates the UI of notepad.exe for the modern age. My $4000 graphics card is showing its age. My mouse lags while I try and click on the menu. The UI is rerendered because Microsoft couldn’t be bothered porting the windows 11 UI code to the new windows 13 UI look and feel. Windows 13 looks different yet again for no reason. So they do the translation live on my GPU instead because it’s cheaper (for them). Programmer time is still expensive. In the background ChatGPT quietly makes web requests to live-translate all the menu items into the new social media acceptable language. The start menu is now on the right.
What a time to be alive.
There's plenty of reasons; it's a compromise like everything else. You trade away some performance for portability; the ability to run the same code and know your environment is identical each run is a significant pro.
Docker wouldn't have gotten to where it is for no reason.
I suspect the popularity of docker as a local developer tool comes from convenience. It feels easier to install docker than fix your homebrew permissions, install anaconda or install a recent version of nodejs on ubuntu. And if you’re already using docker in production, you need a workflow to make docker images anyway.
That and it’s trendy.
Never mind that using docker makes macos sometimes not sleep properly. That it makes your program much more difficult to debug. Or that you’re throwing away 2/3rds of the performance and 1/2 of the RAM of your expensive computer in the process.
Everyone else is using it. We can’t all be wrong, can we?
People use docker and containers for multiple reasons. Reproducible dev environments, Unix development on Windows, etc. The biggest benefit is that your image is fully reproducible; you won't have random issues pop up because of edge cases being hit on dependency updates, you don't have to make sure your new devs install version X of tool Y for development, and you know your code will work identically each time you run `docker start`.
Like all other things, it has pros and cons. You may not value reproducibility, but your assessment is just that: yours. It's ok to have, but you need to realize others value things differently.
As a reminder, your argument is:
> Honorable mention for docker convincing windows and macos developers to write software inside slow virtual machines for no reason.
To say there's no benefit to Docker whatsoever is blatantly false.
> Everyone else is using it. We can’t all be wrong, can we?
If one person around you is wrong, then they might just be wrong. If everyone around you is wrong, then maybe it's you that's wrong.
Several generations of new guys later, we arrive at present day. And that ChatGPT future you described will come to pass, unless we stop using computers first.
By my measurement, that's an order of magnitude too high. My real-world Electron app uses ~77 MB on startup on Windows, across the private working sets of all four processes. Granted, my JS code is relatively lean, but still, we should be charitable, if only because Electron hate is so rampant here.
> Electron makes Java feel light and nimble.
Total rose-colored glasses. Early in my career, in late 2001, I inherited a Java-based desktop app that took so long to start that we made it start looping background music part way through the startup process (it was an audio-based app for blind people, so that was our equivalent of a splash screen). I'm confident that if we developed the same app in Electron today, it would start an order of magnitude faster on today's typical end-user hardware. Some things do get better over time. In this case, bundling of both native and JS code in Electron apps is way ahead of what we had for the JVM in 2002, basically loading lots of little .class files from several .jar files, not to mention multiple native code DLLs as opposed to the Chromium mega-binary. Of course, the JVM world now has NativeImage which is even better, but I don't think anything like that was practically available back then.
But back to the topic: The reason why UIs are no longer themeable has zero technical reason, instead it's a cultural problem (the introduction of artificial 'fashion cycles' into UI design for no other reason than justifying the existence of a 'UI designer' job role.
Imagine a UI that guesses what you are trying to achieve and optimizes itself appropriately on the fly.
(And yes, tweaks all the fonts, palettes, etc to look nice too).
UI designed by humans could be a thing of the past. We could just feed the AI references to the variables we want the user to view/twiddle and the AI would do the rest.
(I hate writing UI)
I love this idea! Having the ability to choose from decades of UI design would absolutely be a feature. However MS needs to fix all of these UI inconsistency bugs first. Second, don't use AI. Just consistently apply the UI to the OS.
The only styling in common is most of the window colours match the selected theme.
The window decoration style, layout, font sizes, iconography, buttons are all artifacts of older MS Windows and do not match the modern Win 11 design language.
I still find it surprising that in some forgotten corner of Windows we get 3.11 file dialogue. But also who cares really.
And even at the places they do, arguments can be made about if their UX/UI are actually better; but that's kinda subjective, to be totally fair to MS.
Also, i think spotlight in mac is way better than Search, and i dislike that it is Win+S instead of Win+Space. I also think that the default itl layout is a smidge better for dev on Mac, but at this point it's too late.
Also to be fair as i mostly use linux: search is way worse and the default are even shittier than windows, but since i can import "my" defaults in 45s, basically the time to type `sudo apt install git make; git clone XXXXXXX/my_default.git; cd my_default; make && sudo make install && reboot`, i'm not too cross about it.
Edit: I think this is now called Windows Search or File Search. Sorry been a while since I've used windows full time. https://learn.microsoft.com/en-us/windows/powertoys/run
They've done this sort of thing with app installers(setup.exe, click once, appv, msi, msix) and UI frameworks(win32, mfc, wpf, winui 2, winui 3). It's like the teams responsible for their respective product keep starting over with a shiny new way of doing things every couple of years to achieve the 'perfect' installer/ui framework or anything else for that matter. Infact W11 felt like a way of 'restarting' W10 without building a whole new OS.
Atleast with W11 they're actively updating old things rather than introducing new ones, I did not have a lot of hope when it first came out, but they have gotten my hopes up since the release for sure. I just hope they stick with winui 3 and see it through.
Same disease that plagues GNOME, change shit for sake of changing shit, fuck users that got used to the old way, they don't matter, is new way faster ? Who knows, we don't.
I use GNOME, it's not great, but some people really hate it, go out of their way to tell everybody how pissed they are at it and that GNOME is the worst thing to have ever happened to the Linux world. I guess complaining about GNOME has become part of their identity, a trait shared by the vocal systemd haters that just won't shut up about it.
Many Linux users haven't gone past the "it's cool to hate" teenage phase. Goes hand in hand with the obnoxious elitism and anime avatars.
I just don't use it.
About as desktoppy as I'll get is XFCE. I gave my girlfriend (now wife) a Kubuntu-based laptop once to hold her over until I bought her a MacBook Air.
Systemd is another matter because Lennart doesn't seem to want me to have the "I just don't use it" option without stuff breaking. But Void seems to truck along quite nicely with runit so I'm content with that.
Your initial design might land somewhere very wrong, but starting to ask for feedback from that point on will lead you better since it's wrong for everyone, no?
It's the same problem with all excessively friendly interfaces, great if you are a day one user (pretty rare on Linux), obstructive and shitty if you know what you're doing.
Unfortunately I'm too lazy to switch to KDE (way too much stuff is broken if you install it not from the start and I don't want to reinstall), so I stick to gnome on my work computer.
I really, really appreciated KDE customization and power user options (hidden but there). It is messy and the UI is worse at times, but it's way ahead.
If we continue to cater to only technically inclined people, we have no right to criticize Linux for being for the knowledgeable people only. If we want to attract more users from a more diverse community, we need to make some changes to user experience.
There is no buts or ifs. There are plenty of desktop environments. Technically inclined people can tinker with gconf, or install something different (KDE, E17, or any of the TWMs).
Valve built the Steam Deck knowing very well that their core users will be PC gamers and not console gamers. The steam deck is made as open as a pc, with functionality to jump back-and-forth between that and a pc (dynamic cloud sync).
Console gamers will come, but you don't ignore the people that are at the core of your business.
While I'm a die-hard KDE user, I like how GNOME experiments with new ways of evolving the desktop paradigm and workflow attached to that.
Yes, they remove a lot of settings, and have a binary format for storing settings (and I don't like these design decisions), but it looks that they're becoming a very good DE for non-technical Linux user.
If any Linux desktop environment had 5% of this inconsistency, they would be battered to hell and back. Today, thanks to efforts of KDE and GNOME, even Qt and GTK apps can be rendered almost identically.
One might not like the direction of a particular DE, but I think we can agree that they're putting a lot of work towards a better, more usable desktop experience (and, I had my fair share of 3rd degree burns during GNOME3's teething as a developer).
AFAIK, GNOME 2.0 and KDE 3.5.x is still maintained as independent, different projects now, too.
The difference between GNOME and KDE's major overhauls is that KDE didn't get rid of all of their customization options in theirs.
Imagine if the next version of MacOS had square icons for close/minimise/maximise and to update your app to use that new style, you had to switch UI frameworks. Then you'd end up with 2 different styles of apps on your system because not every app out there made the switch, and one would now look very out of place. That's the sort of thing Windows seems to do every major release.
MSI (long since deprecated) is essentially an ad-hoc relational database serialized to a file with embedded blobs that tells a generic engine how to install files and update the registry. It was written for Office in the 90s and was therefore dominated by the retail model of physically shipping CDs.
MSIX is a totally different beast. It's more like a package for Linux. The format is a signed zip file with some embedded XML files. One of them is a "block map", which is basically an index into the zip data by chunk hash. Packages are installed to immutable directories, which lets Windows optimize out the download of data it already has on disk by copying from other packages or even just hard linking files together. Delta updates thus come for free (albeit not as powerful as diff based schemes when inserting data into the middle of a file). Another XML file declares how the app should be integrated into the OS. The old MSI/EXE model of manually patching and unpatching the registry and filesystem to do integration is gone here; for example, if you want to register a CLI command then that's an XML tag, if you want a file association or URL handler, that's a bit more XML. Windows takes care of wiring everything up and removing it on uninstall.
Most importantly, MSIX takes care of online updates. MSI never did this. You can register a URL for a package that points to yet another XML file, and Windows will download deltas and apply them in the background even if the app isn't running (a la Chrome).
So Microsoft's packaging tech hasn't churned that much. There were CABs from the Win3.1 days, then later MSI from the late 90s, and starting in Windows 10-ish timeframe MSIX. All of these are very different technologies.
One of the nice things about MSIX is that it's feasible to create them from other platforms, because although Microsoft's tools are Windows specific the format is simple enough to reimplement. Not simple - the way they compute the block map and signature data effectively requires you to write your own ZIP library to create them - but it can be done and that's why the new Conveyor tool [1] is able to create Windows self-updating desktop apps from Linux and macOS. If you have a pre-compiled runtime like Electron or the JVM then you can push out updates with one command from your Mac/Linux dev laptop, it's no harder than publishing a static website by rendering Markdown to HTML, and that makes it feasible to develop quick lightweight desktop apps in a convenient manner. With the old MSI or InstallShield tech it would have been much harder to create a cross platform tool like Conveyor.
[1] https://hydraulic.software/ (it can also do Linux and macOS apps from Windows, but those are a bit easier)
There are similar schema languages for JSON these days, but without any equivalent to namespaces. Microsoft uses versioned namespaces heavily in the AppX Manifest. It's got a bit crazy, a typical manifest might have 10 different xmlns declarations, but it means that if you mis-name an element or (more likely) put it in the wrong place that won't be silently ignored, it'll trigger a validation error. To get that you need to able to assign each element to a specific fixed schema and then compose them. If you just have a single schema and evolve it without any concept of namespaces, old software can't tell the difference between a mistake and a new extension from the future.
Look at the alternative: Apple went with a generic binary config format for macOS (binary plists) but then introduced an XML version anyway. As an industry we've never got any good at managing the dichotomy between efficient-for-machines binary formats and efficient-for-humans text formats.
The alternatives are also not that great. I looked at many. Some are buggy, some are abandoned, some require complex server-side logic etc. The situation on Windows is far from ideal; it speaks to the general neglect of the platform. Nonetheless with a tool that works around or 'polyfills' issues MSIX can work well.
Is it really deprecated? Isn't MSI still the only installer type directly supported by Group Policy? My company had an enterprise customer request an MSI for that reason.
https://learn.microsoft.com/en-us/windows/msix/group-policy-...
MSI isn't being developed any further and according to MS, the MSIX format is their "deployment technology moving forward".
https://mcpmag.com/articles/2018/08/09/microsoft-msix-replac...
MSIX is relatively new. The customers who requested an MSI may simply not know about it.
For example certain build configurations would cause the runtime runtime to be somehow slightly different from the build runtime and it would trigger control flow integrity to immediately kill the app on startup which was very difficult to debug.
Also from documentation it looks like it's possible to install a background service and communicate with it over a named pipe from another application in the same package but in practice I don't think it's actually possible, even in a full trust app.
I think the goals of MSIX and the App SDK are good and I applaud them trying to make it flexible to support every kind of app, it just hasn't had the time or resources put in to be really worthwhile over just using NSIS at present.
I'd say that Windows in general is disappointingly buggy but it's been that way for a very long time, I remember having to work around bad Windows bugs in the 95 and XP days too. It just comes with the territory. We use MSIX as raw material and either work around bugs or reimplement features as necessary. The results seem to work fairly well. MSIX also has the advantage of being maintained and general purpose, which sounds basic, but a fair number of the competitors aren't.
Windows is one of the most impressive pieces of software I have ever seen. No other platform boasts the kind of backwards compatibility that is seen in this operating system. There are shim layers on top of shim layers and the developers seem to have gone through great pains to keep the operating system backwards compatible.
Comparatively, the Linux kernel API is stable, though applications relying on newer system calls are forever stuck requiring minimum kernel versions. On the userspace side, application packages are in a near constant state of flux and can break with a single version/dependency change.
Take Fedora, Manjaro or Ubuntu with any major flavour like Gnome or KDE and you get a very consistent way of how your OS works and responds to common tasks. It's kinda easy for non experienced user to find the right settings with no UI change on a modern Linux Desktop.
You could build thousands of KDE environments with the amount of money MS spends on Windows, yet KDE has managed to update everything across 5 versions of their desktop environment. In fact, EVERY common operating system GUI with the exception of Windows manages to update all the things.
If MS had spent some of those billions on updating those legacy apps each generation, they wouldn't be stuck with so much legacy garbage today. It's also telling that MS has never bothered to stick with a framework that would allow them to upgrade UI themes in-place. I'd also note that "complexity" isn't a good reason because MS could have gone with other solutions that were both more simple and more usable, but chose a convoluted design instead.
It may be possible to provide an updated UI while still allowing the existing APIs and applications to work and integrate with the control panel, but it is not straightforward.
But KDE apps all look consistent. I don't really use it, but it seems to me that Gnome apps also are consistent. Ditto for XFCE.
Whereas Windows, even among out-of-the-box and "system" applications, there's a variety in the look & feel. Until 7 it was more or less the same. But starting with 10, it all went downhill, and 11 didn't really fix anything in that department.
Additionally Windows is raking in MONEY for their OS.
So from that perspective, Microsoft have no excuse for the shitty software they make people endure.
Only if you intentionally ignore all the billions big-tech has poured into Linux over the years.
AFAIK IBM, SUSE, Red-HAt and Canonical are heavily investing in Gnome while other companies are investing in KDE.
KDE/Gnome aren't just some guys in a garage developing them in their spare time.
So dozens of huge companies, hundreds of smaller companies, they can all contribute code to an OS that is on-par with Windows, but missing things like patents and gaming hardware support that Microsoft pays for.
While Microsoft with all their advantages, all their insights and cooperations with hardware vendors still can't deliver.
It's really pathetic, and I put it down to their company culture not having any common goal.
What didn't they deliver? Last time I check Windoze desktop/laptop market share is still way higher than Linux despite Windoze costing $100 bucks and Linux being free.
And it's not difficult to see why. It's not even about the gaming anymore. The bugginess and jank of the modern Linux desktop can drive you up the walls.
For example, whenever I plug in my 4k monitor in my Ubuntu ThinkPad it rarely detects the 60Hz refresh rate, most of the time defaulting to 30Hz with no way of switching to 60Hz unless I go through a ritual of repeatedly unplugging and plugging the display-port cable again and again until the stars align and at the fifth or sixth time it finally detects the 60Hz option. Absolute madness that's a huge productivity killer. The Ubuntu 10.00 I used in university in 2010 - 2011 gave me less headaches than this. Yes, I tried different display-port cables. Meanwhile on Windows 10 and 11, both have always defaulted to 60Hz on this monitor and several laptops in the 3 years I had it, 100% of the time, every single time.
Now, since I need to get work/leisure done, and I don't have time to dig through Linux forums and tinker with the driver config files on Linux to find out why Ubuntu sucks so bad at detecting the right refresh rate, so windows has saved my sanity since the candy crush icon in the start menu is a lot quicker and easier to remove than having an OS that plays Russians roulette with your display refresh rate every time I start my day.
For Windows, I don't think anyone complains about the fact that if you run an ancient Windows app, it looks like an ancient Windows app. In fact, backward compatibility has always been one of Microsoft strongest selling points. What people complain about is that Windows itself is inconsistent. Windows branded components, made and owned by Microsoft, included in the main OS with no alternative offered are inconsistent. The worst part is the control panel, it is a mess and they have no excuse, it is an unfinished job that shouldn't have been out of beta.
Arch packages do very little extra usually, and often works more like if you install from source. So it's not always the fault of devs, and is why installing from source was/is a thing.
Bonus with Arch is Aur, one big repo with most open source software available from git.
I will happily bet there are programs out there that would crash and burn horrifically without moricons.dll.
CRITICS: MS Y U SO SHIT REMOVE OLD CRUFT! NOW!
MS: but backward compatibility?
CRITICS: NOW!
MS: *removes moricons.dll*
SOMEUBERCRITICALAPP: *crashes*
CRITICS: MS Y U SO SHIT ?!
I only use Windows occasionally, but when I have to set up a printer (shared from another computer) or file sharing, I often have to resort to either creating obscure registry entries based on random internet tutorials or use command line to figure out what exactly the GUI wizard means by "the thing you want can't be found"
I'm pretty sure Windows has always been like that. Magic registry keys and underdocumented mmc panels, mystical cmd commands and some COM/WMI poking vbscript. This is also why powershell is such improvement in windows world, it attempts to reset at least some of the management madness.
Just like in the linux where all GUI's are more or less just wrappers around command line utilities or have 1:1 cmd line alternatives, Windows is becoming powershell first then GUI.
Where before ALOT of functionality was only accessible from the GUI
But PowerShell for me is the best thing that has happened to Microsoft ecosystem.
IMO Windows is just moving backwards. Back in the days for both os you needed to knew unobvious things. Registry and MMC being prime examples for windows. Some of todays Linux flavours come with consistent control panels that solve 99% of all common problems in the same UI wrapping cli tools you could also use if you want. Something Windows is far away from at this point.
At least in /proc you see all the keys you can change...
Microsoft’s answer for making new UI always seems to involve making new API’s altogether, leaving the old ones intact for compatibility, and adopting the new ones gradually over time. What’s the point of interfaces if you need to change them to change the implementation? The ODBC dialog should have been able to be changed without the calling software even knowing about it.
I seem to recall the reasons being something about explorer shell plugins and needing to support third party additions to the dialogs, but that just raises further concerns for me: why allow such things in the first place if it causes you to never be able to change the dialogs? Why does the explorer right-click menu (for example) have a plugin interface that prevents you from changing it to use a new UI look and feel?
It all reeks of “the wrong abstraction” all over the place to me. It’s probably getting old to point this out at this point, but macOS doesn’t seem to suffer from any of these issues. If they decide to do a new UI theme for a macOS release, you generally see it everywhere. There’s no 1993-era UI elements in macOS that are significantly out of place (not saying they don’t have UI that has sat unchanged, but it’s usually because the changes aren’t needed, not because they just didn’t get around to it.)
The corollary is that any Mac application that hasn't been touched in 5 years will quite likely break when Apple makes some sweeping API change.
I'm much happier to be able to run my Win95-era utilities whose developers are long gone at the cost of some older UI elements.
>why allow such things in the first place
Many of these things were built and designed at a time when computers had 4MB of RAM. Every additional layer of abstraction has a very real cost.
Crazy to think they are still recovering from Windows 8 and the pivot to Metro UI.
Often I don't know which setting takes precedence, for example I can create power plans from control panel and also use different power modes from the settings app.
The Win 11 OS itself has actually been very solid aside from WSLg, so I could live with the UI inconsistencies highlighted in this post. However it's the taskbar UX, of all things, that kills it for me.
It's so infuriating. Such a small thing, but that capability was present since at least windows XP.
I actually liked w7.
Either way, all in all I am very happy to not having to deal with "numbers" , the crappy file system on a mac amongst many other things.
I think w11 is pretty solid apart from the old known issues.
I guess this is why I'm not a designer, but why are the spinning dots dated and why is that bad?
They are dated simply because there is something newer.
Report.doc, report1.doc, report11.doc, reportfinal.doc, reportfinal2.doc
Sure, Windows could have changed the look and layout of every component with every release, but with an application as widely used as Windows you really want the ability for users to move from Windows XP to Windows 11 and still have a sense of familiarity and confidence.
It is also difficult for them to remove settings or change their behaviour of settings without breaking compatibility, so really whenever they are making the UI 'consistent' we really mean moving around the existing settings rather than rethinking them entirely - true change has to be done in baby-steps across many Windows versions.
(in fact they broke this and that along the road, the latest and most crucial for me is the taskbar, and I am not talking about the alignemnt, not at all, but all the other possibilities gone, starting with the option of grouping/ungrouping, but not ending there)
The way I look at it (which may be wrong!) is that companies get a 'change budget' of how much users will tolerate in terms of change (i.e. an 'emotional' budget with users rather than a cash/resource budget).
Look at the large facebook designs which recieved huge amounts of backlash from the community - while each of them pushed Facebook in the right direction, each of the changes was also very disruptive to an extent that Microsoft probably couldn't tolerate in Windows.
This time around they decided to use a lot of their 'change budget' on the taskbar, which probably means you don't want to touch other parts. IMO they should have added the option of grouping/ungrouping too before making the change, although the fact that people are complaining about taskbar grouping probably further demonstrates how careful Microsoft needs to be with design changes (Especially as you can probably see WHY Microsoft might want to remove the option of grouping/ungrouping and follow their thought process with this, which shows how easily these UI pitfalls can occur when making changes).
Also people love "new shiny" things.
So you're spot on: Marketing.
You gotta go w the Zeitgeist. If in 20 years sharp corners will be the new shiny thing again you bet Windows 14 will go back to using those.
https://devblogs.microsoft.com/oldnewthing/20040525-00/?p=39...
what are people thinking these days with the huge waste of screen real estate everywhere?
I really thought windows 8 could go I the right direction. A metro like approach where applications can take up as screen as possible, with proper tiling and a unobtrusive way ala Mac finder to access everything that is not already open from a single place.
However that is exactly what gnome Shell is. Max screen estate, snappy getting to everywhere and everything.
With a label in the Windows 3.x system font.
Never change, Windows. Never change.
I don't know first-hand of any such program, but it wouldn't surprise me if there was some old important enterprisey installer that expects the file chooser dialog to be just so and would freak out if the UI didn't still follow win 3.x conventions..?
There are thousands of applications in the wild that still do all sorts of insane hooks deep into Windows controls, expecting them to be "just so" and would break if they weren't.
So every screen rewrite is a dance with all of the legacy software, and sometimes you end up with a modern version of the screen, as well as the old version for backwards compatibility. Eventually enough of the software is brought forward (or abandoned) and the legacy screens can start being dropped.
Yes, legacy software is a big deal for Windows, but legacy software is not literally clicking buttons in these old archaic menus.
A shim or compatibility layer should have been added, and all settings migrated into the single Settings menu. There is no reason to have multiple versions of the same thing... especially when one of them is permanently hobbled and users have to guess which version exposes the buttons they need.
How long has Win10 existed? Nobody smart at Microsoft has figured out how to unify Settings and Control Panel in all that time? Literally means they have not tried. All of these things hack on the registry when you get down to it...
What probably actually happened was someone found out all the deeply nested menus and ad-hoc buttons in Control Panel didn't cleanly port into their "elegant" Settings app, so they just stopped there and left it to rot.
We want to look beautiful more than we want to be functional, apparently.
total blunder imo but I think most people are just happy it's not as screwed up as whatever the hell Windows8 was
for me personally besides the common complaints just getting to the weather widget is now a huge microannoyance that drives me up the wall
Now they’ve gone and half-baked that design in new software and it’s less intuitive, eg clicking file menu item and a whole new screen appears.
Any other Windows UI even as far back as Windows 1 is better than the piece of hot, useless garbage that was Windows 8.
Flow A: hit a button, a menu with text input and pictures shows up
Flow B: hit a button, a full screen with text input and pictures shows up
A is perfect, and B is "practically unusable".
On a desktop computer. More than likely with (a) monitor(s) big enough to occupy an entire desk.
The Start Screen was fucking horrible all around, and its horribleness was proven with the immediate resurrection of the Start Menu and demise of the Start Screen in Windows 8.1.
Metro also met a similar demise because it forced a black-and-white, no delimiter UI upon desktop computers. Computers equipped with GPUs and monitors capable of rendering billions of colors with huge screen real estate.
Some of Metro's baggage is still with us, but I welcome Windows 11's slow move back towards a colorful Windows UI.
I recall when they did this to Visual Studio.
They completely removed all colors from all of the icons, making it impossible to pick out one from another and making once familiar icons by color a hunt-and-peck operation to find.
It was all just black and white. Then, due to feedback, they relented and put color back on all the icons.
It was madness.
The problem with Visual Studio was the sudden removal of color changed people's "muscle memory" on where certain items were on a complex toolbar or menu system. I have no idea who thought that was a good idea, but some design team decided they were going with it, and they did.
When everything suddenly went black and white, it was impossible to quickly distinguish one thing from the next.
They reverted the decision and suddenly all the colored icons came back and it was once again easier to quickly pick things out.
I mean, people freaked out when they changed just the VS Code icon:
https://visualstudiomagazine.com/blogs/data-driver/2017/10/v...
B can yield a minor mental context switch, with no good reason for doing so.
The most sold app in their crappy app store was a 20USD classic start menu.
Instead, probably because at that time they brought in people with no history in the Windows org to manage the Window org, we got a 10+ year decline of Windows that has accelerated in recent years.
And Win7 barely changed anything.
If you're afraid to or don't want to pay for software then you should probably use some variant of GNU/Linux instead.
I think his use of the term "pirate" was confusing.
I think the parent was assuming only legal options.
If that's not a constraint, then food, cars, etc. are also free.
Also, taking someone's car or food deprives them of them. Making a copy of Windows doesn't make it impossible for Microsoft to keep selling it.
I only use it to mean illegal copying.
Frankly this mindset is ludicrous to me and yet I see this with MacOS users too who happily pay for third party solutions to first-party breakage on stuff you already paid for. Somehow the more you spend the less customizable software is and the even more you have to spend to work around dumb choices.
I'm going against the mindset of not paying for software in general, no matter how useful it is to you.
For me personally, I'm more than happy to pay for software if it's clear the developer has _my_ interests in mind when building it (think IDEs, CAD software, even stuff like Office or the Adobe suite). I'm also OK with using software that's free and dealing with dark patterns (shareware, online tools) or bugs (open source stuff).
But paid software that somehow still tries to bilk me for even more money? (See all of the ads that have been built into Windows these days, or various Android phones and bloat) I will be more than happy to go out of my way to crack and get out of paying for it, for nothing but to spite developers of such things. You can't have your cake and eat it too!
A real shame, because they showed with Windows 7 that they can redesign the OS UI without giving up features from earlier versions if they want to. Bugs like "the task bar is 20 pixels taller on my second screen" wouldn't have come up if they'd stuck to restyling their old code base.
I find Microsoft's modern designs very comparable to the GNOME designs, in that they're eager to remove common features to build an overarching operating system theme. I like GNOME's design, much more than Windows 11's, but I don't think taking directions from a heavily criticised DE is the right move.
I am a gnome2 person, KDE, win7, etc type UI, if I wanted a mac I would buy a mac.
There was a post on here a few months ago from a former MS engineer talking about how a large part of MS design team were all MAC users.
Enterprise is still king, and we here in Enterprise Ops are not happy. Microsoft needs to remember where its money comes from, and it is not jr webdevs
There has been some usability turndowns for me in the past years, but two things keep me hooked: snap windows (built in) and powertoys (ms-made but requires an install). I can't imagine myself without these two anymore.
But after a week of Windows 11's "grouped" taskbar buttons I risked reinstalling explorer patcher and it worked fine.
I have 3 16x9 monitors.
Why do I have to use 16*3 width of my screen for the taskbar when 1 vertical taskbar in 1 screen is enough?
What's the point of having a taskbar that only groups by app...This has been one of the major pain points of me using Mac OS and it is immensely sad that Windows 11 has also taken this approach. At least some Linux DEs still let me keep my app windows ungrouped...
Unluckily in Windows the taskbar became more essential than the dock in macOS for switching windows - on Mac I use the dock to start new instances or quitting the app (differing philosophy of window and app lifetime between mac and win), not much of a switching - and then they ruined this essential taskbar thing without good alternative on Windows (Ctrl + Tab is more like a complementary thing than alternative).
I almost always have many windows that would have thumbnails essentially indistinguishable from each other (think text editors, file managers, terminal prompts etc.)
So I use the task bar as almost like a system wide "tab" interface. Grouping stuff into the app icon is terrible because I can't easily tell if I have a window of the type I want already open. I don't click on the taskbar items to navigate, rather I use them to check what is already open so I can quickly keyboard switch to them.
The Win11 UI completely breaks this workflow so now I either need to do a linear search to flip through all windows, or pull up either the task view or hover menu above the app icon, and pray I can tell apart the huge grid of identical window thumbnails.
I have two browser profiles and no matter what I do they come up as separate tasks on the task bar.. I am not able to group them up.
I would also like to alt tab to them as a whole, then tab between the group windows instead.
Luckily win11 is just a game launcher for me these days, so I only manage to get so and so aggravated :D
Another point is one shown by the case of the sniping tool. The previous version had UI standards not aligned to the current version, but it was small and fast. The current version has a somewhat consistent UI but it's slower and way more bloated.
I'm sure there are some technical reasons there, but I suspect it's also the result of poor judgement.
I posted this yesterday, macOS is also at fault.
Here’s an interest blog post from a former Apple UI employee talking about the growing inconsistency in macOS UI.
https://www.corbinstreehouse.com/blog/2021/10/macos-12-monte...
[0] https://www.linkedin.com/pulse/20140806183208-12100070-why-d...
I don't understand how incompetence is being protected and empowered at Microsoft, it's suspiciously worrying, i hope the military isn't dependent on Microsoft software, i'd be worried if they use their tech in the battlefield, HoloLens is another evidence things are fishy within that company
why, not how
can't edit the comment..
I'm sure there is some registry voodoo I could do to turn this off on every reboot - so far Googling the magic keys and trying them has not worked unfortunately.
I notice it right away because the fans on my laptop will spin up to max speed for a few minutes, even if I'm just doing something basic like editing a document. I'm not sure why it tries to run what appears to be a lengthy scan when it can see the machine is not idle.
Personally, I run too much software downloaded off the internet to disable it entirely, and don't trust myself to remember to turn it back on.
Oof first sentence and it's already a train wreck
You know the one that you go to in hopes of figuring out why that USB peripheral or PCI card you plugged in isn't working, only to get a tree menu with a hierarchy of random categories, then a property dialog with zero real info?
That thing has been a decades old nightmare to me, and it still hasn't changed.
There are dozens of desktops that went into several mostly consistent redesigns in all that time. Gnome Shell nothing feels like Windows 95, Windows 10 still somewhat does.
Funny thing is this was absolutely never said by Microsoft. If you dig deep enough you reach a single throwaway quote by some employee that said something along the lines of "Windows 10 is the last version released and we're focusing all attention to it, not 8.1".
> When I reached out to Microsoft about Nixon's comments, the company didn't dismiss them at all. "Recent comments at Ignite about Windows 10 are reflective of the way Windows will be delivered as a service bringing new innovations and updates in an ongoing manner, with continuous value for our consumer and business customers," says a Microsoft spokesperson in a statement to The Verge. "We aren’t speaking to future branding at this time, but customers can be confident Windows 10 will remain up-to-date and power a variety of devices from PCs to phones to Surface Hub to HoloLens and Xbox. We look forward to a long future of Windows innovations."
https://www.theverge.com/2015/5/7/8568473/windows-10-last-ve...
"I don't know the answer, but I have to say something." Or "The answer's no, but this rumour goes in our favour of convincing people to switch to 10 so we're not going to deny it."
If it said "Windows 10 will remain up-to-date indefinitely", then I'd agree.
You could argue that Microsoft was betting on Windows 10 as a platform and that Windows 11 is in fact built on this platform (and the 11 is just marketing lingo for 10.x). But despite Microsoft revisionism, the fact is that they changed there mind along the way.
On the one hand, I care deeply about the consistency and love the fresher look of the new Windows 11, a breath of fresh air from the ugly Windows 8–10 style.
On the other hand, I am really afraid if some of the settings / careful curated wizards are gone --
I recently has to reset network settings because I switch to a different router, and I have bridges from Hyper-V, the resetting wizard is buried in a Vista-era guide to diagnose internet. I am sure it will be gone if they refurbish that area of the control panel, the whole "experience" need years to refine which would not be allowed in the speed of corps today.
And there is also the performance issue.
Just look at the fresh macOS System Settings app, what a mess it is.
Oh and three finger down-swipe is undo on iOS! Very handy! Just not always, more like sometimes.
For terminal its pretty easy to remap keys, in iterm at least as far as I remember.[1] I stopped doing this because it was annoying when switching between MacOS and Linux.
Why is it outdated?
It can't be because it doesn't convey the concept properly anymore, since it still does just fine in this regard...
I don't think I'll ever understand the minds of UI designers...
Note: People say that the XPS FHD has a good battery life. I don't care, I don't want a FHD, and UHD is a pretty bad product. Fix it.
This is great, but I do wish people would stop adding tabs to applications and start adding them to window managers instead...
It’s trivial to use Group Policy Editor to disable windows “spyware” as HNers like to call it.
As far as the “inconsistent” UI goes, it’s funny to me how no one talks about Linux and it’s inconsistencies which are much more significant.
Windows is an OS a tool to get things done. My customers could care less about any of these things. Articles like these are interesting but pedantic.
Except that with Linux you actually get to choose the desktop you want to use, and it's very possible to customize it yourself if you don't like the baked-in design.
I believe that the average user at home or at work values consistency, intuitiveness and attractiveness far more than the potential for customisation. They need the user interface to be clear and explicit, they need patterns that are repeatable and easy to remember and they need to not hate looking at it. They need to feel confident enough that they can either guess how it works or to reuse some knowledge they already have learned from elsewhere on the system.
Customisation is so often touted as the be-all-and-end-all solution to outright deficiencies in design — if you don’t like it, just do this and this and this and this — but that totally misses the point because then the underlying problems never get solved. Just look at the significant behavioural differences between apps built in Qt, Gtk, Electron, wxWidgets, …
I’m just conveying the complaint of an inconsistent UI is stupid. Considering these are tools that enable getting real work done. Icons reused from the 90s isn’t getting in anyone’s way to get work done same with Gtk themes don’t apply consistently across apps.
It seems everytime someone points out the obvious flaws in Windows, Windows users seem to attack Linux even though they say "it's not for ordinary users".
I could show you tens of posts that criticize Linux and they are posted way too often but no, we only dislike it when someone attacks Windows™.
> It’s trivial to use Group Policy Editor to disable windows “spyware” as HNers like to call it.
and you don't consider it a spyware? Windows literally does what spywares do, it's not even up for debate anymore. Maybe the definition of spyware has changed in the last 10 years but I don't think Windows is a bad example of what a spyware is.
> As far as the “inconsistent” UI goes, it’s funny to me how no one talks about Linux and it’s inconsistencies which are much more significant.
UI inconsistencies? Really? Like having control panel or settings at the same time or having icons and UIs from the 90s?
Linux is fragmented, we get it. It's an obvious result of the nature of its working.
> Windows is an OS a tool to get things done
Many of us like our computers. We don't see tools as just tools. They represent philosophies, they represent ideas that we conform to in our life. We care because we care, not because we see them as means to an end, we want to enjoy the means to the fullest.
As an example I’m building a flight simulator. I use Ubuntu to run the steam gauges and of course Windows to run the simulator. At the end of the day I’m flying and practicing instrument flight rules. The last thing on my mind when I’m using these computers is that the control panel is a remnant of Windows 8 or the Javafx app on Linux doesn’t match the UI style of gnome.
I was not criticizing Linux being hard for “ordinary users”. I’m simply pointing out the DE, WM, GUI toolkits are all fragmented and not very opaque to beginners.
I don’t know what the UI tells you about philosophies. What it tells me is that there is a large feature base in windows, worked on by a variety of teams, and there is limited time to ship and certainly more pressing issues to resolve.
If it's dependencies and packages no longer being shipped, you'll have the same issues running those Python programs on Windows and probably the same solutions as well (downloading all the old sources, compiling all the libraries manually).
You can still run the x86 ABI on x64 (or any other architecture through qemu) though unlike Windows, most Linux distros don't ship support for it by default.
The programs themselves work, but the dependencies have moved on. This is why many recent ecosystems are focusing on static compilation, only demanding a very basic minimal set of functionality (C runtimes and such) from the OS at the cost of needing to patch every single binary on your system one by one when the next log4j/heartbleed bug hits.
This stuff is also why I dislike Python as a platform for running GUI applications. It's easy and it works assuming you put in the work to maintain compatibility yourself. Compiled binaries will work for much longer.
Yeah, the issue is missing dependencies, the 32 bit versions, Linux Gamers complained so there still are some 32 bit packages around but not all of them.
Compiling this old apps I assume will hit same issue, this time missing even more packages since I will need all GTK2 dependencies. I wish there was a nice, slim way to put in a folder all the libraries from a say 16.04 release and tell this app to look there in that folder.
App images would probably be the solution, but who will find all those old projects from source forge that have very few users and rebuild them?
> Compiling this old apps I assume will hit same issue, this time missing even more packages since I will need all GTK2 dependencies. I wish there was a nice, slim way to put in a folder all the libraries from a say 16.04 release and tell this app to look there in that folder.
LD_LIBRARY_PATH can be your friend. You'll still have to reconfigure the application for other resources like images, but as far as libraries go it's a pretty useful fix. I've used it before because the default libraries that come with Google's Android emulator just refuse to work on my system. The easiest way is probably to add the variable to your .desktop file or to write a script that sets it and forwards all arguments to the real binary.
> App images would probably be the solution, but who will find all those old projects from source forge that have very few users and rebuild them?
I agree; Flatpak and friends are a great way to keep applications working many years down the line. I expect them to only stay available for newer programs, though.
You can set up a Docker pipeline that will build the application of your choosing and use that to release updates of old programs but in the end you're still going to need someone who will do that for you.
That said, GTK2 is one of those libraries that'll still be packaged with operating systems for a while, it's just the unmaintained dev version that gets left behind. Like with Python 2, nobody wants to maintain that old stuff so it's either up to the devs to update or up to you to come up with ugly hacks to still run the old software (at your own risk, of course).
In my case I run this python2.4 app, it complained about a missing library, I googled it, found what package had it, installed it, then repat and repeat. Now I am stuck at "libpangox1.0" can't find it on the apt repos , so maybe I will waste more time on google or just give up.
Is a good lesson as a developer, either use some "modern" stuff or if you use c/c++ and care about the users try to build an AppImage or something similar.
Your libpangox library can be downloaded from Debian it seems. In most cases, Debian and Ubuntu libraries work pretty well together (as long as you don't install them at the system level). Unpacking the contents and putting them in the right (application specific) paths may solve your problem.
Personally, I'd resort to setting up a virtual machine for software that old, maybe running X11 forwarding to get the GUI on my native desktop. You might also get away with setting up an AppImage/Flatpak image you can then use on your desktop but that'll take even more fiddling around.
If you're in luck, you may also be able to install the modern equivalent of these packages and port the software over. How well that works really depends on the complexity of your application, but I've run old software after fixing a few imports and method names before so it's worth looking into perhaps?
Personally, I don't really like scripting languages for complex tools like GUIs exactly for this reason. Python in particular depends on a lot of native libraries for its script-to-native conversion, which means you need the perfect mix of language support and dynamic library support for old code to work. It's not a problem if your tool is being maintained, but if it's using software as old as Python 2.4, you're often up for one hell of a challenge. Super basic programs with rudimentary GUIs will work easily but once GTK and Qt get involved, you're probably better off with a compiled binary in my experience;
which is ironic since more and more apps on windows require various system wide dependencies like dotnet, c++ resitibutables etc,
More than a few apps I have tried to install recently on windows would not just run because dotnet 3 is missing by default on both win10 and win11
Example:
- hate the new notification area. The action center was so much better
- dumb stuff like a window update notification that shows a c# class name instead of windows update
- clicking said notification does not bring up the windows update settings as it used to.
- searching for windows update in the start menu does not show the setting as a result. Even when you select setting.
- every few edge updates, th browser is able to put itself in a state that it takes 5 minutes to start up. In that time most other apps will not launch either.
I could go on and on, but these are just a few of the daily problems that irritate me.
- swipe from the left is unchangeably wasted for trash news
- touch interaction (especially in Edge) is worse than Windows 8: I am dependant on a virtual touch pad to do certain stuff (e.g. selecting text and copying it via context menu)
- start menu customization possibilities are ridiculously low
Start menu suggestions cannot be removed. The start menu settings allows you to make it use less space. Disabling it in group policies reserves the space for a message that it has been disabled.
This is outright user-hostile.
winget uninstall "windows web experience pack"
There's no way to remove the trash news from the widget thing, so blowing it away is the only option. Clearly there's someone at MSFT that keeps pushing MSN garbage (wtf is Rewards??) into the OS
The secure boot requirements were also a pain. My hardware is compatible and my first install got TPM enabled, but memory protection and core isolation wasn't available. It took me a couple of BIOS changes and installs to get everything working.
Not that it should surprise me anymore. Microsoft's shamelessness knows no bounds.
Huh? It’s hover and 1 click?
It's like Windows forgets the secondary monitor from time to time. And I have to extend the primary again. Then the pop-up for witching to the monitor audio out comes up. And I have set it to "Disabled" in control panel->sound a million times.
Are some monitors that bad on macOS but better in Windows, or viceversa?
https://www.ghacks.net/2019/09/23/former-microsoft-employee-...
So to some extent, does doing this better at the scale of a modern user-facing OS provide enough return on investment?
(P.S. - Latest Windows when installed with MS 'PowerToys' brings a few missing things in Windows from macOS where it might otherwise shine)
The "document-oriented" window management and the fact that you can Cmd+X selected text, but not selected files is deeply bizarre.
For a declaration of my own bias, as a kid I was put in front of macs, so it impressed me during important years (8-15 years old). I don't use any macs nowadays. I use file-cutting-enabled linux systems.
With this background I don't see that opening files or folders with the return key as intuitive at all, I don't see the connection. It's not a bad idea, just an arbitrary choice like others. Command+O I can understand too, O is for Open and on the mac they decided to introduce (i.e. invent and teach the user) a universal action open that works the same for files and programs (no separate open vs execute). That's a positive example of consistency, at least.
Enter for rename is perfectly sensible to me. Personally, I use it more than Cmd+Down to open files.
The Cmd+C + Cmd+Shift+V paradigm for cut/paste makes just as much sense as the Windows paradigm. Either way it's a just copy and delete function. Would you rather choose to delete at the time of the "paste" or at the "copy?" I don't see a clear reason to prefer one over the other.
Some people seem to hate it but for me it’s absolute joy to use and the only file manager designed properly and for power users.
Explorer totally falls apart once files in a folder are in the 10,000s performance anside its sorting and search are anemic compared to Finder.
This means that even the little-seen parts of the OS that have never been redesigned (like DigitalColor Meter, the Bluetooth file receive dialog, ColorSync Utility, Keychain Assistant) still look pretty much at-home in the latest design.