[Windows 8 General] GoodDayToDie:
I think the claim of "too confusing" is frankly BS; it's not really any *more* confusing than being completely unable to run *third-party* desktop apps but be able to run *some* first-party ones, after all! A well-written warning / explanation or something would probably have done the job. Something like the current error message, but clearer. Microsoft tries to avoid that in most cases, because internationalization of lots of text is difficult, but they've done it before and could do it again.

As for the emulation option, I think Microsoft could have managed it well enough, taking a page from Apple's Rosetta. True, the transition from x86 to ARM is a definite downgrade in power for all but the weakest x86 chips, whereas PPC to x86 was at worst a side-grade and often an upgrade, but most programs that people run aren't CPU-limited anyhow. A really well-designed, professionally made version of something like Mamaich's compat layer (thunking to ARM system libraries where possible, but with improvements like using different CPU cores to do the dynamic recompilation while others do the actual program execution and so on) could easily make running most day-to-day x86 software practical. Microsoft even has the institutional experience to do this; a decade ago they at the bleeding edge of dynamic recompilation engines with the Virtual PC for Mac (which, unlike what I'm talking about here, had to support full operating systems and not just user-mode software) and more recently, their work on .NET and JS JIT compilers could be leveraged for things like the "background [re]compile on one or two hardware threads while others execute the code" optimization.

Then there's .NET desktop programs, including (un-restricted) Powershell scripts (and WSH scripts, for that matter). There's simply no technical excuse for not being able to run those. After all, Microsoft has positioned .NET as its write-once-run-anywhere alternative to Java, provided Silverlight (which is .NET-based) for Mac and assisted the Mono team, encouraged the use of the .NET Mobile Framework to write software that will run on any of the half-dozen or so architectures that CE supports at any given time... and now as they drop one NT port (Itanium, which has a .NET framework) for another (ARM, which has a .NET framework)... they say you aren't allowed to use it in the latter case! Total BS...

By the way, I don't know where so many people have gotten the weird idea that MinWin is a new OS in any way, shape, or form. It's just a refactored version of the NT core, with dead code and upward dependencies removed. It's more modular and flexible than before, and they were able to make some improvements along the way (I remember reading an article about removing a global scheduler lock that should improve performance on multi-core systems - which are of course now ubiquitous - compared to pre-MinWin) but it qualifies as an OS only in the technical sense (without the rest of the Win32 userspace, it's not very useful) and it certainly isn't new. In fact, while it's been in use since Win7 at least (Wikipedia claims Vista; I thought it was completed post-Vista but maybe SP1 or SP2?), one clear indication of it is in WP8 where all the system components have been shuffled between "core" or "base" and "legacy" libraries to (my guess) reduce memory footprint, and some functionality has been removed from the kernel entirely and implemented in userspace (much of win32k.sys, for example).

Midori *is* something new, at least compared to any shipping OS (it's essentially the next version - the one that might *possibly* see real use - of Microsoft Research's "Singularity" OS) but I wouldn't hold your breath on seeing it in any mobile project. Old and crufty though the NT codebase may be, its core was designed to work on machines with RAM and CPU speeds in the double digits of megabytes and magehertz, respectively, and it was designed from the ground up to be portable (to the point that, even though the initial release was always expected to target the 386, they developed it against a different instruction set to avoid x86-isms creeping into core functionality). Even the kernel (much, much less the userspace) has grown to no longer support running on such minimal hardware, but it still has seen two decades of refinement starting from a very minimal baseline indeed. Much like Linux (which is of comparable age and written in the same language) has been - successfully - adapted to a one-size-fits-all OS core, there's nothing about NT that makes it unsuitable for mobile, while Singularity, at least, was never even slightly intended for running on anything like a mobile system. Perhaps they've been secretly engineering Midori in that direction - there's been so little news about it they could have done anything from turn it into a type-safe managed drop-in replacement for NT to slim it down until it'll run on a wristwatch to abandoning it entirely without telling anybody - but if so, they've only had a few years (5.5 since it was first heard of externally) to do so, and the original info about it implied it was intended for highly distributed systems, not for mobile devices.