As someone who kept switching Window -> Linux -> Windows -> Linux -> finally Mac, I can say that <i>a MacBook is a breath of fresh productive air for anyone developing software intended to run on a Linux server somewhere but still wishing to have photo/video-editing and ms office software at hand:</i><p>- all Linux stuff you'd want is available and "just works"<p>- default Terminal is amazing and enough for me and most (iTerm 2 is there for whoever wants more) you'll get a sane Linux-like experience where copy paste just works in the terminal etc. (not the hellish terminal experiences you'd have on Windows even with smth like WSL) - also, even things like the touchbar play well with Terminal, you can open a man page from touchbar, change terminal bg color shade from TB to mark a production server ssh terminal tab as "dangerous" with a shade of red etc. ...lots of "small touches" that matter a lot<p>- mac keyboard is amazing for developers (you'd get the wrong impression that it's bad for developers from people complaining about the touchbar upgrade, but disregard that):<p>-- having Cmd and Ctrl keys be different means that you can have all you unixy/emacsy ctrl-p/n/b/f/a/e just work in all your desktop GUI apps too (the feel of having ctrl-a/e work in Chrome, VSCode, and other "regular apps" is <i>amazing!</i>), and the same time you can Cmd+C/V copy/paste in the terminal same as in other app - <i>it's hard to put in word the nice warm fuzzy feel this good mixing of unixy-world with GUI-world gives you!</i> (it's the opposite of Windows where the "two paradigms" feel like locked in a cold war with each other and you always have to switch your brain when switching tools)<p>-- Fn key is in the right correct place you'd expect it, bottom left, <i>just like on the Thinkpads you know and love!</i><p>-- OS settings allow easily remapping things like CapsLock -> Ctrl that lots of people will do (if you're more into Vim than Emacs you'll do CapsLock -> Esc, that's in standard settings too)<p>- multiple virtual desktops + external monitors etc. works productive and intuitively: if you love Gnome, you'll likely love MacOS too! (Also, tools like Divvy give you some features of tiling window managers if you're into this, and they also enable windows-like split-left/right shortcuts. Btw, there's an equivalent tool for Gnome/Gnome-based-Unity on Linux side too).<p>I'd urge <i>all</i> developers coding for Linux or Android to leave Windows for a while and try either (1) Linux on a Thinkpad (preferably a Gnome-based desktop if you're a developer new to Linux: Ubuntu, Pop!_OS, Fedora etc.) or (2) a MacBook: both experiences are slightly annoying to get used to at first, but dramatically increase your "feel good" factor and productivity! Windows may seem enticing hardware-wise (SurfaceBooks are amazing with their nvidia gpus etc.), but unless you write software targeting the Ms ecosystem, they are horrible machines for both developers and creative people imho... Window should be <i>your last option in 2019 if you're a developer!</i>