Jeder kann Programmierer werden! Wirklich?

Letztens habe ich mit anderen Programmierern über unsere Versuche anderen das Programmieren beizubringen gesprochen. Es kam die Frage auf, ob wirklich jeder Programmieren lernen kann. Im Gegensatz zu dem Artikel “The Camel has two humps” ist meine Meinung: ”Ja, aber…”

Ja, aber nur wenn ein generelles Interesse an Computern besteht.

Klar, um mal in eine Programmiersprache hinein zuschnuppern, reicht es sich mal durch ein lustiges Tutorial (z.B. tryruby) zu klicken. Aber sobald man sich eine Entwicklungsumgebung installiert und wirklich anfangen will, muss man sich mit seinem Computerauseinandersetzen und ich kenne keinen Programmierer, der nur Programmierer ist, ganz ohne Ahnung von Administration.herz

Bei allen Programmierern ist eine Liebe zum Computer vorhanden. Jeder hat schon mal an seinem Werkzeug geschraubt und die Festplatte oder sonstige Komponenten ausgetauscht, kennt die kleinen Unixtools wie grep, find, sed oder awk und kann damit kleine Einzeiler zusammenstecken.  Das ist besonders praktisch, wenn einem wirklich versteckte Programmfehler unterkommen oder man eben schnell ein paar Tonnen Logfiles auswerten muss.

Ja, aber nur wenn man gerne rätselt und kreativ ist.

Manche Programmieraufgaben machen besonders viel Spaß, weil sie kniffelig sind und man rätseln muss, wie das Problem zu lösen ist. Ein Klassiker für Anfänger ist: Zahlen in römische Schreibweise umwandeln. Dabei müssen einige Randbedingungen abgefragt werden, wann wird welcher Buchstabe benutzt, wann schreibt man links und rechts, etc.  (Hier wird das Problem in verschiedenen Programmiersprachen gelöst.)

Andere Programmieraufgaben klingen eigentlich ganz einfach, aber die Randbedingungen ein problematisch. Zum Beispiel darf das Programm nur eine bestimmte Laufzeit haben oder die Datenbankstruktur ist so hysterisch gewachsen, dass man über verschiedene Zwischenschritte erst an die gewünschte Auswertung kommt.

Zusätzliche Kreativität erfordert die Ehre und der Sinn für das Schöne, das Craftmanship. Zwar funktionieren einige Lösungen, aber sind umständlich programmiert. Wir Programmierer finden es toll, wenn der Code kurz, lesbar, ohne Doppelungen und leicht modifizierbar ist. Gerade um Codedopplungen zuvermeiden und den Code modular zu halten, damit auch zukünftige Programmteile den Teile weiter benutzen können, benötigt es neben Gehirnschmalz eine gewisse Portion Abstraktionsvermögen und im Voraus denken.

Ja, aber nur wenn die Frust-Toleranz hoch ist.

Das erste was einem nach dem Start des selbstgeschrieben Programms begrüßt sind Fehlermeldungen. Das ist in 99,123% aller Fälle so.

Das darf einen nicht frustrieren und dazu bewegen alles Hinzuschmeissen. Manchmal ist man stundenlang auf der Suche nach einem fehlenden “;”. Dann fängt man an den Fehler zu umkreisen und einzuzingeln, bis man endlich die Stelle gefunden hat.error1-300x86

Je länger und je tiefer der Fehler in der Struktur ist, manchmal sogar in der Programmiersprache selbst oder in der Speicherverwaltung des Betriebssystems, desto größer ist die Freude über den Fehlerfund. Zusätzlich lernt man bei der Fehlersuche viel über das System und die Interna der Programmiersprache.

Ja, aber nur wenn der Wille ständig  und freiwillig weiter zu lernen vorhanden ist.

Dass Weiterbildung eine Voraussetzung ist, muss ich eigentlich nicht unbedingt erklären. Es geht nicht nur um neue Programmiersprachen, neue coole Frameworke oder Plugins, sondern auch um neue Geräte (Tablets, Smartphones, Kühlschränke ;) ) auf denen die Software plötzlich laufen muss.

Das lernen wir Programmierer nicht alles während unserer Arbeitszeit. Wir lesen freiwillig Fachmagazine, Blogs, folgen bestimmten Twitter-Accounts und gehen zu Konferenzen und Usergroups und das alles in unserer Freizeit, weil es uns interessiert.

Ja, dann kann es jeder lernen!

Wenn alle Voraussetzungen erfüllt sind und ein echtes Interesse vorhanden, bin ich der Meinung das jeder programmieren lernen kann.die Freude wenn der Fehler gefunden und beseitigt ist.

Ich hoffe, ich habe mit meinen “Ja, aber …” niemanden abgeschreckt, denn programmieren ist eine wirklich toll. Es ist ein erfüllendes Gefühl, was eigenes erschaffen zu haben.

Bookmark the permalink.

Leave a Reply

Your email address will not be published.

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>