Projektmesse und Abschlussprojekt

ℹ️
Save the Date: Projektmesse 03.02.25 / 16.00 Uhr / Musiksaal (WE5).

Inspiriert vom CS50 Fair ist der Höhepunkt von Inf-Einf-B nicht die Prüfung, sondern das Abschlussprojekt. Mit einer Projektmesse am Semesterende feiern wir die Fortschritte, die unsere Teilnehmerinnen und Teilnehmer im Laufe eines Semesters gemacht haben. Die Veranstaltung findet im Irmler-Musiksaal am Standort WE5 statt und ist öffentlich.

Alle Inf-Einf-B-Studierenden sind eingeladen, ihre Abschlussprojekte auf der Projektmesse vorzustellen – und die Teilnahme lohnt sich:

  • Für die Vorstellung Ihres Projekts bekommen Sie Bonuspunkte, mit denen Sie Ihr Ergebnis in der E-Prüfung verbessern können.
  • Bei Snacks und Getränken können Sie mit Dozierenden, Tutorinnen und Tutoren und Mitstudierenden ins Gespräch zu kommen.
  • Bei einer Tombola können Sie Preise gewinnen.
  • Überzeugen Sie mit Ihrem Projekt Unternehmensvertreterinnen und -vertreter von Ihren Fähigkeiten – vielleicht ergibt sich ja daraus Job!

Abschlussprojekt

Das Abschlussprojekt ist Ihre Gelegenheit, Ihre neu gewonnenen Programmierkenntnisse unter Beweis zu stellen und Ihre eigene Software zu entwickeln. Sie können Ihr Projekt in jeder beliebigen Sprache umsetzen. Sie können auch eine andere Infrastruktur als den CS50-Codespace verwenden. Wir bitten Sie lediglich, etwas zu entwickeln, das Sie interessiert, ein tatsächliches Problem löst, positive Auswirkungen auf unsere Gemeinschaft hat oder die Welt verbessert. Versuchen Sie, etwas zu schaffen, das diesen Kurs überdauert.

Da Softwareentwicklung selten eine Sache einer einzelnen Person ist, dürfen Sie Ihr Abschlussprojekt entweder alleine oder zu zweit bearbeiten. Selbstverständlich wird erwartet, dass beide Personen zum Entwurf und zur Umsetzung des Gruppenprojekts beitragen. Darüber hinaus wird erwartet, dass der Umfang des Projekts einer Zweiergruppe doppelt so groß ist wie der eines Einzelprojekts. Ein Einzelprojekt sollte, wohlgemerkt, mehr Zeit und Aufwand in Anspruch nehmen, als für die Bearbeitung einer der Übungen erforderlich ist.

Ideen

  • eine webbasierte Anwendung mit JavaScript und Python
  • eine iOS-App mit Swift
  • ein Spiel mit Lua und LÖVE
  • eine Android-App mit Java
  • eine Chrome-Erweiterung mit JavaScript
  • ein Befehlszeilenprogramm mit C
  • eine hardwarebasierte Anwendung, zum Beispiel mit einem Arduino oder ESP32

Sie können sich auch von den Projekten inspirieren lassen, die in Harvard’s CS50x-Kurs eingereicht wurden.

Los geht’s!

Die Erstellung eines vollständigen Projekts mag auf den ersten Blick überwältigend erscheinen. Hier sind einige Fragen, über die Sie zu Beginn nachdenken sollten:

  • Was soll Ihre Software leisten? Welche Funktionen soll sie haben? Wie soll sie ausgeführt werden?
  • Welche neuen Fähigkeiten müssen Sie sich aneignen? Zu welchen Themen müssen Sie recherchieren?
  • Wenn Sie mit einer anderen Person zusammenarbeiten, wer übernimmt welche Aufgabe?
  • In der Welt der Software dauert die Implementierung fast immer länger als erwartet.
  • Daher ist es nicht ungewöhnlich, dass Sie in einer festgelegten Zeit weniger erreichen als erhofft. Was wäre für Sie ein gutes Ergebnis für Ihr Projekt? Ein besseres Ergebnis? Das beste Ergebnis?

Überlegen Sie sich, welche Etappenziele Sie erreichen möchten, um auf Kurs zu bleiben. Wenn Sie den CS50-Codespace verwenden, können Sie ein Verzeichnis mit dem Namen Projekt erstellen, um Ihren Projekt-Quellcode und andere Dateien zu speichern. Sie können Ihr Projekt auch außerhalb des CS50-Codespaces entwickeln.

ℹ️
Für Ihr Abschlussprojekt ist es sinnvoll, sich von KI-Werkzeugen unterstützen zu lassen (z.B. ChatGPT, HAWKI der Universität Bamberg, Claude, GitHub Copilot, Bing Chat o.ä.), aber der Kern der Arbeit muss immer noch Ihr eigener sein. Sie haben genug gelernt, um solche Tools als Hilfsmittel zu nutzen. Betrachten Sie solche Tools als Ergänzung, nicht als Ersatz für Ihre Produktivität. Dennoch müssen Sie die Verwendung solcher Tools in den Kommentaren Ihres Codes erwähnen.

Abgabe des Abschlussprojekts

Schritt 1 von 3: Videoproduktion

Erstellen Sie ein kurzes Video (nicht länger als 3 Minuten), in dem Sie der Welt Ihr Projekt vorstellen. Ihr Video muss mit einer Eröffnungssequenz beginnen, die Folgendes enthält:

  • den Titel des Projekts;
  • Ihren Namen bzw. die Namen der zwei beteiligten Personen;
  • das Datum, an dem Sie dieses Video aufgenommen haben.

Anschließend sollten Sie Ihr Projekt in Aktion zeigen, z. B. mit Folien, Screenshots, Voiceover und/oder Live-Action. Machen Sie sich dazu damit vertraut, wie Sie einen Screencast erstellen können. Sie können aber auch eine Kamera verwenden und sich und ihr Projekt filmen. Laden Sie Ihr Video in VC hoch oder stellen Sie es YouTube oder eine vergleichbare Videoplattform. Bitte notieren Sie sich die URL; es ist in Ordnung, es als „nicht gelistet“ zu kennzeichnen, aber nicht als „privat“.

Schritt 2 von 3: Textuelle Beschreibung

Erstellen Sie eine Textdatei README.md (genau so benannt!). Diese Datei muss Ihren Projekttitel, die URL Ihres Videos oder stattdessen den Text “VC” und eine Beschreibung Ihres Projekts enthalten. Sie können das Folgende als Vorlage verwenden.

# IHR PROJEKT-TITEL
#### Author1: Ihr Name / Ihre Matrikelnummer
#### Author2: Ihr Name / Ihre Matrikelnummer (nur bei 2-Personen-Projekt)
#### Video: <URL> oder "VC"
#### Description:
TODO

Wenn Sie mit der Markdown-Syntax nicht vertraut sind, finden Sie möglicherweise Github’s Basic Writing and Formatting Syntax hilfreich.

README-Dateien für Softwareprojekte können oft Tausende oder Zehntausende von Wörtern lang sein; Ihre muss nicht so lang sein, sollte aber mindestens mehrere hundert Wörter umfassen, die die Dinge im Detail beschreiben! Ihre README.md-Datei sollte mehrere Absätze lang sein und erklären, worum es bei Ihrem Projekt geht, was jede der Dateien, die Sie für das Projekt geschrieben haben, enthält und tut, und ob Sie über bestimmte Designentscheidungen diskutiert haben, und warum Sie sie getroffen haben.

Stellen Sie sicher, dass Sie ausreichend Zeit und Energie in das Schreiben einer README.md investieren, die Ihr Projekt gründlich dokumentiert. Seien Sie stolz darauf! Eine README.md mit etwa 300 Wörtern reicht wahrscheinlich aus, um Ihr Projekt und alle Aspekte seiner Funktionalität zu beschreiben. Wenn Sie diese Schwelle nicht erreichen können, könnte das darauf hindeuten, dass Ihr Projekt noch nicht komplex genug ist.

Geben Sie Ihre README.md und ggf. Ihr Video mit dem Abgabeformular VC fristgerecht ab.

Schritt 3 von 3: Teilnahme an der Projektmesse

Sie nehmen an der Projektmesse teil (bei Projekten, die zu zweit bearbeitet wurden, müssen beide Personen anwesend sein). Sie bekommen von uns einen Stehtisch zugeteilt. Dort präsentieren Sie Ihr Projekt, entweder auf Ihrem Laptop oder mit anderer Hardware, die Sie dafür benötigen. Im Laufe der Messe kommt eine Jury vorbei und lässt sich Ihr Projekt vorstellen.

Für diese aktive Teilnahme erhalten Sie bis zu 10 Bonuspunkte, die auf das Ergebnis in der E-Prüfung angerechnet werden.