Skip to content

Open Source Teaching/ Learning Collaboratory

The Open Source Teaching/Learning Collaboratory is a prototype facility in operation at the present time, with one and possibly two additional Collaboratories to be installed in time for our spring 2007 session. In addition, this facility will provide the model and framework for all other distance teaching activities planned as part of this new initiative for supporting our open source community within the State.

The Facility

Our vision for the Open Source Collaboratory has been guided by the overarching goal of providing students a learning environment with minimal barriers. Our intent is for students to be able to manipulate their computing environments as needed without relying on administrative intervention and without running into administrative constraints. Students should also have tools available that will enable them to interact effortlessly with other people in the lab and beyond. Computing resources in the lab should always be viewed as tools and not hindrances. Part of achieving these goals will be complete reliance on Free and Open Source software (FOSS). Not only will this provide complete freedom in developing and maintaining our software systems, but it will enable transparency so that students (and others) can study and extend the capabilities we have developed.

The Collaboratory presently supports sixty seats for use by students during class instruction, and also for use outside class use such as for completion of homework, research project involvement, and individual and group computing projects. The lab is also available for students in our Engineering Service Learning courses, and also for non-Engineering courses. The driving considerations in designing this lab were:

  1. Significantly enhanced usability
  2. Strengthened security
  3. Efficient and effective systems maintenance

Prominent in this facility are net-booting, low-power computing, and VNC.

Each seat in the labs is set for net-booting from a single boot-server. All machines are essentially identical, booting with a built-in PXE loader in roughly 73 seconds. An individual workstation acquires read-only NFS-mounted working disk space during boot-up. As part of the boot process UnionFS uses tmpfs to create a read-write root filesystem. Once a user logs in — another 23 seconds &mdahs; she sees her home filesystem in /home/username, a link to the mount point.

The design of these labs and workstations makes it safe and even natural to give all students logins, including even guest@localhost, privileges to sudo, access audio, and otherwise allow use of all the thin client capabilities. There's no harm in allowing — encouraging — root logins, because there's no local storage and each seat can be rebooted back to its default state, and quickly. Security limits the potential damage done by a hooligan with root at an individual seat.

Features and Functionality

The result is that students can walk in to the lab at any time and access (1) their usual $HOME; (2) they can treat the lab seat as a stand-alone box for installation of specialized engineering software; (3) it can be used as a highly-capable display for viewing remote scientific computations; (4) it can become a collaboration hub for group projects by local or remote students; (5) it can be a stand-alone access point for connecting to the Web. Campus- wide logins are not resolved directly by LDAP, but sent by way of ssh to a dedicated machine on the LAN, which itself knows how to authenticate requests against LDAP and automatically create corresponding accounts. This has proven to simplify configuration of the lab seats and maintenance of the dedicated ssh-LDAP host.

Significantly, SSL-for-VNC leverages these other elements. X11-based displays, among others, can be viewed remotely and securely through a Web browser. This technique further reduces the learning curve or "activation energy" for a student or professor who wants to share a computation, even for a one-time-only or limited-use URL.

In any of these roles, all sessions and displays are accessible remotely with screen and VNC, so technical support can be provided swiftly and with great insight. In the rare event that a host breaks, or the more likely one that there's a need to scale up, it takes seconds to pull out another Mini-Box, attach power, keyboard, video, mouse, and network connections, and boot it, fully ready for full use.

The uniformity and utility of this variation on thin-client "utility computing" has liberated attention for less common benefits. With each seat serving screen and VNC, technical support is both simplified and physically decoupled. It takes fewer assistants to maintain operations, and many times they need not even be in the lab. As it becomes comfortable to move logins, displays, processes, and desktops around, instructors and teaching assistants will find it advantageous to check in on student work "live." Two workstations have been dedicated to bigscreen projection and other multimedia playback, with two more scheduled for the future. It's easy to quickly set up shared displays on nearby workstations, or send them to the projector in the lab or a classroom. A student can develop a presentation in the lab, then initiate it interactively for his whole class. And because VNC clients are themselves ubiquitous, it is a simple matter for a scholar upstairs or across the country to make a demonstration available for those working in the labs.

Most of these features take only a few lines of coding and configuration. This project, for instance, created a standard way to securely forward a display. It includes only a few elements unimpressive in isolation, but, as near as we can tell, documented nowhere else in this especially useful combination.

Most exciting of all are two qualitative distinctions that are more academic than technical. First, usability helps bring the focus of students back to content rather than computing technique. A simple, uniform, and flexible computing environment eliminates the former premium on memorization of esoteric command-line or "wizard" sequences. Students can concentrate more effectively on their work, without such distractions as malware-infected hosts, broken parts, authentication or synchronization misconfigurations, and all the ills now evoked by the jargon word "silo:" value locked up in a particular machine or process, unable to communicate across boundaries. Emphasis on simple, reliable approaches makes for a significantly different end-user experience. Beyond the confines of the lab, "utility computing 2.0" bears on ambitions we have for scientific computing more broadly. Scientific publications frequently refer to digital calculations. It's astonishingly rare, though, for scientists to make their source code available so that others might reproduce and more deeply analyze their results. Even the few scientists who try to do so — who think they're disclosing their source — often have a poor grasp of the computing commonplaces involved in portability and transparency, with the result that they inadvertently hide crucial information about their environments and configurations.

Costs and Efficiencies

In contrast to a conventional windows computing lab, the lab is using ITX Mini-Box M200s driving 24" Dell LCD displays set to 1280x1024, which is not only extremely cost effective, but very energy efficient. Total cost-per-seat is a modest $1,100, only about half as much ($2,100) for a conventional lab seat. Also, the savings of about 180 average watts per seat represents, at prevailing California electricity prices, around $10 per month, or well over $100 per year. That advantage more than triples when one considers that the power savings also represents a reduced load on the air-conditioning facility for the labs. In reality, savings on the CPU make large 24" displays feasible. Our thin-but-wide clients are this very popular with users.

Future Directions

While our Collaboratory has already proven extremely valuable in supporting our rapidly emerging open source culture and our innovative new courses, there's plenty of work left to do. The facilities for session recording remain incomplete. We're exploring ways to accelerate display of remote sites, and building tools to simplify naive use of distributed resources. Security is, as always, a never-ending challenge. Quite a few small tuning opportunities remain: further reductions of boot-time; use of panning or scaling on the projectors to match the potential 1900 x1200 resolution afforded by the workstation monitors; acceleration or replacement of VNC with NX or other technologies; integration of VoIP functions; innovations in collaborative processes; and automation of outbound VPN to peer sites are a few of the projects we might tackle.

Appropriate "commoditization" of computing environments and thoughtful reliance on open-source products both act to make it easier for scientists and engineers to calculate the results they're after in ways that others can reproduce and monitor. At UC Merced and elsewhere, we're starting to see such payoffs: scientists who think of it as natural to share and publish not just their theories, commentaries, or data, but also the computing processes and displays that yield those results.

Portable Webcast Unit → Portable Collaboratory

In response to the need for a portable audio/video webcast and media production unit, CITRIS@Berkeley has developed a unit for use in webcasting the weekly CITRIS research symposia, and that can also be used to develop distant collaboratory locations. The School of Engineering at UC Merced has acquired one of these units, and is in the process of converting it to an open source unit as and extension to collaboratory functionality.

The advantages of this unit are that it:

  1. Can be up and running in matter of minutes rather than hours or permanently
  2. Has a self contained and completely wireless sound system with the built in audio mixer and amplifier
  3. Includes video switcher and scan converter to generate overlaying video images by combining images from multiple video sources
  4. Is capable of capturing SVGA output images from any type of computers (it is not limited by OS or computer brand) to record and live web-cast the lectures and events over the Internet
  5. Requires only minimal knowledge of audio visual and web-casting will be able to operate.

The fully self-contained and conveniently portable (it is essentially a large suitcase on casters) contains the following components:

  • Six TABLETOP wireless microphones
  • Two HANDHELD TRANSMITTERS microphones
  • Audio mixer and amplifier
  • Monitoring headphones
  • Portable mixer and video rack
  • Portable speakers and speaker stands
  • Mini DV camcorder
  • Video switcher
  • Scan converter
  • DVD Recorder
  • Pentium 4 computer with VGA and video capturing devices
  • Operating system Windows XP professional running Windows media encoder
  • Wireless and wired network interface

The system can be used to web-cast and archive the ongoing classes and seminars in DVD format and streaming media format. The archived media is available on portable MP4 players, laptop computers or viewed online. The system can also be used as a portable sound system and audio recorder for all other events and seminars.

Using a 6 channel audio wireless system and audio mixer/amplifier the captured audio is captured, mixed, and sent to the encoding compute. Using a VGA distribution amplifier the output VGA signal from the presentation laptop/computer is send to the VGA input on the video switcher. Using a small motorized Canon camera the capture video images from the speaker and audience are captured and send to the same video switcher. The video images are mixed in video switcher to generate a picture in picture image of the two video inputs (VGA and Svideo inputs), and the combined video image in form of VGA signal (to keep the video signal quality high) is than sent to a VGA frame grabber.

The captured audio and VGA signals are received and processed by the encoding computer using a VGA frame grabber and the built in sound card and send to the streaming media server. At the same time the encoder machine saves an archived copy of the encoded contents on it local or network storage. The encoded video and audio is being transmitted to a streaming media serve,r which is capable of webcasting the same signal to a large number of client computers over the internet.

The system has been used to capture lectures and seminars, and will be used very soon to broadcast governmental hearings and committee meetings, hosted by the School of Engineering at UC Merced.