I spent some time earlier this week talking to Frame Group, the developers behind the new Australian Financial Review Access site. They claim it to be the world's largest Adobe Flex application, and it was developed over a 6-month period.
The site is an impressive piece of software engineering: allowing users to search and aggregate between 6 and 7 million stories or pieces of data, and pulling in information from 25 different sources - of which only 60% offer XML feeds. It pools data from the ASX, real-estate agencies and countless demographic sources, much of which can be overlaid on maps of Australia.
The site is pitched at serious traders with more than $50,000 in stock trades per year, and is based on a tiered subscription model. Subscribers to the traditional dead tree version of the AFR get basic access to the site, and those looking for more features have to cough up more cash.
The site makes full use of Flex's features, and you can drag and drop content on the page, zoom in on images, and update the screen contents without reloading the entire page.
I'm going to have an in-depth discussion later with the lead architect about the technical merit of choosing Flex over other technologies like AJAX or Laszlo, but I'd be interested to get your opinion on the next generation of rich internet application platforms. Are RIA environments like AJAX or Flex the best choice for massive projects like this?
As I see it, one substantial flaw of many of these technologies is that the user has to be educated to operate solely within the confines of the browser window. The application is restarted as soon as you hit the back button in your browser, so it's easy to lose where you're at and what you're working on if you're not careful. Many less-experienced computer users make the mistake of hitting the back button instinctively to go back to the previous page, and I've seen enough people get frustrated by RIAs to be wary of the issue. In the case of the AFR Access site's target market, just because you have enough spare cash to trade $50,000 in shares in a year doesn't mean that you're an expert on using RIAs.
How can those building RIAs get around this problem? Is it merely a matter of waiting until the computing public come to understand the limitations of RIAs and adapt their browsing habits to suit, or do we as developers need to find clever ways to avoid the back button problem to deliver a better experience?
After all, do car owners need to understand what's going on under the bonnet in order to drive from A to B?