I know dude, and as I won't use W10/W11 garbage, it means that if Microsoft don't change the direction of their ship and release a better OS (which I doubt they will, as mining data is the contemporary equivalent of mining gold) , eventually world will stop supporting Win7 and I need to look for alternatives. This is happening already, W7 market share is getting small and not all software support 7 anymore (which is a shame and also dumb, because 99% of software don't use any new features from W10/W11 and it's just a matter of compiling the code for W7 too, I understand though from business perspective that dev time cost money and if they don't have enough W7 customers to cover the cost of that small effort, they won't do it). I'm pretty well-versed in Linux already using it for a loooong time for basically everything server-based, so the transition won't be painful in that way. It's just that I've always used Windows since MS-DOS, and I've grown to love it. I hate to see the OS I love and am so used to going to s**t. Win7 is pretty much a pinnacle of an operating system for personal desktop use, in my opinion. I would be completely fine using Windows 7 forever if it had continued support from hw manufacturers and software devs. There are a lot of things about Linux which I don't like, which Windows does better IMO. I don't like the unix-style filesystem, nor the concept how software and their dependencies have to be installed. I do like docker though and also the container-style installers found in macOS. While Windows gets a lot of flak about "DLL Hell", I think in Linux it's much worse, mostly due to the large amount of variations around. I know it's super easy in linux to deploy pretty much anything, just apt-get and off you go. But what I don't like is having the files scattered around the system and to trust that installers and dependency references work 100% of the time, which they don't, meaning that junk gets left behind. You said you like chocolatey, that concept is exactly what I hate. Example: installing python via chocolatey, yeah it silently installed fine but also without asking installed system-wide stuff like a shell handler, installing pylauncher to system32 dir, stuff like that. I thought scoop was the portable brother of chocolatey as it advertises itself, but it is not. It still uses the normal installers and leaves junk behind. In my perfect world everything would be portable, contained in a single folder and it never touches anything else. If I delete the folder, everything is gone, simple as that. In windows this can be achieved much easier, though the abomination that is windows registry will get eventually bloated enough to require a system reinstall (because again some software use registry but their uninstallers don't do their job and don't delete everything). If registry was never invented and software sticked to the old paradigm of using only config and .ini files, that'd be perfect. Install 1000 software and remove 1000 software, without a trace of bloat left behind. Because the concept of software in linux is based on getting the source code of every single dependency , building it and installing globally, it's quite the opposite of portability. It reminds me of .NET "managed code" in windows and it's way of handling "assembly" dependencies, which I absolutely loathe. I wish .NET was never a thing. It's performance is abysmal and the poor dependency handling of million different assembly versions makes people have different bugs regarding to their specific environment which are hard to track. And it completely forgets the one thing Windows is so good at, uniformity and backwards-forwards compatibility. I mean I can write code in C/C++, compile it to native code and either statically link the binary or link to msvcrt (or even ntdll) which has existed since windows 2000, and it will just work for anyone no matter whether it's booted up in Windows 2000 or Windows 11. No need to install any dependencies, everything is already there. I can write GUI apps in winapi and resulting binary will be a few kilobytes in size and using pretty much zero RAM, while in Linux I would need to include a bloated 50MB Qt-framework just to display a f**king dialog box. Of course, there is a lot of stuff which Linux does undoubtedly better. Batch is a joke and powershell not much better compared to the command-line goodness Linux has. But the thing is, I can fire up MSYS in Windows and easily have the linux command line environment without any VM/emulation. Best of both worlds, in my opinion. There is also WSL, which I haven't used but I heard it works well. And if I need a full-fledged linux environment, i can just fire up vagrant/virtualbox. Simply put, I think linux wins for server stuff and in command-line, but windows wins in GUI. And the point is still very true that linux is for tinkerers and windows is for normies. If I want to write apps for non-technical professionals, I write them for windows, and it just works. It's much harder to write software for linux which just always works with zero-configuration and tinkering required. Everyone has their own favourite window manager and every environment is different, unlike windows where I not only know how everything works on my computer, but on other computers too. I can easily write software which I know it'll work and just send a binary to a non-computer person friend, who clicks it and it just always works without any hassle. Example: I wanted to play retro-games with my friends through a VPN so it'll bypass any port-forwarding and NAT stuff and from the games' perspective it seems we are all on a same LAN. Setting up a VPN is of course not rocket-science, but for an average non-technological person it very well might be. For Windows I can make an app contained in a single binary file containing everything it needs and from user's perspective it's just a dialog box with a single button "Connect". Click on that, while in the background it loads a TAP driver and makes a network adapter, configures the VPN settings and connects to it, test the connection to everyone else. and only shows a single thing, "Connected". On exit it disconnects, unloads everything, uninstalls network driver, without a trace left behind. And it works for everyone, from Windows 2000 all the way to Windows 11. And the binary size with all dependencies included, 300KB. Doesn't need anything else installed, only linked to kernel32.dll, user32.dll and msvcrt.dll which every windows installation have by default. A thing like that is simple to do in windows, but try doing the same in linux which is similarly universal and just works 100% of the time and doesn't require installing additional dependencies. I mean even starting that would run into the problem of distros having different styles of configuring the network interfaces, even between different kernel versions of the same distro. And you run into this same thing in basically everything linux. There are no universal principles, no universal configurations, everything is always different. You can't just assume that a config file for X is in the same place for everyone or even in the same format. You basically need to either leave the user to fend for themselves and do the configuration, or code in every combination of kernel and distro version which is at least a huge undertaking or even basically impossible. So if I like windows, why the need to forego privacy and accept bloat? In Windows 7 it's still possible to fix it so the bloat and telemetry is removed, because it's not baked into the OS itself. That's the thing, I like Windows and want to keep using it, but sad that I can't. The alternatives have too many downsides compared to windows, in my opinion. And it's a matter of personal preference, what I'm used to work with, where I can work fast and know the OS by heart.