Interesting reads, SantaDora.
However, I think you have some things wrong.
OSX does not do touch screens, but instead does gestures via the track pad. I think this is a superior experience for any system with an actual keyboard. Fingers and thumbs aren't transparent, if you know what I mean.
I absolutely disagree. Gestures are nice (Windows machines have them as well) - but the difference is very clear - you are still manipulating content in an abstract way - like a mouse/keyboard. Touch is an entirely different user-experience - it is direct, it is not abstract - and we have seen that it is a huge success on mobile devices - Your assertion might be acceptable if we are talking about huge displays that are far from your in presentation mode (where Microsoft is actually again, ahead of the curve with Kinect gestures - something that Apple has no answer for) - but on desktops with normal sized screens and notebooks - the use of touch in addition to abstract methods (mouse/keyboard etc...) is a real boon - and as I have been using a 22'' touch monitor in front of me daily for the last 3 months - let me assure you that sometimes when I have content on my other monitor (dual monitor setup, with a 24'' secondary monitor) - I find myself try to touch it and move it and it drives me nuts that it does not support it.
I suspect that once people get to use their business software with proper touch optimized interface on it - going back to abstract input will be hard to do. There are places where the mouse is far superior (pin-point accuracy), but for a lot of things, touch is just more natural and easier to use.
In the world of consulting, I get a peek at what is going on within some pretty large corporations. They're stuck with some older legacy M$ stuff (networking, LDAP, etc.). But they're also looking at replacing legacy computer systems and going Mac. They're literally looking at this:
http://store.apple.com/us/configure/MD387LL/A? and seeing a system that's about 2x the cost of Microsoft Windows in a box and that plugs right into the legacy computer monitors they already have.
I am very familiar with the Mac Mini, as this is my first and foremost development machine for the iOS app we have. I am telling you that I have all the respect in the world for the Mac, but Apple clearly do not know what to do with that OS going forward, and the main reason for it's success is that you can not eat your dog food on iOS - you must have a Mac to compile to iOS. The operating system, good as it is, is really stagnant - and feels really old fashioned compared to Windows 8 (and iOS).
You suggest Apple doesn't have a compatible API and infrastructure for front-end and server computing. In fact, they are identical - FreeBSD-ish OS on top of Mach kernel for both workstation and server versions of the OS. Being a *NIX type OS, the only necessary differences are tuning - things like the pthread scheduler being tuned for interactivity (vs. fairness/round-robin) on the workstation, more fds, and so on.
I am sorry but this is complete baloney from a developer view. You use different languages to develop for Mac client side and Unix back-ends with different libraries. You need Objective-C for most of your MacOS work with Cocoa - and you use Java, C or C++ mostly on *nix back-ends. The db system is not standard. The development IDE is not the same usually (you will use XCode mostly for the client side, Eclipse for the back-end). The fact that the Mac uses a *nix kernel and uses a *nix shell for a console does not mean that it is the same development environment at all, if it was, the Mac would have nothing to offer vs. Linux machines. On the Microsoft side you can use C# built on .NET to write anywhere from Windows Phone to a gigantic server farm with SQL Server. Same language, same libraries, same IDE (Visual Studio). It is much easier to write using the same tools, with a unified library set on the Microsoft side.
On top of this, the most used programming language in the world is Javascript. Windows 8 is the first "native" OS that supports Javascript as a first level language. You can now write, edit, debug and compile Windows 8 Apps (Metro) using Javascript (and HTML5 as the presentation layer) in Visual Studio, with a thin layer that supports HTML5 to Native translation (via WinJS). Chrome OS is the other OS that does it (but Chrome OS is really just a thin layer to run the Chrome Browser as your OS. A ton of iOS (and Android) apps are not really native Apps, they use PhoneGap to convert HTML/Javascript Apps to native. But it is not a 1st level Language in the OS - and it is not supported by either Apple or Google - so it usually lags behind with new feature support - and it really runs by using the built in web viewer wrapped in the native code. Of course, on iOS it means that it is much slower than even the native web browser (Apple disables JIT for anything other than Safari).
On the other hand, I would never want to deploy server stuff on Microsoft or Apple operating systems. You mentioned Amazon (AWS), which allows you to automatically scale the OS of your choice. Linux is more robust, provides MANY more programming language options (Ruby, Python, PHP, Perl, Java, and so on). Yeah, you can run PHP with IIS, but what an abortion that is.
I am sorry, but PHP is the problem, it is not IIS or Windows in this case. If there is an open server-side technology you want to use - the correct answer is Node.js, and it runs just fine anywhere (from *nix to OSX to Windows). Java runs just fine on Windows, same with Python (IronPython specifically), I do not have much experience with Ruby, so I can not tell you anything about it.
OSX is close enough in programming API to Linux that it's trivial to develop server programs on the Mac (workstation) and deploy to Linux on AWS. People have been using #ifdef in their code for decades now to make their *NIX programs portable, so it's hardly something new.
I will repeat that this is complete bull. If you do that - you write C++ or C or Java, which is not the easiest way to write OSX client Apps. If you go with this - Java will work just fine on Windows as well, but no-one wants to write Java client-side Apps anyway - and you will find that most successful OSX and iOS client apps use Objective C or C++ tied very closely with Cocoa - which is not easily transferred to the server side. On the other hand, C# or C++ on .NET creates beautiful client side code on Windows and scales easily to the server.
Perhaps the best thing about deploying to AWS is you're not stuck with Microsoft. If you want, you can switch to some other hosting provider and just move your code - you're not necessarily stuck with AWS. Again, many of these companies I've been working with have legacy M$ intranet systems that will be enormous costs to reimplement but are so tied to M$ that the employees are forced to use IE 6 (or if they're lucky, a later version). They ultimately will have to pay the cost to upgrade their system software, but I seriously doubt they'll want to make the same M$ mistake again.
You know, IE6 is the most important piece of technology for the internet that gets a lot of hate - simply because it was so far ahead of the competition when it came out that Microsoft did not bother updating it for 6 years - but the IE6 story is out of date, it is now less than 1% in the US. It is a non-issue. The vast majority of corporate users are in Windows 7 nowadays - which means that most of them are at least at IE8 if not 9.
Vista was an outright debacle for Microsoft. Computer manufacturers that previously shipped only Windows on their systems offered Linux as well, so their machines could actually be useful. Microsoft sure seems to have bet it all on Windows 8, as your article points out. But I have an article to present, too:
http://latimesblogs.latimes.com/tec...-share-of-pc-market-reaches-15-year-high.html
Wolf said Mac shipment growth in the third quarter outpaced the total PC market for the 22nd straight quarter, 24.6% to 5.3%.
Vista was a debacle that sold more than 300 million copies (that's about 3 times as many sold as iPads sold, fwiw). It is not a surprise that Mac sales are up, you must have a Mac to write iOS software, and it integrates well with iOS which is very successful, not to mention that the Mac OS is a great OS, but you have to remember that everyone was waiting to see Windows 8 which just came out - and you can expect about 6 months ramp up for it to really hit it's stride. People were not buying Windows 7 because of two factors - mobile and waiting for Windows 8. But the reality is that the Mac OS is stagnant and Apple and Microsoft are replaying their past from the 80s.
Apple had a successful CLI platform (Apple 2) that they left behind with a brand new, no backward compatibility OS (Mac) with a GUI that was first to the market. The continued to run them together and for a while the Apple 2 had more success as the Mac came out when people realized that a lot of their business software did not run on the Mac - but in the end, it was a dead end and Apple killed it. At the time, Microsoft came with a version of their GUI that set on top of, and could fall back to the CLI - and support all the old business software. It was a mess at the start, and it took them 3 releases to get it right, but once they did - it ran all over the Mac and they ruled the GUI world. This is exactly what is happening now with touch. You get touch late with Microsoft, it is not as polished as iOS in some sense, but you can fall back to all the huge investment you have in business software in Desktop - while Apple has 2 different platforms, one is clearly the future, but does not support business Apps that well (iOS), one that is clearly the past and with no clear way forward.
You can see that Apple is starting to get this - as they are investing heavily in backend and services (iCloud) to have business support - but it is clear that iOS in it's current form will not scale to business machines too well, resolution support is sub-par, keyboard and precision abstact interface is sub-par, and MacOS in it's current form is an OS of the past, touch and alternative input methods are the future - and OSX is just very poor there.
I think that what you have here are 3 different companies that came from 3 different places, and while Apple is riding high, they are, in the long term, imho, the one that has the most worrisome future.
Apple is a hardware first company that lucked into the media world with iTunes. They are great when they can control the hardware and the software can be optimized for it. But they are not good at services, and their software offering do not scale when they have to get out of the hardware (see their Maps debacle, the ongoing issues with iCloud and the fact that they are really behind on streaming - which is the way the media world is going, which iTunes does not service). But if their hardware fails - because services do not measure up or new paradigms in devices happen (see Google Glass) - they are SOL. What is their value proposition going forward?
Google is a services company first - there is a reason their maps and search and youtube are so successful - they are gigantic data services - and Google was slow to understand client side software and UI and design - but they are starting to get it - and they sell 3 Android devices for each iOS device for a reason. On top of it, Google is the most interesting company that is willing to try just about anything. It means that they do a lot of crap that they throw out quick, but they are more likely to rewrite the books on what the world looks like going forward than any other (Google Glass is a trojan horse that could make Apple irrelevant in 3 years).
Microsoft is a software company first, they are the best at understanding large scale software the scales from tiny hardware to huge server rooms. They are usually the slowest to move, because they have the "run anywhere" mentailty - and it is really hard to make great software that scales on to so many forms, with so many hardware options. It is much easier to support a fixed set of resolutions and computer models as Apple does. Windows is vastly most complex that the Mac OS - but there is a reason for it - there are a lot more edge cases to handle than Apple has to support. It is much harder to develop, but it offers the user much more choices.
I think that Microsoft has many obstacles going forward, but they did not do the easy thing - which is to ship a compromised, unusable product to be quick to the market (that's what Apple did with Maps). They took their time, and they are shipping Windows 8 which is not perfect, but it is a beautiful operating system both on the surface (pun) and more importantly - inside.
If you look at Windows 8, the OS itself, and compare it to iOS - it is clear that as a touch based OS - iOS is starting to show it's age.
How do you get to the running apps in iOS? You go through a cludge - either double clicking the "on" button (indirect gesture in a touch OS?) or 4 fingers swipe (really? why did they go to 4 and not 3, what is intuitive with it?). In Windows 8 you swipe from the left side of the screen - which makes sense for Latin languages where you read from left (the past) to right (the future) - you want to see what you did before, swipe from the "before" side (left) to get the last app or open the list of open apps.
How do you close an App in iOS? You go through the cludge of opening the running apps, you click on an icon and hold it until it starts dancing, at which point you get "chrome" (extra meta info) of an X that you have to click to close the app, and then click the "on" button" to get out of "admin" mode.
In Windows 8 you drag the running app to the bottom where it is closed, you basically "throw" it down to close it. Much more intuitive when you think of it.
Of course, the live tiles are really nice compared to iOS's static, palm pilot era static icons, they are like Android widgets, only they are standard, and it's not the wild wild west where every app/widget looks different in Android.
How do you search for stuff in iOS? You swipe to the left most screen on the OS where you click on a search box to search. How do you search in an App in iOS? Depends on the App - each one implements it differently if at all.
How do you do it in Android, you have a search box on the main screen (improvement over iOS). In Apps - again, each app is separate, it is not unified.
In Windows 8 you can just start typing from the main screen to search, no need to hunt down the search box. You can also swipe from the right to see the charms bar, and search in the search box there. How do you search app specific content in Windows 8 - you swipe from the right, and search in the search box there. This is consistent and it works across all apps. The UI is the same, you never have to hunt for where it is and how the App does it.
Settings - in iOS you have a special App for the entire OS. For each App - wild wild west, however the App implements it. For Android - A stand alone app you can get to from the notification. For each App - a different way. In Windows 8 - you get to the Settings via the right side swipe in the charms bar. For each app, you get to it using the same method.
It is easy to say that Microsoft is doomed, but the reality is that while they were slow to the market (and the reason is clear, they support so many more hardware formats) - their technological foundation is much better than the competition and they are really willing to make the big bets - which Apple does not seem to in the post-Jobs era.
This is probably more than anyone wants to read on this subject - and I am certain that there are many many ways that Microsoft can screw it up (they are very good at this at times) - but usually, when they go all in, and they are persistent - they do not only stay alive, they also succeed very very well, and this Windows 8 bet seems like this kind of thing, just as they managed to outlive their original feeble issues with XBox to take on 2 very strong competitors and basically beat them (Sony and Nintendo), and just as they managed to pivot when every pundit was saying they will die because of Netscape and the web, and in the end they managed to live and rule the Internet for a long time - I suspect that they will be very successful in the long run with their touch strategy as well. It is going to be bumpy, and they will have some issues on the way, but they seem to know what they are doing and if they fail, it will not be because of technology...