Übung allein macht nicht den Meister

Wie man ein überragender Programmierer wird

Michael Thomas

© Shutterstock.com/Lightspring

Die Frage ist so alt wie das Programmiererhandwerk selbst: Was unterscheidet einen durchschnittlichen Softwareentwickler von den herausragenden Köpfen der Branche? Ein Post auf dem Blog Development Buzz fügt der Diskussion eine kurze Sammlung zentraler Punkte hinzu.

Der auf viele Berufe zutreffenden Ansicht, dass Übung – und vor allem diese – den Meister macht, widerspricht der Autor dabei. Vielmehr sollte diese als selbstverständliche Basis betrachtet werden, auf die alle weiteren Bestrebungen aufbauen.

Als wichtigstes Element der professionellen Reifung spielt demnach das Mentoring eine zentrale Rolle. Ob formales Training, Code Reviews oder Paarprogrammierung: Die Form ist nicht entscheidend, wichtig ist jedoch, ein zweites Paar Augen zur Verfügung zu haben, die einen beispielsweise auf Fehler und schlechte Angewohnheiten aufmerksam machen. Gleichzeitig sollte man seine eigenen Stärken, sobald man sie erkannt hat, wiederum anderen zur Verfügung zu stellen.

Im Rahmen einer im Gegensatz dazu „unpersönlichen“ Bildung wird ebenfalls der Aufbau einer eigenen kleinen Bibliothek, die zumindest Klassiker wie „Vom Mythos des Mann-Monats“ oder „The Design of Everyday Things: Psychologie und Design der alltäglichen Dinge“ umfasst, sowie ständige Lektüre empfohlen.

Spezialisierung und Diversifikation

Wie Adrian Colyer in seiner Keynote auf der diesjährigen JAX so treffend formulierte: „You can’t master all the details!“. In diese Kerbe schlägt die nächste Empfehlung des Artikels: Eingedenk der potentiellen thematischen Breite des Programmiererdaseins ist es früher oder später unumgänglich, sich auf einigen wenigen Feldern eine besondere Expertise zu erarbeiten. Dies kann eine bestimmte Sprache, Industrie, Plattform oder eine Kombination der genannten betreffen.

Gleichzeitig merkt der Autor an, dass eine gewisse Diversifikation hilfreich dabei ist, das große Ganze besser im Blick zu haben, bessere Implementierungsentscheidungen zu treffen. Explizit werden dabei Grundkenntnisse in einer objektorientierten Sprache, einer funktionalen Sprache, einer kompilierten Sprache, einer Skriptsprache, sowie einer niedrigen und einer höheren Programmiersprache benannt. Auch dem Thema Sicherheit sollte man demnach zumindest ein wenig Zeit opfern.

Ein überdurchschnittliches Wissen über Programmiersprachen betrachtet der Autor als weitere wichtige Voraussetzung, um ein wirklich guter Coder zu werden. Denn nur so ist es möglich, für eine bestimmte Aufgabe die passgenaue Sprache auszuwählen – und deren spezifische Vorteile und Features auch richtig einzusetzen.

Schlussendlich, so der Autor, ist die Reise wichtiger als das Ziel. Eine Reise, bei der aufgrund der Kurzlebigkeit der Branche die Leidenschaft für die eigene Arbeit das Zünglein an der Waage sein kann.

Sind Ihrer Ansicht nach damit alle wichtigen Grundvoraussetzungen abgedeckt? Haben Sie eigene Vorschläge und Ergänzungen dazu, wie man ein überdurchschnittlicher Programmierer wird? Teilen Sie sie uns in den Kommentaren mit!

Aufmacherbild: Training and development business education concept with a hand holding a group of gears transferring the wheels to a human head made of cogs as a symbol of acquiring the tools for career learning von Shutterstock.com / Urheberrecht: Lightspring

Verwandte Themen:

Geschrieben von
Michael Thomas
Michael Thomas
Michael Thomas studierte Erziehungswissenschaft an der Johannes Gutenberg-Universität Mainz und arbeitet seit 2013 als Freelance-Autor bei JAXenter.de. Kontakt: mthomas[at]sandsmedia.com
Kommentare

Hinterlasse einen Kommentar

1 Kommentar auf "Wie man ein überragender Programmierer wird"

avatar
400
  Subscribe  
Benachrichtige mich zu:
Matthias
Gast
„Ein überdurchschnittliches Wissen über Programmiersprachen betrachtet der Autor als weitere wichtige Voraussetzung“ – wie oft hat man als Coder (wie der Autor es nennt) die Möglichkeit eine Programmiersprache selbst auszuwählen? Meist werden die eingesetzten Programmiersprachen von den Architekten oder dem Zielsystem vorgegeben. Ich stimme jedoch damit überein, dass sich ein Entwickler im Laufe des Berufslebens mehr und mehr spezialisieren sollte. Das Problem an der Sache ist allerdings: Die IT ist ein so kurzlebiges Geschäft, dass es schwer ist, sich auf die „richtige“ Sprache, Industrie oder Plattform festzulegen. Mein „Spezialgebiet“ zur Zeit sind Java-EE-Webanwendungen im e-Commerce-Bereich. Wie sieht das wohl in… Read more »