Windows Presentation Foundation - Everywhere?
- Posted: May 15, 2006 at 2:38 PM
- 80,609 Views
- 41 Comments
Loading User Information from Channel 9
Something went wrong getting user information from Channel 9
Loading User Information from MSDN
Something went wrong getting user information from MSDN
Loading Visual Studio Achievements
Something went wrong getting the Visual Studio Achievements
Right click “Save as…”
Comments have been closed since this content was published more than 30 days ago, but if you'd like to continue the conversation,
please create a new thread in our Forums,
or
Contact Us and let us know.
Follow the Discussion
Oops, something didn't work.
What does this mean?
Following an item on Channel 9 allows you to watch for new content and comments that you are interested in. You need to be signed in to Channel 9 to use this feature.What does this mean?
Following an item on Channel 9 allows you to watch for new content and comments that you are interested in and view them all on your notifications page.sign up for email notifications?
Are you downloading the file or streaming it? I am not seeing this behavior.
This is great. I was hoping for a video on this for a while. Great interview so far, lots of good informatino there.
/watches
great vid tho
also note the futurama poster in his office ;D that alone is a sign of good taste
That only applies to the object and embed tags.
The clock demo was pretty cool, it even worked in firefox. It was worth trying to view it 3 times.
Maybe that was it, don't we always say "Third time is the charm"?
Same here.
or cell phone?
Flash player is about to blast to handheld devices such as PDA, MP3, cellphone.
I think '/E' should do this.
C
Which appear to be what is used to embed WPF/E content in a web page.
WPF/E will be available on mobile devices as well. This was shown last year at PDC.
Check out these videos:
http://channel9.msdn.com/Showpost.aspx?postid=126729
PDC (WPF/E starts at 01:43:53)
http://www.microsoft.com/winme/0509/25074/PDC_Webcast_MBR.asx
The death of Flash has come. I will be all over this one.
Great info. Looking forward to playing with this. Although I'm not sure how I feel about the continuation of distributing binaries across the iNet.

Side note: Why does the interviewer (whoever it is) insist on laughing INTO THE MIC?!?!?!?! He does that on every single video. I try to watch these videos at work and you have to crank up the volume just to hear the interviewees speaking then you need to leap for the volume every time that guy laughs. QUIT YELLING INTO THE MIC!!!!! Learn to work your equipment!
The interviewer is me. I have a good time at work, sorry.
We use cheap camera equipment and only use the microphones on the camera. I try to not laugh so much, but there's not much I can do about it.
Yes, I've heard I should use lapel microphones. I've tried that and they don't work for me. I don't have an audio crew along.
That is correct. WPF/E uses an ActiveX control in IE. Automatic activation can be accomplished usiing a document.write or setting the innerHtml on an element. This is what the WPF/E demos in the video used. For more info on activation, see this MSDN topic.
Can you explain what you mean by this comment?
Yes, if you're using the C# programming model you can write a self-contained WPF/E app. However, if you want the WPF/E app to interact with other parts of the HTML page, javascript will be the easiest way to accomplish this.
The ActiveX control. As it stands none of the 300+ users at my company would be able to install this control. Thus your pages would break. If this was something that was distributed with IE7 then problem solved. You need to find alternative methods of distribution. Which I believe you mentioned in the video that you guys where still thinking about that one.
The file has been repaired. Please let me know if you continue to experience any problems.
C
1) Leaving the Linux side to (random third party) is a HUGE mistake. I know that Ballmer has a fit and needs a binky everytime you *say* Linux, but this is just ridiculous. You don't need WPF/E on Windows, and to make OS X the only !Windows platform you support is ridiculous. I mean, if you *like* the hating, this is a great way to go about it, but I wasn't thinking you enjoyed that.
2)The fact that Mono is a great unknown to the team that's trying to do a cross - platform CLR seems silly. How much of a plastic bubble are you in to have Mono be some kind of great mysterious land? They've been doing great work, probably a ton of the work you're trying to do, and if Microsoft could get over that snap OMGOPENSOURCERUN!!! reaction that Ballmer has, you guys could benefit a lot by not ignoring Mono. Why reinvent the wheel?
3) The fact that debugging problems on !Windows is going to require a Windows box, or Parallels/VMware is lame. Again, instead of giving in to the "Make people use Windows" reaction, which really, just makes the people you *want* to reach with this not want to use it, work with the Mono team to get their C# compiler up to where you need it to be. it already runs on OS X, so again, why not make it stupid easy for people to use and *develop* WPF/E applications on the platform they want to run them on, without some stupid tools lockin. If people use this, REGARDLESS of the dev/deployment platform, you guys still win, and you'll see it used in ways that simply aren't possible when you're forced to develop on one platform. Why cripple your baby before it's even born?
4)If the tools aren't going to be available until summer 2006, when's the final plugin going to be available so people can do real testing?
5) Stop doing the dog and pony show demos. A faked clock on OS X is impressing no one. Do an application that has some real use, not just dancing baloney and flying cubes. Give people a real reason to want to use it. Considering how you're crippling it from the get go, you really need to make the demos rock.
I don't think anyone would use it if Microsoft wrote it...
If that's silly, then the fact that DotGNU and Mono ignore Rotor (which by the way, version 1.1 ran on FreeBSD and reportedly OSX as well) is just as silly. Why did they reinvent the wheel?
One or two platforms for designers is enough to get the ball rolling. Do you see a Flash designer for Linux made by Macromedia?
The Mono C# compiler is perfectly fine for things like this, by the way. What do you want, an obsessively tweaked x86 JITter by some assembly programmer in a basement running your Web apps? You don't need a Porsche of a C# compiler to make this sort of thing work.
With a 150kb runtime? Hah. At these stages, even Hello World is impressive.
Rotor was not even close to what Mono is, and sat stagnant for how long, until Microsoft revved it into a...that's right, you guessed it, "requires Windows" tech. Gee, I can't IMAGINE why people ignored it with such sterling support. Meanwhile, Mono has actual product being built with it that runs cross-platform, something that Rotor doesn't.
However, you ignore the man thrust of my statement: Why is Mono a *mystery* to the guy working on a cross-platform CLR? If he'd said, "We looked long and hard at Mono, dissected it, and there are just things we need that would be faster to do ourselves in this case", that would be different. But Mike said that he really didn't know much about Mono, so there's no possibility that there was a technically qualified decision made in not using Mono. That leaves a limited number of possibilies, and I'll bet "Political" is real high up on the list. If that's the case, then just say so and move on. But to not be familiar with it? Again, what kind of bubble does the WPF/E team live in?
So because Macromedia made a dumb decision, Microsoft shoult too? I wasn't aware that 12-year-old peer pressure methodology was how development decisions were made at Microsoft, although it would explain much.
It doesn't matter if the Mono C# compiler works or not, because it's pretty much carved in stone that all WPF/E dev MUST BE DONE ON WINDOWS. Not that the WPF/E team knows anything about Mono, so even if it had been an option, they wouldn't have known. I wouldn't be surprised if Microsoft made using the WPF/E runtime contingent on developing the application with VS on Windows via the EULA or some required support library that can only be used in VS. When it comes to Ballmer's rabid "DEATH TO LINUX" POV, I'd not be surprised at all if he very specifically ordered that Mono not be an option.
Right...and people wonder why I have no confidence in Microsoft announcements until the product is available for sale. They don't even have a demo-able runtime available, yet anyone's supposed to take their predictions of testable code seriously? Ummm...try again.
A lot of human resources that could be allocated elsewhere, that's what they have to lose.
It's less likely that people will ultimately choose to use WPF/E if its implementation is written by Microsoft than it would be if it were written by a third party, whom they'd trust. Would you as a Linux user rather use WPF/E if it were written by Novell or by Microsoft?
Last time I checked, most of the Linux community folk were "hardcore folks that aren't using WPF/E *anyway*". I don't know why you'd write anything for them then.
Mono's developer forums discourage even using Rotor code as a reference. It has nothing to do with platform compatibility.
Hahaha. Ever heard of a "job"? It's something that happens in the grown-up world a lot... well, maybe not all the time in opensource.
You get too busy to be looking over your rival's shoulders all the time. Which is good, because you want to stay focused. If they come up with some groundbreaking technology, sure, but this man's busy implementing a standard that's already set in stone.
And until Novell proposes business to Microsoft one way or another (other than just having their devs email Microsoft with some questions about Mono), it's just another "cool project" on their watch. Especially when it's constantly being tinkered with by anonymous programmers.
Differing ideologies, to say the least.
Listen to yourself talk, man! Take a deep breath and think!
Macromedia's decision wasn't a dumb one, it was a wise one. In fact, it was probably their only option. Developers don't grow on trees, not even for Microsoft. You don't just throw all your resources in every direction.
You expect Microsoft to write a designer for OS X, Windows AND Linux? ...wow.
Besides, from what's known about Mono, I think it can safely be said that Microsoft expects Linux people to do the work of porting for the platform they know best, Linux.
If anything, I expect Xaml to be ECMA standardized the way C# was. If you don't think so, well that's up to you but I could hardly call it an educated guess.
Even earlier than Microsoft has anything to show, you've decided you're not going to even put any thought into anything you say about it.
Gotta stop making impossible expectations.
Right, because getting more people to use Microsoft technology, regardless of platform is such a stupid idea that spending any time, effort and money on it is just dumb. Far better to continue with the hugely successful PR campaign of "Use Windows or suffer".
Whichever one works better. You're confusing "Linux User" with "Raving Stallmanite". I admit, it's an easy thing to do, but that's about as accurate as saying that all people who use Windows pray to Ballmer every morning and treat his words as absolute gospel. If Microsoft comes up with a kick-arse WPF/E implementation for Linux, hell yes I'll use it. I use Word because it does what I need better than anything.
Last I checked, the ones in the enterprise were pragmatists selecting the best tool for the job.
And of course, you can show that the sole reason for this is rampant Stallmanite ravings, right? Links please.
Why, yes, I have one. Been an IT manager for almost 20 years now. And as part of that job, I'm expected to be up on all the various technologies and implementations that affect what I'm working on. It's called being knowledgable about your field, and it's a sign of someone with a clue.
Nonsense. According to him, the full runtime's not even demonstratable yet. That's not even close to "set in stone".
That doesn't explain why Microsoft consistently jiggers the BoF votes at the PDC to make sure Mono doesn't get any space. It also doesn't account for actual commercial products being written with Mono. But I guess if it's not developed in Windows, it doesn't exist to Ballmer.I am. I'm basing this on the reaction Ballmer has every time Linux or any kind of work done on !Microsoft Platforms. Hell, he can't even be bothered to say something nice about the MS Mac BU when it's mentioned at an INTERNAL MEETING. Instead, he instantly has to start bashing the iPod. When Ballmer changes his tune, then assuming rampant paranoia and immaturity as the reason for all Linux - bashing from him will no longer be applicable. Until then, if the shoe fits, wear it.
No, I expect them to design the spec so that it can be implemented in existing !Microsoft implementations of C# and the rest, and to work with the people who are doing the most work to make that happen. Partnering works with Open Source people too. What I do not expect is for Microsoft to require that all WPF/E development be done in VS on Windows.
By that logic, then either Microsoft shouldn't be doing the Mac OS X port either, or that work should be done by the Mac BU, since, out of everyone at Microsoft, they know the platform best. From what I saw in the video, the newest Mac BU intern knows Mac OS X better than Harsh, and he's doing the port. Again, when your lead porting dev admits to being essentially unfamiliar with the platform he's writing the port for? Not a confidence builder.Standardized and open are not in fact the same thing. You can say they are, but I'd hardly call that a factual statement.
Everything I say, I've based on the vaporous dog and pony show I've seen. Microsoft's release reliability outside of the Xbox and the Mac BU is nonexistant, and they have a history of minor cross-platform dog and pony shows that just never seem to get finished. So when I see real product that's really usable, I'll take it seriously. Until then, it's Active X for the Macintosh v. 2
Hahahahahahahaha. Think in terms of priorities man. If you're Microsoft, it's Windows first, then everything else. If you're Apple, it's Mac first, then everything else. If you're GNU, it's Linux first, then everything else.
You're also apparently the odd breed Linux user that talks on a Microsoft forum. I don't think the general perception that a Linux user would prefer not use anything by Microsoft is far fetched at all. An Apple user using Microsoft software, yes, of course; but a Linux user? Not too often.
Woah... wait wait... I thought we were talking about WPF/e, an end-user client technology... not an enterprise technology.
Duh, enterprise users use the right tool for the right job. But not end users, let alone geeks.
Yep, you say it as if I couldn't, but of course, I can.
http://www.southern-storm.com.au/pnet_faq.html#q11_3
If you don't have a good reason, we suggest that contributors to DotGNU Portable.NET don't make a habit of looking at the Rotor code. It should only be used if all other options have been exhausted for determining how some feature should operate.
The reasoning is given below: copyright problems (to which a solution is given within the text), and more prominently, pride in having created something of your own, exemplified by the author's-own-words analogy.
Which, hey, that's not a bad thing, is it? So it shouldn't be surprising that just as much as the DotGNU devs don't want to look at Rotor, the WPF/e devs don't want to look at Mono.
You just proved my point. As an IT manager your job is, as you say, to keep up with all the various technologies. As a programmer, your job is different. Your job is to code what you code best, and you code for months on end, like I said, without looking over people's shoulders. As an IT professional, you should be aware that there are different types of geeks with different types of jobs.
It's called planning. All Microsoft developers do it. You don't just wake up in the morning and start coding, and then write documentation and call that a standard the way, say, Bram Cohen invented BitTorrent. Well, I guess the Coding4Fun guys do it, but they're the exception, and the only reason they can actually work that way is because they work on small projects in a sandbox.
The planning has already been done, and once it's done, you work like mad to turn it into a product.
You're going off on a tangent. Back to Earth. I'll just repeat myself because there's no better way to reason with people who don't listen.
Until Novell proposes business to Microsoft one way or another (other than just having their devs email Microsoft with some questions about Mono or show up to PDC), it's just another "cool project" on their watch.
Okay, so Ballmer (literally) throws chairs when he hears about Linux. So what's that got to do with the fact that you allocate your resources where it makes most sense?
I don't know what to say man, as much as Ballmer freaks at the mention of Linux, you freak at Ballmer every time Microsoft and Linux appear in the same sentence. Both of which I think is stupid.
The only reason WPF/e dev is to be done on Windows is because there aren't any Xaml designers/IDEs for other platforms. Yet. It could just as easily be a new MonoDevelop feature, which would obviously not be something that Microsoft should do, but rather something that the Mono developers should.
I'm assuming you haven't touched WPF development at all. Just for your information, Xaml can be implemented in "existing !Microsoft implementations of C# and the rest" (whatever that might mean). There's no reason that, say, MCS (Mono's C# compiler), can't have added features to parse Xaml and emit standard IL. It's just another declarative .NET language, after all. There's also no reason to say that PresentationFramework.dll can't be implemented for other OS' the way Mono and DotGNU have done for nearly all of the BCL.
Yes, obviously, there are support libraries that can only be used with VS. That's because at current, it's the only one for which it is implemented. You'd have to be crazy to expect them to start writing an on-the-fly parser for other IDEs as well, in a manageable timeframe.
Alas, as with the rest, like I mentioned, that'll change, but only over time.
Let's reverse "that logic" for a moment. Rather than saying that Microsoft shouldn't be doing the OS X port either, let's say that Microsoft should be doing the Linux port as well. Then, by "that logic", Microsoft should do a FreeBSD port, a BREW port, a Zaurus port, a TRON port etc etc.
So you can see that it's necessary to draw a line. That line has been drawn at OS X. And why? Because Microsoft has OS X developers. Simple as that.
I remember there was some dispute with Beer28 that ended with someone saying that he needs to stop believing everything must run on Linux. De ja vu...
Hahahaha wow. When did I ever say "open"?
If you aren't responding to an argument for the reason of agreeing or disagreeing with the first argument, you might as well not speak at all because with silence you've implicitly agreed with it.
So let's review a little.
I said I expect it to be "standarized" (NOT open) because you said "it's pretty much carved in stone that all WPF/E dev must be done on Windows", and that you "wouldn't be surprised if Microsoft made using the WPF/E runtime contingent on developing the application with VS on Windows via the EULA or some required support library that can only be used in VS", and my point was to say that this won't happen. Just as Rotor isn't "open" per se, neither is WPF, but I never said it was.
Those two sentences of yours are conflicting by the way in that the first one says it's already been determined that it won't run elsewhere, while the second one says it will likely be made that way. Make up your mind... has it been set in stone, or do you think it will be? Apparently you don't really have a clear idea of what's going on.
Again! Going off on tangents!
You were talking about the fact that the only "demonstration" they've made so far is one of a clock. And then you said people wonder why you have no confidence in Microsoft products until they're out. Now you're talking about Xbox and Mac BU.
You went from saying you have no faith in WPF/e for the quantitative reason that they only got a clock working, to a totally unrelated absolute reason that you have no faith in Microsoft. That switch happened when I gave an obvious explanation as to why there was only a clock.
If these are two separate reasons, fine, we could discuss them as two. But you're responding to each subject as if you're giving a viable rebuttal, when instead you're just flipping through different chapters without giving the current one any closure.
So, let's go back to the clock. Again, for someone who doesn't really listen, the best one can do is a reiteration.
So I'll say it again. With a 150kb runtime, even Hello World is impressive.
And now for your second "argument", the one that says you don't trust Microsoft products until they're on the shelves.
Of course not. That's true of every product from every industry. You should be glad that at least Microsoft doesn't just vaporize when a few of their products turn out to be flops. With the number of things Microsoft makes, it's not at all surprising that a lot of it burns.
The normal thing to do is to wish the product and its developers well, and criticize it if it comes out and turns out to be complete garbage. Otherwise it's just "shoot first ask questions later".
Especially when you're talking on these forums, and the developers who put their blood, sweat and tears into their work come expecting some friendliness. How you can be so bitter as to tell them that it's "crippled from the get go" is beyond me. Need I remind a grown man that flaming isn't welcomed as much as it's tolerated?
Bummer, this thing lost my previous edits.
If Rotor were licensed under the proper terms (allowing the use of Rotor for commercial use) there would have been no need for Mono, but alas the license of Rotor only allowed its use for research and educational purposes.
When we wrote Mono, our intention was to use the technology to implement software that could be distributed with existing Linux distributions, and for this it is important that the rights to use, modify, distribute and redistribute the software for any purposes (commercial included) and without any discrimination be allowed. These rights are at the core of what it means to be open source. Hence Mono, and hence the licenses that Mono utilizes.
In addition, Mono provides a number of class libraries that are not part of Rotor (ASP.NET, ADO.NET and Windows.Forms, the last one still in beta). Miguel.
I have myself spoken to a few folks in the WPF/E group; At least those that were present at the PDC, and I have emailed them in the past to look at ways of collaborating,\ it might be nice to have WPFE running on Mono, but I have no idea what that thing looks like internally.
Also, as a matter of perception, the code is "tinkered with by anonymous programmers" in the same way that Microsoft developers are anonymous programmers. I have the fee\ling that you were trying to imply that any random person in the Internet can commit code to Mono, and if that was what you intended to say, you are wrong.
Contributors to Mono follow a model similar to the Linux kernel: there is a maintainer at the top, and various subsystems are maintained by different developers. It is a \pyramid of sorts where trust is delegated. For instance, I trust Paolo Molaro and Zoltan Varga with all VM changes; Martin Baulig for the Debugger; Peter for Windows.\Forms; Segan for ADO.NET; Hari for C#; Gonzalo for ASP.NET; Lluis for MonoDevelop and so on. Each one in turn has contributors which are responsible for different part\s of the system. And if there is no maintainer for a piece, am the "default" fallback.
If audio from your machine bugs your co-workers (as in my office which is totally open plan) then get some headphones. The audio is crystal clear for me on my cheap $7 earbuds.
Wow... Miguel on C9!
I'm sorry if I insulted Mono and/or the opensource philosophy with the "tinkered with by anonymous programmers" comment, but with the differing levels of formality between Mono, whose developers work online, and Microsoft, whose developers work in offices on-site, that particular perception won't change, especially on Microsoft's part. Regardless of the check-in process.
Of course. But like I said, it's differing ideologies. I'm not sure about Mono, but the motivation for DotGNU as it's written on the site is largely two part: for academic curiosity (pride) and to support the open source cause. Both of these are legitimate reasons.
Likewise, Microsoft likely has two analogous motives: a desire to write their own code themselves (ie academic curiosity), and for the sake of their business ideology. My point in asking that rhetorical question is to show that the accusation that the WPF/e devs are simply uninformed and ignorant is incorrect.
Darn. Well, I'd like to see Mono do WPF/e for *NIX more than anyone, Microsoft included. I'm no businessman, but I think it's worth nudging them again once their implementation's actually out the door and they're not feeling like they're gonna be seen with their pants down.
I`m have a lot of difficult to learn and understand the web apllication xaml.
if you have this video guide in html example for my personal study.
I`ll really appreciate a lot!!
My e-mail = fabiano@sqdcorp.com.br
Thanks mate
Hi Mike and co...
Doing an eval on WPF and its different flavours here and am due to deliver the report in a couple of weeks. Have POC'd WPF native, XBAP, even some Atlas, but was hoping that the 'summer' CTP of WPF/E might make it into this... any chance? or even any samples, code, captures, etc that would allow me to factor some of it into our future strategy?
Thanks
Malc
We are considering RIA solutions and it would be really great if it was possible to see wpf/e (Must say that Flex 2 looks very good but would prefer to have an alternative to consider).
Thanks.
Great video!
Really excited about WPF/e
have[ed] no intention to make it available for Linux. I could care less anywayzolaseolas[ed] patent?Keep up the good work!
Tim Scarfe (developer-x.com)
Remove this comment
Remove this thread
close