Look, I'm a huge fan of both Windows 10 and Dell XPS.
I'm a long term Windows user, going back all the way to Windows 2.0, was a system & network admin for years with mostly Windows Server and other Microsoft products, and I've been with XPS since the 9550 back in '15, and thus far made the upgrades to 9560 and 9570. While I wasn't always happy and satisfied, looking especially at you Windows ME, and perhaps 8, my use cases were always met; gaming and windows development (.NET). I'm personally quite satisfied with Windows 10.
But who plays games on a Dell XPS, really? And .NET has become open source and multi platform by now. Besides Node and React has all but taken over my development. While open source development tools and support on Windows has significantly improved these past few years, it still always feels like a second class citizen, it just always requires effort and produces friction.
So what happens when you take out Gaming out of the equation, and switch to Open Source development tools? For starters, the dependency on Windows diminishes. The attraction to POSIX environments increases, WSL (Windows Subsystem for Linux), even a Virtual Machine, dual-boot or native. Now I'm a huge fan of WSL, but it has especially huge performance problems especially for IO, which is what Node with NPM packages really need. WSL2 is on the horizon and while not everyone is super excited about the prospect of a transparent Virtual Machine, I certainly am. The new Windows Terminal also looks rather promising. But I'm afraid it is too little, too late, at least for me.
The second problem really is that amazing XPS. It has a superb 4k touch screen, a Thunderbolt 3 port, a reasonable keyboard and trackpad, an odd camera location and quite great performance. Except, it can't leverage that performance due to major thermal issues, leading to annoying and noisy operation. Tried manual undervolting and under clocking with limited success. Several times I considered moving my XPS to another room, and use either very long cables or e.g Remote Desktop. Really?! Then there are sleep (S3) problems too, leaving me with little other option than to hibernate my laptop at night or during travel :'( If that wasn't a problem, maybe running Linux natively would've been an option, even though I am not that big a fan of it for the Desktop.
So what did that really leave me? Look for XPS alternatives; same class, but less trouble? Thinkpad X1 perhaps. Or maybe replace the XPS and iPad Pro with a Surface Book (2/3). An OS with native POSIX environment, and great IO performance for Node? Well hello MacBook Pro!
Apple has been invading my life slowly but surely in recent years. Samsung Galaxy S made way for iPhone XS, Galaxy Tab made place for iPad Pro, Nvidia Shield made place for Apple TV, Galaxy buds -> AirPods, even the Galaxy Watch made place for an Apple Watch, at least for a while, as I really just realised I'm just not someone who likes to wear watches. I guess you get the idea. To be honest, I never saw this coming. I loathed my dad for ditching Windows, 10 years ago, and I never could really understand the hype of neither friend nor foe, or colleagues, all the same.
So how's life on a MacBook Pro 15" 2019 edition? So far, in one word; magnificent. Besides the sturdy and luxurious look and feeling, the thermals so far are way better. I'm in love with the trackpad and the keyboard. Heck, even that odd Touch Bar I find intriguing so far. Even trying to use no external keyboard and mouse, and so far so good. All apps I need are either already on Mac or (often better) alternatives are available. VS Code runs great, just like on Windows. The biggest hurdle so far has been to unlearn some key combinations, and learn some new ones, but after almost a week, that has already improved significantly. I must admit that it excites me at times to try new things or the same things differently.
Also, to my surprise, a few interesting games I play on Steam actually work on Mac OS, more the strategy and isomorphic RPG kind of games, but that's great, for that one time I'm out and would like to enjoy that.
Is it perfect? No, but what is? Thermals are better, but having a beast wrapped up in such a neat small package of course means that it will roar once in a while. That's fine so far, if I push the machine, I can take a little heat (and noise). But afterwards, it should settle down again, and thus far, unlike with the XPS, it always does!
Useful tools and gotchas
- Magnet, Hyper Switch and Hyper Dock: Window management like a Windows 10 pro
- Sound Source: Sound management, especially helpful for managing HDMI/DP sound volume
- Karabiner Elements: Fix some external keyboard layout, and add/change some favourite hotkeys.
- ScrollReverser to have non-natural scrolling on a Mouse, but still natural scrolling on TouchPad
- VSCode blurry on external monitor workaround
A 'short' note on ports
Personally a huge fan of both usb-c and thunderbolt 3, and in that regard apple does very well with this MacBook. Of course this puts you to "dongle hell" for HDMI and USB-A for starters.
I really liked the promise of these 6-in-2 converters that plug into the side, take up 2 ports, and give you back 2 usb-c ports, 2 usb-a ports, a HDMI and e.g LAN or card reader. However it comes with limitations:
- HDMI only 4k@30hz (that also means 3440x1440@50hz instead of 60), you can use a usb-c -> HDMI 2.0 converter but only on the top most usb-c port on the hub, which also happens to be the only port supporting 100w power delivery
- The second usb-c port only supports 60w which will drain your battery on load, and also doesn't support the 4k@60hz.
So actually I find these adapters useless, as the main attraction for me is 1 hub, on 1 side with just 1 connection (alright 2 ports as 1 is fine). So far the best trade-off instead is to use 2 separate adapters; 1 with power delivery, lan, and 2x USB-A, and one with just the 4k@60hz adapter. I can live with it.
Where does that put Windows?
On my MacBook; inside Parallels, for that odd Windows-only app I need to run once in a while. For Gaming; on my desktop computer with dedicated GPU, connected to my TV and Sound system in the living room, to enjoy triple A games in native 4k. Yes I know about PS4 and Xbox, have those too, but apart from ease of use and reliability, nothing beats the PC Gaming experience for me ;-)
I'm still following the Windows Insider builds, still interested in where WSL2 is heading, but right now, I need to get stuff done, and not get annoyed while at it.
Let's see, one week is maybe still too early for final conclusions, and maybe I have to come back to the subject in the time ahead, but so far, I'm rather happy.