Man kann so anfangen:
Declaring variables in Python is easy; you just write out a name/identifier, like
spam, and use=to assign it a value, and you’re done!Set the variable
my_variableto the value10.
Oder so:
This exercise has lots of math symbols. Let’s name them right away so you know what they are called. As you type this one in, say the names. When saying them feels boring you can stop saying them.
Das erste Zitat stammt von der Code Academy. Plom besuchte mich vorgestern, damit wir zusammen Python (und kochen)lernen können. Ich hatte schon vor einer Weile mit dem Python Track begonnen und recht schnell Fortschritte gemacht bis ich zur Übung “Pyg Latin” kam. In dieser Übung soll ein Programm geschrieben werden, das eingelesene Sätze in eine Art Geheimsprache übersetzt. Aber nach der zweiten Aufgabe verlor ich meine Motivation. Plötzlich war mein Studium wieder enorm wichtig und ich vergaß alles, womit ich den Bologna-Druck systematisch dekonstruiert hatte. Uni statt Programmieren! Und wenn mich jemand fragte, wie’s so mit dem Programmieren läuft, antwortete ich: “beschissen”. Und war angesichts der Stagnation – erst bei C, jetzt bei Python – ehrlich gesagt sehr viel enttäuschter, als ich es zugegeben hätte und jetzt tun würde!
Aber spätestens nachdem ich nun ein anderes Tutorial ausprobierte, habe ich mir genügend Gedanken darüber gemacht, um die Schuld auf das Konzept von Code Academy abwälzen zu können.
Es gibt diverse Eingeschaften des Code Academy Konzepts, die ich problematisch finde.
1. Programmieren im Browser
Code Academy erfordert nicht von Anfang an, dass ich in einer Python Shell oder in meinem eigenen Terminal mit der Sprache arbeite. Das, was mich an Assembler begeisterte, bspw. die Nähe zur Maschine, die umfassenderen Lernergebnisse und das über die bloße Sprache hinausgehende Verständnis von Code und Computern war kaum bis gar nicht vorhanden. Bei der Code Academy schreibe ich in einem Terminal IM Browser. Das sieht dann so aus:
Zwar ist Python eine interpretierte Programmiersprache, das heißt, Programme in Python muss ich nicht erst im Terminal kompilieren, um sie ausführen zu können, aber gerade diese Notwendigkeit bei Assembler oder C ließ mich gleichzeitig auch mein Terminal, die dazugehörige Sprache Bash und den Zusammenhang von Prozessor/Computer und Code besser verstehen.Dieser Ansatz führt m.E. zu einem unnötig partiellen Verständnis.
2. Fehlermeldungen
Daran bin ich auch letztendlich gescheitert. In der Aufgabe oben hätte ich statt “printf” (C-Syntax) einfach “print” schreiben müssen. Aber man kann sich ja mal vertun. Allerdings sind die Fehlermeldungen für mich recht kryptisch und vor allem für AnfängerInnen vermutlich kaum nachvollziehbar. In diesem Fall kann ich durch aufmerksames Lesen den Fehler finden. Später hatte ich einen Indentation Error als Fehler in einer Zeile, den ich nicht selbständig beheben konnte. Ich bin mir nicht sicher, ob ein besserer Debugger das Problem für mich hätte lösen können, allerdings hätte ich dafür auch ein Terminal verwenden müssen.
3. Lineare Lösungswege
Für die meisten Probleme gab es einen einzigen richtigen Lösungsweg. Ich persönlich halte diesen Ansatz nicht für nachhaltig. Andere meinen, dass das Umsetzen von Kreativität im Code erst später erlernt werden soll damit nicht lauter Spinner herangezüchtet werden oder so, die uns mit …”kreativen Lösungswegen” quälen.
Aber genau das halte ich für ein emanzipatorisches Moment, wenn ich verstehe, dass ich durch das Programmierenlernen nichts weiter als Kreativität und ein Terminal brauche, um eine Lösung für ein Problem zu finden. In diesem Falle ist aber das Problem das Finden des Lösungsweges, den sich der/die AutorIn erdacht hat. Und die Lösung ist, sich zu überlegen, was “man” von einem wohl wolle. Eigentlich fände ich es besser, wenn man genau den einen Lösungsweg nicht verwenden dürfte und nur drumrum programmieren darf. Aber darüber dürft ihr euch gerne in den Kommentaren kloppen.
4. Langeweile
Das eingangs erwähnte Beispiel wird wie folgt fortgesetzt:
Great! We can now summon the value
10by calling out the namemy_variablewhenever we need it.Set the following variables to the corresponding values:
my_intto the value7
my_floatto the value1.23
my_boolto the valueTrue
Und dann tippst du die ganze Scheiße wieder ein und hast gelernt, wie man Scheiße eintippt.
Das ist natürlich ein furchteinflößendes Beispiel, später wird es doch komplexer, aber die Langeweile wich nie von mir. Dabei kann Programmierenlernen Spaß machen. Jawohl:
>>>>> PROGRAMMIERENLERNEN KANN SPAß MACHEN! <<<<<
Zum Beispiel wenn man mit dem genialen, aber betrunkenen Bukowski der Online Tutorials Programmieren lernen: Learn Python the Hard Way. Nachdem Plom und ich sicher eine halbe Stunde schweigend und gelangweilt die Code Academy Übungen gemeinsam nachprogrammierten, fasste er sich irgendwann ein Herz und überredete mich, stattdessen mit LPtHW anzufangen. Glücklicherweise!
Ich habe das Tutorial keineswegs als “schwieriger” wahrgenommen. Im Gegenteil, ich hatte Spaß daran und das Gefühl, innerhalb kurzer Zeit sehr viel zu lernen. Außerdem kicherte ich über Aussagen wie
Every programming language has some kind of way of doing numbers and math. Do not worry, programmers lie frequently about being math geniuses when they really aren’t. If they were math geniuses, they would be doing math, not writing ads and social network games to steal people’s money.
“Learn Python the Hard Way” ist lustig, herausfordernd, klug und unterhaltsam. Und er hat sogar einen wunderschönen Absatz für “Smarties” parat um klarzustellen, an wen sich das Buch richtet:
If you are reading this book and flipping out at every third sentence because you feel I’m insulting your intelligence, then I have three points of advice for you:
- Stop reading my book. I didn’t write it for you. I wrote it for people who don’t already know everything.
- Empty before you fill. You will have a hard time learning from someone with more knowledge if you already know everything.
- Go learn Lisp. I hear people who know everything really like Lisp.
For everyone else who’s here to learn, just read everything as if I’m smiling and I have a mischievous little twinkle in my eye.
Hihihihihihihi! I will!
Der Kurs auf LPtHW beginnt charmanterweise mit einer Einführung für solche, die noch nie mit einem Terminal und Editor gearbeitet haben. Noch viel charmanter ist, dass er sogar einen Command Line Crash-Kurs zur Verfügung stellt. Nach so etwas habe ich übrigens schon lange gesucht, für Leute die ich davon zu überzeugen versuche, dass ein Terminal überlegen ist. Und spätestens seit der Einführung namens “Shut up and shell” bin ich komplett missioniert worden:
You are not going to destroy your computer. You are not going to be thrown into some jail at the bottom of Microsoft’s Redmond campus. Your friends won’t laugh at you for being a nerd. Simply ignore any stupid weird reasons you have for fearing the command line.
Why? Because if you want to learn to code, then you must learn this. Programming languages are advanced ways to control your computer with language. The command line is the baby little brother of programming languages. Learning the command line teaches you to control the computer using language. Once you get past that, you can then move on to writing code and feeling like you actually own the hunk of metal you just bought.
#Hach!
Die erste Lektion beginnt mit dem gewöhnlichen ersten Geschnupper an der “print”-Funktion und viel Getippe. Dazu gibt es nach jeder Lektion ein paar “Study Drills”. Danach lernt man sofort, wie Kommentare erstellt werden (nämlich mit Octothorpes!) und schon geht’s los mit dem ersten Rechenprogramm, das gleich alle Operatoren und Eigenheiten einführt, die aber durch die Analyse des Codes und des Outputs dechiffriert und erklärt werden können. Daher ist eine der “Study Drill”-Aufgaben, jede Zeile mit einem Kommentar zu versehen, gar nicht mal so blöd.
print "I will now count my chickens:" # String wird geprinted, danach die Aufgabe gelöst print "Hens", 25 + 30 / 6 # String wird geprinted, danach die Aufgabe gelöst, als erstes 25*3, dann Modulo print "Roosters", 100 - 25 * 3 % 4 print "Now I will count the eggs: " print 3 + 2 + 1 -5 + 4 % 2 - 1 / 4 + 6 print "Is it true that 3 + 2 < 5 - 7?" # Vergleich, gibt True oder False aus print 3 + 2 < 5 - 7 print "What is 3 + 2?", 3 + 2 print "What is 5 - 7?", 5 - 7 print "Oh, that's why it's False. " print "How about some more." # String, dann Vergleich print "Is it greater?", 5 > -2 print "Is it greater or equal?", 5 >= -2 print "Is it less or equal?", 5 <= -2
Als nächstes wird die Python Shell dazu genutzt, Rechenaufgaben zu lösen. Indem ich einfach “Python” in mein Terminal tippe, verwandelt sich mein Terminal mittels Magie in eine Python Shell und ich kann Python Befehle direkt ausführen (bzw. interpretieren lassen). Dadurch habe ich eigentlich eine Art Rechner (Calculator) zur Hand. Das sieht dann z.B. so aus:
In der ersten Zeile, lasse ich berechnen, ob es mein Statement “3 ist kleiner als 4″ wahr ist. Und Python sagt “True” dazu. Dann lasse ich ein bisschen komplexere Aufgaben ausführen, um schön viel grüne Ziffern auf meinem Terminal zu sehen. Plom stellte mir dann die Aufgabe, herauszufinden, wie ich wieder aus der Python Shell heraus komme. Ich probierte es mit Strg+C, mit “EXIT”, übersah, dass die Antwort bereits in der Fehlermeldung stand und fand dann irgendwann raus, dass Strg+D die Antwort war. Dann versuchte ich meinen Computer kaputt zu machen und potenzierte eine sehr große Zahl mit einer ebenfalls sehr großen Zahl. Aus Gründen, die ich in Assembler gelernt, verstanden und mir gemerkt habe (!), funktioniert das nicht.
Ich bin unheimlich froh darüber, erneut einen kleinen Motivationsschub bekommen zu haben, sicher spielt es auch eine große Rolle, dass wir jetzt wieder gemeinsam programmieren. Das würde ich eh aus den vielen Erfahrungen diesen Jahres schlussfolgern: Gemeinsam Programmieren Lernen ist Bestes Programmierenlernen. Heute Abend ist schon die nächste FLP-Session und gestern Abend versuchte ich eine Beleidigungsmaschine in C zu programmieren. Es geht also weiter und ich hoffe, vor Weihnachten noch ein paar Fortschritte machen zu können. Jedenfalls kann ich jetzt schon Learn Python The Hard Way empfehlen, natürlich auf Vorbehalt, da ich den Kurs gerade erst angefangen habe. Aber Spaß habe ich damit auf alle Fälle.
Und zu Weihnachten solltet ihr selbstverständlich allen, die euch lieb und teuer sind, den GRATIS-Terminal-Crash-Kurs schenken. Damit das weniger erbärmlich, unangemessen und vernerdet wirkt, könnt ihr den ja ausdrucken oder so. Dann sind sie auch dazu gezwungen, alles einzutippen :3


Liebe Fiona,
was fuer ein schoener Artikel. Macht richtig Spass zu lesen. Du hast einfach mit allem gesagtem Recht, besonders mit der Betonung der Gemeinsamkeit.
Danke fuer den schoenen Blogpost.
Dankeschön
“Ich persönlich halte diesen Ansatz nicht für nachhaltig. Andere meinen, dass das Umsetzen von Kreativität im Code erst später erlernt werden soll damit nicht lauter Spinner herangezüchtet werden oder so, die uns mit …”kreativen Lösungswegen” quälen.
Aber genau das halte ich für ein emanzipatorisches Moment, wenn ich verstehe, dass ich durch das Programmierenlernen nichts weiter als Kreativität und ein Terminal brauche, um eine Lösung für ein Problem zu finden.”
amen!
Deswegen ist Project Euler (wenn man schon ein bischen programmieren kann) so super, man hackt irgendwie seine Lösung hin und kann danach hunderte andere und oft bessere Wege sehen!
Hey c3p hattest du das schonmal ausgeführt? Könntest du trotzdem oder ansonsten noch einmal erklären, was es mit dem Project Euler auf sicht hat? Dankeschön!
Ich kann c3p nur zustimmen. Bei http://projecteuler.net/ geht es darum, “einfache” kleine Programmieraufgaben zu lösen. Die Sprache ist egal. Wenn man das richtige Ergebnis einreicht, bekommt man Zugriff auf ein Forum, in dem die Lösungswege besprochen werden, und manchmal auf ein PDF, das sich theoretischer mit der Problematik auseinander setzt.
Eigentlich wollte ich demnächst sowieso mal darüber bloggen, aber dann missbrauche ich diesen Kommentar mal als kleinen Test dazu
Die seit 2001 existierende Website Project Euler [0] ist wunderbar geeignet um analytisches und algorithmisches Denken zu lernen und Programmierkenntnisse zu verbessern.
Wie ich selbst als Tutor in einem Praktikum feststellen musste, fällt es Anfängern oft schwer eine neue Programmiersprache zu lernen, insbesondere wenn es ohne klares Ziel geschieht – Die Sprache also nur um sich selbst (und zum bestehen des Kurses) gelernt werden soll.
Project Euler stellt Aufgaben in ansteigenden Schwierigkeiten dar, die zwar teils durch scharfes hinsehen [1], in meisten Fällen [2,3] jedoch Computergestützt gelöst werden sollten.
Persönlich nutze ich Project Euler immer, wenn es darum geht die ersten Schritte in einer neuen Programmiersprache zu machen, dementsprechend hässlich (Brute-Force ole) sehen dann oft auch die Lösungen aus.
Nachdem ein Problem vom Benutzer erfolgreich gelöst worden ist, wird ein Forum zum jeweiligen Problem freigeschaltet, in dem jeder seinen Lösungsweg posten kann. Dementsprechend viele Lösungen in vielen unterschiedlichen Sprachen kann man dann dort bewundern, zwischen K oder Perl einzeilern und 30 Zeilen Java ist alles dabei. Bei Aufgaben zu denen es auch eine analytische Lösung gibt (also zB eine Formel gibt, die ein Mathematiker vor 400 Jahren entdeckt hat) wird auch nochmals diese gesondert vorgestellt.
Gerade diese Diversifikation und Freiheit in der Entwicklung des Lösungswegs macht den Reiz des Projekts aus, es wird überdeutlich, dass es eben nicht “den einen richtigen Weg” gibt, nur verschiedene Lösungen in unterschiedlichen Sprachen mit längeren oder kürzeren Laufzeiten.
[0] http://projecteuler.net/
[1] http://projecteuler.net/problem=8
[2] http://projecteuler.net/problem=67
[3] http://projecteuler.net/problem=163
P.S. Ich habe bisher 26 Probleme gelöst, Einschränkend muss ich noch sagen, dass auch dies nur eine Art ist sein Programmieren zu verbessern, so bekommt man es dort zB kaum mit Klassen und Vererbungen zu tun.
Hi,
ich hatte vor ca. einer Woche eignetlich einen geschrieben, aber einen Browser-fuckup dabei, kannst du mal kurz prüfen ob er vielleicht im Spam hängengeblieben ist (waren 5 Links drin). Sollte der in eine paar tagen nicht da sein, gehe ich davon aus, dass er nie angekommen ist und schreibe ihn einfach nochmal.
Tjo fiona, annähernd ein jährchen verfolge ich das hier nun, wird zeit für ein fazit.
aus meiner sicht sieht dein stand so aus:
Wissensstand irgendwo zwischen arrays, schleifen, funktionen und scopes, mit anderen worten: finster.
Das ist in etwa da, wo man nach 2 tagen ernsthafter beschäftigung mit dem Thema und null vorwissen ist.
fiona lernt nicht programmieren, fiona redet nur davon, was sie wie wo stört, wo die motivation fehlt, welches howto und welcher ansatz richtig ist, kurzum: sie schwafelt.
Stell dir mal die frage: was kannst du? was hast du gelernt? du kannst dir in ner schleife irgendwas hochzählen lassen, und das nach einem jahr “lernen”. das ist schlicht gar nichts, totalversagen. Nimm einen beliebigen programmierkurs von deiner uni, 2 oder 3 SWS und nach einem halben jahr hat jeder eine projektarbeit abzuliefern, also irgendeine echte, fertige anwendung, webapp, was auch immer, je nachdem wo der fokus war. und diese kurse sind schon simpel, “Programmieren für Sozialwissenschaftler” hiess einer bei uns, wo sie als projekt am ende ein javaprogramm mit der üblichen populationssimulation “du hast eine welt aus so und so vielen feldern, da sind tiere drauf, tiere die nebeneinander stehen vermehren sich, tiere die nicht an essen angrenzen sterben, simulieren XX generation, usw”. Oder “Programmiere ein monopoly spiel”, auch sehr beliebt. Das sind alles sachen die nach einem halben jahr wenig beschäftigung mit dem thema einfach drin sein sollten – sie tun es nach der doppelten zeit bei dir nicht mal im ansatz.
Übrigens, dass man programmieren am besten zu zweit lernt ist blödsinn. am besten lernt man es alleine mit einem buch auf dem tisch, der möglichkeit jemanden erfahrenen ab und zu zu kontaktieren und durch übung, übung, übung.
Programmieren lernen ist einfach fleiss. Gut programmieren lernen heisst möglichst viel programmieren. Das einzige was dabei zu zweit besser klappt, ist sich abzulenken.
Programmierkurs an meiner Uni… Gute Idee eigentlich!
Ich muss Adam etwas widersprechen. Es geht doch hier nicht darum, einen Schein an der Uni zu machen und entsprechend viel Leistung in eine effektive Methode zu stecken um schnell ein paar Zeilen Code hinzuklatschen. So wie ich den Blog wahrgenommen habe, ging es Fiona darum, alles von Grund auf zu lernen[Assembler,C], vielleicht sogar zu verstehen? Da liegt ein gewaltiger Unterschied zu den “Projektarbeiten” die an Unis so abgeliefert werden, da ist das Verständnis meiner Erfahrung nach nicht sehr weit fortgeschritten. Ohne weiteres würde ich Fiona jetzt schon zutrauen eine läppsche Populationssimulation zu programmieren.
Den Schritt zu Python verstehe ich jetzt zwar auch nicht genau, aber ein bisschen Konsolenarbeit ist sicherlich nie verkehrt um in einer anderen Sprache nochmals das in C gelernte zu wiederholen. Nur eines solltest DU Fiona nicht vergessen, Objektorientiertes Programmieren
…
Alles in allem ist das hier einer meiner Lieblingsblogs, mach weiter so!
>Ohne weiteres würde ich Fiona jetzt schon zutrauen eine läppsche Populationssimulation zu programmieren.
no way. das ist ja eben der punkt, ich behaupte sie kann nach dem jahr quasi gar nix.
@fiona: Vielleicht irre ich mich und du kannst doch viel mehr als gedacht. Traust du dir so eine populationssimulation zu?
Folgender vorschlag: kriegst du die bis weihnachten hin, ziehe ich den hut und lasse folgendes springen:
ich schenk dir programmiererzubehör im wert von hundert euro von getdigital.de. nerd gedgets, hello-world-tshirts, du suchst aus was du magst.
nimmst du an und kriegst es nicht hin, bekomme ich ne flasche berliner luft.
Ganz klar, die klassische Messlatte für “Ich kann programmieren” ist das erfolgreiche Lösen einer Aufgabe mit Hilfe eines Programms.
Und diese Aufgabe ist sogar besser als “Programmier mal ein Programm, was die ersten 100 Primzahlen ausspuckt”, mit der ich mal bei einem Jobinterview konfrontiert wurde (ja, es bewerben sich öfters Leute als Entwickler, die nicht programmieren können), weil sie keine nennenswerten mathematische Kenntnisse voraussetzt. So ein Simulator, hat nur wenige, einfache Regeln (siehe auch Game of Life, Zellulärer Automat).
Ansonsten würde ich gespannt zu erfahren, was Fiona unter Programmieren versteht. Die beste Definition, die ich bisher gesehen habe, entspricht dem Drehen des Programmschalters an einer Waschmaschine.
Ich grübel derweil weiter über eine Programmiersprache für Frauen nach, Projektname ZICK.
@adam und @marc Eure Kommentare sind eindeutig ein Fall für hatr.org. Da ihr den Kram, den ihr geschrieben habe, anscheinend ernst meint: 1. Lasst doch die Leute einfach mal in Ruhe lernen was sie wollen, wann und wie lange sie wollen und mit wem sie wollen. Das geht euch gar nichts an. 2. Arrays, Schleifen und Funktionen gehören sehr wohl zum Kern des Programmierens, wie die Säge zur Tischlerin. Wenn man diese Grundlagen verstanden hat, kann man eigentlich sehr viel programmieren. Welche Methoden in welchem Namespace sind, wofür man sie anwenden kann und wofür nicht, das ist alles Sache von Erfahrung und Geduld, sich die Dokumentationen der Progammiersprachen anzuschauen.
@fiona Ich persönlich bin schon ein Fan der step-by-step Methode und habe selbst bei den ‘Hallo Welt’ Progammen immer etwas gelernt. Ich verstehe, dass das Zuweisen von Werten zu Variablen nach ein, zwei Versuchen langweilig wird. Trotzdem fand ich am Anfang der Kurse, die ich gemacht habe (JS und PHP), die Flachheit der Lernkurve ganz gut. Jetzt könnte ich eine andere Sprache und vor allem die komplizierteren Konzepte schneller lernen, die man, glaube ich, aber auch wirklich erst braucht, wenn der Code komplizierter wird. Jedenfalls viel Spaß und viel Glück weiter. Danke auch für die Hinweise auf ‘Lern was_auch_immer the hard way’, die werd’ ich mir auch mal anschauen.
Also zu 1:
Das hier ist ein blog mit commentfunktion, also kommentiere ich. fiona hat ja das recht mich hier rauszuschmeissen, wenn sie zu harte worte nicht verträgt, tut sie aber nicht. Es soll ja auch leute geben, die direkte kritik zu schätzen wissen.
und 2:
Arrays, Schleifen und Funktionen gehören zu den basics, und genau die anwendung derer testet die angebotene programmieraufgabe.
Dass ich deine Kommentare löschen kann, entbindet dich nicht von einer moralischen Verantwortung, dich sozial verträglich zu verhalten. Und dass ich deinen Kommentar nicht lösche ist keine Zustimmung. Kritik grundsätzlich okay. Aber du hast dich durch deinen Tonfall und durch deine absoluten Aussagen eh schon diskreditiert.
Ich lösche grundsätzlich ungern Kommentare. Es sei denn jemand
1. nervt wiederholt und
2. beabsichtigt und
3. verhält sich wie ein Arsch.
Sei gewarnt :3
>> Tjo fiona, annähernd ein jährchen verfolge ich das hier nun, wird zeit für ein fazit.
Ich lache über deine AdamPyschnyzentristisches Weltbild.
@kimberra: Geht mich nichts an? Ich habe sehr oft hier das Gefühl, das es sich zwar um ein öffentliches Blog handelt (ich hatte davon über den Bericht auf einer Newssite erfahren), aber das letztlich Beschränkungen in Bezug auf erwünschte Nutzer und Reaktionen existieren.
Ausser der Frotzelei am Schluss habe ich nichts böses geschrieben. Legst Du mir vielleicht die Waschmaschine als antifemministische Kritik aus? Die ist wirklich mein Lieblingsbeispiel für’s Wesen der Programmierung (Konfiguration einer universellen Maschine).
Das Testkriterium von Adam ist zudem ein gutes und objektives.
>> Ausser der Frotzelei am Schluss habe ich nichts böses geschrieben.
Achso na dann!
Wenn ich eines nicht mag sind das sexistische Witze.
Wenn ich eines noch weniger mag sind das schlechte sexistische Witze.
(Sagmal, solltest _du_ es nicht besser wissen…?)
Danke für die Stellungnahme Ariakan.
Ach, ich wollte so einen arroganten Kommentar eigentlich nicht mit einer Antwort adeln. Kritiker verwechseln immer wieder ihre individuellen Zielsetzungen mit tatsächlichem Erfolg. Aber da ich vermute, dass Adam nicht allein mit seinen Zweifeln dasteht, kann ich schonmal Stellung dazu nehmen. Auch wenn sein Kommentar viele Aussagen trifft, die wohl auf falschen Annahmen beruhen, aber ich werde da nicht einzeln drauf eingehen.
Adam scheint z.B. zu denken, dass ich Informatik studiere, ich studiere allerdings Europäische Ethnologie. Und hätte er ein Jahr mein Blog verfolgt hätte er die Prioritätenverschiebungen von “ich will Code produzieren können” hin zu “Ich möchte Code verstehen können” sicher mitbekommen. Daher ist die Nummer mit dem “Fleiß” auch ein Kategorienfehler – es ist nicht mangelnder Fleiß, weswegen ich das von ihm angedachte Ziel nicht erreiche – sondern eine Frage des Einsetzens meiner Ressourcen und damit eine Frage der Prioritäten. Dafür ist es wichtig zu verstehen, dass ich einerseits nicht Informatik studiere, FLP also ein Hobby nebenbei ist (daher kann ich dem auch nur einen begrenzten Teil meiner Zeit widmen) und zweitens, dass meine Ziele ganz andere sind.
So wie du es auch ausdrückst, geht es vor allem um das Verstehen und ich verfolge einen ganzheitlichen Ansatz. Diesen Weg habe ich mehr oder weniger absichtlich eingeschlagen. Ich glaube, einer der Herde für Missverständnisse liegt vor allem darin, dass ich denjenigen, die mich kritisieren, die meist selber Experten im Programmieren sind, meist nicht so gut erklären kann, wo ich noch vor einem Jahr stand, während ich das Leuten, die nicht technik-affin sind ohne Weiteres erklären kann. Vor einem Jahr benutzte ich Windows, käme nie auf die Idee, meine Konsole zu bedienen und interessierte mich nur mäßig für Technologie-Themen.
Mittlerweile
- verwende ich den i3-wm,
- habe ich meinen Ethnologie-Schwerpunkt auf Netzkultur und Techniksoziologie gelegt,
- lese ich interessiert Bücher wie “Computerphilosophie”,
- versuche ich mich zu engagieren, indem ich Menschen ermuntere, ebenfalls mit dem Programmieren anzufangen,
- beschäftige ich mich mit den emanzipatorischen Prozessen des Programmierenlernen,
- weiß ich basal wie ein Computer funktioniert
- und ich _verstehe_ was Programmieren ist.
Also wenn du mich per Ja/Nein-Frage fragst, ob ich Programmieren kann, würde ich erstmal mit “Nein, aber…” antworten.
Aber wenn du mich fragst, ob ich meine Ziele erreicht habe, ob ich erfolgreich war, würde ich sagen:
“Ja, und noch viel mehr als das, wow, eigentlich kann ich mein Glück gar nicht fassen”
Und noch ein Wort zur Ideologie und Zielsetzung des Blogs an sich:
Wenn Leute Spaß am Lesen des Blogs haben freut mich das natürlich auch. Ich kenne einige, die sich sonst kaum bis gar nicht mit technischen Themen auseinandersetzen. Für mich ist das Motivieren anderer zum Programmieren ein sehr viel wichtigerer Aspekt als der eigene Erfolg dabei, coden zu lernen. Und wenn nur eine Frau oder ein Mann durch FLP zum Programmierenlernen ermutigt wurde, hat sich die ganze Arbeit schon gelohnt.
nn
Was Fiona sagt.
Und um das mal klarzustellen: Nur weil jemand Autos zusammenbaut, weiß er_sie noch lange nicht, was es alles noch über Autoverkauf, Verkehrsinfrastruktur, Metallurgie, Autoverwendung, Siedlungsmodelle, Suburbanisierung, Erdölraffinerie und -förderung, Kriege über Pipelines und Ölfelder oder auch nur Navigationssysteme zu wissen gibt.
Wie wenig muss man über ein Thema wissen, um ernsthaft zu glauben, dass es genau die EINE Sache gibt, mit der sich eine allgemeine Kompetenz zum Thema prüfen lässt?
Das lässt tief blicken, Herr Pyschny.
Sind Sie sicher, dass Sie sich nicht versehentlich zum absoluten Fachidioten/Arbeitsmarktkanonenfutter haben verbilden lassen?
LOL du hast es erkannt. In wirklichkeit will ich fiona nur arbeiten schicken
Oder aber es geht um folgendes: Sie ist hier mit Tadaa, “Lern all the programmings” und “Programmieren ist das neue Latein” angetreten, hat sich in einem Jahr jeweils nur das vorwort und die ersten Kapitel in 3 verschiedenen lateinbüchern durchgelesen und spricht ständig nur über das wie und die großen vorzüge sowie erkenntnisse des latein lernens statt latein zu lernen.
Den gedanklichen schritt, dass man vielleicht erstmal latein bis zu einen niveau lernen sollte auf dem man in der lage ist, einfache, praktische lateinaufgaben selbst bearbeiten und lösen zu können, macht sie nicht.
Aber lassen wir die hinkenden vergleiche.
Das Problem ist folgendes: Sie hat ein wenig in die thematik reingeschnuppert und glaubt den kern erfasst zu haben, sie glaubt zu verstehen, was programmieren ist. Tut sie aber nicht. Programmieren ist nicht, ein paar variablen werte zuweisen, und ein paar schleifen zu drehen. Programmieren ist eine bestimmte, problemorientierte, systematische, zu algorithmen emergierende denkweise, die sich irgendwann einstellt, wenn man sich damit beschäftigt. Und genau da stecken die erkenntnisse drin, das hat philosophische tiefe und eröffnet grad auch geisteswissenschaftlern ganz neue blickwinkel auf ihre profession.
Wenn man aber auf dem stand von quasi null stehen bleibt, ist das nichts als ein beispiel für die berühmte falle des dunning-kruger-effekts, aus der man kaum wieder rauskommt.
aus der u-bahn, deshalb nur kurz und knapp:
bis jetzt fand ich nicht, dass fiona ihre faehigkeiten ueberschaetzt. im gegenteil, mehrfach habe ich mitbekommen, wie sie sich bemuehte klarzustellen, was sie alles (noch) nicht kann, wenn leute ihr faehigkeiten zusprachen, die sie (noch) nicht besass.
allerdings weiss ich nicht mehr, ob das nur im meatspace oder auch online passiert ist.
ausserdem verbringt sie programmier- und freizeit mit erle und wenn erle fuer irgendwas beruehmt ist, dann dafuer, kompromisslos auf jede schwaeche erbarmungslos und ohne jede ruecksicht auf konvention und sitte aufzuzeigen und auf den_die schwache_n einzudreschen. stell dir einfach einen troll aus fleisch und blut vor.
was die denkweise angeht hast du recht, darum geht es auch, aber warum sollte fiona die nicht entwickelt haben/entwickeln?
dazu empfiehlt sich uebrigens ein philosophischer logikkurs, etwa der von scheffler an der HU.
Ich habe mit diesen Kommentaren immer noch Probleme. Ich denke, dass sich niemand bemüßigt fühlen muss, weil dies hier ein Blog ist, die Autorin (oder den Autor) ausschließlich an den eigenen Vorstellungen von richtig und falsch zu messen. (Das ist ohnehin nicht das, was Öffentlichkeit sein sollte.) Wenn eine Person etwas macht oder etwas lernt, dann tut sie das nicht in erster Linie, um anderen zu gefallen oder deren Vorstellung von ‘tue x und lerne y korrekt’ zu entsprechen. Auch wenn solche Umstände natürlich eine Rolle spielen, wenn ‘wir’ etwas tun, ist euer extrem männliches rumgemotze à la ‘Du kennst Dich ja gar nicht aus Mädel’ nicht zuletzt auch für euch entwürdigend, dadurch dass ihr anderen grundlos ans Bein pinkelt. Kurz gesagt, wenn Dich dieser Blog progammiertechnisch langweilt, und das das einzige ist, was Dich interessiert, musst Du ihn ja nicht lesen.
Was Fiona alles kann und was nicht, kann ich absolut nicht beurteilen und möchte dazu auch keine Wertungen abgeben.
Außerdem sehe ich programmieren keineswegs als eine Art zu Denken; die auch noch der (Geistes)Wissenschaft neue Wege aufzeigen kann. Programmieren ist ein Handwerk, ‘problem- bzw. lösungsorientiert’, wie Du ja auch sagst. Ich kann doch aber auf keinen Fall intellektuell aufregende Fragen per Algorithmus lösen (was heißt hier überhaut lösen?). Das sind (zu meinem Glück) verschiedene Welten und haben ihre ganz eigene Berechtigung – verstehen ist nicht programmieren und umgekehrt.
mir war nicht klar, bzw egal ob du nun männlein oder weiblein bist. und klar muss ich den blog hier nicht lesen, genau wie du meine comments nciht beantworten musst, und dennoch sind wir alle hier, sich einmischen wollen wenn einem etwas missfällt scheint menschlich zu sein =)
zum letzten absatz: falsch. es gibt einige fragen, die man nicht per algorithmus lösen kann und viele, die schon. hängt von den fragen ab. Frage mal einen astronomen, physiker, biologen- klima-, VWL-, hirn- forscher, mathematiker was sie den ganzen tag so machen um sich die welt zu erklären: sie programmieren. programmieren ist mathematik ist probleme und systematiken erkennen und lösen. spieltheorie? ist mathe ist programmieren.
Und die leute beschäftigen sich deiner meinung nach nicht mit intellektuell aufregenden Fragen?
Aber vielleicht ist das auch der punkt: auch Du scheinst das wesen des programmierens noch nicht begriffen zu haben, sonst hättest du den letzten absatz so niemals so formuliert. Wie war das gestern in einem deiner posts? “Arrays, Schleifen und Funktionen gehören sehr wohl zum Kern des Programmierens, wie die Säge zur Tischlerin.” So ist es, aber ne säge macht aus dir keine tischlerin. man sollte ausser der groben holzbearbeitung auch noch ein wenig tischlern lernen, um überhaupt qualifiziert übers tischlern sprechen zu können. und nocheinmal: sägen ist nicht tischlern.
Mir scheint diese ganze Debatte benötigt zunächst mal eine Definition des Begriffs Programmieren. Als Vorschlag zu dieser Frage hätte ich analog dazu ein Beispiel aus dem Handwerk.
Ein Maurer ist ein Programmierer, er legt kleinste Bauelemente zusammen, dass am Ende das gewünschte Ergebnis erscheint. Darüber hinaus gibt es jedoch immer auch einen Architekten, der nach Adams Definition[Wenn ich das richtig verstanden habe] ebenfalls Programmierer genannt wird. Da würde ich eine Trennung empfehlen. Denn es gehört meiner Ansicht nach eben NICHT zu einem Programmierer dazu, dass er Probleme auf abstrakter Ebene in programmierbare Bestandteile zerlegt. Dies ist mathematische Arbeit, Ingeneursarbeit oder auch VWL-Arbeit, entsprechend dem Themengebiet, die mit Hilfe der Programmierung bestimmte Problemstellungen lösen möchte. Allgemein formuliert wäre das in etwa auch der Unterschied zwischen einem Programmierer und einem Informatiker…
Richtig, ich habe hier einfach mal alles Programmierer genannt, einfach darum weil wir uns hier auf akademischer ebene bewegen und fiona von emanzipatorischen momenten beim programmieren spricht. die hat man nicht als code monkey der einfach gesagt kriegt was er zu tun hat und der dann tut. die hat man in der rolle des entwicklers, der eben was entwickelt, also eine problemstellung analysiert und eine lösung entwickelt.
vielleicht schliesst sich hier auch der kreis zu kimberras behauptung, programmierer lösen keine intellektuell aufregende Fragen. so gesehen gebe ich ihr recht, _diese_ art programmierer nicht, denen geht aber auch kein emanzipatorischer prozess ab, keine gedanken zur techniksoziologie und computerphilosophie. ich denke aber dass diese art fliessbandarbeit auch nicht fionas intention war, sondern das kennenlernen der hintergründe, möglichkeiten und mechanismen der programmierung, und die kennt sie eben nach nem ganzen jahr noch nicht, sie könnte nicht mal am fliessband stehen.
Ich lerne seit einem Jahr E-Gitarre und strapaziere damit meine Umwelt.
Was macht meine Frau? Sie fordert mich heraus: ‘Spiel doch mal ein Lied!’, ‘Wieso hast Du mir noch kein Lied vorgespielt?’.
Wobei es bei Ihr mehr Neugier auf ein Resultat ist, als der Spass, mich herauszuforden.
Nun kann ich jetzt schon ein paar Techniken, ettliche Akkorde, eine Menge Riffs und kann sogar zwei Songs in einer einfachen Version spielen, blöderweise hören die sich nur mit Begleitung gut an, die kann man nicht am Stück auf einer Klampfe durchspielen.
Ich habe noch nicht das Gefühl, dass ich ein Lied so gut kann, dass ich es meiner Frau vorspielen möchte. Deswegen wird auch niemand mich behaupten hören,
dass ich bereits E-Gitarre spielen kann.
So sehr ich über Adams Challenge an Fiona schmunzeln muss, ich habe da so meine Zweifel, dass Frauen sich herausfordern lassen. Die winden sich da eher raus (männliche Sicht) bzw. halten so etwas für idiotisch (weibliche Sicht).
MIt dem Hinweis auf mangelnde Intellektualität liegst Du komplett daneben bzw. wir verstehen beide etwas sehr verschiedenes unter Programmierung.
Der gute Touring kam ja auf seine Touring Maschine (ein mögliches theoretisches Model für einen Computer), weil er sich mit den Entscheidungsproblemen des berühmten Mathematikers David Hilbert auseinandergesetzt hat, also einer wichtigen Fragestelllung der Grundlagen der Mathematik.
In den letzten Jahren erleben wir die Verschmelzung von Konzepten aus der Quantenmechanik und der Informatik, die einsetzte, nachdem Feynmann auffiel, das herrkömliche Computer erstaunlich lausig beim Lösen quantenmechanischer Probleme sind.
“Alle koennen nun mal nicht Karlsson heissen. Das geht einfach nicht.”
Abgesehen davon gibt es ernsthaft wichtigere Fertigkeiten um die man sich heute
muehen sollte. Wer allgemein dazu in der Lage ist sollte sich handwerkliche Faehigkeiten
zulegen und einiges mehr, sodass er/sie moeglichst viel weitgehend
allein tun kann (wobei es selbstverstaendlich alles andere als nachteilig ist,
wenn man mit allen moeglichen Menschen umgehen kann):
Huette bauen, Garten bewirtschaften, Kleidung fertigen und vieles mehr.
Und wenn nicht schon laengst erledigt: Luegen-Glotze auf den Muell schmeissen!
Die Zeiten werden bald rauher und da ist Programmierenkoennen sicher nicht mehr
sonderlich gefragt.
Fuer einen ziemlich deutlichen aber nicht zu knueppelharten Einstieg (wie man’s nimmt):
http://www.kenfm.de/
oder auf YouTube nach KenFM suchen.
Etwas ruppiger aber auch noch “human” ist
Google: alles schall und rauch
Natuerlich geht es noch deutlicher im Sinne von haerter, aber was nuetzt es, wenn die Seiten
gleich weg geklickt werden…
Alles Gute und Ciao
du willst also sagen, dass die raffinierte, verfeinerte, abstrahierte, virtuelle arbeit nicht mehr gefragt sein wird und das ehrliche, deutsche, wuerdige handwerk obsiegen wird?
und, dann du sagst noch luegen-glotze und nicht elektrojude?
du enttaeuschst mich, ueblicherweise sind die weltuntergangsapologet_innen etwas transparenter bezueglich ihrer ansichten. : (
Ja ja, guck die Tagesschau, lese den Spiegel
und spotte nur weiter. Es ist ja nicht so, dass ich nicht
selbst mal in der Situation war.
Findest Du es nicht selbst schon sehr merkwuerdig, dass
alleine das Wort “Handwerk” in Dir Assoziationen weckt,
die gar nichts mit Handwerk zu tun haben und schon gar nicht in dem von mir gemeinten Sinne?
Es geht nicht um Handwerk im DEUTSCH-wirtschaftlichen Sinne, sondern um
Handwerk, das auch Dir moeglicherweise das (Ueber)Leben sichert
oder es hoffentlich wahrscheinlicher macht. Das sollte alleine schon aus
den aufgefuehrten Beispielen klar geworden sein. Aber da hast Du auch
gleich ein Beispiel am eigenen Leibe erfahren, wie die – und das
Wort kannst Du jetzt interpretieren wie Du willst – VOLKserziehung funktioniert
um nicht zu sagen funzt.
Da Du Die KenFM-Videos offenbar noch nicht gesehen hast, hier mal zwei
Empfehlungen aus VIELEN anderen,
die ich nur aufgrund Deines Kommentars herauspicke:
1. Suche auf YouTube:
KenFM im Gespräch mit: Evelyn Hecht-Galinski
(Frau Hecht-Galinski ist nebenbei (fast logischerweise) Juedin)
2. Suche in YouTube:
KenFM über: Rechts & Links
Es gibt noch viele weitere Beitraege von KenFM, die man
sich mal hellwach zu Gemuete fuehren sollte! …durchaus auch
DRINGENDERE, aber dazu muesste man sich erstmal zu einer gewissen Offenheit durchgerungen haben.
Weisst Du wer Ken Jebsen ist, wo er “vorher” gearbeitet hat,
Christoph Hoerstel (Schreibweise jetzt nicht sicher), Frider Wagner und einige andere?
Obige haben fuer die Luegen-Glotze bzw. die Luegen-Medien im allgemeinen gearbeitet!
Dann lese oder hoere Dir mal durch, wie es kommt, dass sie das jetzt nicht mehr tun,
aber nach Moeglichkeit nicht (nur) bei Wikipedia.
Na ja, was soll’s…
Erfahrungsgemaess bringen solche Erklaerungen nichts.
Schau es Dir halt an oder lass es.
Deine Reaktion ist jedenfalls typisch fuer einen Pawlowschen Hund,
wie er von unseren Politikern und Medien produziert wird und wie gesagt:
ich bin da um etwas Nachsicht bemueht, da ich selbst mal nicht anders war,
moeglicherweise sogar in Teilen noch bin.
===
Tut mir leid – der OT-Kommentar ist so kurz wie moeglich
und ich versuche es auch dabei zu belassen.
Liebe_r OllePolle,
keinesfalls wollte ich der Tageschau das Wort reden. Im ö-r Rundfunkt und auch in der Presse liegt vieles im Argen. Aber das ist noch lange kein Grund, sich in einem geschlossenen Verschwörungsdenken zu verkriechen.
Kritik gibt es nämlich auch in intelligent und durchdacht. Und dann fällt auch erst auf, wie geschlossenes Verschwörungsdenken à la mode du Ken Jebsen Herrschaft stützt und reproduziert. Also deinem eigentlichen Interesse völlig zuwider läuft.
Wünsch’ dir doch mal das hier zur Weihnacht:
Entschwörungstheorie. Niemand regiert die Welt
@Nicolai

Also, ich werde mir das Buch sicher nicht zu Weihnachten wuenschen.
Die folgende Zeitverschwendung durch den Buchautoren hat mir eigentlich gereicht (Dauer: ca. 1h10m):
Wer es sich unbedingt antun will und es auch zuende schafft – kommt voll ueberzeugend rueber
- ich muss gelegentlich unterbrechen und tanze zwischen diesem Kommentar
und dem Video hin und her
- deshalb ist der Kommentar auch so beherrscht
Typisches MSM-Geschnatter, das Du Dir so in jeder entsprechenden Talkshow anhoeren kannst
und das sogar mit weniger Schlaftablettenwirkung.
Wer braucht das? Eigentlich nur, wer sich nicht sicher ist, ob er/sie sich mit “sowas” ueberhaupt befassen soll
oder gar DARF und deshalb so eine… “Beschreibung” fuer noetig erachtet.
Ein Ichschmeissmichwegzitat aus dem Video muss ich aber bringen:
“Verschwoerungstheorien heissen eigentlich nur bei den Verschwoerungstheoretikern so.”
muahahahaha… oh Mann!
…und der Rest ist wenig brauchbarer.
Ich kann nur DRINGEND empfehlen sich SELBST sein EIGENES Bild zu machen
und auch mal da hin zu gucken wo man nicht hingucken soll.
…und genau das will der Autor, oder sagen wir besser der Vortragende, meiner Ansicht nach verhindern.
Warum? Tja… keine Ahnung; vielleicht will er ja noch Karriere machen
oder hat sich ‘ne “politisch korrekte” Perle angelacht – ist mir eigentlich aber auch schnuppe.
“Es ist nicht alles schwarz oder weis” ist immerhin gar nicht so verkehrt
und nicht nur deshalb reicht es auch nicht sich drei Artikel auf einem Blog X durchzulesen
und schon gar nicht sich auf die MSM zu verlassen oder auf solche wie diesen Kulla,
der in ueber einer Stunde nicht auf eine einzige seiner “VT” mal beispielhaft eingegangen ist,
auch wenn er des oefteren den Begriff “9/11″ erwaehnt
und sich insofern jede Menge Gelegenheit verschafft hat.
===
Den Rest ueberlasse ich dem aufmerksamen Betrachter.
===
PS: Was ist “geschlossenes Verschwoerungsdenken”? Sachen gibt’s…
Es gibt Verschwoerungen. Jede bloede Buerointrige ist eine. Ganz normale Kampagnen sind welche. Jedes dritte Meeting beschliesst, sich gegen irgendwen zusammenzutun und das nicht an die grosse Glocke zu haengen. Daran ist nichts ungewoehnliches und nichts verwerfliches.
Das ist damit gemeint, dass nur Verschwoerungstheoretiker_innen Verschwoerungen so nennen.
Es ist also angebracht und vernuenftig von der Existenz von Verschwoerungen auszugehen. Das heisst aber nicht, das jeder Bloedsinn Ergebnis einer Verschwoerung ist. Die Dinger machen Arbeit und sind einigermassen riskant fuer das eigene Ansehen.
Die meisten Dinge sind das Ergebns widerspruechlicher Interessen, mancher Verschwoerung und von Unfaehigkeit. Deshalb ist es Wahnsinn, davon auszugehen, dass einen eine Verschwoerung beherrscht. Zumal vieles durch gesellschaftliche Organisationsprinzipien und damit abstrakte Herrschaft bestimmt wird, an der man auch selbst teil hat.
Offenes Verschwoerungsdenken ist es also Interessen und die Moeglichkeit einer Verschwoerung in Betracht zu ziehen, ohne, wie das im geschlossenen Verschwoerungsdenken passiert, permanent Verschwoerungen zu vermuten, um die eigene Verstrickung in die Gesellschaft zu leugnen, wo nur abstrakte Verhaeltnisse walten.
Na gut, belassen wir es dabei
und harren wir der Abstraktionen die da noch kommen
und wieviel davon wir bereit sind am eigenen Leib zu ertragen.
Letzter Hinweis:
http://alles-schallundrauch.blogspot.de/2012/12/als-mundiger-burger-ist-es-zeit-zu.html
Macht’s gut.
Guter Post! Sehr guter Post!
Programmieren lernen muss Spass machen und codeacademy versagt dabei.
Jaja ich weiss du hast hunderttausende von Sätzen geschrieben dass wir dich lernen lassen sollen wie DU willst. Es war aber wirklich nur gut gemeint.
Auch hier möchte ich dir nochmal den Tip geben: Wenn du eine Idee für ein Programm hast (und sei es auch noch so klein [was am anfang wohl besser ist]) schreibt es!
Auch wenn du noch nicht alles kennst was du dafür brauchen wirst, er das Erfolgsgefühl wenn es funktioniert motiviert unheimlich.
Take it or leave it, ich nehms dir nicht übel, also unterlasse bitte einen rant darüber dass ich dir nichts empfehlen soll.
Aus meinem eigenen Lernerfahrungen bin ich etwas skeptisch gegenüber Tutorials, die nur auf kleine exercises ausgelegt sind. Da sehe ich da weniger Unterschied zwischen CodeAcademy und der Learn-Something-the-Hard-Way-Reihe, beide sind sehr Baustein-artig angelegt. Das kann dann irgendwann wieder frustrieren, so finde ich zumindest.
Andere Tutorials lesen sich besser als durchgängiger Text, so dass man nicht ständig an den Übungen stolpert, wenn man es z.B. nebenbei oder abends im Bett (jaja..) liest. Das gibt einem dann die Gelegenheit, praktisch dem Autor über die Schulter zu schauen und dadurch etwas größere Sprünge zu machen, eine Übersicht zu bekommen.
Damals™ hat mit „Dive Into Python“ von Mark Pilgrim gut geholfen, einen guten Überblick in Python zu bekommen. Das gibt es immer noch unter [1]. Seitdem hat er auch ein „Dive Into Python 3“ [2] geschrieben. Nun ist DiP2 vielleicht einen Hauch antiquiert, aber DiP3 beschreit Python 3, was sich noch nicht durchsetzen kann. Die aktuelle Wirklichkeit ist irgendwo in der Mitte, aber viele grundlegende Konzepte von Python sind sowohl in 2 als auch in 3 gleich. Und wenn nicht, dann sind die Unterschiede beschrieben. Auch immer noch gut ist „How To Think Like a Computer Scientist“ [3].
Ich bin ein Fan von Tutorial-Shopping, Querlesen, Rückwärtslesen. Für mich fand ich, dass ich so besser lerne, denn sklavisch jeder einzelnen Übung zu folgen. Deswegen auch nur diese Anmerkungen. Vielleicht stößt Du irgendwann wieder gegen eine kleine Wand; nicht aufgeben, sondern einfach mal woanders schauen, etwas hier lesen, etwas da lesen und dann wieder zurück kommen.
(Das soll übrigens nicht heißen, dass praktisches Ausprobieren schädlich ist, im Gegenteil. Aber man muss nicht jeden Kleinscheiß ausprobieren. Oft reicht es auch, zu lesen, dass 4*5 gleich 20 sind. Und am meisten lernt man immer noch, wenn man selbst versucht, mit eigenen Vorstellungen ins Blaue zu programmieren und dann den Konflikt mit der Realität der Programmiersprache auszumachen und dadurch zu lernen. Ein kleines Projekt kann da toll sein. Oder frustrierend. Aber toll, wenn es dann läuft.)
[1] http://www.diveintopython.net/
[2] http://getpython3.com/diveintopython3/index.html
[3] http://www.greenteapress.com/thinkpython/html/
Oh wow, vielen Dank. Jetzt erst deine vielen Links mal angeschaut. (Ich hab damals irgendwann aufgehört die Kommentare hier zu lesen, aus Gründen.
Gleich mal anschauen und gucken, ob die sich für eine Linkschleuder eignen. Danke!
[...] hatte zwar in diesem Post schon etwas erklärt, was man mit Python so anstellen kann, aber der vollständigen Dokumentation [...]