Direkt zum Hauptbereich

Posts

Es werden Posts vom 2014 angezeigt.

Tipps zum OOP-Studium

Tipps zum OOP-Studium (Anmerkung: Der Text ist derzeit als kommentierbares Google-Doc verfügbar .) Das Studieren ist nicht leicht. Man muss viel Stoff in kurzer Zeit verarbeiten und einiges an Zeit dafür aufwenden. Und manchmal muss man so einiges an Frustrationen aushalten. Ein Student erzählt mir im Praktikum: “Ich habe Space Invaders in Processing programmiert. Insgesamt 16 Stunden habe ich daran in den letzten Tagen gearbeitet. Das hat mit total Spaß gemacht. Und jetzt sitze ich vor dem Aufgabenblatt und weiß nicht, wie ich an die Aufgabe herangehen soll. Ich glaube, den nächsten Test werde ich nicht schaffen.” Das erinnert mich an meinen Studienanfang. Für die meisten Fächer war ich leicht zu begeistern. Ich las viele Bücher und programmierte. Die Aufgaben aus den Übungen fand ich wenig spannend. Vor den Prüfungen kam ich mir bestens vorbereitet vor. Schließlich hatte ich mich mit viel komplizierteren und anspruchsvolleren Aspekten des Studienfachs beschäftigt

Was mich am Inverted Classroom bzw. Flipped Classroom nervt

Mich nervt die Begeisterung für den "Umgedrehten Unterricht" -- im Englischen als Inverted oder Flipped Classroom bezeichnet --, die durch die Hallen der Hochschulen und Universitäten geistert. Die Idee: Statt einer Vorlesung werden Videos produziert, die die Studierenden im Selbststudium konsumieren. So kann die eigentliche Vorlesungszeit in effektive Übungszeit gewandelt werden. Der Ansatz ist simpel. Und er scheint einen Reiz auszuüben. Seit drei Jahren treffen sich in Marburg Schul- und Hochschullehrer(innen) aus dem deutschen Sprachraum auf der ICM-Konferenz. Man ist gewillt, sich von der Idee anstecken zu lassen und Erfahrungen auszutauschen. Es gibt einige sehr engagierte Produzenten von Lehrvideos, allen voran Jörn Loviscach, Hochschullehrer in Bielefeld. Er schneidet jede Vorlesung und jeden seiner Vorträge mit. Nicht ganz 2.000 Videos listet seine Homepage aktuell auf. Seinen Youtube-Kanal haben über 41.000 Menschen abonniert, fast 15,5 Millionen Aufrufe seiner Vi

Let me tell you a story: I'm a Prisoner of the JVM

In JVM prison we live in a totalitarian system. You are not allowed to do something unless you are called to do something. You can call someone else to ask for assistance. But that's no fun either. You have to stand still and wait for the other to complete your call. Some poor guys call themselves to experience the joy of activity. If you call yourself too often, guards will step in and brutally silence you. Whenever you do not behave properly, an alarm goes on. The guards try to manage exceptional situations one way or the other. They hate to face a situation they are not prepared to handle. There are instructions we have to follow when called for action. Very often the instructions are carelessly written and buggy. We get punished if we misbehave and guards yell at us. Life in JVM is full of shit. A lot of us are dying. When they bury the dead, they call it "garbage collection". Can you imagine that? Fight for a better JVM. Fight for programmers who care about object

"Weniger schlecht programmieren"

Gestern hing ich mit Kathrin Passig und Johannes Jander in der Pause in Marburg ab. Anbei: Das Straßencafe "Die Pause" in der Oberstadt ist ein Geheimtipp, und ich hatte den Eindruck, dass es Kathrin und Johannes hier sehr gut gefallen hat. Ein gemütlicher Ort, an dem man ein wenig die Zeit verlieren und sich ausführlich über das Programmierleben unterhalten kann. Software-Testing, ja das ist wichtig, aber man muss es nicht übertreiben. Wir waren uns mal wieder einig. Das muss einen nicht daran hindern, Warstories aus Softwareprojekten zum besten zu geben. Ich, zum Beispiel, kannte einen Software-Tester, dessen Gespür für Softwarefehler geradezu unheimlich war -- so ein Uri Geller, der mit ein paar Tests zeigte, dass an der Software so gar nichts richtig und gerade war. Der führte einem vor, welche Codezeilen alle "verbogen" waren. Wahnsinn. Zuvor hatten mir Kathrin und Johannes im Zug von Gießen nach Marburg von ihren Ansichten über das Testen erzählt. Das Sch

2 Programmiertipps: Bring Kopfwelt und Programmierwelt in Passung

Wenn es eine oder zwei Empfehlungen gibt, die ich einer Programmiererin oder einem Programmierer mit auf den Weg geben möchte, dann diese zwei: Visualize what you don’t see Express your understanding of your code Beide Tipps drehen sich um ein und denselben Punkt: Stimmt das, was ich da programmiert habe, mit meinen Vorstellungen überein, was der Code wirklich tut? Habe ich ein korrektes Abbild dessen im Kopf, was sich zur Laufzeit meines Programms abspielt? Gerade in einer OO-Sprache ist die Gefahr sehr groß, dass man nicht wirklich überblickt, wie sich Objekte untereinander verknüpfen, ob die Objektstrukturen auch das abbilden, was man wollte. Man muss eine lebhafte Phantasie haben, um zu sehen, welche Auswirkungen der Programmcode in Form von Klassen und Methoden bei seiner Ausführung auf die Ebene der Objekte hat. Beide Tipps seien an einem Beispiel erläutert. In den letzten Tagen implementierte ich eine besondere Variante der binären Bäume : AVL-Bäume. AVL-Bäume achte