I've said it multiple times on this forum. But ok:
The tragedy is, that Windows 8 could be a true "No compromise" OS which would make EVERYONE happy with just four very simple fixes:
1. Include the start menu and the start button back. Add an option for what happens when you press on the start button (start menu or start screen). If you have chosen start menu, there should be a dedicated switch-to-metro button either in the start menu or in the task bar in the near of the clock.
3. Add a Boot-to-desktop option in the control panel.
4. Start8 and others proved that links to metro apps can be placed into a start menu. There could be a dedicated metro programs group for the occasional need for a metro app without switching to the start screen first.
In many respects, Stardock actually solved this whole problem for Microsoft. Instead of Microsoft having to build a supported dual-start-menu to help people transition, Stardock have done it for them. This alleviates Microsoft of the need to test, localize, support, maintain and configure the app for the next decade, just in order to help people with the transition from a start menu to a start screen.
The default for Windows8 is great for "normal" users, but for the folks where losing the start menu is non-negotiable, they can upgrade to Windows8 and get Stardock. From Microsoft's perspective this is great!
Even with Surface, if you want to create content, you want the desktop.
The vast majority of home user don't create content. Most people use them for browsing sites like facebook and gmail, possibly doing stuff in Office and to consume media like Hulu and angry birds. The rare few who do create content outside of office will presumably continue to do so via their desktop applications. But they weren't going to do that on a surface anyway, because content creation is hard on a small screen anyway, as anyone who has tried to type an email into an iPad will know.
Metro is not about content creation. It never has been. It is entirely and unashamedly optimised for consumption.
These changes are trivial to implement (freeware does it) and with Microsoft's man power, they could be included within weeks. Announce it right now that these changes are coming with a free update. This will surely increase sales of W8 licenses
Sure, maybe some extra sales to some geeks. But those geeks can already jailbreak their Surface to put desktop apps on it if they really care that much. (Here's an insider secret for you: Microsoft doesn't care if geeks jailbreak their surface and subsequently get pwned by installing dodgy internet software on it - they'd just prefer if joe average doesn't fall into that trap).
And besides, adding loads of extra dials and config options and so on - particularly if they are hidden is bad for the user experience and leads to fragility in apps (remember how people used to hack the registry to change stuff, or had to trawl through loads of menus to turn on file extensions?)
So, that's the immediate fixes for the desktop side. In the next version the appstore should be opened up for Desktop programs as well, this would solve finally the age-old problem of holey Java and Flash versions too - list them in the appstore and let them update through the appstore. Problem solved. I understand there could be a new package format needed for that.
Users should be able to safely install apps without it damaging their machine in a way that people installing fun EXEs from the web really aren't safe. Determining if software is malicious is equivalent to the halting problem, so the only way to do this is to sandbox them. And most desktop apps don't support being run with hyper-low privileges (for instance, LoadLibrary will normally fail from AppContainer because of the lowbox).
That (and the fact that Desktop isn't available for all Windows8 devices) is why the AppStore isn't used for pushing Desktop apps.
This way the invariant is preserved: any app you install from the AppStore is safe to run (even if it was intentionally coded to be malicious) and will work on any Windows8 device.
Sideloading of the metro apps needs to be possible
Vastly expand the default apps; they are just embarrassing. Some of them look as if they consist of two code-lines. The whole metro-ideology needs to get a lot less anal too. The "design first, convenience second" thing serves no one. Stop with the obsession of hiding buttons and functions.
1. When you get bored of the default apps, try the "Store" app; it'll allow you download new ones, and not just by Microsoft (many of them are free).
2. The fewer buttons and dials and configuration options the user has to press and tweak, the less likely the app will break, the more likely it will work on a tablet and the more likely the user will get to spend their time enjoying the content of the app and not the mechanics of your config files.
It kind of baffles me to hear someone complaining that the UI isn't complex enough. Come on. This is progress. We don't want to have to navigate stupid menus or find hidden settings in order to consume content. Let your users get the content without having to think about it. Every second they are wasting navigating your menus or clicking your buttons is a second they are pissed off at your app for not letting them do what they wanted to do, i.e. consume the media your app exposes.
Start de-uglifying Office 2013 and Visual Studio 2012 immediately (colors aren't bad, M'kay) and promise free updates for the GUIs in these products. All this could roll-in with a huge "We have listened!" - campaign.