KIF500:Praxis im Studium

Aus KIF
Zur Navigation springenZur Suche springen

Praxis im Studium[Bearbeiten]

Motivation[Bearbeiten]

Problem in Göttingen: Trennung von Theorie und Praxis. Beispiel Datenbanken: Leute lernen SQL und Theorie dazu aber wenn sie fertig sind sind die Leute nicht in der Lage eine Datenbank aufzusetzten. Lass mal reden wie und wo das gut funktioniert.

Rahmen des AKs: - Kontext: TODO - Erwünscht: Positivbeispiele - Nicht erwünscht: Negativbeispiele

Modulsammlung (Interessante)[Bearbeiten]

  • Datenbanken
  • Softwareprojekt
  • Grundlagen der Programmierung
  • Systemarchitektur
  • Algorithmen & Datenstrukturen
  • Praktika Programmiersprachen der Zukunft
  • Theoretische Informatik
  • Verteilte Systeme
  • Computernetzwerke
  • Securtiy

Berichte/Ideen[Bearbeiten]

  • Hochschule Bonn-Rhein-Sieg: Systemarchitektur
    • Ganztägige Veranstaltung
    • 9 ECTS
    • PCBs selbst designen
    • 40% Praktikum + 60% Mündliche Benotung
  • Uni Düsseldorf: Rechnerarchitektur und Hardwarenah
    • 5 Vorlesungen - 4 Praktika
    • Programmierung in Assembly sehr Praktisch
  • Uni Göttingen: Theoretische Informatik (Automaten TMs und co. keine Komplexität)
    • Übungskomponente des Moduls in Python: umsetzen von Modellen (z.B. Automat programmieren, Umwandlung NEA-DEA)
    • Was daran nicht so gut klappt: die Vorlesung ist leider immernoch relativ trocken
  • Hochschule Rhein-Main:
    • Core Wars ist ein Spiel in dem man mit Assembly programmiert
    • unabhängig davon Feedback zu dem geschriebenen wichtig
  • Idee: Computerlinguistik als Anwendung für die theoreitsche Informatik
    • Turing maschinen Programmieren
    • Parser
    • Anwendungen im Compilerbau
  • HS Bremerhaven: Theoretische Informatik
    • 50% theorielastige Vorlesung
    • andere Hälfte Praktikum
      • Prologprogramm
    • Portfolioprüfung: Das praktische Umsetzen ist die Prüfungsform
    • Problem: in der 2. Semesterhälfte driften Theorie und Praxis auseinander
  • Göttingen: (Algorithms for Programming Contests)
    • Vorlesung zu Algorithmen
      • Praktisch damit Probleme lösen
      • Domjudge (Gamefytes System die sachen abzugeben Pro: Motivierend Neg: Demotivierend wenn andere besser)
      • Designed für Programmierwettbewerbe
      • Indirekte gute Vorbereitung auf Algorithmen und Datenstrukuturen bez. Komplexität und Algorithmen
      • Advent of Code als Ressource
      • siehe AK Programmierwettberbe
  • Uni Tübingen: (Datenbanken)
  • Uni Augsburg: (Sofwareprojekt)
    • Kooperation mit Unternehmen (echtes problem in angemessenem umfang)
    • In 6er Teams
    • git
    • man muss tests schreiben
    • das beste Projekt wird von der Firma übernommen
    • leute dazu verpflichten ordentlich zu arbeiten
    • Ansprechpartner und Materialien wichtig
  • Uni Augsburg: (Softwaretechnik)
    • Ganztags
    • Beispiel aus der Industrie
    • selbst machen dann nachvollziehen und vergleichen wie es in der realität passiert ist.
  • Hochschule Düsseldorf: Remote/Peer-Programming
  • Bremerhaven: (Grundlagenseminar)
    • Wie bedien ich Linux und generell Praktisches rumbasteln an rechnern
    • mit echten daten und kreative projekt z.B. von open data wetter stuff und Schifsdaten von antennen auf dem Dach
  • Augsburg: Verteilte und Parallelle Systeme
    • Ansaz mit vielen Raspis oder microcontrollern zu machen
  • Bremerhaven: Teilung in Vernetzte systeme und Parallelprogrammierung
    • Nimmt verschiedene Technologien aus der Praxis und sorge dafür das es funktioniert miteinander
  • Uni Augsburg: (Computernetzwerke)
    • Wireshark
    • TCP protokollsachen selbst schreiben und kommunikation ablaufen lassen
    • Problem wenn Praxis in der Klausur keine anwendung findet -> unmotivierend
      • Evtl. das ganze in die Note einfließen lassen
  • Tübingen: Internetpraktikum I & II
    • Versuche sind Vorbereitet
      • Finde lücke in xy und mache kaputt (haben oft echt existiert)
      • Nachteil platzbeschränkt und viel Grundlagenvoraussetzungen
  • Hochschule Bonn-Rhein-Sieg: Hackerpraktikum
    • 6 ECTS
    • Aufgabenblatt mit vm oder Computer und an denen Ausprobieren
    • Sicherheitslücken finden oder einbauen

innovativere Lösungsideen[Bearbeiten]

Prüfungsformen, die Praxis mit einbinden[Bearbeiten]

  • Systemsicherheit
    • nimm (veraltete) Programme und sorg dafür das sie funktionieren
    • wenn Prof deine VM kompromitieren kann hast du verloren
  • Portfolioprüfung
    • Theoretische Informatik
      • Interessante Modellsprachen wie LOOP die verschiedene komplexitätsklassen darstellen
  • Programmierprojekt: Spiel schreiben
    • kleine Gruppen á 3-6 Leute
    • eigene Wahl von Programmiersprache, Spieleidee und Tools
    • am Ende Testat
  • MessRegelungs Praktikum nach der Vorlesung:
    • Eingangstestat ob die Grundlagen da sind
    • Arbeit in Gegenwart einer Betreuung mit möglichst selbständiges arbeiten umso weniger fragen noch kommen umso besser.
    • Vorstellung am Ende
  • Robolab Praktikum
    • Roboter entwickeln
    • Mindstoms und weitere Dinge
    • je zwei Wochen mit anderen Leuten und im Austausch mit Tutoren
  • Robot Autonoumos Systems:
    • Fertigen Roboter Selbst bauen aus allem und den Roboter in einem Parkour demonstrieren.
  • Datenbanken:
    • Abschlussprojekt über zwei wochen
      • Wie ein komplexes Übungsblatt
  • Game Design grundlagen:
    • Game Jam (Programmieren eines Spiels in begrenzter Zeit)
  • Datenbanken
    • Projekt: Source Code abgeben und ein paar Fragen dazu beantworten
  • Competitive Programming:
    • Contest am Ende
      • Sehr tagesabhängig
  • Compiler Constuction: Einen Compiler schreiben
  • Softwaretechnologie1:
    • Theorieteil
    • Praktischer Teil
      • Programmieraufgaben
      • Im Browser sachen Probieren und instant feedback durch tests bekommen
  • Informatik 2:
    • Bewertung nur über die Übungsblättern
  • Verweis auf AK Prüfungsformen

Lehrmethoden abseits von Vorlesung+Übung[Bearbeiten]

Wir sammeln Beispiele

  • Vorkurs Informatik
    • Programmieren lernen ausschließlich mit praktischen Aufgaben. Sehr kleine und schnell abschließbare Aufgaben. 1-2 Sätze Erklärung pro Aufgabe
  • Grundlagen der Bioinformatik
    • obwohl Vorlesung Normal
    • Tutorien aber nicht
      • Peer Teaching:
        • Normale Übung danach erklären zwei leute die sachen aus der vorlesung
        • Feedback was an der Vorlesung nicht gut lief und zwei Studenten erklären wie das sehr gut funktioniert.
  • Algorithmen werden nicht voll in der Vorlesung durchgerechnet, was dann in den Tutorien erklärt.
  • Infrastruktur
    • Manpages lesen und was damit bauen.
    • mit Aufgabenstellung
    • Betreung Wichtig!!!
  • Anderen leuten ihren code zeigen
  • Modul ohne Namen
    • Bekommst ein Paper das veröffentlicht wurde
    • versuche das Paper zu reproduzieren in abgespeckter Form
    • Am ende Paperähnlicher Bericht
    • Wenn das ganze (meist nicht in der Informatik) erweitert wird/repariert wird dann evtl. publizieren