Hacker News new | ask | show | jobs
by richworks 5150 days ago
From one of the comments :

"there will be no legacy Windows applications retrocompatibilty"

Is this true? If it is, then this is a deal breaker. The only reason I've been waiting so long to buy a Windows tablet is because I assumed it would be backwards compatible with my desktop applications(of my Win7 machine). If what the comment above says is true, then I guess it will be either an Android tablet or the iPad..

4 comments

It's my understanding that this was always the case- if the tablet is ARM-based, then it's not going to be able to run legacy x86 apps. Not to mention the UI problems. The good news is that it will be much easier for developers to port from x86 Win7 to ARM/x86 Win8 than it would be to make an iPad/Android version of their application.
So true.

Microsoft actually has a great "developer story" to tell if they can pull all their pieces together. The idea that you could trivially port your .NET apps across to tablets is very compelling. Throw in the ability to have apps running on a future XBox could be a game changer as well.

It's when you look at everything they have you realise that it would be stupid to ever rule Microsoft out.

No, it's not. One thing MS has always done well is backward compatibility. You can still run DOS programs from the 80s on Windows 8 (x86+64). In order to be competitive on ARM, however, they had to massively strip down Windows. They made a very bold move to remove a huge amount of legacy APIs and components in order to get a small footprint with excellent performance characteristics on ARM.

So Windows 8 is really two things: 1. an update to Windows 7 that works well with touch devices running on Intel and AMD hardware and, 2. a Metro only build for ARM that doesn't have a conventional desktop.

One of the great things about W8 over Windows Phone 7 is that you can build native apps using C++, so you can leverage many of the libraries that you couldn't in a managed only environment.

It does take a bit of a shift, though, since you're programming against a new API, Windows Runtime, which is a small subset of what you may be familiar with. In addition, it requires adopting an asynchronous programming model so the UI thread is not impacted. Any operation that nominally takes more than 50ms to complete is mandated to be async only. This means that the file I/O, network, etc. interfaces don't have a synchronous mode.

If they are running Windows on ARM, no x86 programs will work out of the box, they will need to be recompiled or recoded in some way.
The big feature of windows 8 that puts it onto tablets is that it runs on ARM. You would not want a current-model ARM to emulate an x86. People do that with DOSBox to run old DOS games (or even win3.1) but that's the extent of the speed capabilities.