Why Microsoft Silverlight Will Fail.

Being a long time Macromedia developer, recently converted to Adobe, of course I am biased. This post will do little to prove otherwise. On top of this, I favor OpenSource technologies for my server side development stack (LAMP, please). Furthermore, I use primarily Macintosh computers for my day to day work. So it is of little surprise to anyone that knows me that Microsoft’s WPF/E now redubbed “Silverlight” doesn’t really impress me.

My main reasons (And please, correct me if I am wrong):

  • No IDE for me – The development path is currently platform specific to Windows. Not even an open compiler or server side compiler for Linux is available. Use Expression Blend on my Mac? Not happening.
  • No plug in for Linux - Even Adobe has managed to deliver it’s modern plugin to Linux users. I only use Linux as a server platform, but with Ubuntu, etc making inroads on the desktop, it’s nice to have it as an option.
  • Market Penetration = Demand - With Flash player 9 on 80%+ (and well over 90% at Flash Player version 8) of all end user web clients, my audience has currently spoken. They use Flash player. With YouTube and pretty much ever major motion picture / recording artist / sporting good microsite developed in Flash, this probably isn’t changing any time soon.
  • The Growing Mobile Content Market - With FlashLite2, Adobe has proven they are serious about mobile devices multimedia delivery. FL3 looks to be even more so, adding support for FLV. Don’t see that on the Silverlight front, yet.
  • Maturity – With FlashPlayer at version 9, Silverlight as a first gen product has a ways to go to add that feeling of security that I get when I recommend a Flash based solution to a client. The SWF file format is over a decade old. It’s not going anywhere anytime soon.
  • The Developer Community - As a Flash developer, I get a built in community doing great things (The CASA Framework, Tweener, PaperVision3D, etc.). With my OpenSource work (Drupal, PHP, Apache, MySQL, etc) I get the same… Whenever I have worked on a ASP/IIS solution, everything is a pay-for situation. Pay for support, extensions, scripts, etc. Do I want to get into a community like that? Not so much.
  • CS3 - With an integrated suite behind me, I know I can be as creative as I need to be. No such luck on the MS Silverlight end… Do they have a compositor? An industry standard photo retouching tool? A vector illustration tool? Any sort of “roundtrip” editing? Nope.

I’m sure that if I sat and thought about it, I could probably list about a dozen more… But at this point, color me unimpressed. I’d welcome those more knowledgeable on the Silverlight front to refute my arguments.

My OldSkool HipHop Drupal Theme Song Mix. – “More Cowbell”

Think “Licensed to Ill” meets web 2.0. The awesome Drupal ninjas over at Lullabot created a funny, chessy Drupal Theme song that sounds like an 80′s sitcom intro. Then they proceeded to open source¬†the components… So people have been remixing it. Here’s mine. Enjoy the cowbell.

DVD to Flash – The New Killer Encore CS3 Feature?

I came across this cool new feature in Encore CS3 at Bob Donlon’s Blog. I don’t know if this is well publicized already, because I generally don’t pay much attention to video production news. This caught my eye obviously, since it involved Flash. Could anyone who knows about this feature please comment and let me know the generalities of how it works?

Does it encode all the video (motion menus and all) as FLV? Does it generate an XML playlist that powers it? Does it create a shell SWF to load all the assets then? I assume it publishes HTML, too? I have lots of questions…

From the screenshot on that blog, it looks like it creates some UI widgets/buttons to control the movies, too… can you remove them so it operates more like a standard DVD? Can you skin them so it will match your brand?

No one is stopping me now… More questions… Can you output the project so that it could use a streaming server? Since I deal mostly with short Flash video clips (3-5 minutes mostly), what does this mean for longer form clips? Does it cut them up?

Can we output the multilanguage functionality? Captioning? I can really see this being useful as a proofing tool for our video editors at work, but I also see possibilities, if certain ways that creates the files, etc… to use this as an alternative to the Flash IDE for heavily video based Flash microsites.

This all might just be wishful thinking. The original post promises more news at NAB. I guess I’ll have to wait. A coworker of mine is going to NAB, maybe I’ll hound him for details.

Apple Missteps… rare, but a biggie.

As a long time Mac user (OS 7.1.2 was running on my first Power Mac – try that one on for size), I have always revelled in the fact that pretty much since the first iMac, Apple has been pretty mistake free (the Cube being the big exception to the rule). But here we go, the release for OSX 10.5 Leopard has been pushed back until October. OUCH! Because of a phone. Double OUCH.

I suppose them dropping “Computer” from their name was a good step, it’s obvious that shiny gadgets (which unfortunately, I love) are now the real show at Apple. The iPod’s next release won’t slip, I bet.

And so, one of the major reasons I have been holding off getting a new MacBookfor work is gone… No free upgrade to the latest OS for me.

I have a PowerBook G4, and with the universal binary for Adobe’s CS3 Suite coming soon, it may just be time to get the new Intel based laptop. Sure, the newer brighter LCDs sound nice, and the Flash hybrid disk rumors are interesting… but in the end ‘shiny’ isn’t what I get a computer for, it’s to get things done. This new schedule slippage for the OS serves as a good reminder to me on that… waiting for a “newer, better” machine is a pretty fruitless exercise. (Like that pun?)

One of those weeks

It’s Wednesday. I have had 2 big client meetings. 3 conference calls. 2 Webmeetings. A plane ride for a pitch for a new project to a new client. A fire drill on a current project for an existing client. A cancelled class due to my deadlines and travel. I’ve slept very little due to my newborn son. I’ve helped a pro-bono project move webhosts. I managed to golf an under par round on Tiger Woods ’07. And I have paid nearly a bajillion dollars worth of health care bills. And I still have two days of work left. Oh, and one of my ears still hasn’t popped even after landing a day ago.

Argghh!

The end of April can’t come soon enough!

These features that Ryan Stewart mentioned as the top 5 new features for Flash CS3 just have me salivating (Originally from Richard Galvan’s blog). I am so sick of component skinning I could puke. The Photoshop import will be a godsend. The new UI should work quite nicely on my 15″ PowerBook. A way to compile my AS3 tests besides the FlexBuilder will be nice too. Working with the animation to AS converter sounds like a good way to ease my designers into a bit more coding, too… I think it should free up some of my time as well.

So excited. Just want to play with all the new toys!

Taking the weekend off…

That’s right. I’ll be offline until at least Monday… no Email, no work, no Digg, MXNA, no Flex, no Flash, no AS3.0, no PHP, no Drupal. Nothing. I’ll be painting eggs with my kids, hanging with my family ande maybe playing some Wii. Tiger Woods 07, that is. See you all next week.

My Flex Based Celeb Aggregator: MediaDinosaur – is Online.

In 2002 I launched a community generated content site and groupblog called MediaDinosaur. Users could rate and vote on the content, submit top ten lists, bash celebs and media sites. It was great fun. After I took a full time job, the site languished… I recently resurrected the domain name and am beginning the reinvention of the site. Here is version 1 of that reinvention.

MediaDinosaur Logo

I have built a Flex based RSS reader that grabs feeds from the biggest gossip sites on the web (and if you have others you know about but I missed, please do tell!) and allows you to read the feeds and visit the sites. I plan on adding trend charting to track the overall celeb memes in paparazzi (creating hall of fames/shames, etc.), and eventually adding other categories, like entertainment reviews, gaming reviews, special topics like new media formats, DRM, etc. I don’t actually like celeb worship, but there just seems to be so much material out there to pick from and it’s just too hard to resist. On top of that, my wife just so happens to be a perfect beta tester for this type of content. ;-)

All that said, if you are interested in checking out what I have up there now, go check it out.

A few things I am concerned about with it being built in Flex…

  • Flash 9 penetration – I am limiting my audience by requiring Flash 9.
  • Search Engine Visibility – I’m using SWFObject for the Placement code, so I think I might build a RSS parser for the PHP powering the page to put some real content on the page, as well as provide at least a little bit of info to our non flash visitors.
  • Download time - Currently the main.swf file is 290KB. Man are components heavy… any optimization tips out there?

If this project sounds interesting to you and you like to parse regular expressions (Hey – Who doesn’t?) contact me and we can collaborate on it. I have no experience with Flex Charting, but am looking to learn.

Getting Data into Your Flash Files – A Million Ways Can’t Be Wrong?

My previous post about my thoughts on the current Flash climate was apparently just a small slice of this somewhat larger growing sentiment. The Flash community is definitely changing. These posts here and here seem to prove it to me. Lots of negativity for what should be a positive thing: A member of the community making something unlike what was already out there and sharing it with anyone who wanted to try it. These types of efforts make things simpler for users by providing options. Flexibility is one of the major draws for many starting Flash designers in my experience. I teach and work with beginning students building their first timelines and parsing their first XML. I know that the multitudes of options can sometimes get a bit confusing, but do provide ways to ease users into achieving their goals using a method they feel comfortable with.

The SWX data exchange format was created by Aral Balkan and posted for download. It seems like the community was a bit split on the value added by it. It’s open source software, why worry about things like this? I personally thought it looks promising, if for no other reason than it looks pretty dead simple and gives us yet another way to get data into our Flash. Why is this a godd ting? Flashvars and TXT is antiquated and not scalable. Using middleware scripts is oftentimes annoying. Loading and parsing XML can be a pain. Remoting isn’t as easy as it should be, IMHO (Although the recent Lullabot podcast covering the AMFPHP and Services modules for Drupal sounded very promising). And the reasons go on and on. SWX looks simple to integrate with a team that is split between Flash and PHP that hasn’t quite gotten on the AS3 train yet.

This library comes about at a little bit of a strange coincidental moment for me. I have recently begun to reevaluate the way I am bringing information into my movies. I’m still using XML(sometimes statically created, sometimes server side generated), but the way I am handling it is becoming tedious. I too, am long tired of the firstChild, etc. monotony. In fact, that is really the reason I laid off Flash5′s XML and waited for the MX improvements to abandon the LoadVariables() from a .txt name-value pair/query string in the placement code insanity I had been subjecting myself to since Flash 4. I use the method Darron Schall had on his blog a year ago most of the time. But I have to admit, I’m lazy… I wanted something easier.

This led me to the CasaFramework. It really looks good to me. The xmlToObject and objectToXml methods especially. I also like the framework’s timer and inactivity stuff too. I do build a kiosk for a museum or tradeshow everyonce in a while and they always need to be reset to the splash after a period of inactivity. I’m sure that some might say some of this isn’t done the right way (AS3), but it works. I’m just beginning working with it and can see that like the relationship between McTween and I, this might be the beginning of a beautiful friendship.

I see nothing wrong with using code that gets the job done quicker and allows you to do it the way you want to do it, as long as its not hampering the performance of the application you are building. These types of choices allow you to get more done faster, and build bigger, better, more engaging experiences for your users. These bigger better things happen because people share. Posts on blogs, code snippets, an mxp, an entire framework, etc. The sharing and collaborative environment is what really makes working in Flash what it is, fun. Going back to my days as a regular at Were-Here.com, the community was always positive. Lets just hope we haven’t traded that for packages, strong typing and an overall less flexible language. Maybe staying at AS2 isn’t so bad if that means we can keep that good community vibe going on.

Now, this post isn’t directed specifically at any one developer or group of developers for that matter. I certainly don’t want to step in the crosfire that was going on the other day over this topic. It was just purely coincidental that this blog thread occurred, and I had recently written some thoughts that echoed the perspective offered by Mr. Balkan. Now, take my opinions written above just as that, opinions. I am not a Computer Scientist. I am a web and Flash designer/developer who just so happens to have to build a lot of things quickly, for what is usually a small to medium budget and a very tight schedule. Creativity, flexibility and ease of development are of paramount importance to me. A heavy or large architecture oftentimes just isn’t practical on a project with a two week turnaround.

Flex goes a long way to help the developer make some right choices for application development, certainly. But, what percentage of Flash developers are moving to Flex though? Judging by my friends and coworkers it’s a bit niche, but growing. Therefore, I believe these quick, light methods for GTD in Flash are still needed. Flashvars, query strings, text files, xml.load, AMFPHP, SWX, frameworks like Casa, all have their place. There are about a million and one ways to do just about anything in Flash and I wouldn’t want it any other way.

Page 2 of 212