Tuesday, March 7, 2006

Trials and Tribulations of Software

Ryan posted a thorough post yesterday about the fantastic new iCalendar standard that is quickly gaining steam, and also about its remaining deficiencies. As with any software (unfortunately and to my chagrin) I discovered a few more deficiencies while I was playing with it a bit.

The first should have been obvious to me, being a Linux guy who has worked with servers for years, but Ryan was the one who figured it out. When I tried to download Ryan's sample .ics file, it just showed up as text in the browser -- pasted here for your learning pleasure:
BEGIN:VCALENDAR
X-WR-TIMEZONE;VALUE=TEXT:US/Pacific
METHOD:PUBLISH
PRODID:-//Thoughts Abound\, Inc//iCal 1.0//EN
X-WR-CALNAME;VALUE=TEXT:Example
VERSION:2.0
BEGIN:VEVENT
SEQUENCE:5
DTSTART:20060307T200000
DTSTAMP:20060307T011706Z
SUMMARY:Read Thoughts Abound
UID:EC9439B1-FF65-11D6-9973-003065F99D04
DTEND:20060307T210000
BEGIN:VALARM
TRIGGER:-P1D
ACTION:DISPLAY
DESCRIPTION:Event reminder
END:VALARM
END:VEVENT
END:VCALENDAR
This is because our lovable Apache server did not yet have the proper mime type of text/calendar associated with .ics files. Changed that, and everything behaves correctly...or differently as it turns out.

I expected after making that change to now see the Firefox save-or-open dialog defaulting to Outlook, just as Ryan posted. However, I was surprised to see this instead:


Oh yeah, I have a beta of the Mozilla Calendar extension for Firefox installed. This is the same code they use for the standalone Sunbird client they are writing, it is just packaged as an extension to Firefox or Thunderbird. Sweet, another test case!

It's a good thing Calendar is still in beta, because this one is horribly lacking in the integration department. It defaults to creating an entirely new calendar for me, which is probably not what I want. However, it also does not allow you to add it to an existing calendar. Not only is there no drop down list of existing calendars to select from, but if you do manage to type the name of your calendar exactly, it creates a new one with an identical name. Bad, all bad -- get to work on this Mozilla guys. Here is a screenshot after it was added (click on it if it is too small to read):

Okay, so I disable the calendar extension and figure surely now I will have it go to Outlook. Sure enough, I get the open with Outlook dialog as posted by Ryan. Now, there is no way it can fail, right? Wrong. Ready for another screenshot?


I use the excellent freeware program IrfanView for viewing graphics files. The reason it is even trying to open this file and generating this error message, is because it has a file association for .ics files (hmmm, seems like we are in a roundabout way back to the MIME type issue). For all but the one person in the world who knew what a .ICS graphics file is, here is the association list from IrfanView:


Image Cytometry Standard Format. Rolls off the tongue nicely, doesn't it? Okay, so I uncheck that box, and now when I click on the file, everything works as expected and promised.

Wow, we have just seen a demonstration of how software is still not ready for prime time. Better stated, there is a gaping hole where integration is lacking in software, and that is where I think great strides (and possibly money) can still be made by developers. I shouldn't have to be a Software Engineer to figure out how to make this stuff work, but I do when stuff like this happens. That's alright, it just provides motivation to me to make my products that much better.

Now the preaching is over...

No comments: