Monday, May 28, 2007

Microsoft getting even with Adobe..

For a few months now every developer around has been noticing Microsofts' unilateral interest in destroying the user experience regarding Flash. It started with the infamous "Click to Activate", continued with Window Presentation Foundation and Expresion and now, welcome the new comer to the stage: Silverlight.

It's easy to see why. Flash programmers have been taking a back seat at macromedia for years.
Any flash application you encounter holds some type of programming behind it. Be it 3D graphic computations or simple user/password authentication systems, the flash programmers have their work cut out for them.

Basicaly the problem is this:
  • designers ARE NOT PROGRAMMERS
  • developers ARE NOT DESIGNERS

For some reason macromedia didn't really understand this phenomenon, so designers learnt crude programming, and programmers didn't really touch flash (ActionScript).
Usually what you met in the industry were flash designers who took some interest in Programming ActionScript, and become flash programmers.

To find a good flash programmer was quite a task.

Anyone reading this who is an experience programmer should be grabbing their hair just about now, as I did when I came across this phenomenon at my previous job. I employed flash programmers who didn't know simple design patterns, who didn't understand events and delegates, who had no idea what a Web Service is or how to manipulate it.

The Development Environment

Anyone who is used to program with Microsoft Visual studio, Eclipse, PHP Studio is used to a very comfortable IDE.

  • Search across files
  • a good sound framework.
  • Object oriented programming.
  • Intellisense (code completion)

Are just a few of the attributes we take for granted in the environments we use.

Flash programmers have none of these. They have Flash studio, which is a terrible IDE for programmers (as it sould be, it was designed for Designers; and they love it).

A simple "search everywhere" to locate a piece of code SOMEWHERE in the flash file is impossible, all you can do is "search the current OPEN file" – and what good does that do ?
Oh, the flash file is a huge jumble of binary code, you can't search with external editors.
Infrastructure is terrible, you want to build your own classes, fine. You can’t compile and re-use the code, you have to have all the sources there, all the time.

Oh, you remember code-compile-test-recode ? in the flash IDE it can take 3-5 min to build your app. So remember to code as much as possible else you spend most of your day staring at the build screen.

These are just a few problems that we encountered.

The biggest one ? Flash is a proprietary format, and Adobe isn’t releasing it. So you can only build Flash apps via the ActionScript run with the Flash Studio (you get my drift).

Recently adobe came out with FLEX, which was the answer to flash programming problems, this is an IDE based on the Eclipse platform, but it was still too little, too late and not enough of a change. The intellisense isn’t close to what is needed, and don’t get me started about the Flash Plugin versions.

Silverlight

Silverlight launched very recently is Microsoft's comeback to Adobes' impotence. With Silverlight you can program using the new Visual Studio (code named "Orcas"). It can be programmed using any Dot Net language. The format is licensed under open-source code, so anyone can add things to it. The plugin works for Safari, Firefox and IE.

checkout these posts:

http://www.techcrunch.com/2007/04/30/silverlight-the-web-just-got-richer/

http://blog.wired.com/monkeybites/2007/02/yahoo_launches_.html

http://blog.wired.com/monkeybites/2007/05/mashin_with_mic.html

http://www.popfly.ms/

http://zero1infinity.stumbleupon.com/