c. 1995. During the SunWorld conference, there was a lot of activity related to Java. Microsoft and notably Netscape announced their intention to license Java. It was the magic of executing applets in the browser, which made the browser makers circle like bees around the Java platform. With applets the seeds of Rich Internet Applications were thus sown. Macromedia was around too. But, applets provided not only animation but a complete ability of building rich GUI applications using Object Oriented Programming.
During the dot-com boom, predominantly Internet applications were of “Browser<-->Application Server<-->Database” type. The application server was the place where all the logic, interaction, caching was being done. The browser was just the rendering engine for the HTML output from the application server. Almost every click on the HTML page resulted into server roundtrips. Model-View-Controller (MVC) framework was the chief design pattern governing complex websites.
Around 2002-2003, the logic started moving to the client. An initial download of screens, rendering logic and subsequent server trips to fetch the data. One case in example is GMail–a big download of Javascript, followed by a DHTML driven browser UI. If you use GMail, you might have noticed the speed with which you can move between messages that have already been viewed. Oddpost is another RIA example, total DHTML magic. It was the RIA-ness of e-mail which made Oddpost a good proposition for Yahoo.
A growing RIA framework is Macromedia’s Flex. Quoting from ColdFusion Developer’s Journal, “Flex offers a standards based, declarative programming methodology and server runtime services for delivering rich, intelligent user interfaces with the ubiquitous cross platform, cross-device Macromedia Flash client.”
Other top contenders for RIA framework:
Check out a real world RIA example here. (No, I didn’t make a $259/day reservation. I booked mine at a different hotel, offering $54.95/day using the plain old HTML!)