Over the past five years my primary software development laptop has always been a Macbook Pro. And I've mostly really enjoyed the experience. However, this winter I needed a new development laptop again and chose an MSi gaming laptop running Windows 10 Professional instead of a Macbook. Why?
I thought that sharing my experience might be useful to someone else so I've decided to describe it here.
Some of the reasons I chose to move back to Windows have to do with things I haven't been able to do (or simply can't achieve) using a Mac. These are:
The first concern is purely personal. Some readers will have been using Macs for a long time and already be accustomed to the Mac keybindings for their favorite text editors and/or IDEs.
For me, however, I had been using Linux as my main development environment since 1996, which largely shares its key bindings with Windows. In five years of using a Mac, I have not been able to achieve the same keyboard speed in my favorite software development environments compared with using Linux or Windows.
I have tried various Mac keyboard hacks. All of them get me part of the way to speed; none of them have gotten me all the way there.
The second and third concerns were the deal-breakers for me.
For not much more money than a high-end Macbook Pro, one can buy an MSi with 64 gigabytes of RAM and a very nice GPU. Why do I care?
In a new world of containerized applications, RAM is more important than ever. The single largest factor limiting what I can run directly on my laptop is RAM.
64 Gigabytes of RAM lets me run tens of servers inside Kubernetes on Windows. Linux can be my main development O/S again. I just host it under Windows.
I'm experimenting with building a portable development environment inside a Docker pod inside Kubernetes. If that experiment succeeds, I'll have a portable development environment that will work anywhere Docker and Kubernetes run. Including a Mac, ironically.
WebVR is a thing. WebGL is a thing.
A-Frame makes WebVR dirt easy for web developers.
Unity is one of the best VR and Augmented Reality toolkits–and it runs on Windows.