ie8 fix

Under the Windows 8 hood: Questions and answers from the trenches

By | June 20, 2011, 4:00am PDT

Summary: I’ve been interviewing devs taking apart Microsoft Windows 8 Milestone 3 (M3) internal builds in the hopes of piecing what developers should expect when porting and writing apps for Windows 8. Here’s what three of them had to say.

Microsoft officials are remaining adamant that they plan to stay mum about the details regarding the Windows 8 developer story until mid-September, when the company holds its Build conference. But that doesn’t mean that developers who are curious, if not outright anxious, about the future of .Net and Silverlight are sittling idly by waiting for all to be revealed.

Several devs have weighed in over the past couple of weeks with their best guesses as to what Microsoft is crafting on the development-framework side of the Windows 8 house. Meanwhile, I’ve been interviewing some of those taking apart Microsoft Windows 8 Milestone 3 (M3) internal builds that have leaked in the hopes of piecing what developers should expect when porting and writing apps for Windows 8, which is expected to come to market in 2012.

As is evident from the e-mail Q&A’s I’ve conducted with three of these individuals in the past week, it’s not easy to tell exactly what Microsoft is planning from the leaked bits in regards to the so-called Jupiter Windows 8 UI library; the “native” HTML framework that will rely on the Internet Explorer rendering engine; and/or the future of the Common Language Runtime (CLR) at the heart of the .Net Framework. But there are some clues.

The three developers I contacted were:

Michael Brown, Microsoft MVP in Client Application Development, and President Kharasoft, Inc., blogging at http://azurecoding.net/blogs/brownie, and tweeting at @browniepoints. (Brown said that even though he’s a Microsoft Most Valuable Professional, “none of this information was provided to me through the MVP program; it was gathered through other public sources.”)

Jose Fajardo, Senior Developer involved with Silverlight “and other cool things,” who blogs at http://advertboy.wordpress.com, and tweets at @josefajardo.

Jack Ukleja, Software Architect at Device Logic (@DeviceLogic), and tweeting at @JackUkleja

Here are my questions and their answers:

1. I’m still trying to make sense of “Jupiter” — the layer that supposedly will provide .Net developers with a managed code XAML library for writing Windows 8 applications. Do you think Jupiter is simply the name for Win8’s DirectUI?

Brown: At first glance, it’s easy to muddle the two (Jupiter and DirectUI) up. But digging deeper it seems that Jupiter might be the so-called Windows Runtime. DirectUI is a graphic library that sits on Jupiter. In current terms, Windows Runtime is like the .NET CLR (common language runtime) and Direct UI is like WPF. It doesn’t end at analogy either. DirectUI has many of the elements that are present in WPF and Silverlight.

Fajardo: There is definitely no direct correlation between Jupiter and DirectUI. Even in the code that we’ve happened to find that mentions DirectUI there is no mention of Jupiter. All I know regarding this is that there are references throughout Microsoft’s code base of a secret UIFramework that declaratively marks up its UI as xml  (using a DUIXML ).

What we know now is that in Windows 8 there seems to be a “Windows Runtime” API that is being built that has a DirectUI namespace that contains a lot of very similar code to what is found in WPF/Silverlight/WPF (more so from Silverlight). It’s not exactly the same code, but rather a very lean, refactored, well thought through interface. Has this replaced the pre DirectUI “duixml + code” ? Or will this new version be an extension of what was always there + the best bits of WPF/SL/WP7 (refactored) ?

We don’t know the answers to any of those questions, and we don’t even know if Build will answer those! I cannot confidently say what Jupiter is (sorry).

Ukleja: DirectUI is most likely Jupiter, but its also possible that DirectUI is a component of a new application framework…lets call it “Windows Foundation”. After some poking around, (I’ve found that) DirectUI (in XP) seems to be a fairly substantial C++ library that paints the UI controls directly to a “canvas” using GDI+. The API hints that it can even load UI designs from XML.

DirectUI (in Windows 8) on the other hand is clearly a close cousin to WPF/SL (extremely similar APIs, XAML based etc), so on a technical level the two APIs have no relation. BUT… they are both children of WinDiv and the evidence shows DirectUI (Win8) is being used as a replacement for DirectU I(XP). This is pretty exciting - it means the Windows team will finally have the tools to bring the Windows UI out of the stone age! (Ever wondered why the Font dialog box didnt change for 45 years?)

2. If I am a .Net/Silverlight developer, why should I care about Jupiter? What’s it going to mean to me in the Win 8 timeframe?

Brown
: As a .NET developer you care about Jupiter because it is in effect the new host for .NET applications on Windows. What’s really exciting about this is that the Windows Runtime has some interesting qualities that aren’t present in today’s CLR. Namely, it appears that Jupiter allows .NET applications to easily leverage native code as if it is a .NET assembly. What this means is that what we know as the .NET framework can be implemented in a language like C++ that targets the machine directly and still be used by a .NET application. In fact, it appears that this is what is happening. For example DirectUI appears to be a native library.

Fajardo: There appears to be a new Windows API that developers can use to interact with Windows (Hardware, services, UI). This appears to be called WindowsRuntime (WindowsRT).

In the current windows world we interact with windows through Win32 API’s. In the new world it’s looking like the new API is WinRT. The API appears to be exposed to the managed world through metadata files found in “System32\WinMetaData”

What’s also important to note is this new API shares similar features/interfaces to WPF/Silverlight/WP7. As I’ve mentioned above it appears thou a group of people have taken bits of WPF/SL/WP7 and refactored them yielding a very lean, performant, developer friendly api, thou in a lot of cases great reduced in functionality.

I’ve done some preliminary analysis of the differences of some of the features across WPF / Silverlight / Windows Phone 7 Silverlight compared to Windows 8 WinRT/WinMD. The example here is looking at the input events across all three (Touch/Gesture/Keyboard/Mouse/Pen etc.) It’s interesting the difference in the API across the UI frameworks, quite eye opening in fact ..

Ukleja: Jupiter includes “XAML”-like approach for building apps. In fact the evidence so far indicates DirectUI API is a close cousin of WPF/SL, so SL/WPF devs will be immediately familiar with it. Assuming it ends up shipping with Win 8 it means you have a third option for building apps, potentially one that runs smoother and integrates nicely with all Win 8 features.

3. Do you think XNA developers should/will have any interest in Jupiter? Why/why not?

Brown: I think Jupiter is the most important thing that has happened for ANY .NET developer. Having the majority of your application, the framework that supports it, running as native code gives a performance boost across the board. The question is what frameworks will be ported to native code. And if not, how will they fit into the new ecosystem?

Fajardo: Today in the world of WP7 and Silverlight, we can mix XNA with Silverlight. It’s definitely easier to build forms based UI in Silverlight over XNA e.g. data collection screens, wizards etc. Here’s what we know from the Win8 leaked bits:  There are Windows Store bits in Win 8; references of allowing games in the store; and XNA can be used for writing games.

Ukleja
: It depends on whether XNA (or even WPF/SL/D3D) interop is going to be supported by DirectUI from day one. These “airspace” issues have long dogged the integration of XNA/WPF/SL/D3D apps. Its a complicated problem and it would not suprise me if they do not tackle it in V1. If interop is supported then DirectUI will offer a great way to build UI whilst leaving the heavy 3D rendering to XNA. (This scenario is on the cards to be supported by WPF/SL.vNext so that may also influence things…).

4. Do you believe that Windows Phone 7 apps written using Silverlight and XNA will automatically run on Windows 8? If so, why do you believe this? If not, why not?

Brown: That’s hard to say. Think of the fact that an app written for the Silverlight Web plugin won’t necessarily run directly in Windows Phone 7. You have to target it directly. Also one would assume that an app compiled for Intel would have to be re-compiled for ARM (similar to how an application that targets X64 won’t run on 32-Bit Windows). How involved that process is depends on how the framework changes.

(continued on next page)

So.. Is there a future for Silverlight and WPF? Go to the next page for more…

Mary Jo has covered the tech industry for more than 25 years for a variety of publications and Web sites, and is a frequent guest on radio, TV and podcasts, speaking about all things Microsoft-related. She is the author of Microsoft 2.0: How Microsoft plans to stay relevant in the post-Gates era (John Wiley & Sons, 2008).

Disclosure

Mary-Jo Foley

Freelance journalist/blogger Mary Jo Foley has nothing to disclose. WYSIWYG (what you see is what you get). I do not own Microsoft stock or stock in any of its partners or competitors. I have no business ventures that are sponsored by/funded by Microsoft or any of its partners or competitors.

Biography

Mary-Jo Foley

Mary Jo Foley has covered the tech industry for 25 years for a variety of publications, including ZDNet, eWeek and Baseline. She has kept close tabs on Microsoft strategy, products and technologies for the past 10 years. In the late 1990s, she penned the award-winning "At The Evil Empire" column for ZDNet, and more recently the Microsoft Watch blog for Ziff Davis.

Got a tip? Send her an email with your rants, rumors, tips and tattles. Confidentiality guaranteed.

65
Comments

Join the conversation!

Just In

You take what's available.
qavishahzad Updated - 9th Apr
The section runs are pretty amazing,learnt something new from here.Directory tabs are there,and it makes it a lot easier.Thanks!
cna certification
Sounds a lot like they are "iPad-ifying" Windows, this seems like a huge mistake. While the iPad is a great platform it can't do everything you'd want to do on a computer well because of the UI. There are use-cases that are far better on something like an iPad, but equally there are use-cases that are far worse too.

I think doing this to Windows is a bad idea, I'm not convinced that the "iPad use-cases" are more numerous than "non-iPad use cases"... Making those "legacy" seems foolish in the extreme.
0 Votes
+ -
When you've no ideas of your own
Richard Flude 20th Jun
You take what's available.

We've had much the same discussion here a several month ago. 6 months later and the future of windows development is no clearer.
@Richard Flude LOL! Is that why Apple is blatantly ripping off features and idea of WP7, and putting them into iOS5? You better a clue.
  • Flagged
@Richard Flude,

There is plenty of new ideas in there if you have read the article. Most of it is from a developer's perspective, which is the point of the article. XAML, Dependency Object/Properties, MVVM patterns: they are all ideas that originated from Microsoft.
@JoeHTH: much for an idea, comparing to whole concept of mobile MultiTouch (Apple's TM) GUI that was invented by Apple.
@Richard Flude
serious iNaive
  • Flagged
@Richard Flude

Richard, don't be a Dick.
  • Flagged
In current terms, Windows Runtime is like the .NET CLR (common language runtime) and Direct UI is like WPF. It doesn???t end at analogy either. DirectUI has many of the elements that are present in WPF and Silverlight. online bachelors degree
online doctorate degree
online associates degree
online undergraduate certificate
At first glance, it???s easy to muddle the two (Jupiter and DirectUI) up. But digging deeper it seems that Jupiter might be the so-called Windows Runtime. International Accreditation Organization
IAO
IAO Accreditation
I???ve read your things before and you are just too awesome.
Belford university
accredited high school diploma
@Richard Flude Dude thanks for given me chance to express myselps...Thanks...Very good info, I feel a lot more people need to read this.
Logo Design Contest
@Richard Flude It is a new framework which could be a subset of WPF and it will unify coding across 3 screens. Also I guess the new apps developed in .NET can run in both immersive mode and classic mode.
Assignment Help || Coursework Help || Buy UK Dissertation || Assignment Writing Service || Buy An Essay
@Richard Flude I assumed it was likely being some unexciting old report, nevertheless it definitely compensated for my time. I most unquestionably will post a link to this article on my web page. I am convinced my visitors are planning to find that realistically helpful.
This Blog is truly a gold mine. I will actually try these tips and let you know how they work out! Thanks again mate.
I am really enjoying reading your well written articles. I???ve bookmarked to check out new stuff you post.
What you want to say???Hello everyone, have a nice article. I read this post and get lot of important news. I sharing this post some of my close friends and they accede to visit this site. Thanks
0 Votes
+ -
RE: Under the Windows 8 hood: Questions and answers from the trenches
StupidTechZealots-23432415690276115908309621553360 20th Jun
@jeremychappell Explain iPad-ifying.
0 Votes
+ -
ipadifying?
bluebendphoto 18th Mar
0 Votes
+ -
Not iPadifying
rbethell 20th Jun
@jeremychappell Something more like Adobe Airifying/Flexifying...remember this article is about the underlying developer technologies, not the OS itself.
@jeremychappell
You clearly don't understand what Windows 8 is about. MS is creating a OS that excels at both a touch friendly/fun experience for mobile use as well as enhancing the core of what made Windows 7 so great. Its the best of both worlds...an enhanced WP7 and Windows 7 experience all in one...whatever you cant do well with one, the other will take care of.
0 Votes
+ -
RE: Under the Windows 8 hood: Questions and answers from the trenches
StupidTechZealots-23432415690276115908309621553360 Updated - 20th Jun
@timotim And that is why I am so excited about Windows 8. That and the fact that their phone, tablet, notebook, console and desktop will all have a similar interface and work in a similar manner for all of your basic tasks. You learn one interface and you have an idea of how to work all of the devices. You instantly know if a product is a Microsoft product just by looking at it. I think it's a brilliant move. I guess it helps I also really like the Metro UI.

Windows 8 looks like finger candy. I've never had that feeling about any other OS. I say that even as a huge fan of Android.
@ jeremychappell

Microsoft have been moving towards their 'Metro' UI on consumer devices for a few years now. It first showed up in Windows XP MCE (2005), but it's spread to Xbox, Windows Phone, Zune (the Windows app and the device, although I've only used the former) and apparently now standard (non-MCE) Windows and Windows apps in Windows 8. It's pretty clear that they're aiming at creating similar user interfaces on all of their consumer devices. The one major question is whether, and to what extent, this sort of UI makes sense for non-consumer scenarios.

I don't know if they're working on a separate or modified UI for business use, but the Windows 8 model they've shown so far looks very consumer targeted to me. An updated UI for business versions of desktop/notebook Windows (assuming it's in the plan) would probably have to be done in parallel with an update of Office (and perhaps also Visual Studio). Maybe the Metro UI in Windows 8 will work for updated versions of Office and even Visual Studio, but it's too early to say. I'll wait until I've seen some examples of Windows 8 apps targeting traditional PC form factors (as opposed to entertainment and hand-held devices).

On the whole, I think the desktop metaphor is old and tired, even for desktop PCs, and I'd welcome a replacement that moves away from it. Whether a UI based on Metro is that better UI isn't yet clear.
oh snap i think windows 8 is going to be a huge step forward.
Mortgage Loans
0 Votes
+ -
You take what's available.
qavishahzad Updated - 9th Apr
The section runs are pretty amazing,learnt something new from here.Directory tabs are there,and it makes it a lot easier.Thanks!
cna certification
by far the best info about win8 = best of the available tech + modern day requirements + strategy
@lokanadam@... .... about "DirectUI ... sits on Jupiter", and another "There is definitely no direct correlation between Jupiter and DirectUI" -- one sitting on another is quite direct relation/correlation.
Nice article, quiet informative.
@owlnet dear i agree with you... And mery raise such a nice topic i really liked it... Professional Writing Services UK || UK Essay Writing || University Essays
@adokadrik i agree
Mortgage Loans
Even though they are just best guesses the development for Microsoft Windows 8 is going to be top notch. Microsoft has always catered to the development community to make it easier for them. Just look at WP7, people far and wide find it to be the easiest platform to develop for. If they can port a lot of that to Windows 8 they will have a huge base of developers.
@LoverockDavidson I agree with you, the development in Windows is top notch, no doubt about it, and I think that the secret for MS's success is, was, and alway will be focusing on developers.

I used to develop in Borland products and when I did the jump to Visual Studio I never looked back, any other tools look stone age to me now. Plus you can render XAML, HTML, JS, .exe, etc.. easily and all of your code keeps working.

Hands down Visual Studio is the best programming tool ever, and I've gone through most of them for many years now.
Meanwhile, I???ve been interviewing some of those taking apart Microsoft Windows 8 Milestone 3 (M3) http://france-pharma.com | http://bluepillsau.com | http://edproblemsolver.com internal builds that have leaked in the hopes of piecing what developers should expect when porting and writing apps for Windows 8, which is expected to come to market in 2012.
As a user what are the use cases for immersive apps on a laptop/desktop? I can really only think of one, watching a video. Even then I may want to be watching a video while replying to an email using information I'm referencing from a spread sheet.
0 Votes
+ -
Contributr
immersive apps
Mary Jo Foley 20th Jun
Hi. I am thinking they are going the immersive route as that's what folks increasingly are accustomed to on smartphones and tablets/iPads. The app takes over the user's device completely. They have been paving the way for this by opening up IE 9/10 so that the browser includes less "chrome" and shows off more of the app/site... MJ
0 Votes
+ -
As a developer this is great
rbethell 20th Jun
@Mary Jo Foley We'll get our user's full attention span. As a user, not quite as sure. While I'm sure an alt-tab like mechanism will be available, this is like a trip back to the MS DOS Executive days in Windows 286. The Blackberry Playbook has an elegant solution with its swipe-in minimizing technique... but Microsoft won't control the hardware, and doesn't have that alternative.
@Mary Jo Foley
I understand they think its a good idea and that it will be like a phone, but why would I want that on a desk top/laptop? I don't, I want windowing apps so I can use 2, 3, 4 at once and I don't want to atl/tab through them.
0 Votes
+ -
Even on Windows
WilErz 21st Jun
@ Mary Jo Foley

Even on Windows, most users only work with one (maximised) app at a time, so an 'immersive' UI makes sense. A minority of us, however, do use multiple apps concurrently, and the new UI has to support that well too. I'd imagine a lot of Microsoft developers are the sort who work with multiple apps at once, so I'd be surprised if the new UI doesn't handle that scenario well.
0 Votes
+ -
there seems to be an educated assumption Win8 will have a Hyper-V based Type 1 Client Hypervisor. Any insight from your end?
Great job on the story. Im excited to see and hear more.
This may the move that really gives linux a boost.
@essin This is the year of Linux on the desktop?
0 Votes
+ -
Jupiter/DirectUI is fine...
MSFTWorshipper 20th Jun
as long as I am not blocked from developing WPF apps using the current .NET framework.
I think Microsoft's amibitions here are being greatly under estimated. I mean Windows 8 won't be about the OS in the traditional sense because Windows 7 has proven good enough for that. Windows 8 will be about embracing devices and giving developers one set of tools to rule them all. Call it what you will.

I have found the best ways to read the MS tea leaves is to focus on where they are nudging developers. Right now, C++ is the new black and app performance is back in vogue. That's not to say that MS want developers to use C++ but in a Windows 8 world performance will be huge. It has to be to run across devices and platforms (Intel/ARM). Think about the performance restrictions placed on WP7 apps, why don't some of those same performance restrictions exist on Windows apps?

I love Silverlight/WPF/WP7 just like the guys that are screaming their collective heads off right now, but I think in our moments of passion for a particular technology we fail to stop and think about what those technologies/tools might look like in 5+ years. Silverlight is great but if Microsoft can give me the tooling (e.g. VS/Expression Blend) that allows me to create the same user experiences but produces HTML5 code instead without the plug-in requirement, I would divorce Silverlight for irreconcilable differences. I think we are headed some type native windows runtime for HTML5 apps but also support for those apps hosted in browsers (non-native). It's as good a gues as any I have read.
@windowseat You make the assumption that MSFT won't find ways to optimize the CLR for ARM to the point where it won't make any difference whether you write an "immersive app" in C++ or C#...
@MSFTWorshipper No assumptions, just guesses!

I think MSFT has shown they can optimize the CLR in the case of WP7. But that's a limited set of use cases. I agree it shouldn't make a difference C++ or C# and I for one certainly hope they get there. But to take on the iOS ecosystem MSFT has to have a better pitch to developers...build here once for Windows 8, run native across the Windows ecosystem and run non-native everywhere else via HTML5. Sounds good to me!
@windowseat One question? How do you monetize HTML5/JS apps when anyone can just download them? No need to reverse engineer they have all the source code?
@jatbains Do you know I easy it is to reverse engineer a .NET application today using something like Reflector or JustDecompile? Not hard a all. That's why critical IP in Silverlight logic should reside on the server because a XAP file offers no protection. Secondly, couldn't their be way for MS to create some version of compiled HTML5 and JS/C#/VB.NET? To me, it's not much different than Silverlight today.
@windowseat
"Right now, C++ is the new black and app performance is back in vogue. That's not to say that MS want developers to use C++ but in a Windows 8 world performance will be huge."

How come nobody talks about C++/CLI?

There are three major problems with Windows 7 + .NET 4:
- .NET is a bastard child of Windows; Windows itself doesn't use it, neither does the cash cow MS Office
- C++ developers can't use the new resolution independent features of XAML. In other to be able to use XAML, you have to use .NET - via C++/CLI. But guess what, C++/CLI in VS2010 doesn't even have IntelliSense (it's been removed)
- There's quite a fragmentation of APIs: WPF, SilverLight, WP7, XNA - it's a mess. If this gets cleaned up, it will be great.

The solution in the sense of Jupiter and what's been written about leaked builds looks promising. I hope that C++/CLI gets a major boost!!!
0 Votes
+ -
Contributr
Good analysis
Mary Jo Foley 20th Jun
Well said! MJ
Well, hell . . . if Microsoft is turning Windows into iPad / Apple, then I for one hope the Linux desktop distributions keep their development going in the right direction. Of course, it's early days yet; Windows 8 sounds like a good reason to stick with Win 7.
@WCarlS You do remember seeing the full Win7 UI in the background of that demo video, yes?
0 Votes
+ -
VS 2010 uses WPF
MisinformedDNA 20th Jun
Since VS 2010 uses WPF, I doubt they would be dumping it unless there is an easy migration path. I don't see how they could dump Silverlight, since it's the cross platform play for non-standard-based web apps, such as Netflix and the Olympics.
@MisinformedDNA Don't forget the .NET framwork targets Xbox, Windows Phone and Windows. All three will have the Metro theme. A common theme implies a common set of tools to create user interfaces.

Join the conversation!

Formatting +
BB Codes - Note: HTML is not supported in forums
  • [b] Bold [/b]
  • [i] Italic [/i]
  • [u] Underline [/u]
  • [s] Strikethrough [/s]
  • [q] "Quote" [/q]
  • [ol][*] 1. Ordered List [/ol]
  • [ul][*] · Unordered List [/ul]
  • [pre] Preformat [/pre]
  • [quote] "Blockquote" [/quote]
ie8 fix

The best of ZDNet, delivered

ZDNet Newsletters

Get the best of ZDNet delivered straight to your inbox

Facebook Activity

White Papers, Webcasts, & Resources
ie8 fix