How-Tos / Advent Calendar

Each year a series of 25 articles is published rather humorously as the Catalyst Advent Calendar.


Well we're retiring the Catalyst Advent Calendar after 2011, and instead of trying to write one article on Catalyst per day in December in 2012, we (as in the community) are going to try to write one article per month on Catalyst through 2012 and beyond. This doesn't mean that Catalyst is dying - This means that Catalyst is running the show.




Previous calendars

Please note that some of the techniques in older articles may now be obsolete.


Catalyst Advent Calendar 2008


Catalyst Advent Calendar 2007


Catalyst Advent Calendar 2006


Catalyst Advent Calendar 2005

How To Contribute An Article

If you'd like to contribute an article, either get on to IRC channel #catalyst-dev on or post a message to the catalyst-dev list in November suggesting a topic and asking for feedback. Assuming the topic is accepted, ask for a Subversion login and password.

UPDATE: So far, contributions to the Advent Calendar have been made via the CatalystAdvent application. This has had several disadvantages, discussed on the mailing list. The Catalyst wiki may be a better platform for storing the Advent Calendar entries.

OLD: The site is run using the CatalystAdvent application. The code may be checked out of the Subversion repository at (Instructions on using Subversion are at

Draft articles pending approval are held in the root/<year>/pen directory. Approved articles are held below root/<year>. E.g. root/2007/1.pod holds the day 1 article for 2007. Draft articles are moved up to root/<year> once checked and approved.

Articles are written in POD format. If you're not sure about POD formatting, look at previous articles to see how to insert titles, quote code etc.


Say you have been allocated day 10 in 2008.

  • Check out the CatalystAdvent app from Subversion

    $ svn co CatalystAdvent

  • Create CatalystAdvent/root/2008/pen/10.pod - you can check how it looks with

    $ perldoc CatalystAdvent/root/2008/pen/10.pod

  • Submit the article

    $ svn commit CatalystAdvent/root/2008/pen/10.pod

  • Drop a note on IRC or by email to catalyst-dev saying it's ready for approval