There has been much attention recently on the use of virtual classrooms to support distance learning. However, the required real-time and high-rate transfers for multimedia contents such as video and audio that comprise most off-the-shelf virtual classrooms make them infeasible for developing countries where bandwidth is typically more restricted. In these live virtual classrooms there is also the need of application sharing for demonstrations and teaching the use of software.
There may be many projects to increase accessibility to the internet in Southern Africa, but the costs for these internet subscriptions for broadband connection are still high. Some ISPs have opted to charge per data and provide low bandwidth connection uncapped. With choice between uncapped low bandwidth and capped high bandwidth connection, the use of traditional application sharing systems remains a problem as the costs is high as these solutions do high volume of network data transfers. With these issues, the use of SaaS solution is an attractive option for introducing ICT teaching amongst the many advantages these systems provide.
The concept of Software as a Service (SaaS) has been growing and has been made easier by cloud computing and flexible hosting services. There are many advantages to it and companies and institutions are increasingly moving to adopt this technology around the world. The increasing connectivity of individuals to the Internet adds fuel to the growth of the adoption of cloud computing and Saas. Some of the popular of the many web-based applications are Google docs, Zoho, Etherpad and Office Live which provide similar functions of office suites such as Microsoft Office and many are even free. Although these applications do not have all the functionalities in traditional software such as a word processor, it is very ideal for introducing people in disadvantaged communities towards such applications and skills. In this paper we are more interested in those that have real-time collaboration feature as it needs to be used in a live virtual classroom, but the techniques suggested below can be applied to others.
The great thing about these applications is that they are run on the local machine as it is JavaScripts that are downloaded and the user enjoys same experience as with any other locally run application. These have the replicated design architecture of application sharing systems whereas the other popular used application sharing systems have the centralized design architecture. As such by their design the data being transmitted is minimal and makes it great for low bandwidth connections. Bandwidth is not an issue with these systems and can therefore support many simultaneous users with a cheap internet connection subscription. Voice is still needed, but there are solutions such as Skype for example that can work well over low bandwidths. The network latency, network stability would however is an issue for a good experience for all to see the changes to the applications in real-time. This paper does only address applications using AJAX and not those that work with binary objects such as Java Applets, ActiveX Objects and Flash Objects as used by some web based applications.
A major issue for use of these tools as is for teaching in live virtual classroom is that the toolbar would be problematic as the mouse click would not be visible to the viewers or the students in the live classroom. We suggest strategies to resolve this problem and the issues involved. One of the solutions is to add mouse cursor tracking functionality to the web based application by adding local JavaScripts to be executed by the web browser. An example solution is to use an add-on to the Mozilla Firefox web browser called GreaseMonkey. The mouse clicks would then be broadcasted to the students or participants through another server to coordinate collaboration. There exists technologies for the administration and coordination of real-time collaboration between many users called Operational Transformation and one can download open source versions. Programming techniques may be the same for different web applications, but the scripts have to be adapted for each in terms of the toolbar positions and menu functions. This would be resolved by having the mouse pointer displayed when it is clicked and its position broadcasted to the other participants.
The uses of these systems do not need to be limited to teaching how to use a particular web based application. With the use of the imagination it can be used to teach any discipline such as even languages for example. The solution suggested only provides real-time teaching using application across network restriction and constrained in developing countries or other. It allows for the use of readily available resources with little prerequisite of a lot of technology competency for students.