Bildungsmäuschen

Startseite » Programmieren

Archiv der Kategorie: Programmieren

Nachtrag zum Pythonkurs auf HPI

Heute bekam ich die Benachrichtigung, dass ich mein Zeugnis für die Teilnahme am Kurs herunterladen kann, und nehme das als Anlass noch letzte Bemerkungen nachzuschicken.

Es wurde in der Zwischenzeit eine unsortierte Sammlung von Links der Teilnehmer zu weitergehenden Informationen oder interessanten Seiten zur Verfügung gestellt. Eine sehr gute Sache, allerdings wäre es sinnvoll wenn jemand diese Liste sortieren könnte und auch sichtbar macht, welche Links sehr veraltete Materialien enthalten. Es könnte gerade Anfängern die Suche erleichtern, denn diese Liste ist ausgesprochen lang und weitgehend unkommentiert. Auch an einer solchen Stelle kann sich eine Gelegenheit für interessierte Freiwillige finden, die über einen Informationsvorsprung oder Wissensvorsprung verfügen. 🙂

Im Nachhinein bedauere ich meine Aufregung über den Kurs und meine kritischen Äußerungen nicht. Ich bin nach wie vor der Ansicht dass man gerade für Anfänger in diesem Bereich die Hürden klein halten sollte. Ohne auf Details eingehen zu können, kann ich rückblickend auf meine Programmierkurse sagen, dass ich in den englischsprachigen Kursen mehr Zusatzinformationen bekommen habe und die Aufgaben meist auch leichter nachvollziehen konnte. Allerdings waren diese Kurse auch alle länger. Ich habe im Vergleich auch entdeckt, dass einiger meiner Probleme nicht auf die Sprache zurückzuführen sind (Englisch statt Deutsch), sondern auf die Art der Vermittlung, bei der ich wiederum in allen Kursen Gemeinsamkeiten ausmachen konnte.

Sehr gut gefallen hat mir die Verwendung der Turtle-Grafik. Sie ähnelt sehr den Möglichkeiten sehr direkt sehen zu können was man tut, auch wenn man etwas ändert. Etwas das mich bei der grafischen Ausrichtung der Programmiersprache Processing schon begeistert hat.

Der Kurs steht inzwischen self-paced zur Verfügung, es ist keine Fortsetzung geplant, aber eine Neuauflage zum Ende des Jahres in der „ferienfreien“ Zeit, ein Begriff unter dem ich mir nichts konkretes vorstellen kann und der mich erneut an die Problematik der zum Teil nur schwer nachvollziehbaren Beschreibungen der Programmieraufgaben erinnert. Ich habe den Eindruck, dass es hier unter Fachleuten Sprachgepflogenheiten gibt, die Anfängern den Einstieg nicht erleichtern.

Selbstverständlich gebührt den Anbietenden großer Dank und Respekt für ihre Arbeitsleistung, aber Verbesserungen sind eben möglich. Wenn ich auf meine Erfahrungen zurückblicke, so gehe ich aber davon aus dass Anregungen aufgenommen werden und vielleicht werden auch diejenigen Erwähnung finden, die durch ihre Teilnahme Anregungen geliefert haben. Und vielleicht werde ich für die Zukunft einmal andere Möglichkeiten überlegen, als nur auf meinem Blog vor mich hin zu reflektieren. Das ist aber ein neues Thema.

Ich freue mich auf gute Programmierkurse für Einsteiger in der Zukunft!

Advertisements

Ende des Pythoneinführungskurses für Schüler bei HPI

Ich habe jetzt die letzte ausstehende Aufgabe gelöst und damit auf meiner Fortschrittsseite 100% bei allen Rubriken erreicht. Zum Schluss hatte ich noch ein für mich positives Erlebnis, da ich die letzte Aufgabe mit einer Methode lösen konnte, die in einem Kurs zur Spieleprogrammierung mit Python vorgeführt wurde. Es sollte ein einfaches Zahlenrateprogramm erstellt werden, in dem ich mich aber verrannt hatte. Die Lösung bestand darin in einer Mischung aus Pythonschreibweise, mathematischer Darstellung und ganz normalen Worten systematisch aufzuschreiben was ich tue, wenn ich selber auf ein Zahlenratespiel antworte. Dann musste ich die erkannte Struktur nur noch in Code umschreiben und das Programm funktionierte wie gewünscht. Einer der Punkte an denen ich gemerkt habe, was für interessante Dinge ich in meinen bisherigen Programmierkursen gelernt hatte!

Allerdings wurde es vom Bewertungssystem als falsch zurückgewiesen, da ich zwei Kennzahlen untereinander ausgetauscht hatte. Dieses Mal reagierte ich mit Gleichgültigkeit darauf, passte meinen Code an die geforderte Form an, kreuzte alle Zeile aus über den gemeckert werden würde und erhielt meine Punkte.

Ich weiß nicht wohin mich mein Weg der Programmiererfahrungen geführt hätte, hätte ich als erstes diesen Kurs belegt um Programmierung kennenzulernen.  Auf der Basis meines bisherigen Hintergrundes würde ich ihn nicht für einsame Selbstlerner ohne Vorkenntnisse empfehlen. Persönlich habe ich durch den Kurs das Bedürfnis nach einem gut gestalteten Lehrbuch mit Beispielen und Register zum Nachschlagen bei Bedarf entwickelt, aber für Einsteiger wünsche ich mir einfach bessere Kurse. Und damit meine ich umfassendere Erläuterungen, mehr Beispiele, mehr Erläuterung von Funktionsweisen, mehr Anpassung an die Vorstellungswelten von denjenigen, die vorher gar nichts wissen, mehr kleinschrittige Übungsaufgaben mit Lösungen, mehr Anregung zum Ausprobieren und Teilen, unterschiedliche Vermittlungsmethoden.

Gut finde ich, dass die für die Übungsaufgaben erstellten Programme als zip-Dateien heruntergeladen, gespeichert und und mit Python geöffnet werden können. Gut finde ich die Videos. Gut finde ich es auch die Turtle-Grafik kennen gelernt zu haben. Alles kann weiterhin genutzt werden, aber es bedeutet für den einsamen Selbstlerner vor allem sich selbst zu unterrichten. Während der Zeit des laufenden MOOCs teilzunehmen bedeutet eine Bescheinigung erhalten zu können und auf Fragen möglicherweise schneller eine Antwort zu bekommen. Aber auch Fragen muss man erst einmal richtig formulieren können. Ansonsten muss man eben sehen wie man selbst zurecht kommt.

Meine Motivation mich mit Programmiersprachen weiter zu beschäftigen wurde gestärkt, allerdings eher weil ich den Kurs unzureichend fand. Ich fühle mich mehr alleingelassen als zuvor und der entstandene Eindruck ist, dass es allein bei mir liegt durch intensive Beschäftigung herauszufinden was ich wissen will, als dass irgendjemand daran interessiert ist mir Programmierung zu vermitteln, weil das als wichtiges Kulturgut für alle begriffen wird.

Gespannt bin ich jetzt noch darauf, wie die erstellten Zeugnisse aussehen werden und ob ich mir die Zeit nehme weiter zu üben. Und da war doch auch noch meine Faszination für die Computersprache Processing und die beiden Bücher mit Beispielen zur Erstellung von Computergenerierter Kunst, die auf meinen Stapeln warten…

WS 14/15 – meine gefühlt vierte Woche

Ich wache voller Wut auf. Das ist das Ergebnis meiner nächtlichen Verarbeitungsprozesse zur wöchentlichen Halbzeit. Gestern habe ich wohlgemut mit den Lectures und Programmieraufgaben der letzten, der vierten Woche des HPI Kurses Spielend Programmieren Lernen begonnen und dabei es ist das erste Mal passiert, dass ich eine Aufgabe erst einmal abgebrochen habe, weil ich nicht in der Lage bin sie allein auf der Basis der Lectures zu lösen. Dabei geht es um ein Konzept, das ich noch nicht aus vorherigen Pythonkursen kenne und das ich einfach nicht nachvollziehen kann, weil es dafür nirgendwo Erklärungen gibt. Wie soll ich aber eine Funktion eigenständig verwenden, wenn ich nicht verstehe wie sie arbeitet?

Den Ausschlag für meinen Unmut gibt dann allerdings eine Aufgabe die ich lösen kann, deren Einsendung aber wegen der Zeichensetzung in den Antworteingaben als fehlerhaft markiert wird. Alles nur weil da steht: „Verwende als mögliche Antworten Deines Programms…“ und dann folgen die möglichen Antworten. Ich denke mir, mögliche Antworten bedeutet, dass sie auch anders formuliert sein können, es stellt sich aber heraus, dass hier die einzig möglichen Antworten gemeint sind. Die automatisch generierte Antwort auf mein funktionierendes Programm lautet dann:

Dein Programm ist leider falsch: Wenn 1 geraten wurde, soll die Ausgabe „Zu klein“ lauten. Dein Programm schreibt aber Zu klein.

Ich schaue mit großen Augen darauf und verstehe zuerst nichts. Die Anführungszeichen sind nicht gemeint und erst nach einer Weile wird mir klar, dass ich meinen Satz „Zu klein“ ordentlich mit einem Punkt beendet habe. Das wird von der Software nicht akzeptiert. Ich nutze meinen Telefonjoker um mich darüber aufzuregen und bekomme die Sachlage vernünftig erklärt.

Inzwischen bin ich aber empfindlich geworden. Es gibt didaktisch hervorragend gestaltete Kurse. So etwas geht. Den parallel belegten MOOC Teaching for Learning 7 empfinde ich so und darin wurde diese Woche dann auch noch zeitgleich vermittelt, dass Schüler gut lernen können, wenn sie sorgfältig und nachvollziehbar erklärt bekommen, was sie eigentlich tun sollen. Und auch der Studienbrief aus dem Modul 3B des BiWi-Studiums der FernUni, den ich ebenfalls parallel bearbeite, ist entsprechend aufgebaut. Er erläutert ganz genau was er tut, wie er aufgebaut ist, was er thematisiert, wo seine Grenzen liegen und wo weitere Informationen zu erhalten sind. Der Studienbrief ist ein zum Selbststudium geeignetes Lehrbuch. Und ich sitze jetzt hier in diesem Programmierdesaster und muss auch noch den Dank eines 62jährigen für den hervorragend gestalteten Kurs lesen. Zum Glück finde ich aber auch Stimmen mit denen ich mich weit besser identifizieren kann und die mir nicht als Hohn erscheinen.

Ich habe den Ehrgeiz alle Aufgaben fristgerecht zu lösen und das werde ich auch versuchen. Dazu werden aber die im Kurs zur Verfügung stehenden Materialien nicht ausreichen. Inzwischen stehen für die ersten zwei Wochen Musterlösungen zur Verfügung und darin  finden sich ohne Erläuterung die Kürzel „&lt;“ und „&gt; „. Ich bin ihnen bisher nur in den Foren hier begegnet, erläutert wurden sie mir noch nirgends und erst in einem Hilfeforum irgendwo im Netz finde ich eine Beschreibung dafür. Sie stehen für die Symbole <(less than) und >(greater than). Ist es selbstverständlich so etwas zu wissen? Muss ich so etwas bereits wissen? Muss ich wegen so etwas nachfragen? Dieses Beispiel ist für mich symptomatisch für mein Erleben dieses Kurses. Es werden Dinge vorausgesetzt, die in meinen Augen nicht einfach vorausgesetzt werden können, die das Verständnis nicht fördern und zusätzliche Recherchen notwendig machen, wodurch sich der Zeitaufwand erhöht.

Immer auf die harte Tour. Warum? Schülerstimmen, die ich lese, scheinen es zu akzeptieren, dass sie sich irgendwie durch Trial and Error und Nachfragen durchwurschteln müssen. Warum? Nur die Harten kommen in den Garten? Je größer die Herausforderung desto größer der Lohn? Erkundendes Lernen? Ich bleibe dabei, erst einmal mit Wut weiter zu machen. Ich habe mein ganzes BiWi-Studium auf Grund von Wut begonnen. Hier ist für mich etwas ganz und gar nicht in Ordnung und ich finde nicht, dass ich Schuld daran trage. Ich bin nicht zu blöd, ich habe genug Voraussetzungen, ich habe mich genug bemüht – warum also bleibt der Stoff in einigen Teilen so unverständlich, so wenig nachvollziehbar?

In diesem Augenblick verbinden sich meine BiWi-Inhalte erneut mit dem was ich selber erfahre und meine Motivation für das Verstehen des E-learning Anteils des Studiums steigt. Eine seltsame Art die eigene Motivation zu erhöhen…

Nachtrag: Inzwischen gibt es ein von Teilnehmern erstelltes Glossar als piratepad mit Befehlen und anderen nützlichen Informationen zum Nachschlagen, mir fehlen noch vier Aufgaben, davon drei der letzten Schwierigkeitsstufe der letzten Woche und inzwischen kann ich meine Aufgaben nicht mehr testen, da möglicherweise die Server nach 7.30Uhr überlastet sind.  Dafür ist meine Wut aber weniger geworden und irgendwo tauchte die Bemerkung auf, dass wir möglicherweise doch die Beta-Tester sind. Es ist immer schön sich nicht allein zu fühlen und Überschriften lesen zu können wie: „Aufgabe 4.4.3 seit 10 Stunden und immer noch keine Lösung in Sicht // Verzweiflung“. Geteiltes Leid ist eben doch immer wieder halbes Leid!

Und jetzt habe ich auch noch eine Aufgabe, die nicht richtig funktioniert als richtig markiert bekommen… Verzweiflung nimm mich in die Arme!

Und irgendwie macht es dann doch wieder Spaß…