For a lot of tech geeks, there seems to be a lot of interest lately in switching from Mac to Windows. Especially in light of the fact that Apple is killing off the escape and function keys, and Windows has just added Linux functionality.
I was, like a lot of Linux geeks a Windows hater for years and years. I then got completely burned out by an OSS loving startup and got an offer from Microsoft which, after working there, caused me to reconsider my blind brand loyalty. I use a lot of Microsoft stuff now out of convenience, but I also use a lot of OSS at work. Believe it or not, by and large Microsoft internally has taken a “best tool for the job” approach, with the caveat that you should at least should try theirs first.
That seems to be the first step in switching. A lot of folks consider themselves to be “An Apple Person” or “A Windows Person” or even “A Linux Person”. Lets stop right here and be pragmatic as most geeks are want to be. You want something that gets the job done, right? Who cares if it’s Mac or Linux. Vim or Emacs. Postgres or MySQL. Ruby or Python. You get my point. We live in an age where there are a lot of wonderful tools that we can choose from. So lets celebrate that (and not slag the choices of others).
So after using Windows for a bit, what do I like about the Windows ecosystem? Why else would you want to switch? Here’s some things I enjoy about being a Linux admin that uses Windows
Hardware choice: This could be a negative, since there are a lot of vendors that produce great hardware that rivals Apple. It also tends to be cheaper. I’ll admit they don’t tend to hold their value as well for resale as Apple because…well it’s easy to pick up newer cheaper hardware. However, you can get a laptop a lot like a Macbook Pro, or you can get a laptop with a built in ethernet and VGA port with a removable battery.
Apps: As any Mac user knows, you still from time to time run into some software or hardware that needs Windows to run or update. The nice thing is that you can run them now! The sad thing is there are a number of Mac apps you may need to find an equivalent to. Oh and you can still run iTunes if you really want to.
Linux: Windows Subsystem for Linux (WSL) makes it possible to now run Linux apps. Which as most Mac folks know is what they really wish they were running on their Mac. Sure homebrew allows you to run a lot of apps on the Unix portion of Mac, but a lot of us know Ubuntu better than some of the non-standard things OS X uses like launchd. That said WSL isn’t perfect (ping doesn’t work yet). And you’ll still need to learn a lot of Windows things to make full use of Windows. You can think of WSL as a native Linux running under Windows, but it’s not exactly Windows aware from an internals perspective.
I won’t get into switching to desktop Linux. I’ve tried it myself over the years and for me, it’s just not there yet. I just want to use something that works, and I’ve personally had a lot of issues with desktop Linux that I haven’t had with Windows or OS X. Your mileage may vary of course.
The Geek Learning Curve
So some things you’ll want to do if you switch to Windows:
Learn Powershell: Yes you can use Bash in Windows, but it doesn’t do all the Windows system stuff you’d like (like dive into WMI objects, start/stop windows services, or scheduled tasks). This is a bit easier than you think, but it will make understanding Windows easier. Powershell is very similar to languages like bash and ruby. Though unlike bash, instead of parsing text output all the time, you’ll be parsing objects which you’ll wonder why bash doesn’t do after you’re use to it. Once you realize that Windows, Linux and OS X basically all do more or less the same thing under the hood, it becomes a lot easier. You just need to find the equivalents. Here’s a good place to start.
SysInternals: If you’re a Linux geek, and like to really know what’s going on with your OS. You’ll probably want to use the Windows Sysinternals Suite. Procmon is by far the most useful of all the tools, but the rest will give you better insight to the system that the tools that come with windows lack. There’s even a book just published on this.
Find the apps to make you productive: You can find a lot of equivilants for OS X on the internet, but some essentials I use as a Linux admin are ConEmu, Visual Studio Code, Enabling WSL, enabling chocolatey in the Windows Oneget repository (Oneget is a windows app management repo like apt or yum), vim and git.
Read some Blogs: You’ll probably want to read some blogs to get you up to speed. Hey Scripting Guy is great for learning Powershell. And Scott Hanselman has a lot of great Windows tricks he shares. There are also of course subreddits dedicated to this stuff.
What am I using?
So when I switch off my old Macbook Pro, I wanted something that was a little better than it. My criteria was:
- Needs to have a fingerprint reader. I wanted Windows Hello, which uses biometric authentication. However, after trying the facial recognition, I found it annoying that it would just unlock without my telling it. That meant the Surfacebook Pro was out for me.
- Needs to be a 2-in-1 PC. Which means it needs to be able to convert to tablet mode somehow. I like to read PDFs on my computer without it being in “keyboard in front of me” mode. It’s also nice to watch longer videos without the keyboard in front of me.
- Needs to be touch screen, which the above basically requires. I use touch surprisingly often, though I know people who don’t. It can really save on mouse travelling/targeting to just poke the thing you want. If you go to tablet mode, yes obviously you’ll need this.
- Runs Windows Signature: This was a nice to have. I could probably take a PC and flatten it with a new version of Windows to remove the crapware, but I’d rather it be ready out of the box.
The winner ended up being a Lenovo X1 Yoga. Now there are many other laptops out there to fit whatever your requirements are. I like the design of Lenovo because it’s tough and tends to favor function slightly over form. I really don’t care about brushed aluminum, but if you do, then vendors like HP, Dell, and Asus and Microsoft also make laptops that you may consider.