Oh, lordy, Amen.
For a while, I found the registry stuff that switched caps-lock and CTRL, and of course on Linux it's just an xmodmap tweak - and I carried around files for both on a key so that I could swap 'em on any machine I was using. For an emacs user in particular, this is huge.
THEN came Windows 7, which I was compelled to use at work - and it won't let users reprogram keys at user-level; you have to do it with Admin access at the whole-system level and compel all users to do the same....not that my work lets me have Admin access. I was stumped, so I switched back.
The irony is that while I'm hating on MS for this, I have to admit that their MS Ergonomic Keyboard 4000 is the One True Faith for me. It has a bunch of idiot key along the top I ignore; the main thing is the spacing, size, and 3D curved shape that matches the hand better than any other. That's the funny thing about MS: a hate-worthy software* company that makes fine hardware...the MS Mouse was the best of its time, too, until it spawned a number of great imitators; but the Ergo 4000, no rivals - instead we get the gimmicky keyboards that this article rightfully complains about.
*with apologies to Excel, Pivot Tables, and VBA, which have saved my job more times than I can count. Credit where due.