Suche
Das Lernen erlernen

Learning Skills – wie man neue Programmiersprachen effizienter lernt

Coman Hamilton

©Shutterstock/Filipe Frazao

Die eigenen Programmier-Fähigkeiten aktuell zu halten und sich dadurch attraktiv für Arbeitgeber zu machen, ist ein kontinuierlicher Lernprozess. Nun haben Forschungen gezeigt, dass für ein effizientes Lernen vor allem Eines wichtig ist: Zunächst sollte man sich selbst besser verstehen!

Sie kennen das wahrscheinlich: Als angehender Entwickler durchlebt man mehr als nur ein Mal einen kompletten Richtungswechsel in seiner Denk- und Arbeitsweise. Doch sobald Sie einen Abschluss im Programmieren in der Tasche und einen Fulltime-Job zu bewältigen haben, können diese Veränderungen ziemlich schwerfallen. Soll es trotz Zeitnot gelingen, Up-to-date zu bleiben, kommt es darauf an, effiziente Wege des Lernens zu finden.

Doch wie lernt man effektiv? Man könnte nun ohne Weiteres eine Reihe von Platitüden auflisten, die man ebenso schnell wieder vergisst (arbeiten Sie zielorientiert, setzen Sie die Ziele nicht so hoch an, usw.). Aber die meisten Programmierer würden wahrscheinlich hier aufhören zu lesen. Doch gibt es überhaupt Lerntipps für Programmierer, die weniger offensichtlich sind?

Es gibt dabei ein Problem: Zwei Programmierer lernen nicht auf dieselbe Art und Weise. Der unterschiedliche Hintergrund, die Kultur, Bildung und individuelle Lernstile machen es schwer, allgemeine Lerntechniken für Programmierer zu diskutieren. Bedeutet das, dass es keine universalen, effektiven Methoden für das Erlernen neuer Sprachen gibt?

So ist es zum Glück nicht. Eine Studie aus dem Jahre 2006 zeigt, dass effektive Lerntechniken bei Programmierern unterschiedlicher Kulturen tatsächlich sehr ähnlich sind. Anstelle eines Unterschiedes zwischen Communities von Programmierern aus dem mittleren Osten und Amerika hat die Studie ein konstantes und gemeinsames Set von Lerntechniken gezeigt. Es macht also doch Sinn, über einen globalen, effizienteren Weg für Programmierer für das Erlernen neuer Sprachen zu sprechen.

Denker und Macher

Um zu wissen, wie man effizient lernt, muss ein Entwickler zunächst verstehen, wie er oder sie lernt. Ein großer Teil der Debatte über effizienteres Lernen von Programmiersprachen kommt von Rich Felders Forschungen zu technischen Lernstilen. Wie in allen Gebieten des Lernens gibt es aktive und reflektive Studenten. „Ok, genug Tutorials – ich möchte das jetzt selbst ausprobieren.“ (Dreimal dürfen sie raten, welche Kategorie das betrifft). Andere Studenten bevorzugen aber, gründlich über den Prozess nachzudenken, bevor sie ihn ausprobieren – sie hören sich Experten an, skizzieren mögliche Szenarios und lesen am Ende vielleicht ein Tutorial zu viel.

Als Kommentar in einem Reddit Thread, in dem es um Lernstile geht, erklärt ein Entwickler Folgendes:

For example, a friend of mine has to read and get a firm grasp of a good portion of the language before they write a single line of code.

I on the other hand, just dive in and just start writing some code. There’s usually something I’m excited to learn about the new language, so I try to push that aspect of my learning as much as possible.

Natürlich wird der reflektive Lerntyp weniger Experimente durchführen, die schiefgehen. Aber Trainer Mel Chua glaubt, dass Programmierkultur aktive Lerner bevorzugt:

Think about programming interviews, where you’re given coding problems and asked to solve them on the spot. That’s incredibly biased towards active learners.

Verstehen Sie Ihren Lernstil

Felder und Soloman haben vier bedeutende Lernstile hervorgehoben, inklusive des oben dargestellten aktiven/reflektiven Stils. Diese wurden entwickelt, um Ingenieuren zu helfen, einen Sinn für die beste Umgebung zum Lernen zu finden.

Sequentiell und global

Ein Programmierer, der durch eine Serie von logisch, linear aufgebauten Schritten lernt, wird als sequentieller Lerner bezeichnet. Im Gegensatz dazu wird ein globaler Lerner einen zerstreuteren Ansatz wählen, indem er zufällige Informationsbausteine auswählt und sie dann zu einem sinnvollen Ganzen zusammenfügt.

Bedacht und intuitiv

Bedachte Lerner wollen Fakten wissen, Probleme mit etablierten Methoden lösen und mögen keine Ausnahmen von der Regel. Sie wollen, dass ihre Unterrichtsstunden und Tutorials auf realen Beispielen aufbauen. Intuitive Lerner auf der anderen Seite entdecken Möglichkeiten und Zusammenhänge während des Lernens. Sie mögen es nicht, Informationen zu behalten und arbeiten für gewöhnlich schneller.

Visuell und verbal

Manche Programmierer präferieren außerdem, dass ihnen eine Programmiersprache verbal von einem Experten erklärt wird. Andere finden es einfacher, Informationen zu behalten, die visuell mit Diagrammen und Bildern präsentiert werden.

Entwickler, die ihre Lerngeschwindigkeit optimieren möchten, sind angeraten, zunächst herauszufinden, welche Art von Lerner sie sind. Die beste Art, um das herauszufinden, ist den Test „Index of Learning Style“ zu machen. Durch das Beantworten der Multiple-Choice-Fragen über visuelle, soziale und kognitive Ansätze zum Lernen findet man heraus, in welcher Umgebung genau das Lernen von neuen Programmiersprachen stattfinden sollte.

Abb.1: Engineering learning style test results (via ncsui.edu)

Abb.1: Engineering learning style test results (via ncsui.edu)

Wenn Sie sich am oberen Ende einer Skala wiederfinden, sollten Sie Felder und Solomons hilfreiche Vorschläge für Lernstile durchlesen. Wenn Sie beispielsweise einmal verstanden haben, dass Sie ein bedachter Lerner sind, werden Sie realisieren, warum es für Sie so wichtig ist, mit realen Beispielen zu lernen. Reflektive Programmierer dagegen sollten darauf achten, nach einer Unterrichtsstunde das Material noch einmal für sich zu bearbeiten. Wenn Sie ein globaler Lerner sind, sollten Sie sichergehen, zunächst das Große Ganze zu verstehen, bevor Sie beginnen, eine neue Programmiersprache zu lernen.

Zusammenfassend – Kennst du dich selbst, dann kennst du auch deinen Code!

Aufmacherbild: Creative composition „Never Stop Learning“ von Shutterstock / Urheberrecht: Filipe Frazao

Verwandte Themen:

Geschrieben von
Coman Hamilton

Before becoming Editor of JAXenter.com (S&S Media Group), Coman completed an M.A. in Cultural Studies and wrote for numerous websites and magazines, as well as several ad agencies. // Want to submit a story? Get me at coman[AT]jaxenter.com or linkedin.com/in/comanhamilton

Kommentare

Hinterlasse einen Kommentar

Hinterlasse den ersten Kommentar!

avatar
400
  Subscribe  
Benachrichtige mich zu: