Worum es geht
»Coding for Fun mit Python« ist kein Lehrbuch, das Befehl für Befehl durch die Sprache führt. Jedes Kapitel baut ein kleines, vollständiges Programm: erst eine Uhr, dann ein Spiel, dann eine Simulation. Unterwegs lernt man die Sprache und ganz nebenbei ein gutes Stück Informatik – vom Minimax-Algorithmus über RSA bis zu genetischen Algorithmen.
Die Idee dahinter: Python ist leicht zu lesen und schnell geschrieben. Damit eignet es sich perfekt, um Ideen einfach auszuprobieren. Genau das soll auch diese Website ermöglichen: Code lesen, ändern, ausführen und sehen, was passiert.
| Titel | Coding for Fun mit Python |
| Autor | Lars Heppert |
| Verlag | Galileo Press, Bonn (Galileo Computing), heute Rheinwerk Verlag |
| Erschienen | 2010, 325 Seiten, broschiert, mit CD |
| ISBN | 978-3-8362-1513-8 (Buch), 978-3-8362-2280-8 (E-Book) |
| Status | vergriffen |
| Neuauflage | in Planung, verlegt von der NyxAI GmbH (geplant) – mehr dazu |
Die Verlagsseite zum Buch gibt es noch beim Rheinwerk Verlag, inklusive Leseprobe.
Die Kapitel und ihre Programme
- 1Es schlägt 12
Eine analoge Uhr, erst in 2D, dann mit OpenGL im 3D-Raum.
- 2Game of Life
Conways zellulärer Automat – mit langsamem Sterben und in 3D.
- 3Snake
Das Spiel mit eigenem Levelformat, Kollisionen und einem Exkurs zum Refactoring.
- 4Lszqupmphjf?!
Kryptografie von der Skytale über Caesar und Vigenère bis RSA.
- 5Statistik: das Ende jeglicher Intuition
Das Ziegenproblem und Roulette-Strategien in der Simulation.
- 6Tic Tac Toe
Ein unschlagbarer Gegner dank Minimax-Algorithmus.
- 7Ich verstehe nur Bahnhof – der Goethe-Generator
Texte aus Worthäufigkeiten und Markow-Ketten.
- 8Evolution im Computer
Eine Mondlandung mit echter Physik – und ein genetischer Algorithmus, der das Landen lernt.
- 9Spiderman
Ein Webcrawler mit Beautiful Soup, SQL und einem Suchindex.
- läuft nicht im Browser (siehe unten)
- 10Pendelkette – klack, klack, klack
Vom einzelnen Pendel zur Pendelkette für den Schreibtisch.
- 11SOS – Save our Screens
Bildschirmschoner, Reduktionismus, Chaos und Fraktale.
Was sich seit 2010 geändert hat
Die Programme im Buch sind für Python 2.6 geschrieben und nutzen pygame und OpenGL für die Grafik. Für diese Website wurden sie überarbeitet:
- Python 3 statt Python 2:
printist eine Funktion,/teilt immer mit Nachkommastellen,xrangeheißtrange, Texte sind Unicode. - Browser statt Fenster: Statt pygame und OpenGL zeichnen die Programme mit c4f, einer kleinen Zeichen-API dieser Website. Die Logik der Programme bleibt dabei erhalten.
- Ein
awaitpro Bild: Animationen geben dem Browser nach jedem Bild kurz die Kontrolle zurück. Auf jeder Beispielseite steht unter »Vom Buch in den Browser«, was genau geändert wurde, und du kannst das Original aus dem Buch daneben aufklappen.
Kapitel 9 (»Spiderman«, ein Webcrawler mit Beautiful Soup und einer SQL-Datenbank) läuft nicht im Browser: Browser dürfen aus Sicherheitsgründen keine fremden Websites herunterladen und auswerten.
Neuauflage in Planung
Eine neue Ausgabe von »Coding for Fun mit Python« ist in Planung, verlegt von der NyxAI GmbH (geplant). Der Grundgedanke bleibt: Programmieren lernt man am besten an Projekten, die Spaß machen. Dazukommen sollen die großen Themen von heute – künstliche Intelligenz und Decision Intelligence, also Entscheidungen, die auf Daten und Modellen beruhen.
Geplant sind derzeit diese Themen:
- Klassiker, modernisiert: die Coding-for-Fun-Projekte in aktuellem Python – von der Uhr über das Game of Life und Snake bis zu Verschlüsselung, Evolution und Fraktalen.
- Python und KI: eigene Agenten, der Umgang mit LLM-APIs und kleine Projekte mit maschinellem Lernen.
- Decision Intelligence: bayessche Statistik, Monte-Carlo-Simulation, Optimierung, Multi-Armed Bandits und Reinforcement Learning. Einführungen dazu gibt es schon bei smartlytics.de.
- Ein Schach-KI-Projekt: vom Minimax aus dem Tic-Tac-Toe-Kapitel zu einer echten Schach-Engine. Wie weit das reichen kann, zeigen BobbyChess – Schach gegen eine KI im Stil von Bobby Fischer – und die Schach-KI DeepSquare.
- Interaktive Beispiele im Browser: wie auf dieser Website – lesen, ändern, ausführen.
All das ist ein Plan, noch kein fertiges Inhaltsverzeichnis.
Welche Themen wünschst du dir? Was hat dir am alten Buch gefallen, was fehlt dir heute? Schreib Lars Heppert über das Kontaktformular auf heppert.com.
Über den Autor
Mehr über Lars Heppert und seine aktuellen Projekte rund um KI, Technologie und Fotografie findest du auf heppert.com.