The only issues I've had with (windows 8 desktop) is that some programs look for a specific OS, either in the installer or in the application itself. Those, sometimes, fail - not because of an actual error, but because the programmer did not accommodate an OS upgrade.

I don't like the interface; the pinks, the purples and the harsh glyphs and the rather unpolished look. But it works, and as a developer, it isn't a real game changer with respect to getting programs running. Programming for the Metro interface is a little different, but it is really a case of extending ones skills, rather than replacing them.

I will say that mobile development is definitely in almost everyones future: the fact that you can use existing skills (VS and .NET) to translate over with minimal effort is quite handy - moving over to Objective-C on the Mac, for example, is a real change, and I'd guess the Android OS would be similar. But if you can adapt to either of those, then the MS OS 'change' is cake.