Monday, 25 July 2005

Virtual Apparatus Framework

In one of the early papers I wrote on this topic (back in 1997):

Why can't an academic producing courseware (online or otherwise) work like a science teacher producing a laboratory demonstration?

By that I meant:
when I design an experiment for my students, I don't need to worry about the design of an apparatus. I go to the laboratory preparation room, look at what kind of apparatus are there that I could use to illustrate the idea I would like to teach, hook the apparatus together, play with them a bit, get some sample data,...

I saw a need to create a technology solution so that teachers, those without sophisticated skill in software technology, to assemble an interactive web page from functional components similar to Physics teacher preparing an experiment set-up. I called that "virtual apparatus framework".

Since I left the University, the original project web-site has disappeared. I recovered an old backup, bought the domain name and put the copy online.

Virtual apparatus framework is based on a component-based software development blueprint. There are three major components in the model:
  • virtual apparatus - software components

  • virtual apparatus work bench - the hosting webpage of the components

  • virtual apparatus connection - mechanism to ensure the software components work in harmony

  • At that time, the main technologies to create animation/interaction are Java-applet, early flash movie and some active-X objects. The main "glue" for these components to work (or communicate) is via "Live Connect". The technology was in a flux, almost changing monthly.

    The main reason I want to revisit this topic is that I see a more stable environment today. IE6 has been around for years. Firefox is gaining a lot of momentum. The DOM is now well defined. Javascript is the de facto lingua of the web. CSS is widely accepted. Techniques such as unobtrusive javascript is becoming common accepted practice. There is now much better chance to create re-usable component in a sub-page level for us to build better web pages. Any thoughts?

    No comments: