My Sparkle Thoughts
Ok I know everyone is posting about Sparkle, but just as everyone else, I have some thoughts to throw on the table here.
First the link that everyone is linking to:
A great Video featuring Manuel Clement, and other developers on the Sparkle team showing off the tool.
Ok, so I have been following all of this 'expression' stuff as well as everyone's comments on it in the Flash world, and I have to say that my opinions of it fall in line with Jesse Warden:
However, I was having a conversation today with Gabor Vida, our president/big ideas guy here about Microsoft's new platform and how it relates to Flash. It was funny because Gab said it straight up and I really have to agree:
"Who cares what tool you use, it's the product that we make with those tools that is of value to our clients. If it does a better job, then start learning it, because I want to make our clients happy. Macromedia is not our client, we are theirs."
So will it make our clients happy? Well lately I have been doing a huge amount of Dektop Application UI development. I have had 3 major projects in the last year where we had to integrate a Flash UI with some kind of external Windows Application. I am doing one right now as a matter of fact and there are huge challenges involved in it.
When I watched the Sparkle preview, I realized that if the tool was available today I would not be using Flash on my current project. I am integrating with another big software development team outside of Teknision, and They are interested in a Rich UI, not Flash, and certainly would choose an Avalon UI over a Flash UI.
So therefore, if I had it today my clients would be very happy. Because I could deliver something that preforms better, integrates more media, and integrates with their code better.
I find that alot of people are comparing Flash to Sparkle. It seems to me that people keep forgetting that Sparkle is not really anything to fear, Avalon is. Macromedia could also build a tool to generate the Avalon apps, that could compete with Sparkle. Hey it could even be a future version of Zorn or Flash that can compile XAML. But the fact is, that Avalon is the major asset here, and the runtime that many many people will "oooo and ahhh over for the next few years".
I do not see Sparkle and Flash competing for quite some time though. Sparkle will more likely compete with Director. WBA web applications probably will not be widely adopted for quite some time, as it is going to take years for the OS to get adopted by enough people.
However, Sparkle will actually benefit us Flash advocates at first! Why, well it will expose more people to Rich UIs and therefore make it easier for us to explain to them why it is important. We can let our clients know that we can develop these experiences on the web as well, and allow all of their users to experience it, instead of just Windows users!
To me this idea of Rich UIs coming right into the mainstream validates all of the preaching and teaching that I have done over the years around Flash. And it allows us as UI designers to gain even more clients and do even more great work then we ever could have before.
So myself, I am excited. I will never walk away from Flash or Flex, but I will certainly bring a new tool into my enviornment if it is right for the job.
So from the video above I have a few comments:
1/ Controls and Skinning Templates
When I saw the demo of how you skin the controls, I was blown away. If you have tried to customize the MX V2 components you will see in the video that Sparkle makes it so easy and simple that even our designers that have no code experience could do it easily. That to me is a huge thing, because they are the ones that should be doing that, not my development team.
2/ 3D elements
How many Flash users would die for a 3D Viewport like they show off in the video? Many I am sure. I see that on the feature list for Flash 9.
3/ Expanding UI
Seems stupid to mention this, but in the explanation the developer gave, I started laughing as he was telling the story about expanding UIs and designers (more on this below). But the way Sparkle allows you pin items using guides and add draggable dividers was unbelievable! A delight to any developer out there to see that it is so easy that designers can do it with no input from the developer.
So my favorite part of the whole thing, was the whole part on making designers and actual part of the development team. I agree with this so much, and they hit it right on the head:
4/Designers create the real UI, developers code it!
They mentioned that the traditional workflow is that designers create a mock-up of the UI, then those graphics are torn apart and handed to a developer to make it work. Often there will be issues and the developer is forced to make decisions and change things. This takes the design slightly away from what the designer intended. This is true and in every shop I have ever worked in, working on Flash projects, this is always the way it works.
The sample in the video where the guy was showing an expanding UI and how the designer can build all of that UI less the actual code that represents the Model of your application was so refreshing to a developer like me.
It is honestly this exact issue that I wish Macromedia had found some way to address. I have worked with Flash and loved it for years, but I have constantly moaned about the difficulties in getting a smooth workflow between designer and developer. Some may think this sounds silly, but it is true in my mind. Developers often end up taking the majority of the burden of producing a UI in Flash. The reason for that is because Macromedia has not made it easy to deal with Flash Views in any form of a sophisticated application without knowing Actionscript at a relatively advanced level.
Anyways, I am really impressed with Microsoft. One of the first times I have ever been excited about a release from them.
I just thought of something:
Remember a few years ago, Corel got laughed at because the box for Corel Draw was made with Adobe Iuustrator? Well maybe that was just an Ottawa thing, but that funny coincidence could play itself out agin in the future.
It is likely that a future version of Flash could be built with Sparkle. I mean, we all want Rich UIs right?