LaTeX Classes or Styles for Schedules and/or Calendars?
I use termcal for planning lessons and creating syllabi. I usually start by creating a blank calendar for one semester for just specific days of the week, with holidays marked etc. When I finish the plan, I fill in topics, quizzes and exams, homework info and other details for individual days.
A great advantage is that when I teach the same class again, usually I just need to change the starting day and the holidays, and can keep everything else pretty much unchanged.
This is my typical schedule (parts omitted to make it shorter):
\documentclass{article}
\usepackage{termcal}
% Few useful commands (our classes always meet either on Monday and Wednesday
% or on Tuesday and Thursday)
\newcommand{\MWClass}{%
\calday[Monday]{\classday} % Monday
\skipday % Tuesday (no class)
\calday[Wednesday]{\classday} % Wednesday
\skipday % Thursday (no class)
\skipday % Friday
\skipday\skipday % weekend (no class)
}
\newcommand{\TRClass}{%
\skipday % Monday (no class)
\calday[Tuesday]{\classday} % Tuesday
\skipday % Wednesday (no class)
\calday[Thursday]{\classday} % Thursday
\skipday % Friday
\skipday\skipday % weekend (no class)
}
\newcommand{\Holiday}[2]{%
\options{#1}{\noclassday}
\caltext{#1}{#2}
}
\begin{document}
\paragraph*{Tentative Schedule:}
\begin{center}
\begin{calendar}{1/11/2010}{16} % Semester starts on 1/11/2010 and last for 16
% weeks, including finals week
\setlength{\calboxdepth}{.3in}
\TRClass
% schedule
\caltexton{1}{1.1, 1.2 Review}
\caltextnext{1.3, 1.4 Review}
\caltextnext{2.1, 2.2 Linear Equations}
% ... and so on
% Holidays
\Holiday{1/18/2010}{Martin Luther King Day}
\Holiday{3/8/2010}{Spring Break}
% ... and so on
\options{4/26/2010}{\noclassday} % finals week
\options{4/27/2010}{\noclassday} % finals week
\options{4/28/2010}{\noclassday} % finals week
\options{4/29/2010}{\noclassday} % finals week
\options{4/30/2010}{\noclassday} % finals week
\caltext{4/27/2010}{\textbf{Final Exam}}
\end{calendar}
\end{center}
\end{document}
TikZ/PGF has a nice Calendar library and an example of using it to produce a course schedule.
http://www.diyplanner.com/node/6270
Requires Python to generate the calendar data for the selected year.
I wanted something to look 'modern' 'light' and 'open plan'.
Can be easily internationalized to most European languages (e.g. French, German, Spanish, etc.)