Showing posts with label flash. Show all posts
Showing posts with label flash. Show all posts

Saturday, October 20, 2007

Smashup: Blend 2 vs Flash

I've been dutifully attempting to learn Microsoft Blend 2. I have a few gripes so far.

I am not a programmer. I often wish I was. While immersion techniques work well for learning things, it can be quite the learning curve. I really do think programmatic approaches are usually more flexible and can be easier to control, but c'mon Microsoft! give me a little break here!

Example you say! Ok, says I: Fading

flash
mc.onRollOver = function(){
--- mc.onEnterFrame = function (){
------- if(mc.alpha >= 20){
----------- mc.alpha -= 10;
------- }
--- }
}

blend 2
I am actually not sure how you go about this... I have found that you can't invoke a loop and use setTimeout or setInterval to achieve it (common and pre-existing methods to achieve this with javascript). It appears that you have to use a "storyboard". Storyboards are a method to animate things.

My understanding at this point is that there are three ways to go about this:

Non-programmatic.
You can set up unique storyboards for each object you want to fade in blend itself.
Imagine that you want to fade a button as you hover over it, each button will need it's own Storyboard (time line based transition). Not efficient use of my time or of the technology.

Semi-programmatic. Have several predefined
duplicate storyboards that have the storyboard target dynamically modified with javascript. Why several of the same thing? Silverlight can only have one instance of a storyboard running at a time. So if you want multiple fading elements, you will have to have x number of storyboards that you switch back & forth between when they aren't in use. Kind of a hassle!

Programmatic. Dynamically create storyboards on demand and insert them into your xaml code structure. This approach is most flexible but I haven't gotten it to work yet. I find this method as annoying as the rest because, rather than just needing to manage my javascript fade code, I also need to create xaml, insert it into the document structure, and then remove it when I'm done. Way more complicated than what I did with flash.

I am left feeling like microsoft wants me to be a programmer. Or at least have one on speed dial. While I really enjoy learning programming, there is a point when it gets kind of ridiculous just to do something simple like an opacity fade.

Why so many hoops? Maybe someone can explain why their way is better?


Monday, October 15, 2007

Silverlight and Blend

You may have heard about this new product from Microsoft called Silverlight. Silverlight is a cross platform (or soon to be cross platform) media plug-in. Similar to adobe Flash player, this technology can be used to deliver HD video, rich user experiences, and all around good ol' slick sex appeal right in your audiences very own browser. Microsoft Expression Blend is an application that allows you to build content for Silverlight.

Ok, great. Why do I care?

Resume Gold. If a designer seriously plans on looking for a job with anything to do with software or the web, they should consider getting their hands dirty with stuff ASAP. It won't necessarily get you the job, but it will really make you stand out. Not many people have much experience with it but lots of companies are looking for people who do. Need more reasons?

It's not flash. The more technical folks will appreciate the fact that complete experiences can be created with Javascript. That's right, Javascript! The same cool language that you use for your neat css, dhtml widgets can be used with this. Now you don't need to have another language with its own unique syntax and issues floating around in your head.

Competition is good for us; the designers, consumers, computer users. Hopefully, this will drive both companies to continue to innovate in the area of rich interaction tools marketed toward the design crowd. Innovation is good!

Efficiency is the key to a profitable business. Blend is an application that tries to shorten the development time involved in creating the awesome user experiences we strive for. Design the actual interface & elements, hand this very same file off to the developer to add the mechanical bits. Viola, you no longer need countless emails to the dev team that they didn't recreate your design exactly to spec.

If you want to experience this product yourself, you can download a free demo here.