In addition to our redesigned front page, we are also creating a searchable calendar to make it easier to get information about upcoming classes and events. The calendar isn’t linked on our web site yet because I’m still hammering out a few things, but you can get a sneak preview. Let me know what you think (or if you have any problems with the calendar display).
After poking around the web and researching various options, I settled on using the open source PHP iCalendar. Overall, my experience has been quite positive: the amount of time it has taken to configure and customize the scripts for the calendar pales in comparison to the time it would take to set things up from scratch. I learned a thing or two (or three) about PHP scripts, so that’s good.
However, my work on the calendar has included some “learning experiences.” The documentation for PHP iCalendar is very basic and sometimes inaccurate. For example, the documentation stated that if I placed several folders of files on our web server and set permissions on those folders, I should be able to see a sample calendar. Not so. After about 30 minutes of digging around forums and researching through Google, I discovered the release I was using had a setting in the configuration file that would prevent the calendar from being displayed. Once that was fixed, I was able to see the sample calendar.
Customizing has been mostly by trial and error. Online forums for PHP iCalendar have information about some customizations, and the configuration file contains some helpful comments, but they do not take the place of solid docs.
I don’t want to go on and on about the documentation, though: if you’re going to use open source software, you really can’t complain about the documentation and support (or lack thereof) that you didn’t pay for. (But wouldn’t you know it: a few forum posts were a tad huffy. Yeah, that’s an excellent way to get support from volunteers.)
Creating the calendar and integrating it with our web site’s design hasn’t really had a lot of impact on other things here; the calendar is isolated from the other work we’re doing. However, working with the calendar shows once again how important it is to thoroughly research, plan, and test any open source solution that would have a large impact on a company’s workflow (DITA, anyone?). “Free” could be very costly without careful planning.