Contact
%%wpcontactform%%
%%wpcontactform%%
As Bren and I are getting married this year (2008), I found it only appropriate to create a web site for our wedding. I am a geek, after all. I started to develop the site with Rails 2.0 (the latest and greatest as of this writing), but then realized that my web host hadn’t upgraded yet. So, the site was developed with Rails 1.2.3. There’s nothing amazing about it… there are a handful of static pages and a few pages with forms (like the guestbook page). My favorite part is the Trivia page, which displays trivia questions about the bride and groom. After taking the quiz, you get to see your score and all of the correct answers. Also, you have the option of saving your score to be displayed on the web site. Behind the scenes, I’ve developed and Admin site to create and modify quizzes, and to view detailed results of taken quizzes. The quiz database structure is something like: Quiz -> Question -> Choice, Tester -> Quiz -> Question -> Answer
At my place of work, we recently moved from Novell Groupwise to Microsoft Outlook for email. I had written a small Ruby script to export my calendar from Groupwise to a standard ICS file for use by other calendars. Needless to say, with the advent of Outlook I had to re-write this program. This time, since it’s a MS product with a well documented API, I decided to do the code in C#. It simply parses through calendar items for a specified date range, exports the data to a calendar file (ICS), and then FTPs the file to my server for sharing. Here’s the meat of the source…
static void Main(string[] args)
{
string path = “C:\\outlook2ics\\wcal.ics”;
DateTime startDate = DateTime.Now.AddDays(-7);
Console.WriteLine(”Opening calendar file…”);
TextWriter tw = new StreamWriter(path);
tw.Write(”BEGIN:VCALENDAR\nPRODID:-//cleverswine/wcal//NONSGML v1.0//EN\nVERSION:2.0″);
// create Outlook instance and Log On using already logged on credentials
Console.WriteLine(”Logging in to Outlook…”);
Outlook._Application appOutlook = new Outlook.Application();
Outlook.NameSpace olNS = appOutlook.GetNamespace(”MAPI”);
olNS.Logon(”", null, null, null);
// get the calendar folder and filter it
Console.WriteLine(”Getting calendar items…”);
Outlook.MAPIFolder fldr = olNS.GetDefaultFolder(Outlook.OlDefaultFolders.olFolderCalendar);
string sFilter = “[Start] > ‘” + startDate.ToString(”MM/dd/yyyy”) + “‘”;
Outlook.Items oRestrictedItems = fldr.Items.Restrict(sFilter);
foreach (Outlook.AppointmentItem item in oRestrictedItems)
{
Console.WriteLine(”Exporting: ” + item.Subject);
tw.Write(getICSline(item));
}
tw.Write(”\nEND:VCALENDAR”);
Console.WriteLine(”Closing calendar file.”);
tw.Close();
Console.WriteLine(”Logging off of Outlook.”);
olNS.Logoff();
Console.WriteLine(”Spawning FTP job…”);
doFtp(path);
Console.WriteLine(”Done!!!!!”);
}
This web-based calendar simply reads an ical (ics) file and displays it in a web page. In my case, the ics file is generated from my work calendar by this program. The backend is Ruby on Rails, and the UI is created with ExtJs.

I needed to export my work calendar to a format that can be read by the calendar application on my PDA (kopi). Fortunately, Novell provides an API, the Novell Groupwise Object API, to interact with items in Groupwise via code. I’m using the Ruby iCalendar library to create an iCalendar file that can be imported into kopi on my PDA. This is accomplished by FTPing the file (from the Ruby code) to my server, where the PDA can get it and import it.
This is an application to create covers for all of the DVDs that I have “backed up”. You type in a search term and the app queries Amazon.com for a list of matching movies. You then select a movie and add it to the library, or just print it. The print function generates specially formatted PDF files. It was written with Ruby, using GTK for the user interface, and the Amazon API. Unfortunately, I may have lost the source code, but here is a screenshot:

I’m working on a new project for my PDA. The application will allow for configuring the Matchbox Desktop (which is the user interface for my PDA). Without this application, users of Matchbox (on a PDA anyway) must edit a series of configuration files in order to create folders and move programs from folder to folder. My program allows for adding/editing/deleting applications and folders. It’s written in Python 2.4 using the GTK library for UI. Here’s a screenshot of my alpha version:
I’ve been hacking away at my Sharp Zaurus for a couple of years now. It has brought me great pleasure, but I’m in need of a new toy. Anyone’s input is appreciated. At the moment, my options are:
iPhone:
Pros: It looks nice and does lots of cool stuff (I assume). There will be a large software repository due to it’s popularity.
Cons: It’s Apple. I don’t want a machine so tightly coupled with a corporation.
OpenMoko:
Pros: It runs a completely open source version of Linux, therefore it’s hackable.
Cons: It’s hackable and I’ll break it.
HTC Shift:
Pros: Powerful enough to run Windows Vista (which I happen to like). It’s small enough to tote.
Cons: It’s a lot like what I already have, and I paid $400 for what I have.
iPhone![]() |
OpenMoko![]() |
HTC Shift![]() |
This is a Ruby on Rails application for tracking Weight Watcher points on a daily basis. It can handle multiple users. Features include: weekly point summary, graphs, easy access to previous food entries. The front end is designed with ExtJS.
Powered by WordPress | Aeros Theme | TheBuckmaker.com WordPress Themes