Dax Pandhi's nAESTHETIC Dax Pandhi's nAESTHETIC Dax Pandhi's nAESTHETIC Subscribe to this Blog's RSS feed Subscribe to my DeviantArt RSS feed

Popular art from my DeviantArt account:


  Friday, March 24, 2006


The Future of WPF / Flash vs WPF

I just read Andrew Lucking's blog post about my first video on EID, and it kinda inspired me to give my perspective on Flash vs EID.

Let's recount the basic stuff:

Flash EID/WPF
Programming Support Medium (ActionScript 2.0) Heavy (.NET 2.0 and XAML)
3D support Medium (Shockwave 3D or Vectorized 3D output) Heavy (WPF and DirectX)
Declarative Programming Support No Yes
Bitmap Effects Support Limited Extensive
Animation Model Timeline-based: timeline is the ultimate controller; timelines are NOT optional Trigger-based: timelines control the animation, but the timelines are controlled by triggers;
timelines are also OPTIONAL
Cross-Platform support Extensive Limited / Currently unavailable (WPF/E details are still sketchy)
Drawing Tools Heavy Medium

 

What's EID and WPF potential over Flash? Well, can't say much about WPF/E until I actually use it, but taking WPF as a basic example, here are my thoughts:

NOTE: For the purpose of this post, EID and WPF (or at least the features) are the same. If it is in one, its in the other.

  • It all comes back to the timeline. In Flash Timeline is God. In EID, Timeline is just another aspect of an object, and there are more than one timelines and each can be ran parallel to other timelines - even of the same object!! In other words, with Flash we're looking at "time" from a normal layman's perspective; with WPF, it's like looking at "time" from Einstein's perspective.
  • In Flash, you have to stop the timeline in order to have a static frame, which makes creating a multi-section Flash website quite difficult. It's not difficult per-se, but difficult when you consider the trigger-only-timelines that EID presents. That would make this much easier.
  • Creating 3D content in Flash has always been terribly difficult. Shockwave does add 3D support, but its more like VRML on steroids. If you don't know about VRML, it was a 3D web standard pushed in the late 90s. It was terrible!! With inherent and DirectX support for 3D with shaders and crap is actually fantastic! That alone will land a good blow to Flash.
  • There's good DOCUMENT support in WPF. This gives you a document-data presentation component that Flash just can't do! This is one of the chief reasons why the Adobe people are gung-ho on integrating PDF and SWF.
  • EID comes from a "component and controls, animate it all" point-of-view, while Flash is "all animation, some component... animate components? uhh, ok, you can try...". The WRAP PANEL and other such controls can seriously kick Flash's ass.

You might say: "Whoa! Hold on. WPF/E does not have all this! It's very puny and limited!"

If you're a Flash or non-Microsoft-stuff user, I'll let you go. If you're a Microsoft-user and you said that give yourself a big kick. Without going into the intricacies of numerology, we all know that this is just version 1. All we have to do is wait 2 more versions. Let me explain:

So I've said all the nice things about WPF and put down Flash. Well, that's not the whole story. WPF is severely limited in many ways that Flash isn't. The user base being not the least of it, of course. Right now, WPF is more close to Macromedia FLEX than Flash.

Branden Hall writes in his post titled "The Flash Killer Cometh":


"the Sparkle tool is very cool – but it really isn’t for designers, it’s too technical for most designers and too ‘arty’ for most developers. Microsoft is looking for a new type of developer to use it – an “Interactive Developer”. The thing is, right now, with the exception of some very talented folks mostly in the Flash, Director and Processing communities, this type of developer is basically mythical. "


Well, I can't say I disagree with the first part. For the "mythical Interactive Developer" (I might have to adopt that as my title) comment, well, I disagree there.

Mythical Interactive Developers are not, in fact, mythical. I am one myself, and in the last 7 years have trained 4 such people (10 years and 16 people if you want to count VRML in this). We (ahem) are rare, but not nonexistent. And more shall rise. The gates of Oblivion have opened!! Uhh... sorry, wrong topic.

Anyways, let me get back to my point.

If you are not a Microsofter or are very new to the Microsoft world - the REAL Microsoft World that only devs see - you don't know the power of number 3. As I said, again ignoring numerology, that this WPF 1.0. Microsoft ALWAYS strikes gold with Version 3.

Windows 3(.1) was the most popular in the first generation. Windows 98SE was WAY better than 95 or 98. Windows ME was a fluke, so let's forget that. In the third generation we had Windows 2000 and then XP, now we have Vista which will undoubtedly hit the mark.

Visual Studio 6.0 (#3 of II generation) was way better than anything else. Visual Studio 2005 (#3 of the III generation) is already doing great things!

So step back a bit. Look from a larger perspective. Microsoft is only laying the foundation. Bill Buxton said:

"My sense is that Microsoft is in transition from an engineering-led company to...a design-led company," he said. "There are more designers at Microsoft on any single team as there were, not too long ago, in the entire company. It's a wonderful change."

There is a new revolution coming. It will come in THREE waves. Here's my prediction for it:

  • First Big Wave: We shift from WinForms to a more Web+Vector like platform. We learn the ropes for the upcoming waves. The Mythical Interactive Developer is born and many Flashers flock to the Microsoft banner - mostly because working with WPF will pay a LOT more than Flash does. Microsoft silently keeps working on the final stuff.
  • Second Bigger Wave: After a year or more of having WPF out there, Microsoft will have perfect grasp on what's needed, what the public wants, what the designers+developers need. A 2.0 release gives you more power. More people flock under the Microsoft flag. More users keep adopting this technology - even just as runtime. Microsoft silently keeps working on the final stuff.
  • Tsunami: The work is done. Microsoft has the perfect blend ready. Flash is either killed or is kept limping behind.

Branden Hall also writes:

" This makes me wonder how long it will take for all these new tools to actually make a positive difference for end users. Unless a talented designer and interactive developer are working with a developer to create an application with these tools the results won’t be an improvement over todays applications.

Finally, for operating systems like Windows Media Center, I can see highly customized UIs fitting in nicely – but for your everyday custom application, I don’t see how Sparkle and WPF will yeild a net gain for end users."

I recommend reading the posts in this category in old-to-new order. But let explain in short:

Microsoft is right. WPF is not being primed (solely) as a Flash-killer. It will definetely be a Mac-killer tho. But my point is this: If you think WPF is only for making things pretty you are WAAAAAAAY off.

WPF is about getting the presentation layer of a software done quickly and flexibly. Things that required superior subclassing skills and knowledge can be done by an amateur now. The declarative model makes things much easier. WPF will be a boon for developers. It will solve a LOT of problems.

For record let me make it clear:

Windows Presentation Foundation or Expression Interactive Designer will not make anything extra-graphical or extra-interactive unless designer/developer goes to some lengths to actually make it so! When you DON'T skin a control, it will look just like a normal Windows control does. WPF will solve problems such as creating composite controls, creating resolution-independent applications, allowing better and economical usage of graphics hardware and vector to lower CPU usage that GDI+ does not, and more. This is not an animation package (yet).

No. WinFX/WPF/EID is the next generation of development platform. Of course, it won't take long for it become what ASP.net is for the web. But it will be like ASP.net in many ways. WPF/E will co-exist with Flash, just as ASP.net does with PHP and JSP. Of course, it goes without saying that ASP.net is better than PHP or JSP, and so will be WPF/e (eventually). :-)

With that, and the sun shining in my face at 7:20 in the morning, I bid thee good night.









1/11/2007 1:38:10 AM (India Standard Time, UTC+05:30)
Just for the record, you have compared Flash/Flex to WPF (it should be compared to WPF/E as both run in the browser as a plugin across systems, unlike WPF which only runs on Windows).

Also, you have compared it with an old version of Flash. Flash 9 and Flex 2 have ActionScript 3 (Heavy), as well as MXML (declarative support). The bitmap effects support are not only equaled, they are also faster (bitmap effects in WPF only work well on Vista).

Also in Flex 2 (Flash 9) there are no timelines, so that one is incorrect.
1/11/2007 1:45:17 AM (India Standard Time, UTC+05:30)
I agree. The time I wrote this (and please see my post after this post) there was a lot of speculation about WPF and WPF/E as both were in the middle of development. Almost a year later now, things have been solidified.

I must point out that ActionScript 3 still does not support heavy programming like .NET does. ActionScript 3 is very powerful, no doubt, but there is still a long, long, long way to go if it is to be used as a standard development environment like Visual Studio / .NET.

I'd like to comment more, but I can't as I'll be writing more about all this in detail very soon in a new blog post about WPF, WPF/E, and the "Next Web".
4/1/2007 7:51:35 AM (India Standard Time, UTC+05:30)
Hi,

Thanks for the article, a very useful read on my part. I'm a Flash Interactive Designer, perhaps not quite of mythical status, but heavily submersed in interactive design none the less. I've been watching WPF/E with a close eye.

However, I have to agree with the first post, the analysis of Flash seems to be quite off:

"Programming Support - Medium (ActionScript 2.0)"
As mentioned, Flash is now at ActionScript 3.0 which is vastly "heavier" than ActionScript 2.0. I guess I'm not clear what you might mean by "heavy" especially having no experience in .NET, but as far as I can tell from a distance AS3 is in the heavyweight class. I'd be interested to know what weight is missing?

"3D support - Medium (Shockwave 3D or Vectorized 3D output)"
Flash has no 3D support at all. Shockwave is completely different and in many ways not even related -- it's a different runtime with a much smaller distribution and support. 3D in Flash is always a hack and incomparable to real 3D support.

"Declarative Programming Support - No"
Yes. The Flex framework and MXML.

"Animation Model - Timeline-based: timeline is the ultimate controller; timelines are NOT optional"
This is not true. Complex timelines do exist in Flash, but are completely optional. Much animation is done using triggers and events, or declarations in MXML, and many built in classes exist to help programmatic animation.

"Drawing Tools - Heavy"
Flash's drawing tools are actually quite primitive and disliked by designers in general. Most art is created in Illustrator, PhotoShop, or Fireworks, and imported.

Hope that helps.
4/16/2008 5:40:51 PM (India Standard Time, UTC+05:30)
I think that the best solution is to use them both. The result will be great.
5/10/2008 12:34:29 AM (India Standard Time, UTC+05:30)
brand carisoprodol overnight
5/10/2008 12:40:46 AM (India Standard Time, UTC+05:30)
Ordering Brand Amoxicillin
5/10/2008 12:45:01 AM (India Standard Time, UTC+05:30)
Cheap wellbutrin mexican
5/10/2008 12:52:16 AM (India Standard Time, UTC+05:30)
Soma sale
6/14/2008 9:09:00 PM (India Standard Time, UTC+05:30)
Thats true.
6/18/2008 1:06:31 AM (India Standard Time, UTC+05:30)
Im agree.
6/23/2008 9:09:05 AM (India Standard Time, UTC+05:30)
I feel the same.
9/6/2008 9:33:05 AM (India Standard Time, UTC+05:30)
roulette
Name
E-mail
Home page

Comment (HTML not allowed)  

Enter the code shown (prevents robots):

Copyright � 2005-2007 Dax Pandhi. All rights reserved.
designed by nukeation
Sign In