I just had an awesome experience.
I had to create a prototype for something and used HTML. Because it was a prototype, and therefore throw-away code, I could use a single browser. I chose Firefox 3.5, which is fast and supports Firebug as well as CSS3. It was a dream come true. In just a few hours, I created something that looks like an operating system with icons on the desktop, draggable windows with tabs (thank you jQuery UI) and all kinds of bells and whistles. You want curved corners and shadows with that burger? No problem, just use 2 lines of CSS3. I was in heaven.
Not having to cross-browser test meant that I didn’t have to struggle with finding the middle ground. I could just make what I wanted to make.
At work, they have chosen to use Flex for client-side rendering. Although I am new to Flex and not used to how it works, I am excited for it’s potential. Fundamentally, it is like developing for just one browser. I know that Flash will render the same no matter what the environment. I don’t have to worry about IE6 or Safari 2. I can just launch the system in whatever browser I want and test the actual functionality. I am very excited for that.
What would be a great experiment is to build the exact same prototype, I just made for FF3.5, but do it in Flex Builder. I wonder how long it would take to create that. I’ll see if I can find out.
Anyway, the experience was fantastic. I wish I could build things for the web this way. I have high hopes for Flex, but I hope they get the message that building needs to be almost as easy as HTML/CSS and jQuery.