diff options
-rw-r--r-- | lib.typ | 169 | ||||
-rw-r--r-- | nachprufung.typ | 40 |
2 files changed, 209 insertions, 0 deletions
@@ -0,0 +1,169 @@ +#let nachprufung( + lecture: "", // Fach + date: datetime(year: 0, month: 1, day: 1), // Prüfungsdatum + examiner: "", // PrüferIn (Prof) + assistant: "", // BeisitzerIn + did_pass: none, // Bestanden? true || false + exam_duration: duration(minutes: 0), // Prüfungsdauer + attendence: (: + /* Veranstaltung, Jahr, regelmäßig besucht? */ + "Vorlesung": (year: "", did_attend: ""), + "Übung": (year: "", did_attend: ""), + "Tutorium": (year: "", did_attend: ""), + ), + preparation_time: [ + // Wie lange und wie hast alleine bzw. mit anderen vorbereitet? + ], + agreements: [ + // Fanden vor der Prüfung Absprachen zu Form oder Inhalt statt? Wurden sie eingehalten? + ], + preparations: [ + // Welche Tips zur Vorbereitung kannst Du geben? + ], + examiner_behavior: [ + // Wie war der Prüfungsstil des Prüfers / der Prüferin? + ], + examinee_behavior: [ + // Kannst Du Ratschläge Verhalten in der Prüfung geben? + ], + doc +) = [ + #set page("a4", margin: (top: 1cm, bottom: 0cm, rest: 1.55cm)) + #set text(lang: "de", size: 10.5pt) + #page[ + #set par(justify: true, leading: .5em, spacing: 0.5em) + #set block(spacing: 0pt) + #set table(inset: (top: 2pt, bottom: 4pt, x: 8pt), stroke: .5pt) + #set grid(inset: (y: 3pt, x: 6pt)) + #set grid.vline(stroke: .5pt) + #set linebreak(justify: true) + #let checkbox(b) = if (b) {$times.square$} else {$square$} + #let input(width: 1fr, body) = box(width: width, inset: (bottom: 2pt), baseline: 2pt, stroke: (bottom: (dash: "dotted")),align(right, body)) + #show emoji.pencil: "✎" + + #grid(columns: (2cm, 15cm), align: bottom, + box(inset: (x: 3pt), image(width: 1.3cm, "fsmi-logo.svg")), + [ + #set text(size: 15pt) + #set par(spacing: 3pt) + Fragebogen der Fachschaft zu + + *mündlichen Vordiplomsprüfungen* im Informatikstudium + ]) + #grid(columns: 2*(1fr,), grid.vline(x:1), [ + Dieser Fragebogen gibt den KommilitonInnen, die nach + Dir die Prüfung ablegen wollen, einen Einblick in Ab- + lauf und Inhalt der Prüfung. Das erleichtert die Vorbe- + reitung. + + Bitte verwende zum Ausfüllen einen schwarzen Stift. + + Das erleichtert das Einscannen. + + #let pruefungsrahmen = ( + "Prüfungsdatum": if date.year() > 0 {date.display("[day].[month].[year]")}, + "PrüferIn (Prof.)": examiner, + "BeisitzerIn": assistant, + ) + #for (key,value) in pruefungsrahmen { + box(height: 2em, align(bottom)[*#key:*#input(value)]) + } + + ], + [ + #block(width: 7cm, inset: (top: 1.5em, bottom: .3cm, rest: .2cm), align(center, + [ + Barcode: #v(2pt) + #grid( + columns: (.1cm, 7.8cm, .1cm), + rows: (.1cm, 2.5cm, .1cm), + stroke: (x,y) => (: + top: if (x != 1 and y == 0) {.5pt}, + bottom: if (x != 1 and y == 2) {.5pt}, + left: if (y != 1 and x == 0) {.5pt}, + right: if (y != 1 and x == 2) {.5pt}, + )) + ])) + *Fach:* \ + #v(-2pt) + #let modules = if lecture.len() > 0 {(lecture,)} else {( + "Algo I", + "Algo II", + "Betriebssysteme", + "GdI", + "HM", + "KomDat", + "Programmierparadigmen", + "SWT I", + "Theoretische Grundlagen der Informatik", + "TI", + )} + #for module in modules.flatten() { + box(height: .5em, inset: (left: 5pt))[#checkbox(lecture.len() > 0) #module] + } + ]) + + #let events = ( + "Vorlesung": (year: "", did_attend: ""), + "Übung": (year: "", did_attend: ""), + "Tutorium": (year: "", did_attend: ""), + ..attendence + ) + #table(columns: (7.4cm,2.4cm,8.2cm), + table.header( + [Veranstaltung ],[Jahr],[regelmäßig besucht?]), + ..events.pairs().map(((location, (year, did_attend))) => + (box(height: 1.2em)[*#location*], [#year], [#did_attend]) + ).flatten() + ) + + #grid(columns: 2*(1fr,), grid.vline(x:1), inset: (y: .5cm), + [*Bestanden? #checkbox(did_pass == true) Ja / #checkbox(did_pass == false) Nein*], + box(width: 6cm)[ + *Prüfungsdauer: #input[ + #if (exam_duration.minutes() > 0) {exam_duration.minutes()} + ] + Minuten* + ]) + #grid(columns: 2*(1fr,), rows: (3.5cm,2.8cm,7.3cm), grid.vline(x:1), + [ + #emoji.pencil Wie lange und wie hast Du Dich \ + #underline[alleine bzw. mit anderen vorbereitet]? + #preparation_time + ], + grid.cell(rowspan: 2)[ + #emoji.pencil Welche #underline[Tips zur Vorbereitung] kannst Du geben? \ + #text(size: 8.5pt)[(Wichtige / Unwichtige Teile des Stoffes, gute Bücher / Skripten, Lernstil)] + #preparations + ], + [ + #emoji.pencil Fanden vor der Prüfung #underline[Absprachen] zu Form oder + Inhalt statt? Wurden sie #underline[eingehalten]? + #agreements + ], + [ + #emoji.pencil Kannst Du Ratschläge für das \ #underline[Verhalten in der Prüfung] geben? + #examinee_behavior + ], + [ + #emoji.pencil Wie war der #underline[Prüfungsstil des Prüfers / der Prüferin?] \ + #text(size: 8.5pt)[(Prüfungsathmosphäre, (un)klare Fragestellungen, Fragen nach \ + Einzelheiten oder eher größeren Zusammenhängen, kamen häufiger Zwischenfragen + oder ließ er/sie Dich erzählen, wurde Dir weitergeholfen, wurde in Wissenslücken + gebohrt?)] + #examiner_behavior + ]) + #line(length: 100%, stroke: .5pt) + #v(2pt) + #text(size: 13pt)[*Inhalte der Prüfung:*] $-->$ Bitte auf die Rückseite und weitere Blätter! + #v(1.2em) + + #set list(spacing: 1.2em, indent: 1.5em) + - Schreibe bitte möglichst viele Fragen und Antworten auf. + - Wo wurde nach Herleitungen oder Beweisen gefragt oder sonstwie nachgehakt? + - Worauf wollte der Prüfer / die Prüferin hinaus? + - Welche Fragen gehörten nicht zum eigentlichen Stoff? + ] + #doc +] + diff --git a/nachprufung.typ b/nachprufung.typ new file mode 100644 index 0000000..eb4bd66 --- /dev/null +++ b/nachprufung.typ @@ -0,0 +1,40 @@ +#import "lib.typ": nachprufung + +#show: nachprufung.with( + lecture: "", // Fach + date: datetime(year: 0, month: 1, day: 1), // Prüfungsdatum + examiner: "", // PrüferIn (Prof) + assistant: "", // BeisitzerIn + did_pass: none, // Bestanden? true || false + exam_duration: duration(minutes: 0), // Prüfungsdauer + attendence: (: + /* Veranstaltung, Jahr, regelmäßig besucht? */ + "Vorlesung": (year: "", did_attend: ""), + "Übung": (year: "", did_attend: ""), + "Tutorium": (year: "", did_attend: ""), + ), + preparation_time: [ + // Wie lange und wie hast alleine bzw. mit anderen vorbereitet? + // Hier ist Platz für deinen Kommentar + ], + agreements: [ + // Fanden vor der Prüfung Absprachen zu Form oder Inhalt statt? Wurden sie eingehalten? + // Hier ist Platz für deinen Kommentar + ], + preparations: [ + // Welche Tips zur Vorbereitung kannst Du geben? + // Hier ist Platz für deinen Kommentar + ], + examiner_behavior: [ + // Wie war der Prüfungsstil des Prüfers / der Prüferin? + // Hier ist Platz für deinen Kommentar + ], + examinee_behavior: [ + // Kannst Du Ratschläge Verhalten in der Prüfung geben? + // Hier ist Platz für deinen Kommentar + ], +) + +// Schreibe bitte möglichst viele Fragen und Antworten auf. +// Hier ist Platz für deinen Kommentar + |