All-day untimed events in RFC 2445 iCalendar

Timely‘s WordPress Calendar plugin doesn’t interoperate well with RFC 2445 iCalendar feeds that contain all-day untimed events specified by both DTSTART and a DURATION:P1D. Instead of interpreting them as a one-day all-day event, it seems to interpret them as a two-day event.

I examined a half-dozen calendar apps to see how they generate these kinds of events and here’s what I found:

Apple Calendar.app (Mac OS X 10.9.2)

BEGIN:VEVENT
DTSTART;VALUE=DATE:20140312
DTEND;VALUE=DATE:20140313
SUMMARY:New Event
END:VEVENT

Google Calendar

BEGIN:VEVENT
DTSTART;VALUE=DATE:20140312
DTEND;VALUE=DATE:20140313
SUMMARY:Untitled event
END:VEVENT

Microsoft Outlook Mac 2011 (version 14.3.9)

BEGIN:VEVENT
DTSTART;TZID="Coordinated Universal Time":20140312T000000
DTEND;TZID="Coordinated Universal Time":20140313T000000
SUMMARY:New Appointment
END:VEVENT

Windows Live Calendar (Outlook.com)

BEGIN:VEVENT
DTSTART;VALUE=DATE:20140312
DTEND;VALUE=DATE:20140313
SUMMARY:Example
END:VEVENT

Yahoo! Calendar

BEGIN:VEVENT
SUMMARY:Example
DTSTART;VALUE=DATE:20140312
DTEND;VALUE=DATE:20140312
END:VEVENT

Hebcal.com

BEGIN:VEVENT
SUMMARY:Purim
DTSTART;VALUE=DATE:20140316
DURATION:P1D
END:VEVENT

AddThisEvent.com

BEGIN:VEVENT
DTSTART:20140312
DTEND:20140313
SUMMARY:Example
END:VEVENT

Since the overwhelming majority seem to use both DTSTART + DTEND, I may change Hebcal’s feeds to follow suit. I’ll need to do some interop testing with older versions of Microsoft Outlook for Windows first.

Farewell, htdig

htdig has been retired from radwin.org.

Screen Shot 2013-08-11 at 9.07.05 PM

Many years ago I set up a site search on radwin.org using a tool called ht://Dig. It was a C/C++ app that would spider/crawl a website and also serve out search results in an HTML-friendly fashion through a CGI.

The rest of the world moved onto Lucene/Solr, but I never bothered to make the move – in large part because htdig was good enough, and in part because DreamHost doesn’t  support Tomcat/J2EE in their shared hosting environment (I don’t blame them).

The last time I successfully compiled htdig was on October 31, 2005. DreamHost has upgraded hardware several times, and the old 32-bit binaries have continued to run. Recently they did another server migration/upgrade, and finally everything broke. I tried recompiling both the stable 3.1.6 (released February 2002) and the most recent release (3.2.0b6, released June 2004) but neither compiles cleanly with gcc 4.4.

And it’s not worth fixing.

 

gzip encoding (mod_deflate) on DreamHost

It took me all of 10 minutes, and I just sped up Hebcal.com by enabling Apache mod_deflate on DreamHost.

I used the Google PageSpeed Insights tool to measure the performance of Hebcal, and it complained that we weren’t gzip-compressing HTML, CSS, or JavaScript.

Turns out this is not enabled on DreamHost sites by default. What a surprise!

So here’s what I ended up adding to the .htaccess file:

<IfModule mod_deflate.c>
 AddOutputFilterByType DEFLATE text/html text/css text/javascript
</IfModule>

That’s it!

UTF-8.com redesign

I’ve been maintaining a collection of UTF-8 resources at utf-8.com for the past 13 years. I registered the domain name back in 1999 when I began working on internationalization and character sets.

After years of looking like I hand-coded the page in Emacs html-mode (which I did), I finally decided to move to a more modern look based on the Bootstrap CSS toolkit.

Annual tech refresh: move to WordPress

radwin.org got compromised recently due to some sort of server-side vulnerability. Was it a MovableType bug? Some stale version of phpBB or a vulnerability in the ancient copy of PHP4 itself? Who the heck knows. I did a slash and burn and removed all stale PHP/CGI stuff and upgraded to PHP5. Looks like I got rid of it.

As a side effect, I’m saying goodbye to MovableType and taking the leap to WordPress. Maybe that way that blog I actively authored from 2002-2006 will actually avoid bit-rotting. Certainly this version looks a helluva lot better on lots of different devices, thanks to the whole “responsive” web design movement.

There’s going to be a bunch of broken links. Oh well. It’s a good thing that we’ve got search technology for anyone who really cares to find some ancient content I wrote.

Full-sized Flickr image download and RSS tools

Came across a couple of good tools today that replace the cool Photocastr app to give you batch/bulk access to your Flickr images in various sizes/resolutions:

Flickr Feed Image Re-sizer from Yahoo! Pipes. I’m using this to subscribe feeds in iPhoto and also for a Mac OS X screensaver. Default RSS feeds from Flickr only come in a Small size, which isn’t good enough for anything. Some simple regexes (hosted by Y! Pipies) can easily convert from small to Medium, Large, or Original size. Nice. This tool is free.

Bulkr, an Adobe AIR app that lets you download in bulk/batch your Flickr images. I plan to use this to fill up an SDHC card and still into the digital picture frame I recently purchased. There’s a free version and a $29.95 Bulkr PRO version with more features.

Blogging again? Software update.

David Jeske has inspired me to upgrade MovableType on radwin.org to a more modern version. Pretty seamless upgrade so far to MT 4.12 personal, but good golly, that’s a way different UI than I’m used to.

[Update: Damn, I need some anti-spam comment plugins. Now that I'm back on a more modern version of MT, the spammers are back.]