As a firefighter, I've tried many different ways to get organized. I've had the nice printed shift calendars that all my co-workers seem to use. They have a lot of nice features: they're color coded, they tell me all the holidays, the let me write things down on dates that I need to. They also have little pages with information that I never use, and it just does NOT fit in my pocket. So I've evolved to using Google's calendar (free with my gmail account). It allows me to have multiple calendars (Mine, one for my wife, one for my kids' schedules, one for my work shifts, etc). Now the really cool thing is that my wife and I share each other's calendars, so when I add that doctors appointment or extra shift day to my calendar, it shows up on her phone immediately.
The real trick to using this calendar system for a firefighter is the scheduling. I'm one of those 24 on 48 off creatures of the Midwest, so I was able to set my shift up and set it as a repeating event every 3 days. I also set up the other 2 shifts on two separate other calendars in the same fashion. (I only used 3 separate calendars because when I started you could only color code calendars, not appointments) So a few clicks and my 24/48 schedule was instantly plotted out to eternity. Done right? Not so fast I had to figure out how to work my kelly days (work reduction days) into the system. Google only allows you to repeat a daily event every 1-30 days. I kelly every 17th shift which is actually every 51 days. This was not an option in google for a repeating event. So I started entering them in manually..... until I found the tool. I downloaded Mozilla's Thunderbird email client (free) and then searched the extension / add-ons and found there are several plug-ins to directly edit a google calendar. I simply followed the instructions to access my calendar, and then I was able to edit my first kelly day event and set repeating to 51 days. It communicated directly with Google and my kelly days were plotted out to eternity too. If I edit the event in Google it actually shows a repeat every 51 days, but it could not be set that way from Google's interface.
Hope this helps some of you fellow firefighters.