I love to program in Perl. It is so effective for system administration tasks, but we all know that. Several weeks ago, I resurrected a project I did when I was a graduate student. Back in 2003, a course called “Perl Programming Practicum” was offered at Tufts by Professor Alva Couch, and the first assignment was to write a program to report system resource usage by user. It is similar to the ps command. Snapshots are sorted by greatest CPU-time use, and then by greatest memory use. You can use this tool to yell at the biggest CPU hogger. I made a number of changes to it, including logging the information on processes and its dependencies to a database (yes, on large systems, the database might get really big really fast). That way, I can create an interface to run system usage reports on the web.
I recently released the source and my changes to the new Google Code Project Hosting site. The program is called syshogs (originally named “pigs”). I wanted to see the differences between hosting a project though Google and SourceForge. The obvious difference I noticed with Google was no review process to host my project. Unlike SourceForge, you have to wait at least 24 hours before your project becomes official. You cannot register a project name in Google that is already registered in SourceForge. The one thing that I am still adjusting to is Subversion. I have experienced some kinks with checking-out and committing with https:// (remember if you are a developer, you better use https:// for both). With regards to the project page, it is very lite in Google: project home, issues, source, and administer –no frills. Project pages in SourceForge can be very heavy: lengthy message board and project details, and administration functions are hard to find. Finally, I can now see the source code directly in the project’s Subversion repository. All in all, Google’s Code Project Hosting is good, especially for hosting small projects.