Fragen zur Kursanmeldung
Die Anmeldung erfolgt über heiCO. Sollten Sie noch keinen Uni-Zugang haben, holen Sie bitte die Anmeldung schnellstmöglich nach und kommen einfach zur ersten Vorlesungsstunde vorbei. Bei Problemen wenden Sie sich bitte an das ICL-Sekretariat. Es gibt eine Anmeldemöglichkeit für 3 ECTS (z. B. Übergreifende Kompetenzen) und eine Anmeldemöglichkeit für 6 ECTS (für Computerlinguistik-Studierende inkl. Prüfung).
Ja. Dieser Kurs ist allerdings für Bachelor-Studierende konzipiert. Eine Teilnahme ist möglich, aber ohne Anspruch auf Abgabe bzw. Korrektur von Übungsblättern, Teilnahme an Klausuren und Projekten, Zugriff auf technische Ressourcen des Instituts sowie Erhalt einer Leistungsbescheinigung (auch keine ÜK-Punkte). Sie haben Gasthörerstatus.
Sie dürfen teilnehmen. Allerdings beschränkt sich die Prüfungsleistung dadurch auf 3 ECTS, die Sie sich im Rahmen der Übergreifenden Kompetenzen anrechnen lassen können. Sie dürfen nicht an der Abschlussprüfung teilnehmen. Sie erhalten einen Leistungsnachweis, wenn Sie erfolgreich die wöchentlichen Übungsaufgaben gemeistert haben. Klären Sie vorher mit der Studienberatung Ihres Fachs, ob der Leistungsnachweis angerechnet wird — die Anrechnung obliegt Ihrem Institut.
Der Kurs wird über Moodle verwaltet — dort finden sich Lehrinhalte und relevante Informationen. Sie benötigen also einen Uni-Account. Digitale Inhalte bleiben bis Semesterende erhalten; Übungsblätter schicken wir auf Anfrage per E-Mail.
Sie benötigen keine Programmierkenntnisse im Voraus! Jedoch sind Grundkenntnisse für UNIX-Systeme angebracht. Dafür bietet die Gruppe Technik des Instituts für Computerlinguistik eine Einführung an, die unter dem Namen "Pooleinführung und Pooltest" (inklusive eines kleinen Tests) läuft. Wer im Studiengang Computerlinguistik eingeschrieben ist, sollte unbedingt den Pooltest machen. Für die ÜK-ler (3 ECTS, fachfremd) gilt, dass Sie zumindest grundlegende Linux-Befehle nachvollziehen können. Die Vorlesung geht davon aus, dass Sie unter Linux und nicht unter Windows arbeiten. Sie können selbstverständlich auch Windows weiterhin nutzen. Die Transferleistung, die jeweiligen Kommandos und Pfade zu übersetzen, liegt dann bei Ihnen. Hilfe bekommen Sie im Moodle-Forum, bei Mitstudierenden, der Gruppe Technik, bei ChatGPT, über Suchmaschinen oder im Tutorium.
Den Zugangsschlüssel bekommen Sie in der ersten Vorlesungsstunde. Sollten Sie nicht anwesend sein können, schreiben Sie uns bitte am ersten Vorlesungstag eine E-Mail an prog1@cl.uni-heidelberg.de.
Fragen zur Vorlesung
Der Kurs umfasst 4 SWS (zwei Einheiten pro Montag mit Essenspause). Eine formale Teilnahmepflicht besteht nicht, aber der Besuch beider Einheiten jede Woche wird dringend empfohlen. Sporadische oder teilweise Teilnahme führt erfahrungsgemäß zu erheblichen Schwierigkeiten in der Abschlussprüfung.
Das Kursmaterial findet sich im E-Learning-Portal (Moodle) und/oder auf der Kursseite.
Die Vorlesung wird auf Deutsch gehalten, die Folien sind ebenfalls auf Deutsch. Code, Variablennamen und Kommentare in Abgaben sollen auf Englisch verfasst sein — viele weiterführende Ressourcen (z. B. die Python-Dokumentation) sind ebenfalls auf Englisch. Übersetzungshilfen bieten z. B. DeepL oder Google Translate.
Es ist eine Veranstaltung mit vier Semesterwochenstunden (4 SWS). Daher ist der zweite Termin nicht nur eine Wiederholung, sondern eine Fortsetzung. Planen Sie für diesen Kurs also einen erhöhten Aufwand ein im Vergleich zu Kursen mit weniger SWS.
Konstruktive Kritik ist willkommen — damit helfen Sie auch zukünftigen Semestern. Schreiben Sie direkt an den Dozenten (rehl@cl.uni-heidelberg.de) oder an das Prog1-Team (prog1@cl.uni-heidelberg.de). Für anonymes Feedback stehen die Fachschaft (fs-coli@cl.uni-heidelberg.de) und die Semesterevaluation der Universität zur Verfügung.
Fragen zu den Tutorien
Ein Tutorium ist ein Hilfsangebot zum Kurs. Ein solches wird häufig für grundlegende Kurse angeboten und ist i. d. R. freiwillig und wird von Studierenden, meist Höhersemestrigen der gleichen Fachrichtung, abgehalten. Das Tutorium bietet eine Möglichkeit, den Stoff der Vorlesung nachzubehandeln und/oder die wöchentlichen Übungsaufgaben zu besprechen. Fragen lassen sich im Dialog oft besser klären als über asynchrone Kommunikationsformen. Ein Besuch wird besonders empfohlen, wenn Schwierigkeiten bestehen, dem Stoff zu folgen oder die Aufgaben zu meistern.
Nein, die Tutoriumstermine sind freiwillig. Ein Besuch wird aber dringend empfohlen, vor allem bei technischen, praktischen oder inhaltlichen Schwierigkeiten. Im Tutorium können Fragen direkt gestellt und beantwortet werden.
Ein Tutorium ist nicht als Vorlesung konzipiert, sondern als aktiver Austausch. Wir bitten die Teilnehmer:innen daher, sich zu beteiligen — ob ein Tutorium gewinnbringend verläuft, liegt nicht nur an den Tutor:innen, sondern an allen!
Bitte versuchen Sie zunächst, das Anliegen direkt im Gespräch mit den Tutor:innen zu klären. Falls das nicht hilft, kann der Dozent kontaktiert werden (rehl@cl.uni-heidelberg.de). Weitere Anlaufstellen sind die Fachschaft Computerlinguistik (fs-coli@cl.uni-heidelberg.de) und die Semesterevaluation.
Fragen zu den Übungsaufgaben
Nein. Die wöchentlich gestellten Übungsaufgaben müssen immer bis zu den genannten Abgabefristen gemacht und abgegeben werden. Falls eine Übungsaufgabe freiwillig ist, wird dies extra im Dokument erwähnt. Finden Sie keine solche Angabe, ist die Abgabe verpflichtend. Dabei spielt es keine Rolle, ob und wie viele Punkte vergeben werden. (Auch Aufgaben mit 0 Punkten sind verpflichtend, wenn nicht anders angegeben.)
Programmieren erlernt man durch Anwendung, nicht durch Zuschauen. In den Übungsaufgaben soll gezeigt werden, dass Herausforderungen mit den erworbenen Kenntnissen gemeistert werden können. Sie dienen dazu, das Wissen zu festigen und praktisch umsetzen zu können.
Nein. Planen Sie frühzeitig, damit Sie die Frist einhalten können. Bei unverschuldeten Ausnahmen schreiben Sie bitte zeitnah an prog1@cl.uni-heidelberg.de — ein ärztliches Attest ersetzt eine gesonderte Begründung.
Die Übungsaufgaben werden i. d. R. wöchentlich im E-Learning-Portal (Moodle) veröffentlicht, dabei wird ein regelmäßiger Termin angestrebt (z. B. jeden Montag). Die Übungsaufgaben werden als PDF-Datei zur Verfügung gestellt, ggf. gibt es zusätzlich zu bearbeitende Python- oder andere Dateien.
Es wird ein Portal (Tutron) zur Verfügung gestellt, bei dem die Übungsaufgaben hochgeladen werden können. Die Zugangsdaten erhalten Sie vor der ersten Abgabe — es sind gesonderte Zugangsdaten.
Ja! Sie werden sogar ausdrücklich dazu ermutigt! Über Tutron erhalten Sie nämlich unmittelbar (nach ein paar Sekunden) Rückmeldung über die Qualität Ihrer Abgabe. Schauen Sie sich die Rückmeldungen genau an und verbessern Sie Ihre Abgaben sukzessive und laden Sie sie anschließend erneut hoch bis Sie eine zufriedenstellende Punktzahl erreichen. Die Tutor:innen legen die Gesamtpunkte der jeweiligen Abgabe fest, sind aber angehalten, die Punkte der automatischen Scorer zu übernehmen.
Zusammenarbeit ist ausdrücklich erwünscht, am besten in Gruppen von maximal zwei Personen. Wer die Übungen nicht selbst durchdenkt, wird in der Klausur große Schwierigkeiten haben — dort stehen keine Hilfsmittel zur Verfügung.
Bitte geben Sie die Tutron-Benutzernamen aller Teammitglieder als Kommentar oben in der Python-Datei an und laden die Aufgabe pro Mitglied separat hoch.
Sie sind selbst dafür verantwortlich, die abgegebenen Lösungen zu verstehen. Natürlich ist es möglich, AI-Tools zu verwenden oder von anderen abzuschreiben — bedenken Sie aber: In der Klausur stehen keine elektronischen Hilfsmittel zur Verfügung. Wer die notwendige Übung nicht mitbringt, wird dort scheitern.
Fragen zu der Abschlussprüfung
Für 3 ECTS ist keine Abschlussprüfung vorgesehen — maßgeblich sind ausschließlich die Übungsaufgaben. Die Note errechnet sich gemäß den Organisationsfolien; ab Note 4,0 erhalten Sie einen Leistungsnachweis. Dieser erscheint in der Regel digital über heiCO, sobald die Noten vom Dozenten übermittelt wurden. Ohne heiCO-Zugang wird ein Papier-Schein vom Sekretariat ausgestellt (beachten Sie bitte die Öffnungszeiten) — teilen Sie dem Dozenten hierfür bitte Ihre Matrikelnummer mit.
Ja. Die Übungsklausur (vom Sommersemester 2019) kann in den Repositories der Fachschaft gefunden werden. Es wird dringend empfohlen, diese kurz vor Commitment-Ende zu bearbeiten — ohne technische Hilfsmittel und mit Zeitmessung — um einen realistischen Eindruck zu gewinnen. Musterlösungen werden nicht bereitgestellt. Im Fachschaftsrepository findet sich außerdem ein Projekt, das in einem Corona-Semester die Prüfung umfasste.
Fragen zu Tutron
Tutron ist eine Online-Plattform, die es Ihnen ermöglicht, Ihre Lösungen für die Übungsblätter hochzuladen und bewerten zu lassen. Für diesen Kurs benutzen wir diese Plattform, die speziell für Sie und die Tutor:innen entwickelt wurde. Seien Sie bitte bei Design und UX nicht allzu streng. Die Plattform baut auf vielen unbezahlten Stunden einiger Mitstudierender auf.
Wir werden Ihnen per E-Mail Benutzernamen und Passwort zukommen lassen. Dies gilt für Studierende der Computerlinguistik sowie ÜK-Teilnehmende gleichermaßen. Mit diesen Authentifizierungsangaben können Sie sich dann in Tutron anmelden. Das Passwort wird zufallsgeneriert und kann von Ihnen später geändert werden. Die Benutzernamen werden zufällig aus einer großen Liste von möglichen Namen an alle verteilt und bleiben bestehen. Wir nehmen hierfür die E-Mail-Adresse, die im Moodle-Kurs hinterlegt ist.
Um eine Lösung bewertet zu bekommen, muss zwingend eine Python-Datei von Ihnen geschrieben worden sein, die Sie auf Tutron hochladen können. Diese Datei wird von Ihnen üblicherweise lokal auf einem Computer mit einem Editor oder einer IDE Ihrer Wahl angefertigt. Wie Sie eine Python-Datei schreiben können, lernen Sie im Kurs, bevor Sie das erste Mal Tutron benutzen.
Die Abgabe von mehreren Dateien für ein Übungsblatt ist nicht möglich. Sie bekommen von uns aber Vorlagen, die Sie nur noch anpassen müssen. Achten Sie darauf, dass Ihre Datei auf .py endet und im Encoding UTF-8 gespeichert ist.
Nachdem Sie Ihre Zugangsdaten erhalten haben, können Sie sich in Tutron anmelden. Sie sollten dann eine Navigationsleiste erhalten mit der Möglichkeit, auf "Exercises" zu klicken. Da sehen Sie dann alle freigeschalteten Übungen aufgelistet, für die Sie eine Abgabe (auch mehrmals) hochladen können. Wenn Sie auf den Namen der Aufgabe klicken, kommen Sie auf eine Seite, die Ihnen den Upload Ihrer Python-Datei ermöglicht.
Nach dem Upload Ihrer Aufgabe können Sie unter "Submissions" Ihre Bewertungen einsehen. Genauere Informationen hierzu erhalten Sie unter "Bewertungen".

Beachten Sie dabei folgende Hinweise:

  • Sollten beim Einlesen Ihrer Datei schon Fehler passieren (SyntaxError, ...) gibt Tutron 0 %, obwohl vielleicht die Aufgaben teilweise richtig gelöst sind. Das hochgeladene Python-Skript muss also unbedingt ausführbar sein.
  • Im Hinweis der Scorer wird die Zeile genannt, die den Fehler ausgelöst hat. Diese Zeile ist jedoch nicht unbedingt die Zeile mit dem Fehler. Fehler müssen also auch nicht immer in der angegebenen Zeile zu korrigieren sein. (Das gilt natürlich ganz allgemein für die Ausgabe des error tracebacks, also auch bei lokaler Ausführung.)
  • Unter Umständen finden Sie im Pytest Log für manche Tests einen Abschnitt `Captured stdout call` mit extra auf den gerade aufgetretenen Fehler angepassten Hinweisen zur Lösung des Problems.
  • Die Bewertung durch Pylint- und Pytest-Scorer erfolgt zwar unter Vorbehalt, da die Tutor:innen das Ergebnis noch korrigieren können, aber das wird nur im begründeten Ausnahmefall passieren. Sie können erst einmal davon ausgehen, dass die Bewertungen endgültig sind. Tipp: Laden Sie daher Ihre Abgaben so oft wie nötig hoch bis Sie die Punkte erreicht haben, mit denen Sie zufrieden sind.
  • Tutor:innen können Feedback zur Abgabe geben. Sobald Punkte eingetragen wurden, kann das Feedback mit einem Klick auf das Ergebnis in der Spalte "Tutor" eingesehen werden. Bitte lassen Sie den Tutor:innen ein paar Tage Zeit zur Korrektur. Diese ist sehr arbeitsaufwendig. Tutron existiert mit den beiden anderen automatischen Scorern, damit Sie eben unmittelbar eine Rückmeldung über Ihre Abgabe erhalten können und diese ggf. sukzessive durch erneutes Hochladen erneut bewerten lassen und damit verbessern können.
Tutron ist eigentlich so konfiguriert, dass auftretende Fehler direkt an die Entwickler:innen weitergeleitet werden, sodass Sie nichts weiter unternehmen müssen, um auf diesen Fehler aufmerksam zu machen. Sie sollten in der Fehlermeldung darüber informiert werden, ob die Entwickler:innen bereits informiert wurden.

Bei dringenden Angelegenheiten schreiben Sie eine E-Mail an prog1@cl.uni-heidelberg.de, sprechen es direkt im Tutorium an oder schreiben einen Beitrag im Moodle-Forum.
Tutron ist noch in einer Entwicklungsphase. Auch wenn die Entwickler:innen zuversichtlich sind, dass der produktive Betrieb nicht gestört wird, kann es schon mal passieren, dass etwas nicht funktioniert (Abgabe lässt sich nicht hochladen, Webseite ist nicht erreichbar etc.). In diesem Fall probieren Sie es einfach ein paar Minuten später erneut. Meistens ist das Problem bis dahin verschwunden.
Nachdem Sie Ihre Lösung zu einem Übungsblatt als Python-Datei auf Tutron hochgeladen haben, wird diese dann sofort automatisch von zwei Bewertern analysiert und die Ergebnisse dieser sind einige Sekunden später zugänglich:

  • Nach dem Prinzip "Code is read more often than it is written" sollen Sie Ihren Code gut lesbar schreiben. Pylint beurteilt vor allem nach PEP 8, dem Styleguide für Python Code.
  • Pytest überprüft, ob Ihr eingereichter Code auch so arbeitet wie es in der Aufgabe verlangt wird, also die richtigen Ergebnisse produziert werden.
  • Sie können die Ergebnisse der automatischen Scorer Pylint und Pytest online einsehen. Im Info-Feld finden Sie Hinweise, ob und wo Ihr Code eventuell noch Verbesserungsbedarf hat. Nehmen Sie die Ausgaben von Pylint am Anfang der Vorlesung nicht allzu streng. Es wird noch Vorlesungsinhalt im Laufe des Semesters speziell dazu geben. Ein schön geschriebener Code nutzt auch nicht viel, wenn er nicht das tut, was er soll. Die Ausgaben sind auch erst einmal gewöhnungsbedürftig. Sie werden aber im Laufe des Semesters damit zurechtkommen.
  • Vorausgesetzt, die Abgabefrist ist noch nicht überschritten - dann können Sie Ihre Abgabe für das Übungsblatt so oft Sie möchten verbessern, aktualisieren und erneut hochladen. Tipp: Nutzen Sie das und möglichst früh. Je früher Sie eine Abgabe hochladen, desto mehr Zeit haben Sie zur Verfügung, auf die Rückmeldung der automatischen Scorer zu reagieren oder auch abzuschätzen wie viel Arbeit noch vor Ihnen liegt. Jeder hat da sein eigenes Tempo.
  • Nach der Abgabefrist schauen sich die Tutor:innen die letzte hochgeladene Abgabe an und vergeben eine endgültige Wertung (die aber nur im begründeten Ausnahmefall von der Tutron-Bewertung abweicht). Vermeiden Sie einen Upload nach der Abgabefrist, besonders dann, wenn Sie bereits funktionierenden Code hochgeladen haben. Eine verspätete Abgabe wird gesondert markiert und behandelt.
In Tutron selbst werden keinerlei Informationen über Ihre Person gespeichert. Solange Sie keine persönlichen Informationen in den Abgaben oder im Dateinamen Ihrer Abgabe speichern, kann man innerhalb der Webapplikation (also innerhalb Tutrons) nicht auf Sie zurückschließen. Die Verknüpfung von Nicknamen und Person wird außerhalb der Webapplikation von den Tutor:innen und dem Dozenten gepflegt. Der Server, auf dem die Webapplikation läuft, wird vom Institut bereitgestellt. Hier werden zudem noch die IP-Adressen, das Datum und die aufgerufenen Seiten bis zum Beginn des nächsten Semesters gespeichert (Tutron wird jedes Semester neu aufgesetzt und damit verschwinden auch die Log-Dateien). Eine automatische Analyse oder Auswertung dieser Daten erfolgt selbstverständlich nicht.
Fragen zu Python & Entwicklungsumgebung
Es wird empfohlen, stets die aktuellste stabile Python-Version zu installieren (kein Dev- oder Beta-Release). Eine Übersicht der aktuell unterstützten Versionen findet sich unter devguide.python.org.
Grundsätzlich können Sie jede IDE verwenden, mit der Sie sich wohlfühlen. In der Vorlesung wird PyCharm eingesetzt. Als Studierende erhalten Sie über das JetBrains Student Pack kostenlosen Zugang zur Professional-Version — diese Lizenz gilt ausschließlich für Bildungszwecke. Als Alternative bietet sich durchaus Visual Studio Code an.
Die empfohlene Methode ist der eingebaute Debugger Ihrer IDE — Anleitungen finden Sie für PyCharm und VS Code. Natürlich funktioniert auch Print-Debugging — wichtig ist, den Fehler zu verstehen und zu beheben.
Eine funktionierende lokale Entwicklungsumgebung wird klar empfohlen. Tutron dient ausschließlich zur Abgabe der Aufgaben, nicht zur Entwicklung. Online-Tools wie Jupyter Notebooks oder Google Colab oder ähnlich sind für diesen Kurs nicht geeignet. Installieren und nutzen Sie Python auf ihrem Rechner.
Der erste Anlaufpunkt ist die offizielle Python-Dokumentation, die auch ein Tutorial für Einsteiger enthält. Weitere Empfehlungen finden Sie im Moodle-Forum oder bei Mitstudierenden.
Sonstige Fragen
"s. t." steht für "sine tempore" und bedeutet, dass Start- und Endzeitpunkt einer Veranstaltung genau der Uhrzeit entspricht, die angegeben ist - also keine Zuschlagzeit veranschlagt wird. Im Gegensatz dazu ist "c. t.", also "cum tempore", weitaus geläufiger in der Uni-Welt. Es ist häufig sogar so, dass keine Angabe eher implizit "c. t." bedeutet, man also die "akademische Viertelstunde" hier einfach auf Start- und Endzeit draufschlagen bzw. abziehen kann. Das heißt, das ein 16:00—18:00 Uhr c. t. eigentlich 16:15—17:45 Uhr bedeutet. Aber Vorsicht! Ob ein "c. t." auch immer implizit gemeint ist, hängt stark mit den Gepflogenheiten der Uni oder des Instituts oder manchmal auch des Lehrstuhls ab.