Creating good course material takes time! Escpecially non-programming and programming problems that align closely with learning outcome.
History: Erik adopted the operating systems course (one big messy zip archive) in 2009.
We have a course with five "things":
- Slides and notes created with LaTeX Beamer
- code examples, demos
- videos
- web pages, etc
- Review questions in one LaTeX document
- Non-programming problems in one LaTeX document
- Programming problems in one LaTeX document
- Lab exercises in one LaTeX document
The "protocol"
- Topics are organized as folders with foldernames
XX-keyword/
whereXX
is a sequence number01
,02
, ...
(keyword
is mapped to full names inbuildbook.conf
) - The LaTeX Beamer file is in
XX-keyword/tex/keyword.tex
, notes are placed in\begin{graybox}...\end{graybox}
Review questions in
00-REVIEW/review-qa.tex
Non-programmering problems in
00-PROBLEMS/problems-qa.tex
Programming problems in
00-PROG/prog-qa.tex
- Lab exercises in
00-LAB/lab-qa.tex
Entries in in these files follow same format, e.g.%%%%%io19:ErikH:-1:5:REP,X14HiG,X15HiOAHiG,KX17NTNU
\item Beskriv kort RAID nivå 0, 1 og 5.
\textbf{0 er striping, 1 er speiling, 5 er striping med spredt paritet i
tillegg som gir en disk redundans.}
%%%%%
where the header line indicates id, author, level, weight, REP=part of hand-out, the rest are exam codes
The "tool" buildbook.py
(a horrible Perl-script by ErikH, rewritten into nice Python by EigilO)
foreach topic
parse XX-keyword/tex/keyword.tex