I've been a Windows programmer for a decade or more now, and I'm currently doing my first ever Macintosh project.
One of the things that is driving me bonkers is how the keyboard maps differently. There's the little things, like how the equivalent of ALT+TAB in Windows is COMMAND+TAB, which for a standard USB keyboard winds up being WINDOWS+TAB. Then there's the really annoying things, like maneuvering through text in a document is different. In Windows if I want to select a line's text I can position my cursor at the end with the END key, hold SHIFT and hit HOME. On the Macintosh the END key takes you to the end of the document (which, to be fair, is somewhat logical) and holding down SHIFT and the HOME key just selects the entire document up until the cursor. The ALT+arrow keys are more what I'm looking to do.
My attitude towards this has been basically to suck it up and learn the new way of doing things and adapt to the idea of going back and forth. My reasoning is that this likely won't be the last new platform I ever program for in my career and it probably benefits me both as a programmer and a computer user to be flexible. In addition, there's always going to be machines I go to where mapping the keyboard isn't in place already, or may not be an option (i.e., helping troubleshoot a QA machine). Plus not everything I'm used to in Windows is going to have a Macintosh equivalent.
However, right now I'd be considerably more productive if I were to make things more like Windows.
For people who have been working with multiple platforms, do you change the mappings to make everything like what you're familiar with? Or do you do what I'm currently doing which is to suck it up and learn the different way of doing things?