Wie lernt man Code?
Es ist mein einziger Schwerpunkt zur Beantwortung dieser Frage für die letzten zwei Jahre gewesen. Mir ist aufgefallen, dass es gibt drei Strategien, die erfolgreiche Schüler durchweg besser als jeder andere, unabhängig davon, welche Ressourcen verwenden, die sie verwenden:
1. Fokus auf Gewohnheiten, keine Ziele
2. lernen allein ist schmerzhaft
3. bauen Sie Dinge
1. Fokus auf Gewohnheiten, keine Ziele
Es scheint intuitiv, dass Sie sollten nicht auf Ziele zu konzentrieren, aber hören Sie mir – alles dreht sich um den Hebel. Wer mit mir arbeitet weiß, dass ich dweebishly die R'as Al Ghul-Szene in Batman Begins ziemlich 3-4mal täglich verweisen:
R'as erzählt Bruce:
"Reiben Sie Ihre Brust, Ihre Arme kümmern sich um sich selbst."
Wenn Sie konzentrieren sich auf den Aufbau der Gewohnheit der Programmierung für 20-30 Stunden pro Woche, erreichen Sie Ihr Ziel, ein Webentwickler. Wenn Sie auf das Ziel, einen Web-Entwickler in X Monaten konzentrieren, bekommen Sie nichts von diesem aber Stress und Unsicherheit darüber, wie weit Sie sind. Konzentrieren Sie sich auf die Gewohnheit, nicht das Ziel. Reiben Sie Ihre Brust, Ihre Arme von sich selbst kümmern.
Also hier ist was Sie tun sollten jetzt: setzen Sie 15 Minuten pro Tag in Ihrem Kalender, Zeitprogrammierung zu verbringen. Nicht konzentrieren tun, mehr als 15, nur sich auf 15 Minuten pro Tag zu tun. Wenn Sie es erfolgreich mit keine Ausreden für eine Woche tun können, versuchen Sie, stoßen sie auf 20 Minuten pro Tag. Versuchen Sie nicht, sich selbst zu überfordern, auf diese Weise einer Stunde pro Tag rechts von der Fledermaus, das wird ein 10.000 Stunden-Marathon sein, also wir uns konzentrieren auf die Entwicklung der Gewohnheit gerade jetzt. Die Anzahl der Minuten, die Sie setzen ist nicht so wichtig wie Sie jeden Tag auftauchen.
2. lernen allein ist schmerzhaft
Beim Web-Entwicklung lernen war, waren die zwei größten sozialen Komponenten, mein Lernen haben einen Mentor und Zugehörigkeit zu einer Gemeinschaft.
Mit einem Mentor: Ich arbeitete in einem kleinen Startup namens merge.fm in der Schule. Ich lernte mehr im Sommer verbrachte ich mit einer ihrer Mitbegründer arbeiten, als im gesamten Vorjahr ich an meiner Universität habe. Gibt es nur etwas über die Arbeit neben ein Experte, der mehr weiß als Sie, die wirklich das Lernen beschleunigt, du bist in der Lage, aufgreifen, wie sie denken und enthüllen, was Sie nicht wissen, dass Sie nicht wissen. Es gibt einen Grund warum Mentoring verwendet, um die de-facto-Standard einen neuen Beruf zu lernen sein es ist sehr effektiv.
Zugehörigkeit zu einer Gemeinschaft: Für mich waren die beiden Gemeinschaften, ich gehörte zu, der Illini Entrepreneurship Netzwerk (Studentenorganisation an meiner Universität) und HackerNews (eine große Hacker/Startup orientierte online-Community).
Ich habe nicht erfahren, was Objekte und Klassen von HackerNews waren, aber ich lernte eine andere Kategorie von Dingen. Ich habe gelernt, dass niemand Javascript mag. Ich erfuhr, dass Rubybegeisterte die Hipster der Programmierung sind. Ich habe gelernt, dass Bret Taylor, Rich Hickey und John Carmack programmieren Götter, und das Software-Unternehmen, das wirklich meinen Kaffee ernst verfügen über eine Küche, die aussehen wie Meth-Labors. Kurz gesagt, habe ich gelernt zu fachsimpeln. Das entpuppt sich als wichtig sein, wenn Sie mit anderen Entwicklern arbeiten, aber es ist auch das, das was man fühlt sich wie ein Entwickler macht.
3. bauen Sie Dinge
Im ersten Jahr des Lernens, Webentwicklung baute ich:
- Ein Digg-Klon (aus einem Sitepoint Buch über Schienen, ich glaube, es ist jetzt aber veraltet)
- Eine E-Commerce-App (von Agile Webentwicklung mit Rails 4)
- Eine GeekSquad-Esque-App (persönliches Projekt)
- Eine in Echtzeit, Online-Klassenzimmer (persönliches Projekt)
- Eine fremde Sprache Flashcard App (Klasse-Projekt)
Ich denke echte Bauvorhaben ist aus vielen Gründen wichtig, aber das wichtigste für mich ist weil es Spaß macht. Das ist etwas, das auf tragische Weise in der klassischen Bildung verloren geht, aber ich denke, es ist wichtig genug, um auf dieser Liste sein. Suchen Sie nach Ressourcen, die Ihnen zeigen, wie man Dinge zu bauen; gut ist.
4. Seien Sie eine Kakerlake
Ich habe heimlich einen 4. Punkt für diejenigen von Ihnen, um zu weit unten auf der Seite lesen stecken habe.
Paul Graham sagte einmal die Gründer von Airbnb:
"Ihr seid nicht sterben, du bist wie Kakerlaken." "
Wahrscheinlich möchten lernen, wie man code zu einem bestimmten Zeitpunkt zu beenden. Wie alles lohnt sich, es ist schwierig und manchmal dumme fühlen Sie sich. Deshalb ist #1 auf dieser Liste so wichtig – Stop sorgen so viel über ob du Fortschritte machst oder wie viel länger es wird sein, bis Sie spüren, wie Sie "es geschafft." Alles, was Sie tun müssen, ist Fokus auf auftauchend, 10-30 Stunden pro Woche. Werden Sie als eine Kakerlake über alles andere als geistlose, und sterben Sie nicht"."
Über den Autor: Roshan Choxi, Mitbegründer und CEO des Blocks, "Die weltweit größte Online-Bootcamp"
Wie lerne ich Code? erschien ursprünglich auf Quora. Sie können Quora auf Twitter, Facebook und Google + folgen.
Diese Antwort wurde leicht bearbeitet, für Grammatik und Klarheit.
Haben Sie Tipps, Ratschläge oder bevorzugte Codierung Ressourcen, erzählen Sie uns in den Kommentaren. Wie hast du angefangen?