As an long delayed experiment, I installed Windows 10 on my machine and forced myself to use it and go through initial hurtles in order to give it fair chance, see where it stands today as opposed to few years ago when I’ve last tried it and in order to learn few things among everything else.
I’ve been using Linux exclusively on my private machines for years, and for work I’ve used Linux and MacOS. Last time I was forced to use Windows for work was also the time where I was constantly connected to some remote Linux machine and was basically using it only as a gateway to some remote server.
This article, although draws some comparisons, is not a comparison or Windows vs Linux battle. It is simply intended as an exploration of Windows 10, and as I’m Linux sysadmin and have been using it exclusively, it’s from “Linux users perspective”. I don’t really care about opinion of others on this topic, except constructive feedback and criticism if something mentioned here is wrong. Again, article is intended as a simple writeup of my exploration.
Now, to spoil few things, since I’ve started using Windows 10, I’ve started to embrace more and more Microsoft things, and I believe that’s their “sales goal” anyways. Operating system by itself is still not very impressive under the hood :-)
Anyhow, this article might focus more on advantages of the whole ecosystem (popular word in Apple world, right?), than on OS advantages or niceties.
Things that left good impression on me
Microsoft Edge – when I heard Microsoft was going to re-write Internet Explorer… erm… Microsoft Edge again and this time base it on Chromium, I was like: “Great idea, take that sh** and make it even more bloated with the help of wonderful ideas from Google. While at it put few more trackers in there.”
Well, I’ve tried it and it is really nice, especially within Windows 10. Microsoft really did fabulous job with its new browser. Although it is still in preview as of writing this (should be released around this time), it is simply amazing. Features like “read aloud”, “collections” and general intergration with desktop deserves medal.
Supported apps – This has always been strong side of OS from Redmond. Everybody makes apps for Windows, desktop ones at least. But as more and more apps are web or mobile based, and computers are used by folks maintaining those apps, web services, and server, I’m not sure how long this will stay advantage of Windows.
My personal workflow is anyhow better on Linux based machine. Mobile app developers these days can use Linux or MacOS anyhow and be just fine.
Windows is still dominant platform in gaming though. Every game I wanted to try out was readily available on Windows, and it was nice to remind myself I don’t need to hack and troubleshoot libraries and combine various library versions to make game work.
Great documentation – Almost everything I wanted to do on Windows I had to look no further than Microsoft Docs page. That also includes documentation about Office365, Azure, etc. It is simply amazing. Folks maintaining all those docs do heroic work and it is quite visible.
That being said, it is sometimes hard to dive in into under-the-hood implementation details. Even excellent cmdlet documentation of Powershell fails to mention logic behind commands or provide good examples. You’re left alone in trying to figure out that for Hyper-V networking you don’t get DHCP server on additional network switch, but instead you need to roll your own. You also get one nice big “f*** you” when trying to figure out how to have External switch and share it with host.
I should not dwell to much on that though, as Linux clearly won in anything related to the server space (except in small business perhaps).
WSL2 and Windows Terminal – It is just sexy as hell, isn’t it?
Transitioning to WSL2, Microsoft learned quite a few things with WSL1 flop, and nicely integrated whole system in various places. And most Linux things you need, they just work within WSL2.
It is also nice that they’ve integrated it nicely within “remote” extension in Visual Studio Code. So you have almost native Linux experience.
OneNote – This one is so close to section below that I thought I’ve made a mistake and started writing in wrong section, but it is saved by excellent mobile applications, seamless sync “to the cloud and back” and with browser plugin for noting things.
All of that is almost completely spoiled by tragically bad block based editing within main desktop application. When you click somewhere, new block is created there, rearranging to grid or something is non-existent, and notes quickly look like mess. Darn it, this is not Whiteboard app! It should be well organized place for notes.
Things that left bad impression on me
You’ll see that I had quite few objections directed at storage subsystem. Somehow I evaluated that part mostly, it will perhaps be clear why later on :-)
Various storage ramblings
Data that is of any significance to me always goes to ZFS, ever since I’ve first tried it and learned few things about it. ZFS is everything modern filesystem should be, and it constantly gets improved.
Although Linux lacks in FS regard as well, at least it runs ZFS great. Windows doesn’t. And its filesystems are sh**. Your option on Pro edition are basically NTFS, and you really don’t want to use FAT32.
There is this new ReFS Microsoft has in works for years now, but in Windows 10 it was removed from regular edition and is available from Windows 10 Pro for Workstations and up. It has some advanced features, but from my evaluation, it is nowhere near ZFS. I’m ashamed I even put those two in the same paragraph to be honest.
Theoretically though, Windows has one great feature called “Storage spaces” which is easy as hell to set up and manage redundancy of your data at least. Except one minor thing, this fabulous feature doesn’t appear to be working:
I tried every imaginable combination of purging and re-formatting those drives to get this working, at last I opened up Powershell and assembled everything by hand. Guess what? It worked like a charm. So I guess Microsoft doesn’t care about those pesky GUI features anymore.
Once you set up storage spaces you choose one of the non-standard RAID levels based on block level copies. You can choose following redundancy options:
- two-way mirror (minimum of 2 drives)
- three-way mirror (minimum of 5 drives)
- parity (minimum of 3 drives) – somewhat like RAID Z1 in ZFS
So let’s say you have two-way mirror of 3, 4, 50 drives. That’s just fine, your block copies will be distributed to two drives in that whole pool.
If you want to have normal raid levels, you can still use Disk Management utility to make your own stripes and mirrors, but according to documentation that is deprecated for everything except OS drive, for everything else you’re supposed to use Storage spaces.
Regardless I’ve tried setting up mirror of two drives and doing some general usage, but then I’ve noticed one peculiar thing, I was getting read speeds of only one drive. Looking at task manager I quickly figured out that only one drive is being saturated and load is cycled between drives in mirror. No option to read from both drives in parallel (split reads to chunks).
Now that you started hating everything related to storage, it’s time to mention few more gripes I had.
Microsoft Store (Windows) – Imagine Apple AppStore where all good apps are paid or subscription based. Did that? – Good. Now imagine Google Play store which is full of shitty apps on every corner and you really need to try hard to find good app. Did that as well? – Good.
Well, Microsoft Store is combination of those two. But not the good one, no no. You get all the mess from Play store and you can pay for it like on AppStore. Wonderful, isn’t it?
Application updates – With years of neglecting this part of the OS, all applications managed to design their own update mechanism for apps. It is good that you get application updates without the need to fetch packages manually from the web, but this is still not good enough. I much rather prefer to have central repository for all of the apps and update them all before I start working on anything. Like in Microsoft Store for example. But yeah, I can feel Microsoft’s pain on this one. Since everybody came up with their own mechanism it will certainly be very hard to force those apps to central location. Perhaps some reward system would incentivize existing app developers to publish there?
Screen locking – why there is no option to lock the screen when displays go to sleep? Why the hell do I need to find that old ugly screen saver interface and turn it on in order to achieve this simple functionality which could be a matter of placing one additional toggle to settings?
Cardav/Caldav not supported in Calendar/People – As Windows 10 is progressing they get more and more Microsoft provided apps, and those are in most cases great. Microsoft To-Do, Mail, Calendar, People, Skype, are all fine examples of how apps can work well. I have one gripe regarding Calendar and Peoples app though. There is no option to sync your calendar/contacts by configuring Cardav or Caldav based account. Sure, you can hack something like this by configuring fake iCloud account, but why isn’t that officially available option without those additional hacks? It is clearly supported and works just fine.
In addition to that, if you wish to import your contacts for example, forget about vCard, you need to provide CSV, and it can be quite a hassle to do that if your current system only exports to vCard. Google supports both, you know?
This is certainly not the end of my positive feedback about Windows 10, but is neither the end of negative one. All in all, when comparing to Windows from few years ago, progress is more than visible.
Features are constantly added. As an user you are treated well and provided with some real level of integration within OS. In some cases it looks nicer than the whole Apple ecosystem. Opting for
Office Microsoft 365 subscription you get some serious value-add at fair price point and works excellently with whole Windows OS.
It is also worth noting that security is no longer sh**. Windows Defender is more trustworthy than any other Anti-Virus software you can get on Windows, and you can say Windows is “safe-by-default” these days.
Windows 10 has become one nice and pleasant operating system to use, and with addition of Linux based features (WSL2), it gives those developers that were considering move to Linux a safe playground to experiment with and work with Linux, take advantage of most of its features, without the need to learn new desktop paradigms and switch to the Linux way of thinking about things.