Why I’m Done with Windows for Software Development (Unless Forced)

Why I’m Done with Windows for Software Development (Unless Forced)
Photo by Tadas Sar / Unsplash

I'll start from far away. First, here's some background of mine. I work as a software engineer and consultant, I've finished university for software engineering. Mostly I work with back-end in Java and, occasionally, other languages. I like computers and I'm no stranger to how hardware works and I know how to fix hardware and software issues. Of course I'm a tech support for my family. That being said, there goes the saga of my OS journeys.

Living with Windows, Loving Other OSes

I grew up using Windows. I'm relatively young, so the first Windows version that I have been really using is Windows XP. I've seen older Windows versions, but either I was too young to care or understand, or it was just to poke around the old software. So I've seen and lived through a bunch of Windows versions (including not so common versions like Windows CE on pocket devices). As a regular user, at home, Windows did it's job and was quite alright (up until Windows 11). As my skills evolved I shifted away from Windows to other OSes, just because I like them more. My friends and family use Windows, so I still have to interact with it and it's alright. For "power" user though, or with corporate additions, it's whole another flavor and it's not sweet. But more about that later down below.

MacOS: A Deal that Took Time to Appreciate

My first encounter with a MacOS was around year 2019. I got a really good deal for 13" i7 16GB 2016 MacBook Pro with touch bar (idk how to distinguish MacBooks without stating the specs...). I didn't really needed it, but "It was a steal, not a deal" - that kind of a deal. I had almost no idea how MacOS works and it didn't really impress me back then. Intel based macs were hot, loud, and performance was average at best and the whole Mac device family was way overpriced comparing to Windows alternatives. MacBook became my secondary laptop while I primarily used my PC and another Windows/Linux laptop. I was occasionally using it, learning bit by bit how MacOS and ecosystem works. Over time, I've found my way around MacOS, and despite laptops age, I'm still using that MacBook in 2024. Though it's about time for an upgrade.

Torturing devices with Linux

Linux, on the other hand, has been my companion for quite a while. I've been experimenting with it since Ubuntu 14.04, often running some Linux distro alongside Windows in a dual-boot setup on same or separate drives. I graduated from university with a Linux Mint laptop because my old machine was too ancient to run Windows 10 decently (HDD times). I even ran Linux from a USB stick as the main drive for a few months xD. Poor USB drive though. It was overheating badly, but it was pretty usable (on par with HDD), unless I needed to copy or save large files or a LOT of data. Anyway, fast forward to 2022, I switched to Fedora as my main OS on my tower PC to dodge Windows 11.

Coding in Peace, Please?

Now, to the software development part. For me, OS is mainly a tool, which should do it's job and be convenient and not interfere with what I'm trying to do. I've been working professionally on all 3 operating systems, staring my professional dev journey on Windows 10. It was alright. I worked on Windows 10 for a couple of years. If Windows is not burdened with all the copro policies and constant checks running in the background, it can be quite good. The cheat is that I used it on a desktop work PC, not on a laptop. But later I've landed at a place where there was quite some corpo policies and rules, forbidding to do some things, forever auto-updating something, constantly requesting restarts and so on, and it was painful to deal with.

And I've quickly decided to run away to Linux. It was corpo modified version of Ubuntu, still with corpo policies and some restrictions (like sudo auth through company server and windows defender antivirus, lol), but it was so much snappier, faster, non-intrusive and I was in control of my workflow. The hardware resources management was better and I could do so much more natively, instead of using some 3rd party apps for everything. Windows fans might argue, that Power Shell is, in fact, powerful, but let's be honest, Linux terminals and their tools are just better. Even build times were noticeably faster comparing to Windows on the same laptop with same specs. All that happened on AMD Ryzen laptop that was given to me as an experiment before buying more AMD based systems into the company (it was great btw). Also I quite enjoyed spectating the clown fiesta of rolling out Windows 11, which was full of troubles and random issues. It was the golden time of colleague trolling every time they had another issue with Windows. The paradise ended when I encountered software incompatibility with client software (for fucks sake, Citrix, fix your shit). I tried everything I could, but despite my efforts, I had to abandon Linux and keep working.

I did not wanted to go back to Windows with all my heart and soul, so I was very happy when I was able to land my hands on a M1 MacBook Pro. And it was a great experience. Everything was snappy, fast, non-intrusive, I was in control of my workflow and the hardware resource management is great. Even with copro software that was managing the updates and a bunch of other stuff, it was silent and fast. Touchpad and gestures were so polished, I've forgot that I am carrying a mouse in my backpack. Battery life was amazing. Whole working day on a battery? No problem. I honestly enjoyed working on a Mac - there were little to none issues and I could still troll Windows colleagues with how slow and troubled their OS is. And almost all my bash scripts that I took from my Linux setup worked with little to none modifications. The heaven of smooth work continued until...

Windows strikes again

Later I've changed jobs and company requirement is to use Windows and Windows only. Also, they have a partnership with Dell... Sorry, Dell, but it looks like you still don't know how to write good drivers for your own hardware. Introducing the Wi-Fi Houdini: Now You See It, Now You Don’t; stay tuned for next trick, where we will make your audio disappear! Why Wi-Fi can just un-exist itselft randomly? Not just from the task panel, it even disappears even from Device Manger... Every time I had to use Dell, there was noticeable amount of Dell-related issues. Material quality, build quality, drivers reliability, cooling solutions... Almost every time some friend asked me to help fix their laptop it's been Dell (coincidence?). Although this time I've got the (almost) most expensive Dell money can buy. And it's alright. Not on the MacBook level, but still quite decent. Allthough, "End" button sharing F12 and being accessible via FN makes "End" button unusable. You think I'm needy or entitled? "GiVe Me A mAcBooK" kind of guy? Nah, I'd work on a 1999 half-alive ThinkPad kind of laptop if it'd be suitable for work. This Dell is always hot, fans are always spinning. CPU USAGE IS 8%, WHY ARE YOU HOT??? Maybe I've just got used to the chill and silence of the MacBook Pro. But is it bad to get used to good things? But to be honest, except for being hot, drivers issues and a bit weird keyboard layout (copilot button, lol), I'd say it is a nice laptop.

This time I think it's Intel, who shat the bed. Not alone, Windows helped. I remind you, it's (almost) the most expensive Dell laptop. 64GB Ram, Intel Core i Ultra 9 185H, NVIDIA RTX and Intel NPU with a bunch of other bells and whistles. That's a decent specs salad for a powerful beast. But with Windows 11 and all the corpo policies it's slow, not responsive, intrusive and limiting. With lags, delays, bugs (like can't change the display brightness level after sleep), choppy animations, it hogs RAM like crazy and the battery life is just terrible. With medium usage such as teams calls, couple of app builds and staring at the code in between, it manages to die after 3-4 hours. Windows 11, as an OS, is pure disappointment for me. This time Dell did an alright job, but Windows 11 and all the corpo stuff are making it borderline unusable. For some reason Linux and MacOS can be just fine with heavy insertions (FROM MICROSOFT, I must note) of corpo antiviruses and other bloatware, but Windows can't handle it's own shit. Btw, I've found out that PowerToys can make life on Windows somewhat better. Some features should be already included in the main release.

Hate Is a Strong Word

This turned out more of a rant and it might appear that I'm just a Windows hater, but it's not true. No, I'm not going to go into the whole data collection and privacy issues here, although, let's face it, it's a huge concern. Some people are fine with that, others not. OS is a tool that should be comfortable to use and match persons workflow and use cases. MacOS is much more polished and consistent. Linux is so flexible it can be anything you want it to be (although Linux is not so normal-person-friendly yet). But Windows... For normal people and basic daily usage on an adequate laptop/PC it's honestly fine. Most normal people are using the internet browser, rather than OS anyway. For me though, using Windows for software development feels like driving a 25-year-old poorly maintained car, with modern touch screen tablet slapped instead of an old cassette radio, while being rusty underneath, where something is constantly wrong with it, but it's still running and can get the job done. I don't hate Windows, but I'd rather avoid using it in a professional environment, unless I have no other reasonable choice, e.g. being forced by employer policies. Windows on enterprise servers is whole another topic, but to be short: why?..

Philosophical Outro

Anyway, this recent experience reminded me, how miserable developer's life can be on Windows 11, even on a top-spec machine (even if it's Dell, bruh). Windows is just not for me, I guess. But at least I can choose my personal devices and for an observable future it is a Linux on PC and homelab server, paired with a MacOS MacBook. And yeah, I still have Windows 10 as a secondary class citizen on my PC just to run a couple of games, because Windows, to this day, is still the best OS for PC gaming. Maybe this will change soon and some year will finally be "The Year Of The Linux Desktop" to give more people a room to breathe and a choice for regular people, not a sacrifice or a headache.

Subscribe to Technikatsu newsletter and stay updated.

Don't miss anything. Get all the latest posts delivered straight to your inbox. It's free!
Great! Check your inbox and click the link to confirm your subscription.
Error! Please enter a valid email address!