I’ve just arrived home from a rather busy couple of days in London. I was the guest of Microsoft at their Mix07 conference. And by guest, I mean that they called me up the day before to find out if I could give a one hour long presentation about my work. But I like that kind of thing so I said yes.
The conference seemed primarily to be focussing on the Expression Suite of software, including Silverlight. It’s a little scary for a Flasher to be surrounded by so many .net developers, and I’m not ashamed to say that I felt a little out of my comfort zone as I sat through the keynote speech.
Then I realised that I have to be careful. It’s only natural for people to give greater import to subjects that they are experts in, and that’s why the fan-boy phenomenon appears.
But I’m not going to be a Flash fan-boy! I’m just going to watch, listen, and ask some questions. Some hard questions. And once I had let go of my extensive Flash knowledge, and that defensive knee-jerk reaction against anything new, a feeling of freedom washed over me.
And I thought, maybe, just maybe I’m getting a glimpse here of the future. A future where Flash is no longer the only option for online rich application development. And a future bathed in green light. A lot of green light.
When I first entered the room, all I initially saw was around 500 rather geeky looking .net developers. But now, with my new green-tinted spectacles, I felt a profound sense of love for these unsung heroes. These under-rated mavericks of the programming world, whose talents have so far been wasted on grey forms, data applications and tax return software.
So come! Come my friends! You too can now enjoy rich applications! Bitmaps! Vectors! Video! Audio! Interactivity! Buttons! Shiny buttons. Really shiny. I mean it.
And with my new sense of inclusivity, I decide to sit back and actually listen for once. So tell me, my new Microsoft friends…
…what is this Silverlight thingy all about?
And the nice green-light-bathed man tells me – Silverlight is a browser plug-in that can read an XML based markup language called XAML. And you can produce XAML in a text editor if you want, although it’s a lot easier to use Expression Blend, which I guess is Silverlight’s version of the Flash application.
And you know what, there are some really nice touches with Expression Blend. I must admit that I don’t get along at all well with the Flash CS3 interface on the Mac, and here is one area that Microsoft got right. A really nice touch is that you can zoom or shrink the interface, including text and buttons to suit your monitor size / eyesight. I would love to see that in Flash. Even with my massive 24″ screen I never seem to have enough space.
And as Jon Harris continued his Blend demo, he just threw in a couple of real-time 3D generated buttons. They were all spinny, just as you would expect any self-respecting 3D button to be. I remember being impressed with this back in December at Flash on the Beach. And so I’m thinking, wow realtime hardware supported 3D rendering in a browser at last! Is this what will finally replace Shockwave3D?
I mean the PaperVision guys are doing an awesome job, but we still have a finite amount that we can do without hardware rendering.
However it wasn’t as it all appeared… more about that later.
Why the hell should I use Silverlight?
Fast forward to a couple of hours later, and I corner Jon Harris. Who clearly is a man who likes a challenge. He must do, otherwise he wouldn’t have come to Flash on the Beach last year surrounded by 500 Flashers all wondering what the hell he was doing there.
And he seemed friendly so I asked him the question : why should we start to use Silverlight? The answer that I got was : Video.
MS are pushing this technology heavily on the video side. And Jon told me that it was much cheaper to host streaming video on a Microsoft server than on a Flash Media Server (FMS). Apparently around $2000 compared to FMS which will cost you $4500. Now come on Adobe, that’s really a bit silly huh? No wonder that Microsoft see this as a way in. And I also hear that Microsoft are even offering free hosting to some clients (not sure about the details though). And I suspect that if you’re the BBC or other hugely massive organisation, Adobe may be interested in giving you some sort of discount. 🙂
But again Jon stepped up and gave a quick demo of Expression Encoder which instantly proved that it’s a much more intuitive, time saving and efficient tool for converting media than the Flash video encoder with some really clever ways to preview the quality and compare it to the original.
And any content provider out there who has a vast library of Windows Media files will surely see the appeal of Silverlight – a quick easy way to get all of their existing content into a shiny new in-browser application. And certainly all of the Silverlight video demos were extremely shiny and extremely high-quality video.
So where are the shiny Flash video demos? They must be out there. Especially now that the new Flash player supports pretty much any video format. (.mov, .mp4, .m4a, .m4v, although i suspect it’ll never support wmv 🙂 ) It’s weird that although Flash has most certainly won the web video war, that they’ve still left a couple of holes to fill.
Another one of my jobs at the conference was to chair a panel discussion about design. On the panel were a couple of Flash luminaries, one of whom was Jim McNiven from Kerb. Jim’s a good friend of mine and I’ve worked with him many times. Jim is an expert at viral marketing, and his best viral campaign to date has reached over 50 million unique players.
But currently Silverlight is so new and Microsoft didn’t have any take-up rate information, or at least weren’t prepared to divulge it. But I guess that’s fair enough because version 1.0 has only just been released last week.
But the point is, Jim is an absolute genius, and he knows about viral marketing. And quite rightly, can’t consider creating a Silverlight game until everyone has the player. He knows that the slightest download or obstacle to enjoyment will put off a significant number of visitors, and it’s for that reason alone that companies like his and mine can’t use it. Yet.
Realtime 3D. Again.
OK so remember I was telling you earlier about the exciting realtime 3D demos in Blend. Well it turns out that you can’t actually view these in Silverlight. In fact Silverlight doesn’t support native realtime 3D graphics at all!
So why can we produce 3D in Blend, when Silverlight can’t play it? Well apparently you need another plug-in called WPF or Windows Presentation Foundation. And I gather that this also reads XAML files.
[Clarification : I believe that WPF runs compiled .xbap files, which are like .exes. Actually I think my clarification made things more confusing. But either way, WPF only runs Windows, which is silly! ]
The good news : You can get WPF plug-ins for both Internet Explorer and Firefox!
The bad news : As long as those browsers are running on Windows Vista. Or XP, as long as it has the .net framework version 3.
But still, it looks pretty cool, and I met a few nice chaps who were building a very snazzy book reader with fancy page turning effects in real 3D. Which included specularity maps so the gold inlays on the books were especially shiny. I told them that I could do something similar to that in Flash but they didn’t believe me. So I’ll let you know how I get on with that particular challenge.
And they they showed me an even more awesome 3D render of a brain scan. Now that was cool. They were rendering each voxel (3D pixel) of the brain scan, and they could remove slices to drill down into the brain. That’s a lot of voxels and I think even PaperVision would struggle to render that many polygons. So I told them that I didn’t think that Flash could handle that. That made them very pleased. I think they may have been displaying mild fan-boy tendencies.
Book page turney thing
So the book page turney thing that I mentioned : it’s for the British Library. Needless to say it’s a high profile project that Microsoft are pushing hard. But the ironic thing is that, as the British Library needs to make its content accessible to as many people as possible, they’ve had to produce a massively cut-down Silverlight enabled version of their interactive library. With a really cheesy Flash 5 style page turn effect. Sigh.
And the other mild embarrassment is that the staff at the British Library only have Windows XP Service Pack 1 installed on their machines. Which means that they can’t even install the WPF plug-in. Which means that not even they can see the cool 3D page turney thing!
(And as I look closely at the 3D being rendered, it’s actually seems to be aliased, with quite jagged edges. I was really surprised as I would have thought that it used all the whizzy graphics hardware, and the least it could have handled is a bit of antialiasing. Well I’m sure I’m just being picky here. )
So will Seb be converted to the green side? Will the Silverlight police realise that he’s a flashed and throw him out? And who is the ultimate winner of the battle between Flash and Silverlight?
Find out tomorrow in the next exciting installment of Flash vs Silverlight, catch it HERE on the official Seb Lee-Delisle blog!
And yes I haven’t had much sleep. I think I’ve lost it.
[Update: Read part 2 of the story! ]
9 replies on “Flash vs Silverlight”
It’s gonna take a lot to turn this hard-core Flasher over to the dark side (and I suspect same goes for you Seb), but I think it’s great that Adobe have now got some serious competition in the market-place.
A decent arms race between Adobe and MicroSoft will be healthy for the industry. As long as Adobe win of course 😉
Very interesting article Seb.
It’s a big disappointment that the 3D support is not native to the Silverlight plugin. Let’s face it having to download the .net framework 3, then Silverlight, then WPF plugin is not exactly what I would call a seamless user experience… I’d also be interested to see what the support for this stack is going to be cross-platform & cross-browser.
Looking forward to see how you get on with your Flash version of the ‘Book page turney thing’!
I’m glad you liked the volume viewer! If I seem a little fanboyish, it’s just because I get excited at all these lovely new content-delivery options. Regarding aliasing in the TTP application itself, have you got anti-aliasing switched on in your graphics card driver settings? I usually work without anti-A to keep my 3D tools working quickly, but for fun I switched my GeForce 8800 to 16Q Anti-Aliasing in it’s options panel, and took the following screen-grab:
As you can see, there isn’t much visible in the line of aliasing on the edges once the card driver has been told to use antialiasing. I didn’t see a noticable performance hit either, but admittedly I use quite a lot of computer.
All the best,
It was great to meet you at Mix! Glad you like our app and yes, sorry for the fan-boy tendencies I probably displayed – I don’t get let out very often and the M$FT chip was implanted over 8 years ago 🙂
3D anti-aliasing works fine on Vista with a bog-standard WDDM driver and tier-2 card – and video RAM is virtualized so you don’t have to worry about WPF being forced into a software rendering mode because it’s run out of video memory headroom.
Given that, I’m not sure of the reason for your poor page turns – is anti-aliasing turned on? We tested it before it went live on 3 year old laptops and got a good anti-aliased experience. I must admit that 3D perf on my personal Macbook isn’t great though so maybe its a driver thing?
Anyway… thanks for the enthusiasm you brought to the conference and I wish you luck with your page-turner project!
Hey guys! Thanks for the comments, it was great to see you and the work you’re doing.
Don’t worry about the fan-boy tendencies, I spent the entire conference resisting mine!
Re anti-aliasing : I was actually referring to the examples you guys showed at your presentation! I guess I should have known it was a hardware setting.
But I just can’t tell you how disappointing that it’s windows only. It’s so against the spirit of the web, and with Director in some kind of weird limbo, we’re desperately in need of a cross-platform, web delivered, hardware rendered 3D system.
So much as the quality of WPF is better, currently PaperVision3D in Flash 9 is your best most supported bet. In this case, penetration rate is more valuable than quality.
And I’m also interested how many vertices you’re rendering in the brain scan and do you have that example online?
Ahhhhhh, now I get it! What you saw in the presentation was due to the screens being used – they were scaling down because we couldn’t run them at their native resolution of 1366 etc. I figured most people in the audience would have seen that from the look of the startbar, etc.
I think investment in platforms is directed towards the market value for the main commercial software vendors (whether Microsoft, Adobe or whoever) so it makes sense to focus where most people are or are going. The great news about Silverlight (that you’ll have picked up from the conference) is that it expands the platform and browser targets for XAML to include Macs and all Linux distros as well as the major browsers on those platforms – there some 3rd party 3D implementations layering on Silverlight too so the wider community is already taking the opportunity to build on it.
I think quality is absolutely vital. Yes you want as much reach as possible but for the best user experience you eventually need to focus on some platform specific capabilities. For many jobs taking the lowest common denominator platform approach just doesn’t make sense – if it did we’d all still be writing HTML 3.2. What I like about the current Microsoft direction is the whole spectrum of UI technologies that work together – from the reach of HTML/DHTML through ASP.NET AJAX through Silverlight to the quality of browser hosted WPF (XBAP) and full rich client WPF.
As zenbullets says… it’s great that Microsoft is now in the race. Let’s see how it pans out.
I’ll let Alex answer the brain scan in more detail – but it was over 1000 vertices per frame from what I recall.
Hi Seb and all – nice seeing your seminar at FlashFoward.
If I had to gamble I would put my money on Adobe any day of the week. This almost seems like Microsoft’s version of Director to me and from past experience, Microsoft’s practice of taking everyone else’s awesome ideas and reinventing the wheel never really pans out too well(Post Windows that is). I don’t know I’m just not ready to free myself of non-Flash prejudices yet.
I do agree though that an arms race will be good for not only the industry but Adobe as well. They will need to step up their game if this little application, SilverRay, GoldspeckSparkle or whatever it’s called, does indeed take off.
[…] zone into Microsoft’s Mix 07 conference and sparked a noisy but affectionate debate with my Flash vs Silverlight […]
It’s not easy to find a school that teaches Expression here in Toronto or anywhere near. In fact, I haven’t.
Is Microsoft plural? (‘Microsoft are…’)
Entertaining article. Thanks.