My goals this semester were to get a bit more familiar with linux, especially the internals, and take up an open source project that would require some programming on my part.
I started this semester working on a java web application with a few other COSI members. This web app would allow COSI members to log in with their personal account and set reminders, read reminders, and log their weekly progress reports. This project was discontinued when Jeanna Matthews discovered the OSDL (Open Source Development Lab) competition. At this point I joined another team working on a Xen based project for the competition. As a team we also did a presentation of the Xen software. It was at about this time that a book I had requested arrived. The book was Linux Clusters, a beginner's book to cluster computing. The deal with O'Reilly is that COSI receives a free copy of a book if someone does a review of it for them. Also, I started the semester using Gentoo on my only machine and ended up switching to Ubuntu. This switch was healthy, it's good to be exposed to multiple ways of doing things (which shows up in different distributions of course).
Members: Jeremy Bongio, Mike McCabe, Ed Despard, Justin Basinger
Xen is a virtualization technology that allows multiple instances of operating systems running on the same machine at once. This is useful for many purposes, but we are submitting it to the OSDL competition as a way of eliminating downtime for servers.
There are three aspects to the project: a debian distribution centered around Xen, a GUI that simplifies the http interface to Xen, and benchmarks proving Xen's worth. Ed Despard is working on the distribution, Mike McCabe is serving as the project leader as well as working on some coding and all of the banchmarking, and I am responsible for the GUI.
The Xen GUI is being written with Glade, Python, and PyGTK. Python is a high level language incredibly easy and quick to learn and supported on most operating systems. PyGTK is python's library for building GTK interfaces. Glade is used for creating front-ends in GTK very quickly. The GTK from glade is saved in an xml file. Then this information is parsed into GTK objects to be used in the pyGTK file. The code for this GUI is not yet available.
The documentation for this whole project should be available very soon, but in the mean time some documentation from the presentation on installing Xen is available