Wie ist für dich eine optimale Vorlesung zum Programmieren?

Hier kann über allgemeine Themen diskutiert werden, die sonst in kein Forum passen.
Insbesondere über Szene, Games, Kultur, Weltgeschehen, Persönliches, Recht, Hard- und Software.
Antworten
glassbear
Establishment
Beiträge: 324
Registriert: 08.04.2003, 18:09
Alter Benutzername: Enrico_
Echter Name: Enrico
Wohnort: San Diego
Kontaktdaten:

Wie ist für dich eine optimale Vorlesung zum Programmieren?

Beitrag von glassbear »

Hallo,

ich bin in letzter Zeit in vielen Anfängervorlesungen (inkl Labor/Übungen) zum Programmieren lernen für Elektrotechnik- und Informatikstudenten im ersten bis vierten Semester. Über einen sehr großen Teil dieser Vorlesungen höre ich, dass sie zum Programmieren lernen nix taugen, aus verschiedenen Gründen. Meistens geht es schon damit los, dass die Studenten nicht mal wissen, warum sie jetzt diese Programmiersprache lernen sollen (weils im Lehrplan steht und 0 Praxisrelevanz hat ... ).

Um das ganze kurz zu machen: Wie sieht für euch eine sehr gute Vorlesung zum Programmieren lernen aus? Welche Struktur hat die Vorlesung? Welche Inhalte? Welche Wünsche? =)
Ein Hoch auf uns Männer... Auf die Frau, die uns HAT ( oder hat, und nicht weiß, dass sie uns hat ) ...auf die Idiotinnen ... besser gesagt VOLLPFOSTINNEN ... die uns hatten und uns verloren haben ... und auf die GLÜCKLICHEN, die das Vergnügen & Glück haben werden uns kennenzulernen!
Specialist
Establishment
Beiträge: 135
Registriert: 29.08.2003, 14:22
Kontaktdaten:

Re: Wie ist für dich eine optimale Vorlesung zum Programmier

Beitrag von Specialist »

In meinem Studium waren die Übungen zum Programmieren immer sehr mathematischer Natur, was gerade Leuten, die mit Mathe Probleme haben, nicht sonderlich weiterhilft.
Also bitte Übungen mit allgemeinen Problemen, beispielsweise eine Ampelschaltung. Sowas kann sich jeder vorstellen und vor allem kennt das jeder.

Außerdem scheint mir die Vorgehensweise vieler Profs zu schnell zu sein. Ich konnte damals glücklicherweise schon programmieren und habe vielleicht drei Mal die Vorlesung besucht und danach als "Schwachsinn" und überflüssig für mich abgestempelt (trotzdem 1,7 geschrieben). Sowas wie "Dann ignoriert einfach das Arrayelement mit Index 0 und fangt grundsätzlich bei 1 an, weil ihr euch dann von der normalen Zählweise nicht umstellen müsst." darf einfach nicht sein, erst gar nicht von einem Professor.

Einen großen Fehler, den auch viele machen ist, dass sie bestimmte Strukturen beim Programmieren mit anderen Fachbegriffen erklären, die noch nicht vorkamen oder die Erklärreihenfolge einfach total absurd ist.
Man kann z.B. keinen Konstruktor erklären, wenn noch nicht einmal klar ist was genau denn eine Klasse ist.

Die Lernmotivation sollte ebenfalls gegeben sein, was auch oft fehlt (siehe mathematische Aufgaben in Übungen). Kleine Spiele würden sich meiner Meinung nach viel besser eignen und wenn sie nur vom Typ "Errate die Zahl" sind.

Erklärungen sollten an Hand guter Beispiele erfolgen, die sich jeder gut vorstellen kann und nicht an Hand sehr abstrakter Beispiele:
"Ein Array ist ein zusammenhängender Speicherbereich, wie Variablen, die direkt hintereinander liegen und anstatt mit Namen per Index angesprochen werden"
Auch wenn das in etwa korrekt ist, hilft es einem Anfänger überhaupt nicht. Das könnte man zum Beispiel so machen:
"Ein Array könnt ihr auch als Schrank vorstellen und jede Schublade hat einen Index, in der ihr einen Wert ablegen könnt."

Da ich selbt oft Nachhilfe in Programmierung gegeben habe, weiß ich, dass viele Leute die weniger abstrakten und technischen Erklärungen anfangs besser verstehen. Man verzichtet also ganz bewusst erstmal auf technische Details, damit die Struktur an sich überhaupt erstmal verstanden wird.
Florian Keßeler
Beiträge: 75
Registriert: 24.07.2002, 00:00
Wohnort: Bremen
Kontaktdaten:

Re: Wie ist für dich eine optimale Vorlesung zum Programmier

Beitrag von Florian Keßeler »

Wir haben in der Vorlesung zu funktionaler Programmierung Spiele in Haskell programmiert. Das war echt Spaß, wenn auch ziemlich anstrengend. Ansonsten war bei uns Praktische Informatik 1-3 genau das: Java-Grundlagen, meist weniger mathematisch, eher die "Standard"-Übungsthemen. Im ersten Semester hatten wir sowas wie Fibonacci-Folge (getarnt als eine Aufgabe zum Fortpflanzungsverhalten von Kaninchen) und sowas wie Integer in textuelle Repräsentationen der Zahl zu konvertieren (1454353 --> "einemillionvierhundertvierundfünfigtausenddreihundertdreiundfünfzig"). Im zweiten Semester ("Algorithmen und Datenstrukturen2) waren es dann Übungen zu den vorgestellten Datenstrukturen und Algorithmen, da kamen dann Sachen vor konvexe Hülle von Punkten in der Ebene berechnen, verkettete Listen implementieren, verschiedene sortierte Bäume, Sortier- und Suchalgorithmen (für Bäume, geordnete Arrays, Texte). Fand ich eigentlich ganz gut aufgebaut: Erst Sprachgrundlagen, dann Algorithmen...
pUnkOuter
Establishment
Beiträge: 303
Registriert: 15.04.2002, 15:59

Re: Wie ist für dich eine optimale Vorlesung zum Programmier

Beitrag von pUnkOuter »

Ich würde die Vorlesung so beginnen, dass ich den Studenten ein einfaches Spiel zeigen würde, z.B. Asteroids, oder Bomberman. Dann würde ich ihnen erklären, dass ich den Quellcode des Spiels hier habe, und, da ich programmieren kann, diesen leicht verändern kann. Anschliessend würde ich das Spiel während 5 Minuten umprogrammieren, z.B. so, dass in Asteroids durch das Drücken einer neuen Taste gleich mehrere Schüsse in verschiedene Richtungen abgeschossen werden. Oder man könnte z.B. im Tetris neue Klötze einführen. Irgend eine einfache, aber visuell beeindruckende Änderung. Schliesslich würde ich ihnen erklären, dass meine Änderungen für den Computer noch nicht verständlich sind, und der Quellcode erst mal in seinen "Dialekt" übersetzt werden muss. Dann würde ich das Programm kompilieren und ihnen noch den kompilierten Code im Hexeditor zeigen. Anschliessend das Programm wieder ausführen.

Danach würde ich, falls sie dies noch nicht gehabt haben, eine Einführung geben in die Geschichte der Computer, dann den Grundaufbau eines Computers erklären, und schliesslich einige wichtige Programmiersprachen kurz vorstellen (wichtig im Sinn von wichtig für die Entwicklung der Programmiersprachen, also Java käme da z.B. nicht vor). Dann vielleicht noch kurz eine Übersicht über die aktuell wichtigsten Sprachen geben, und dann erklären, welche im Unterricht verwendet wird, und warum.

Ja, und dann würde ich eigentlich so weiterfahren, wie die Programmierbücher das machen. Dazu hast du ja oben schon gute Tipps erhalten.
Ein Zeiger ins Blaue ist wie ein Wegweiser nach <SEGFAULT>. Wenn du denkst, mein Name hat was mit abgefuckter Kleidung und bunten Haaren zu tun, dann kehr besser um.
Antworten