Smart Mobile Studio
  • News
  • Forums
  • Download
  • Store
  • Showcases
    • Featured demos
    • The Smart Contest 2013, Round 1 – Graphics
  • Documentation
    • Get the book
    • System requirements
    • Prerequisites
    • Getting started
      • Introduction
      • Application architecture
      • The application object
      • Forms and navigation
      • Message dialogs
      • Themes and styles
    • Project types
      • Visual project
      • Game project
      • Console project
    • Layout manager
    • Networking
      • TW3HttpRequest
      • TW3JSONP
      • Loading files
  • About

Windows 8, Moriarty at it again

Posted on 16.02.2012 by Jon Lennart Posted in Developers log

A lot of people are wondering if Microsoft have lost it’s proverbial marbles in respect to the Windows 8 “metro” formula. The idea of not being able to write desktop applications sounds just to odd to be true. And when it sounds to odd to be true then it usually is. So Watson – put on your best pipe and let’s investigate!

The context

In order to fully grasp the significance of Windows 8 we need the proper context in which to judge it. And the context is as follows: In one hand Microsoft has the worlds most popular operating system. In the other Microsoft holds the most advanced compiler system on the marked. And while juggling these two factors they have for the past decade or so flirted flamboyantly with alternative hardware combinations. It was about time they jumped into bed with one of them, especially now when mobile computing and instant access to data is central to business philosophy.

The metro UI

The metro UI

Now before my fellow Spartans beat me with sticks for entertaining that Microsoft has the worlds best compiler system – im not actually talking about language here (we all know Delphi is the best). Im talking about the fact that with CLR (common language run-time) and the underlying compiler architecture — you can bake your source to byte-codes which in turn can be re-compiled to machine-code.  In other words its portable in abstract form. This means that if Microsoft author large parts of their new operative system in oh say, C#, they have in effect turned Windows into a truly hardware independent operative system. Moving from Intel x86 processors to a system based on a RISC processor would be a relatively simple chore compared to moving 1 gigabyte of hardcoded C/C++ source code.

So this is the context you have to keep in mind when looking at what Microsoft is doing. By being able to run on cheap ARM processors Microsoft has gained remarkable easy access to technology, not just phones and pad – but also a whole universe of embedded systems. Im thinking wall mounted alarm systems, car entertainment systems and even the kitchen fridge. A marked which is currently rampant with Linux clones.

The missing piece of the puzzle

Now running windows on a fridge would be impractical (to say the least) if you had to fiddle around with a keyboard and mouse. But Windows have had support for touch-screens, gestures and virtual keyboards for years now. And this is where the new “metro” UI comes into its proper setting. Now im not saying that Microsoft will do any of this (!) Im simply scetching out that they can. And if Microsoft’s history is anything to go by – they will do whatever they have to.

Apples victory may be short lived

Apples "victory" may be short lived

So this is where the strange, interactive and “boxed” user interface makes perfect sense. Because its not really a desktop like we are used right now. The only logical conclusion is that this is by design and not some desperate attempt to fix what’s not broken. It’s designed to be an interactive “touch” menu which is fun to look at. And that is a minimal requirement if you want to sell something you can wall mount or integrate into your car. Or, perhaps more likely, put inside a television.

Se the pattern? Microsoft moves through the trenches in almost syncronious opposition to Apple. Pads, mobile phones, abstraction from hardware – and you can bet they will have a stab at television as well. The metro UI is the perfect tv menu.

The web based UI

Good move

Good move

Now, no Windows upgrade is complete without robbing Apple blind, and metro is no different. Unless you have been living under a rock you may have noticed that Apple have thrown tons of money into webkit the past couple of years. As a result Apple and Google are now the kings of mobile browsing. And to be perfectly frank – they also rule the desktop waves (albeit Opera and Safari is not far behind). More and more sites demand that you run a webkit browser these days. Both normal users and developers are sick and tired of browser incompatibility, so I wouldn’t be surprised to see webkit winning by brute force.

What is the significance of this? Why simple. Apple and Google have done what Microsoft was sued for doing to Java, namely taken hold of Javascript and married it to their own intellectual ideas. Better known as HTML5. At the same time we see them pushing Dart in the backdoor, the “so called” javascript replacement. But it’s not really a replacement as much as it is leverage. Who do you think owns dart? Cui bono?

So what does Microsoft do? It flanks them by taking hold of javascript and making it the new, de facto language for UI design. It really is a brilliant move by Microsoft and having learned to love javascript – I sincerely hope they blow apple and Google out of the water with this one.

The game is afoot!

And there you have it. While I don’t suspect to find a start-button on my fridge anytime soon, the UI design adopted by Microsoft, their sudden interest in RISC technology and taking javascript under their wing. These are all strategic moves on a chessboard designed to make them top-dog.

And the rumour about not being able to create desktop applications is not actually true (at least not the way people present it). The confusion is because Microsoft have changed the meaning of the word desktop to mean the metro menu. Your native apps will still run but more akin to the old Amiga where each application had it’s own full-screen view. Microsoft is not in the business of committing suicide.

[break]

About the author


Jon Lennart Aasenden is a software architect at Optimale Systemer AS. He is currently the lead developer of Smart Mobile Studio and have been a strong supporter of Delphi and object pascal since the beginning. He is also involved in the evangelizing of object pascal in Norway and is by many called “a Delphi fundamentalist” due to his somewhat radical teaching methods. The views of the author is his own and does not reflect the policy of Optimale Systemer AS.

« Gearing up for final alpha
Big blue, ancient of days »

Pages

  • About
  • Feature Matrix
  • Forums
  • News
  • Release History
  • Download
  • Showcases
    • The Smart Contest 2013, Round 1 – Graphics
  • Store
  • Documentation
    • Creating your own controls
    • Debugging, exceptions and error handling
    • Differences between Delphi and Smart
    • Get the book
    • Getting started
      • Introduction
      • Local storage, session storage and global storage
      • Application architecture
      • The application object
      • Forms and navigation
      • Message dialogs
      • pmSmart Box Model
      • Themes and styles
    • Layout manager
    • Networking
      • Loading files
      • TW3HttpRequest
      • TW3JSONP
    • Prerequisites
    • Real data, talking to sqLite
    • System requirements
    • Project types
      • Visual project
      • Game project
      • Console project

Archives

  • December 2019
  • December 2018
  • November 2018
  • July 2018
  • June 2018
  • February 2018
  • September 2017
  • April 2017
  • November 2016
  • October 2016
  • September 2016
  • April 2016
  • March 2016
  • January 2016
  • October 2015
  • September 2015
  • July 2015
  • April 2015
  • January 2015
  • December 2014
  • October 2014
  • September 2014
  • August 2014
  • July 2014
  • June 2014
  • March 2014
  • February 2014
  • January 2014
  • December 2013
  • November 2013
  • October 2013
  • August 2013
  • July 2013
  • June 2013
  • May 2013
  • April 2013
  • March 2013
  • February 2013
  • January 2013
  • December 2012
  • November 2012
  • August 2012
  • July 2012
  • June 2012
  • May 2012
  • April 2012
  • March 2012
  • February 2012
  • January 2012
  • November 2011
  • October 2011
  • September 2011

Categories

  • Announcements (25)
  • Developers log (119)
  • Documentation (26)
  • News (104)
  • News and articles (16)

WordPress

  • Register
  • Log in
  • WordPress

Subscribe

  • Entries (RSS)
  • Comments (RSS)
© Optimale Systemer AS