I mean, this is preaching to the choir, but let’s go anyway.
I liked the UIs of the entire era from 3.0 to 2000, really. I’m mostly using Windows 2000 as an example here because it runs so well in QEMU/KVM and that allows me to easily take screenshots.
Some of the following will sound absolutely trivial, but I think it’s worth pointing out.
↫ movq.de blog
Just a series of observations about how much better graphical user interfaces were back in the ’90s and early 2000s. We’ve lost so many affordances based on both common sense and scientific study, and what we ended up with is a confusing, inconsistent mess. It doesn’t really matter where you look – user interface design has deteriorated since the early 2000s, a decline that only accelerated thanks to the arrival of the iPhone, where consistency is a dirty word, and the web, where the advertising people took prominence over the design people.
I just want my buttons to look like buttons man.

I like proper buttons too, but the early 2000s was just as wild as today. If not more so.
See Windows Media Player and Winamp skins as a case in point.
Winamp is often cited by people as peak media player design but majority of it’s skins lacked any appeal for me. Maybe it was the Winamp UI itself that I wasn’t a fan of, but the sometimes grotesque skins could be a major pain point. A good and simple terminal/GUI based music player [currently on Deadbeef] is all I need.
Good video in French that explain a bit things : https://www.youtube.com/watch?v=dPi-o1rsHpI
Some of the “modern” decisions were heavily influenced by mobile devices, including Windows itself.
If you look back Windows 2000 -> (ME, the last 9x counterpart) -> XP -> Vista -> Win 7 progression was just more Skeuomorphism, watery, 3d UI elements, but the UX (User eXperience) roughly stayed the same
The scroll bar was always visible (at least when there was content)
The buttons had embossed / sunken state
The start menu was an actual menu
Then Windows 8 came. It was a “mobile first” design, bringing ideas from (failed) Windows Phone (which was an extension of Zune UI). No more start menu, but a start screen, a full screen one. Scrollbars? Not convenient on the phone, so hidden by default. Even menus were hidden! Buttons? Flat. UI elements? Huge, since people had to press them with fingers on a tiny screen.
After that they tried to minimally course correct (8.1 brought back Start menu, but it was still a “Windowed” Start Screen, same concept, just slightly less intrusive)
I don’t think they ever went back to actual desktop first UX paradigm
(Again UX != UI)
What was nice about XP is that it was basically 2K, but not bleak. (Though I admit, the default blue Luna was a bit much. Always used Silver.)
I built a machine for Windows 98 SE in 2003 because I was so offended by “Fisher-Price OS” and didn’t know about Classic… and during the one year I ran Windows XP on it, I ran LiteStep before I got fed up enough with whatever was making XP a bit unstable (bad drivers?) and switched to Mandrakelinux and KDE 3 for my daily driver.
I’d probably be using Qt’s Redmond theme now or the third-party OS 9 Platinum theme if both of them didn’t trip my “uncanny valley” senses.
Thankfully, there’s now Inexperience Patcher and X-Setup for bridging the gaps in XP’s built-in Classic option to turn it into a convincing facsimile of 9x/ME/2K, and, while I generally do like Windows 7 on the machines I run it on, it’s nice that RetroBar fixes the most glaring flaw in Windows 7’s Classic theme. (I’m still working on identifying and finding fixes for the other obstacles to if I want a machine with only Win7 drivers to feel 98SE-ish.)
Heh, I ran Window Blinds on 98 to make it look like the XP, before I had a computer that could actually run XP. Kinda skipped 2000 because people told me it “couldn’t run game.”
That was the other justification for running 98SE. Why run XP on a 2GHz Celeron when 98SE has better game compatibility?
Granted, I’m not sure I actually used that better compatibility. I didn’t have the Magic: The Gathering game that literally only works with Win9x if you don’t have the fan-patched version off archive.org and it’s a PCI-only AC’97 motherboard which I never tried making suitable for “Reboot in MS-DOS Mode” back in the day.
I only pulled it out of the closet and started downgrading it back to something Windows 98SE can run without >512MiB RAM patchers and LBA48 IDE patchers a couple of weeks ago and I’ve sort of been putting off fully exploring whether to run a SoundBlaster CT4810 or a Yamaha YMF724 in it until I finish replacing all the fans with Noctuas to make it silent like I did with the hand-me-down Lenovo 3000 J Series I received later and run XP on.
(Aside from the spindle motor rumble from the rotating hard drive, a solution for which is blocked on the A.I. bubble popping so SSDs come back down in price, all that’s left is the CPU fan, but it’s Socket 478, so I’m going to need an adapter like https://www.thingiverse.com/thing:6879228 and I haven’t yet looked into the cheapest way to get that printed in something suitable. I’ve seen ASA recommended for this use-case on Reddit.)
My “wouldn’t run on Win2k/XP” game was Thief: The Dark Project. Though actually, it would run just fine, it just wouldn’t install unless you used the “-lgntforce” switch when launching the installer.
Damn I miss that game. I have the GoG release but it’s just not the same. I need to build a period-correct gaming machine for all of my late 90s games, but the retrogaming/retrocomputing scene has driven classic hardware prices through the roof. As if the current modern hardware isn’t already too expensive as well.
@Morgan
I have a copy of Thief Gold from my teen years, but I haven’t used it recently enough to know what the difference is from the GOG version.
As for retro hardware, I suppose I’m just lucky to have a mix of old stuff I kept, hand-me-downs via friends and family, and things I lucked into.
If you want something inexpensive that has Windows XP drivers from VIA’s website, Wyse Cx0 thin clients and 8GB IDE Disk-on-Module units from China are still quite cheap and the onboard graphics should be comparable to a GeForce 4 according to the benchmark listing I checked.
Just network it and use DAEMON Tools or an appropriately old Alcohol 120% to mount your ISOs over Windows File Sharing.
I haven’t tested the VIA graphics extensively, but the GeForce 2-equivalent VIA Unichrome graphics in the HP t5530 I lucked into for Windows 98SE haven’t let me down yet once I clicked through the big “we didn’t QA this!” warning in EA’s 3D Configurator. (eg. Need for Speed 3, Future Copy LAPD, etc.)
@ssokolow:
I actually still have my original Thief and Thief II game discs packed away, along with System Shock 2, Unreal, Star Trek Armada II, Quake II, and even my original floppies of Doom Ultimate.
I do have a few thin clients with Radeon graphics but they are just “new” enough that OSes older than Windows 8 don’t run on them properly due to the lack of drivers. I’m probably going to try to find an era-appropriate laptop with a discrete GPU; some of those games are picky about anything that isn’t a “real” GeForce or ATI chip. As a bonus, BeOS 5.0 Pro (from my original disc purchased from GoBE!) should run on such a machine just fine too.
@Morgan
*nod*. The hand-me-down Thinkpad T410 I run Windows XP on didn’t spring for the nVidia option so it’s got Intel graphics. Thankfully, the T42 I run Windows 98 SE on has ATi graphics.
@ssokolow:
I completely missed this in the discussion. The main difference is that (as far as I can tell) the GoG version won’t install on period-correct hardware, and the game itself naturally doesn’t have support for modern hardware, so what you end up with is software rendering for the visuals. Which, speed-wise, is just fine; even basic integrated graphics on anything made in the past decade can run the game at several hundred frames per second. However, the game looks washed out and blocky due to the software rendering, rather than crisp and colorful as on a period-correct supported GPU, and the lighting isn’t as accurate for the game’s main mechanic, sneaking through shadows.
My ideal setup for this game is a Pentium II with either a Voodoo 3 GPU or a Riva TNT2, I ran it on both cards back in the day and it was perfect. A Sound Blaster Live would make it even better, allowing for the game’s advanced 3D spatial audio support.
Morgan,
The same thing was true with quake. Software rendering worked fine, but rendering through a Voodoo GPU had far more vivid colors and had better lighting effects. Quake would obviously go on to get many ports and I would expect the best ports to replicate the original voodoo experience, although I’m not actually sure. It would be interesting to compare them side by side.
Quake 2 got an RTX port, although I felt Quake 1 was a better game.
@Alfman:
You brought to mind the fact that PCem and similar vintage PC emulators can actually emulate the entire Voodoo 3 GPU, so given a powerful enough host system one could probably get the original games to look correct, though performance is probably another matter entirely.
I would much prefer a “remaster” like other classic games have had done to them; depending on the studio doing it, it can make for beautiful modern visuals while retaining the excellent gameplay and mechanics from the original release. Thief itself has one called “The Dark Mod” which uses the Doom 3 engine and it’s pretty good as far as remasters go, and amazing for the fact that it’s not even a commercial endeavor, but a community effort.
A hacky attempt to mimic HFS Creator/Type codes… good for protecting ordinary users from changing them by accident, but some of the complaints about hiding extensions (relating to intentionally forcing an ‘incorrect’ filetype when out of something like Notepad or WinZIP) also apply to HFS Creator/Type codes. (eg. Manually creating a .cbz using a .zip tool is even more unfriendly on a classic mac if you don’t have ResEdit installed.)
This brinngs me back memories. Windows 2000 was (at least for me) the best Windows edition ever.
Windows XP SP3+ with classic theme was. Mostly because multicore support (not in Windows 2000) and 64 bits version.
Then Vista…
Windows 2000 suports multi core just fine, the server version supported 8 cores, and 2000 DCS supports 32 cores/cpu’s.
(regular 2000 does dual, and basic server, 4 cores)
And for me the best version of windows ever made was XP x64, but that is actually a missnomer as it shares very little code with 32bit xp on the system level according to David Cutler, instead it is based on the Windows 2003 codebase, which was developed in paralell to XP.
I also loved W2K and used it a very long time before finally caving. It may have been when Firefox stopped supporting Windows 2000 that I finally had to switch.
Windows 2000 was far better than the Win9x stream. But I also worked on Windows NT on DEC Alpha machines from Windows NT 3.1 to Windows NT 4 and Windows 2000 was a huge leap from the early NT era as well. It took until Windows 7 for me to to stop missing Windows 2000 and, while Windows 10 was ok really, nothing has been as good as Windows 7 since IMHO. And, while I have never liked any version of Windows more than Windows 2000, I also have to admit that it had many limitations that Windows 7 lifted.
So, I guess if I was able to go back to any version of Windows, it would be Windows 7.
What hasn’t been mentioned is how the interaction with webpages have affected UIs. We all click on stuff on webpages, and it has affected what we think is clickable. Sliders are often still somehow bevelled or made to stand out somehow, and textboxes can stand out too (not always). The majority of the time people interact with stuff is with webpages, more than with OS interfaces.
This is something older users often miss when discussing what makes a “good” interface.
Give a Windows 2K machine to a group of kids today and watch them hilariously struggle to make any sense of it. Many of its metaphors and assumptions are no longer intuitive, especially when they refer to physical objects or workflows that have mostly disappeared from everyday life.
The reverse is also true. People raised on traditional desktop interfaces often struggle with modern UI conventions, particularly as mobile design continues to bleed into desktop software. Since mobile is now many people’s primary computers, that influence is inevitable.
Each generation tends to assume that the interface it first learned was the natural, correct one “as God intended” and that everything else is bad design.
This is very true. We all have different experiences over what is “universal” as well. Maybe not a great example but think of “hamburger menus”. They are not necessarily intuitive but they are so ubiquitous that their function would be immediately obvious when encountered in any UX today (certainly anybody under 20).
What’s wild is that you might recognize the Hamburger menu from Windows 1.0 or the Xerox Star.
There, at least, the menu placement was consistent (Windows put it in the upper-left corner, and Xerox in the upper-right).
I agree on almost everything, but I have to disagree on “Android sliders”.
I do have seen plenty of real, physical switches that look pretty much exactly like that, and I find that design very clear and unambiguous, just as good as check marks if not even better.
As the update to the post says, “People were surprised that there are no real-life objects here that resemble those Android sliders:” “I’m as surprised as you are — are these things more common in other countries? Huh.”
They appear to be in a 240V country, based on the shape of their light switches, but I can also confirm that, here in Canada, the only places I can remember seeing a non-momentary slider switch are the RFKill switch on one of my ThinkPads, one or two pieces of cheap Temu-class trash (I think I saw it on a fan powered by two AAA batteries), and some of the switches from my Radio Shack electronic project kit from the 1990s.
(I do, however, remember there were at least one or two other examples because I remember it being annoying to not lose the moulded plastic piece that sits in front of the actual switch when disassembling them to fix something.)
…plus, on a purely practical level, they’re twice as wide as a checkbox… which makes me suspect the’re a disguised expression of the same “pad it out so a fat finger can easily tap it” that’s made desktop UIs worse in so many other places since they can be a compromise which keeps line heights generally low while still providing a large thing to tap.
For me the big difference was just getting stuff done.
Despite hardware of the time being a fraction of the power of a modern phone (let alone PC) the interface and OS felt snappy and out of the way.
I genuinely don’t understand why a modern OS isn’t both (near) instant on and instantly responsive no matter the load an individual application is taking. It’s madness that my whole interface runs out of resources when the whole Windows 2000 OS ran with only 32mb of memory. A modern rounding error
Adurbe,
That would be ideal, but we genuinely do more today though.
The “ye olde Windows 2000” interface is still possible. Boot up a Raspberry PI 500, it will will even emulate the x86 CPU faster than the Pentiums of that era. And will give the modern features.
But we don’t use it. Why?
Requirements and expectations ballooned.
(It of course does not mean software quality did not regress. But even without that we would have higher bars)
I’m not sure I agree with that analysis though.
Look at WindowsDebloate
https://github.com/Raphire/Win11Debloat
You can take massive amounts out and still be left with a fully capable OS and desktop.
I’m not sure we Need the cloud services, Nvidia/AMD suites, autoupdate apps, the phone home services and telemetry systems that all run and consume resources.
I think we’ve been told repeatedly over the decades newer means slower and we’ve accepted that. When in many cases it’s because it’s cheaper to develop something that isn’t optimised than something that is.
I don’t think I agree with this analysis.
Do we Really do that much more today?
Look at tools like WindowsDebloat. You can rip out massive parts of windows and still have a fully functional and faster system.
Do we need the suite of apps by Nvidia, multiple update tools, phone homes, telemetry, cloud services, ad calls? Even things like hand writing recognition are installed whether you want it or not. And all this was before AI
Marketing has been telling us for decades all this bloat is for our own good and we couldn’t possibly live without it. But I’d suggest quite a portion could be removed and could Certainly be better optimised.
As with all these things. It costs more for Microsoft to develop something optimised. It’s cheaper for them to tell us we need more RAM or a new PC
Adurbe,
Two things can be true at the same time. Yes, we don’t need to have the Start Menu be a JavaScript application, but we truly do more things today.
Take Windows 2000 as it is the original topic. Install it on a new machine that is networked.
It will be taken over by a worm even before the install finishes. If you managed to install offline and add a firewall, it would still be open to many remote rootkit attacks in 100 different way.
Btw, that network is wired, since Windows 2000 lacks native Wifi management. It also lacks HDMI, Thunderbolt, proper USB, modern printing, and anything that resembles good multi-monitor setup.
Somehow you started working, and decided to ask “where was this file?”. You have to wait for entire hard drive to be scanned as the Windows File Indexing was at an infancy.
Want to do video conferencing? Collaborate on a documents? Browse the modern web? Play a game released in the last decade? Use nvme? Talk to new computers? Remember your setup between docked and mobile? Write modern C++ code?
Good luck
(Windows XP, or even Windows 7 unfortunately don’t fare much better either. Those were great designs for a long bygone era)
That’s conflating a lot of things which I’ve not said.
I’m Not saying windows 2000 is a modern OS. Nor that you should use it as a daily driver.
What I’m saying (or trying to say) that despite being a factor of 26 (moores law) faster I still need to wait for the OS and it’s interface.
A network stack and drivers don’t account for that scale of “lost” performance.
(applications/Web page/videos/games are not the OS but things installed and run on top)
Adurbe,
I think we somehow are speaking past each other.
It is no secret that some of the performance gains are eaten by terribly designed software (once again JavaScript on the f-in Start Menu)
But…
Where is that factor of 26 coming from? 10^26 is huge, and even 2^26 is pretty large
I cannot find my Windows 2000 specs (checked all my emails). So, let’s use recommended one
Windows 2000
CPU: Pentium III 300 MHz
RAM: 128MB
Hard Drive: 5GB
Display: Super VGA (1024×768)
Optical: CD or DVD
My Current PC:
CPU: 13700k (~5,500x faster)
RAM: 64GB DDR5 (500x more)
Hard Drive: 4TB NVMe (800x more)
Display: UHD (10x pixels)
Optical: None, but have USB / SD cards ~1TB range (330x larger)
So at best “a factor of 12” difference
But why is it slow?
It is not, because they literally are not doing the same work.
And it is just not a network stack, it is the overall philosophy of the operating systems that are different.
I’m not saying let’s use Windows 2000. What I’m saying is anything modern but designed like Windows 2000 will still fail today.
Any guesses why?
A large part of the problem is that everything is a web app and the web wasn’t designed to run apps in the first place of performance inevitably tanks. But most devs won’t write a native app unless absolutely necessary, because it’s more work and also because they think native apps are ugly.
Magnusmaster,
That last part is partially true though.
On a modern system, with Hi-DPI output, the older widget toolkits like Win32 or Xt really look ugly and out of place. As they cannot be natively scaled, nor they have the sharpness needed to blend with the rest of the desktop
And Electron, as wasteful as it is, offered a quick way to modernize the UI.
Ideally, this should have been Silverlight/WPF but the infighting between different Microsoft teams made it a dead on arrival project.
And here we are loading a full chrome web browser in the background to run a simple text editor.
This has to be mostly hyperbole.
A modern Windows PC is very unlikely to “run out of resources,” unless you have a very old machine or something with very little RAM, during ordinary productivity work. Windows 2000 could technically run on 32 MB of RAM, but a machine that constrained was barely usable even then.
Nostalgia has a way of exaggerating the strengths of older systems while minimizing how capable modern ones have become. Today’s computers handle vastly more data, features, and background activity while remaining far more responsive overall. A Windows 2000 machine could spend ages simply loading an application from a mechanical hard drive, for example.
Xanady Asem,
I think Adurbe’s point is that while hardware has improved by magnitudes, the end result doesn’t always reflect this. I’ve always been impatient waiting on computers. both back in the early 00’s and now….things haven’t improved as much as the hardware really should allow because software development has shifted from software optimization being a necessity for decent performance to “hardware is cheap so developers needn’t optimize software”. It’s becoming a lost art; those of us who do it become guilty of “premature optimization”. The result of this trend has lead to software that can still be sluggish today even though modern computers have tons of performance and capacity,
Exactly this. Moores law would indicate we have a factor of 26 more performance/power. It doesn’t really feel like that.
Yeah, no.
Nostalgia distorts expectations.
Modern systems process orders of magnitude more data while remaining highly responsive. In fact interactivity has improved consistently with the years, not the other way around. Eg. a contemporary system with proper specs can drive several 4K/5K displays, play multiple high-resolution video streams, launch applications almost instantly, perform substantial computation, and handle constant background I/O without affecting interactivity.
Meanwhile the Windows 2K machine with 32 MB of RAM you waxed poetic earlier would choke just trying to open Word, taking ages to just load one moderately complex app or large data set, for example.
Similarly. Development tools have improved as well. Compilers and frameworks are more sophisticated, never mid the programing tools, CPUs extract far more instruction level parallelism and have improve power efficiency continusously, and there are all sorts of application specific accelerators even on a mobile phone (graphics, media, AI, cryptography, wireless modems…), etc, etc.
Some parts of the system have advanced faster than others (CPU vs mem vs storage vs IO), but the overall result is vastly more capable and efficient computing.
Eg, you can now have a battery powered device that fits in your pocket and costs a few hundred $$$ and can outperform a late 90s supercomputers that occupied entire rooms, consumed enormous amounts of power, and cost millions. That’s tremendous objective progress.
Xanady Asem,
I know that you’ve always been hell bent on blaming nostalgia or anyone you think to be old, but that doesn’t really dismiss the point. Despite incredible and obvious advances in hardware, the layers of software bloat have acted to nullify many of the gains such that we can still end up having to wait for computers and as a user this is still very frustrating even in 2026. Funnily enough I was talking to a client how much I hate waiting for computers when I had to do the same install on a dozen machines. It should have been no more than a minute or so each, but because windows is so damn slow I actually had to sit around waiting on the machines and coming up with small talk to pass the time. Given the sheer raw performance of computers, frankly waiting should be a thing of the past. Alas, things are slow and we wait because the software optimization has lost the ball on optimizing software and many, including here on osnews, don’t see a problem with that – just keep buying more hardware to offset the overhead.
Nobody’s denying there’s been tremendous progress in compute performance. The problem is that a lot of the hardware gains have gone into offsetting software bloat and overhead.
I’m a product of the software industry and both at university as well as in software companies they preach “premature optimization”, but for better or worse this mentality has had a regressive impact.
Fortunately, in academia and industry we base our technical evaluations on objective measurable criteria, not on whether people online think software *feels bloated*. One of the many reasons this field has advanced so rapidly and consistently.
Xanady Asem,
You can argue that the world has moved on, and I can accept that point. However it is still correct point out that the bloat is real and that we could do better. Software optimization used to be a hard requirement on less capable hardware. For better or worse the prevailing opinion these days is that optimization is no longer time well spent because hardware advancements have made bloat more acceptable and normalized. Software optimization isn’t a priority in the modern age like it used to be.
There is an enormous amount of optimization work happening. Your unfamiliarity with it does not mean it does not exist.
A core part of computer engineering is managing complexity while optimizing measurable tradeoffs (performance, power, area, memory use, latency, reliability, cost, etc).
Optimization as both a formal discipline and as an engineering objective is pervasive and very consequential which is why in academia and industry we rely on defined workloads, reproducible benchmarks, quantitative metrics, etc. not vague impressions that something “feels bloated.”
Xanady Asem,
It’s got nothing to do with me. Seriously I’m just observing reality, which so many of us can attest to. I’m not saying that nothing gets optimized, but there’s a whole lot that doesn’t. Frankly it affects small and large publishers alike: games, operating systems, applications, etc.
Well, you have to look at the “good enough” principal because it factors greatly into what degree a company is actually willing to pay skilled developers to optimize projects before launch. In the past limited hardware made this necessary but over time the combination of rampant cost cutting along with hardware that’s far more forgiving of bloat has created new normals where many software publishers have gotten comfortable shipping things without much optimization. Today it’s not uncommon for trivial applications to be dozens or even hundreds of megabytes.
For better or worse though these days many don’t even try because employers don’t reward it. A companion android app for my multimeter is 60MB compressed. In the 90s it would have fit on a floppy with absolutely no loss in functionality whatsoever. Same deal with my oscilliscope software and countless other applications.
This usually gets justified by saying it’s not worth developer time to solve it anymore, but it’s still a fact and not a feeling.
Xanady Asem,
Unfortunately most of the changes happen under the hood, or they are gradual and hence not appreciated.
Just like the fish not appreciating the ocean, current computer users do not realize how much more happens within their modern platforms.
Is there waste?
Of course. Running Java Script on Start Menu is a sick joke. It is not an advertisement dashboard, it should be the fastest responding part of the OS.
Is there options to trim?
Yes. But 80/20 rule makes it hard. A desktop user might not need all the gaming functionality. Or an industrial machine might not even need a network driver (but TCP/IP stack might still be necessary for localhost)
But, modern user no longer have the willingness to configure their system. Most popular Linux distros are Arch and friends who give you “one desktop”, and highly configurable Slackware is almost forgotten
(What was the last time you configured your own static Linux kernel)?
Alfman,
That is true for a large enough body of software vendors. But it is not universally true. And even in companies different departments have different qualities.
NT for example, has an excellent kernel, but Windows 11 desktop is full of actual bloat.
sukru,
Yeah, I did say that not everything is unoptimized. It’s perhaps a bit ironic that the trivial applications that would be among the easiest to optimize get the least attention simply because modern hardware handles their bloat and inefficiency quite well and nobody cares about fitting on a floppy disk anymore even if in principal it should. Wasting CPU cycles, GPU, RAM, disk space, bandwidth aren’t really deemed deal breakers as long as the hardware has extra capacity to handle it. This status quo is obviously bad for power consumption and battery life, but average users often blame the hardware/ISPs/etc rather than the software for this – so IMHO software devs often get to fly under the radar with bloat.
It’s only when software maxes out the hardware’s capacity that people really start to call it out. Publishers can go in and fix things after the fact if user complaints are too high. Otherwise it’s deemed good enough regardless of the fact they technically could have made it work with less hardware, haha.
Yeah…I think microsoft needs to do a much better job separating the core OS from ancillary applications, although I believe they conflate these on purpose. It is wasteful but at least we can ignore most of it. One of my biggest gripes is windows update….it’s so f’ing slow. This is a widespread problem affecting millions and there is a desperate need for better optimization. However instead of making updates more efficient, microsoft’s approach has been to treat it as a scheduling problem. “We don’t care that it’s bloated and inefficient and you shouldn’t either, just schedule it when you’re not around “. I’ve complained about it enough before so I’ll stop ranting about windows update, but it sucks, 🙁
Alfman,
Yes, but this is the natural evolution of software development.
Think of it as layers of onions. The core, operating system kernels, GPU drivers (not the Windows UI, just drivers), compilers, networking code is written at much higher quality.
The frameworks and libraries around those take a bit more liberties
The public infrastructure, like graphics toolkits, npm, and similar are written in higher level languages
Basic software? Java, C#
And then comes the new “full stack” engineers. They know how to use JavaScript and use it everywhere with zero regards to optimization
We enabled more people to write code, which is a good thing. But not all of them will have the same discipline.
They had a “bloody” internal civil war in around 2010. They had another one recently (these are my readings from the outside). That left the Windows team pretty much scarred.
That is unfortunate though, there are still plenty of good engineers there.
Always ironic to go on about lack of optimization while proposing uneducated solutions to problems they do not understand, based on uninformed assumptions/expectations.
The work behind the scenes is far more informed/educated, systematic, and quantitative than it appears from the user side or support desk. Most “bloat” discussions amount to subjective impressions, with little understanding of the constraints or tradeoffs involved, nostalgia also conveniently erases how much bad code existed in the past.
Give it a few years, and many of the people complaining about Windows 11 bloat today will probably remember it as lean and efficient compared with whatever comes then.
Xanady Asem,
You’re welcome to disagree with me of course, but know this: ad hominem attacks don’t make for compelling arguments.
I realize the reason you keep stooping to this level, but like it or not I work in this industry and I am qualified to say everything I’ve said about software optimization and the lack thereof.
sukru,
Yes, sometimes the reasoning is justified, other times it’s egregious. It’s cheaper (and therefor compelling) to stop optimizing when things are “good enough”. The problem is as hardware continues to improve, the set of software that becomes good enough with little optimization keeps increasing. The question becomes where does the train stop? Haha. We discussed this under the steam article, but valve limiting the specs of upcoming steam machine could actually result in publishers optimizing software more than the otherwise would have with better hardware specs.
Indeed. Many problems with software can be tracked back to engineers who weren’t listened to. Managers and executives have different interests and priorities than the engineers and it can be to the detriment of the product. I often encounter this professionally as well.
Xanady Asem,
I think we can discuss technical matters without stooping into personal attacks.
That being said…
Windows 11 is objectively bad, and not every release get those rose tinted glasses.
From tip of my head, Windows ME, Windows 8 (not 8.1) and initial Windows XP (pre-SP2) were genuinely bad releases. I differ from others on Vista, but that was a victim of marketing and partner relations
And Windows 11 is a clear regression against the predecessor. Unlike Windows 10, for example, you have less controls in the desktop, like a locked Start Menu, worse optimizations, which make it use more resources and respond later, and overall in a less polished state (more crashes and random issues)
Will they eventually fix it? Maybe
But the “tradeoffs” were not accepted by the wider computing community.
Alfman,
It won’t stop unfortunately.
With LLMs the bar is even lower now. But we should remind people to ask “please don’t make any mistakes, and write secure code” from their AIs
It started with with “no code” or low code databases like Clipper and Access. We had VisualBasic. We had OS/2 Rexx and Mac Hypercard. We had Geocities, ASP, PHP, and DreamWeaver
And today we have “Progressive Web Applications”, another word for node.js apps bundled with an entire web browser.
Do I blame the “coder” that hacked together an app that sells for $30 a piece?
I truly cannot
What needs to happen is making sure those perf pressures are handled by the system properly. Maybe standardize those JS runtimes. Maybe push for Dart and other improvements. But we can’t take people’s toys away.
sukru,
I agree with you insofar as continuous hardware improvements have always justified low cost & low effort development practices without raising alarms. Hypothetically though we might find ourselves in a future where cheap and accessible hardware upgrades become increasingly difficult for ordinary consumers to come by, thereby putting an end to hardware upgrades. I can think of various ways this could happen: say the end of moore’s law, a prolonged unaffordability crisis, or god forbid a war over critical chip manufacturing (ie China have sworn to take over Taiwan), these could all change the hardware status quo.
Electricity costs can also motivate more efficiency, but admittedly this is more likely to have an impact on data centers operating at scale. Publishers of ordinary consumer software are very unlikely to care about this or any external costs.
I do appreciate your point and I acknowledge that challenges exist. I’m not an absolutist pushing for developers to pay exorbitant costs to optimize every little inefficiency. My concern is that when we are too lenient the bloat can become egregious and that’s when it’s a problem. A little bloat doesn’t hurt, but egregious amounts of it sure can. You make a defense in terms of little guys, but the titans can be guilty of it too (such as the aforementioned windows update). As is often the case, the most reasonable solution probably lies somewhere in the middle.
It was nice, to have on WIndows 2000 / Windows 9x only one design for the controls. A standard.
I think that was one of the reasons, why KDE was created, to have also standard controls (other then the X11 Athena widgets) on Linux.
And because Microsoft integrates the ported Mosaic (and renamed to InternetExplorer) in Windows, KDE doing the same with Konquerer and the KHTML-engine (which later was forked to WebKit, which itself was forked to Blink of Chrome/Chromium).
And today? There existing on Windows 11 a setting dialog in the new Fluent design and an additional setting dialog in the old Windows 9x / Windows 2000 design, etc.
I think 1997 a lot of people thought, that a unified design is needed for a successful operating system. That’s the reason for the beginning of KDE.
Now (in times of Windows 11) we know, that a non unified design is no reason, to be no longer successful.
Companies forget people age. My grandfather is 92 and remains completely proficient at operating computers. However, naturally, his eyesight is not what it used to be.
So buttons looking like buttons matter. Sometimes updates change the position of the buttons and he struggles a lot to find the new place as he can’t scan the screen fast. He relies a lot on muscle memory.
His bank application, depending on where you are, the return button is on the top left or the top right of the screen and they remapped the return button of the Android UI to quit the application. So sometimes he wants to go back to the previous screen and he quits in instead… wtf…
Shiunbird,
That is a common phenomenon
I remember back in high school era, the student software switched from DOS to Windows. I was a student, but occasionally took a peak when we had official business.
The Windows UI had copied the same exact DOS menus, and function keys. The school officers did not want to learn new behaviors.
“F7 prints a student record
“But F7 is maximize on Windows”
“No, F7 will print a student record”
(Making this up, as I don’t recall the exact keys, but the thinking was similar)
One should not change the UX for established products.