August 23, 2011 Leave a comment
Ever since Steve Jobs announced his opinions on Flash and HTML5 back in April 2010, the debate rages on about whether or not HTML5 really will be the last tool standing. As a software company serving a broad range of users and platforms, we don’t have the same luxury as Mr. Jobs. It hasn’t been that long since we stopped having to support Internet Explorer 6! We know that we have to support a number of presentation technologies including portal widgets, HTML5 and Flash. Fortunately, our UI developers haven’t committed to either side too religiously.
On one hand, we find it exciting that the bleeding edge releases of Internet Explorer, Chrome and Firefox are early adopters of HTML5. We like that it’s open and doesn’t require developers to use third-party plug-ins for graphics and animations. HTML5 also isn’t limited by the security sandbox that Flex is, which opens up functionality like dragging and dropping into a browser window. But the downside is that all your users have to have the latest browser and ideally a powerful GPU. Browser consistency is another issue that makes it difficult for developers to justify using HTML5 over a tool like Flex that provides that functionality out-of-the-box. We appreciate that it’s easy to understand and build since it’s a document with semantic meaning attached. And we definitely appreciate the power of semantics within HTML5 considering the ontological underpinnings of Savanna, our semantic modeling and analysis platform. Although the deployment environments we work in do not make HTML5 a feasible tool for an enterprise-class solution yet, we’ve got our eye on HTML5, and we’re watching for what’s on the horizon.
In the meantime, we’ve been using the more established Flex4 quite successfully to provide a rich user experience for Savanna, along with Java-based services for the backend. We’ve found that it works well with Savanna’s browser-based, model-driven approach. Here’s why:
- Flex is a full-fledged language–it goes beyond the animation-driven Flash and is more of an enterprise-class solution, especially when you have to support browser versions that are more than a year old.
- Since Savanna is built based on the properties of semantic models, Flex provides us with the reliability to dynamically load problem-specific user interfaces.
- Flash user interfaces are highly interactive, so our users can manipulate graphs in real time.
- Flex is web-based, allowing for convenient application update deployments.
- Flex provides tools for rapid development.
- Developers can choose to fade out and write other display tricks and only take a single line achieve it. This frees up time to work on the hard stuff.
One of our UI developers, Reggie, says of Flex: “Flex’s look and feel are really some of its best features. It’s the best option to display in an interactive, beautiful way. Flex gives us the ability to express ourselves and not have it take the entire day to do so.”
While we’re reaping the benefits of Flex, we are also aware of the drawbacks: single threading doesn’t allow several animations to happen at once without appearing jerky, the security sandbox blocks some of the functionality that HTML5 makes available, and it isn’t as easy to use it for free as HTML5.
Arguments aside, we’ve concluded that it’s not significant which is better–both tools have their strengths and weaknesses–and from the looks of it, neither is going away any time soon. What really matters is delivering a great user experience.
What user interface technologies are you using? Tell us in the comments.