Red Hat Headquarters (map)
RiCal: A Rubyist's Guide to Dating
RiCal is a new, well newish now, Ruby gem which facilitates producing and dealing with icalendar data.
The icalendar format, specified by RFC 2445, is a typical committee designed horse. It allows great flexibility and power to convey calendar related information including recurring events and time zone definitions. It has become the lingua franca for exchanging data between calendar applications and servers.
Although there were already at least two existing icalendar gems, ICalendar and VPim, neither fully supports the semantics of icalendar.
There are also Ruby libraries to describing recurring events, most are based on Martin Fowler's temporal expressions pattern, which is clean and elegant. Jim Weirich's texp gem is probably the best known of these.
Several Rubyists have attempted to combine texp with an icalendar gem in order to handle icalendar recurring events, however cleanliness and elegance often loses in a match with a committee-designed horse.
RiCal is a fresh start, which took a test-driven approach to the RFC 2445 spec.
The talk will survey icalendar, recurring events, time zones, and temporal expressions, and describe RiCal and some of the lessons learned so far as the code encountered 'horses' in the wild. We should learn some things not just about calendars, but some interesting things about implementation.
Bio:
Rick DeNatale, is a long-time programmer, primarily using and implementing dynamically typed object-oriented languages. He was once a Smalltalk wizard at IBM, and has been striving all his life to attain the status of polymath.
He has been described by Alan Kay as "the least IBM-like IBMer" he ever met, and by Kent Beck as "a serious developer, someone who cares deeply about technology and learns it thoroughly. He is also the funniest programmer I know. Do *not* sit next to him while listening to a presentation, unless you want to stumble out with tears streaming down your face.”
He blogs about Ruby and related topics at http://talklikeaduck.... and twitters as @RickDeNatale. You can find out more at http://www.linkedin.c...
Log in to Meetup with your Facebook account.