Rich internet application
Definition
Rich Internet applications (RIA) are web applications that have the features and functionality of traditional desktop applications. RIAs typically transfer the processing necessary for the user interface to the Web client but keep the bulk of the data (i.e., maintaining the state of the program, the data etc) back on the application server. (Wikipedia,, retrieved 12:36, 27 April 2007 (MEST))
Technology and examples
Technology
- "Core" web 2.0
- AJAX (Javascript + HTML + CSS + HTTP + XMLHTTPRequest calls). There are a number of available development frameworks
- Some server-side technology (same as for any web application)
- web widget technology (APIs to integrate web applications into an organizing "page")
- Plugins / webstart applications
- Java applets or Java webstart applications
- Flash + tools like Adobe Flex/Flash builder and ColdFusion
- Browser extension technologies
- XUL (only works with Mozilla-based browsers).
- ActiveX Controls (only works with IE)
- Other
- AJAX3D
- ...
Ria categories
- Virtual offices, (some, i.e. in the sense of Office 2.0)
- Webtops
- Web operating systems
- web widgets (building bricks for webtops, virtual offices, etc.)
- social software applications (most)
- (some) educational technologies
Examples
(just some, rather look up categories above)
- Editing
- Specifically for education (in this wiki)
- Personal learning environments (maybe some)
- LAMS
- microworlds (some)
- e-learning 2.0
- Other places to visit
- List of rich Internet applications (Wikipedia)
- Category:Web applications (Wikipedia).
In education
Rich internet applications have a lot of potential, in particular for "classroom education" since it frees the teacher from administrative redtape and the organization from installation and maintenance. See e-learning 2.0.
Software for development
There are different kinds of development sofware. Basically, all you need is knowledge of server-side and client-side scripting (e.g. PHP and DHTML). Client-side rendering can be done with any dynamic format (XHTML, SVG, SMIL, Flash, Java, etc.)
But there exist various frameworks to develop RIAs much faster, e.g here is very incomplete list:
- AJAX-based
- Laszlo (also deploys in Flash)
- Dojo (for the client-side part only)
- ZK Framework
- Java client-side
- Java applets and web start applications
- Server-side can be anything, but many Java developers also use Java technology
- Flash client-side and optionally Adobe server-side technology
- Adobe Flex and Adobe AIR
- [Adobe openscreen project], to deliver Flash/Air to all devices from a single source (if we understood right)
- Microsoft's new "Internet foundation framework"
- Browser embedded
- Some webbrowsers, e.g. Firefox (XUL) and Opera offer extension frameworks.
- Other
- More stuff needed ....
Links and references
- Rich Internet application (Wikipedia).
- Build Your Own Web 2.0 Application Using Fluff and Hot Air
- Web 2.0 Can Be Dangerous..., Jakob Nielsen's Alertbox, December 17, 2007