This is a very mature approach. Skipping the fanboyism. Especially now unless you are doing something very platform specific (e.g. iOS development or need Visual Studio) all platforms can have a decent workflow for development.
All these years of arguing over OS and you nailed it right on the head. Just use what you like, multiple OS exist so a choice exists, itβs not about one OS dominating another to a point where the dominee is irrelevant.
For anyone used to PC editing keys using a Mac, get an external keyboard and add some key bindings[0], you'll be much happier. (It also works on MacBook/Pro keyboard but they have tiny cursor keys.)
TL;DR create ~/Library/KeyBindings/DefaultKeyBinding.dict containing:
{
"\UF729" = "moveToBeginningOfLine:"; /* Home */
"\UF72B" = "moveToEndOfLine:"; /* End */
"$\UF729" = "moveToBeginningOfLineAndModifySelection:"; /* Shift + Home */
"$\UF72B" = "moveToEndOfLineAndModifySelection:"; /* Shift + End */
}
[0] https://apple.stackexchange.com/questions/16135/remap-home-a...
I have been a long term Windows user (as main machine). I always liked it - even with the obvious annoyances. I'm pretty savvy at it, so can always fix issues that arise.
Now at my new job I use a Mac and also a lot more Linux. Its good and I like the command line but I am still happier when I'm working on a Windows machine it seems. Mac has its own annoyances and issues, like with display adapters and memory resets, as well as updates.
So privately I just bought a new Surface Laptop 2 and I'm happy and like the entire experience. Finally having more native Linux tools makes it much better experience also (and there is now a native ssh client! Yay!). It's also powerful enough to run a Linux VM seamlessly at all times- because I also really like Linux. So why not have both. :)
My advice, just use the one you are most comfortable with and where you know how to fix things.