Erfahrene Programmierer sind seit Jahren sehr gefragt, und es sieht nicht so aus, als würde die Nachfrage in absehbarer Zeit sinken. Aber selbst wenn Sie nicht beabsichtigen, Ihren Lebensunterhalt als professioneller Programmierer zu verdienen, werden Sie lernen, wie man professionell programmiert. Aber wenn du das liest, sollte ich dir wahrscheinlich nicht sagen müssen, warum es eine gute Idee ist, ein Programmierer zu werden. Du weißt es schon, und ich denke, du weißt noch etwas anderes - es ist nicht einfach.
Die Beherrschung der Programmierkunst erfordert tausende (ja, tausende) Stunden. Trotzdem, wenn Sie diese Stunden gut verbringen, kommen Sie früher dorthin (und haben mehr Spaß auf dem Weg). Hier sind ein paar Ideen, die Sie berücksichtigen und vielleicht auf Ihrem Weg zum Coder ausprobieren sollten.
Löse ein echtes Problem
Die Theorie ist langweilig. So sind in der Regel theoretische Probleme. Wenn Sie nur lernen, wie man programmiert, um etwas Geld zu verdienen, dann bin ich mir nicht sicher, wie gut das funktionieren wird. Aber wenn du eine echte Leidenschaft hast, Dinge zu bauen, dann baue sie. Die erste Frage, die Sie sich wahrscheinlich stellen sollten, lautet: " Warum möchte ich das lernen? "Wenn diese Antwort" etwas zu machen "ist, dann mach das Ding. Die gute Nachricht ist, dass Sie im ersten Schritt nicht wissen müssen, wie man etwas programmiert: Sie müssen nur notieren (und vorzugsweise skizzieren), wie das Ding aussehen würde. Was ist die Anwendung, die Sie vermissen? Welches Werkzeug gibt es nicht, aber du brauchst es wirklich?
Was ist schön an diesem Ansatz (auch bekannt als "Scratching your own itch") ist, dass Ihr Projekt nicht grandios sein muss. Sie können mit etwas sehr kleinem beginnen, erstellen Sie einfach ein einfaches Dienstprogramm. Aber egal was es ist, du solltest dich darum kümmern. Das erste, was ich jemals in Ruby geschrieben habe, war ein persönliches Projekt, das ich seit Jahren benutze und nie auf die Welt gebracht habe. Trotzdem bin ich sehr stolz darauf, wie es herauskam, und vieles von dem, was ich über Ruby (nicht Rails) weiß, kam von diesem Projekt.
Beginnen Sie mit Informationen auf hoher Ebene
Ja, ich habe hier ein bestimmtes Buch ausgesondert. Nein, O'Reilly zahlte mir nichts (oder MakeUseOf). Es ist einfach so gut. Ich komme fast nie durch ein Buch über Programmierung, aber Code Simplicity hat mich bis heute fasziniert. Es ist ein Buch über die Kunst des Programmierens, fast ohne Code. Sie müssen keine Programmiersprache kennen, um es zu verstehen. Es umfasst Dinge wie den Grund, warum man überhaupt etwas programmieren soll (um Menschen zu helfen!), Wann sollten Sie neue Funktionen in Ihre Anwendung einführen, wann Sie Ihren Code optimieren (und was vorzeitige Optimierung ist) und viele andere gute Sachen.
Sobald du dieses Buch fertiggestellt hast (oder ein anderes Buch, wenn du eines findest), bist du an einem viel besseren Ort, um dein zukünftiges Studium zu beurteilen.
Wählen Sie sorgfältig Ihre Technologie aus
Solltest du dein erstes Projekt in ANSI C schreiben? Wenn Sie nicht einen ganz bestimmten Grund haben, lautet die Antwort "wahrscheinlich nicht". Gute Programmierer beherrschen das Programmieren und nicht eine bestimmte Sprache - sie können in kurzer Zeit jede Sprache lernen, die sie für ein bestimmtes Projekt benötigen. Aber das ist zum ersten Mal nicht so einfach, denn es ist nicht die Sprache, die man beherrschen muss, sondern die allgemeinen Programmierkonzepte (Programmlogik und Flusskontrolle, Variablentypen und Scoping, Objekte und all diese guten Dinge). Sie sollten also definitiv einige Zeit darüber nachdenken, welche Sprache oder Technologie Sie programmieren möchten.
Dies kommt nach der Auswahl Ihres Projekts, denn sobald Sie wissen, was Sie versuchen zu machen, werden Sie auf eine engere Untergruppe von möglichen Technologien beschränkt sein. Sie werden beispielsweise keine native iPhone-App in Ruby on Rails codieren. Aber wenn Sie für das Web kodieren, gibt es ungefähr eine Zillion verschiedener Sprachen, die Sie verwenden könnten, jede mit vielen verschiedenen Frameworks. PHP, Python, Ruby, Go, und die Liste geht weiter.
Verbringe Zeit damit, jede der Alternativen zu erforschen - welche Art von Gemeinschaft hat sie? Wie einfach ist es, Unterstützung zu bekommen? Gibt es dafür gute kostenlose Entwicklungswerkzeuge? James behandelte dieses Thema in einem anderen Artikel mit dem Titel Welche Programmiersprache sollten Sie für die Softwareentwicklung lernen? Welche Programmiersprache sollten Sie für die Softwareentwicklung lernen? Welche Programmiersprache sollten Sie für die Softwareentwicklung lernen? Wenn Sie mit dem Programmieren beginnen, ist es wichtig, dass Sie Ihre Zeit sinnvoll investieren, um etwas zu lernen, das Ihnen in naher Zukunft mit sichtbaren Ergebnissen auf Ihrer Plattform von ... Read More.
Verbringe nicht viel Zeit damit, große Datenmengen zu lernen
Ich habe mal ein paar Wochen einen Video-Kurs über PHP angeschaut. Ich denke, es waren 30 Stunden Video oder so etwas Verrücktes. Kenne ich PHP jetzt? Mist nein. Ich meine, ich kann etwas vom Code lesen, aber ich würde sagen, dass diese Stunden reine Zeitverschwendung waren. Der Versuch, so viel Wissen sequentiell zu stopfen, ohne zu programmieren, funktioniert einfach nicht. Für mich ist das sorgfältige Codieren eines vorgefertigten Beispielprojekts fast genauso schlecht, weil es einen großen Teil des Lernens vermisst. Ich lerne am besten, wenn ich versuche etwas zu machen, was mir wichtig ist (siehe oben) und zufällig auf Probleme stoße. Löse ein Problem, bei dem du etwas fühlst, und du hast etwas Neues gelernt. Steh auf den Bildschirm für 30 Stunden und ... .well.
Verbringen Sie Zeit beim Einrichten Ihrer Umgebung
Genau wie es viele Programmiersprachen gibt, gibt es viele Entwicklungsumgebungen für jede Sprache. Einige Leute verwenden einen Texteditor wie Vim (die ich in den Top 7 Gründe dem Vim Text Editor eine Chance zu geben Die 7 besten Gründe, um den Vim Text Editor eine Chance geben Die 7 besten Gründe, um den Vim Text Editor eine Chance geben Jahre, ich habe einen Texteditor nach dem anderen ausprobiert. Du hast es ausprobiert, ich habe es ausprobiert. Ich habe jeden einzelnen dieser Redakteure seit über zwei Monaten als meinen wichtigsten Redakteur im Alltag benutzt. Irgendwie habe ich ... gelesen Mehr) oder Notepad ++ (was wir Ihnen gezeigt haben, wie man hier "auftaut") Soup Up Der Notepad ++ Texteditor mit Plugins aus dem Notepad Plus Repository [Windows] Der Notepad ++ Texteditor mit Plugins aus dem Notepad Plus Repository [Windows] Notepad ++ ist ein würdiger Ersatz für den eingebauten und beliebten Texteditor von Windows und wird sehr empfohlen, wenn Sie ein Programmierer, ein Webdesigner oder einfach jemand sind, der sich einer leistungsfähigen Ebene bedarf ... Read More). Es ist ein sehr persönlicher Prozess, einen für Sie passenden Editor auszuwählen, und es ist nur der Anfang. Als nächstes müssen Sie es mit Tastaturkürzeln, Farbschemata, Plugins und mehr anpassen.
Und das ist nur ein kleiner Teil der Arbeit - das Einrichten einer Entwicklungsumgebung erfordert die Installation der Sprache, mit der Sie arbeiten möchten, viele Codebibliotheken, ein Versionsverwaltungssystem (wie Git, das James hier erklärt Was ist Git & Warum sollten Sie Versionskontrolle verwenden Wenn Sie ein Entwickler sind Was ist Git und warum sollten Sie die Versionskontrolle verwenden, wenn Sie ein Entwickler sind Als Webentwickler arbeiten wir oft auf lokalen Entwicklungsseiten und laden dann einfach alles hoch, wenn wir fertig sind ist in Ordnung, wenn es nur Sie und die Änderungen sind klein, ... Lesen Sie mehr) und mehr. Mit anderen Worten, Sie haben Stunden Arbeit vor der Einrichtung der Umgebung. Und weisst du was? Das ist okay.
Machen Sie sich einfach eine Tasse Kaffee oder zehn und gehen Sie durch. Habe Spaß. Lernen Sie Ihr Werkzeug zu kennen, so wie jeder Handwerker seine Werkzeuge kennt. Lerne die Tastaturkürzel. Holen Sie sich diese Hervorhebung genau richtig. Je bequemer Sie mit Ihren Tools sind, desto besser können Sie auf Ihren Code achten. Also, das ist ein Bereich, an dem ich nicht sparen würde.
Rauschte dich nicht - Fristen sind dein Feind
Was auch immer du tust, erinnere dich - du bist hier um zu lernen. Sie sind nicht unter einer Frist. Wenn die Versuchung entsteht, einen schmutzigen Hack in deinem Code zu verwenden, nur um es zum Laufen zu bringen, tu es nicht! Nehmen Sie sich Zeit und investieren Sie die Pflege, um herauszufinden, wie Sie es richtig machen. Ein schlampiges erstes Projekt ist besser als kein Projekt, aber Sie werden viel mehr von einem Projekt lernen, das Sie bei jedem Schritt mit großer Sorgfalt entworfen und gebaut haben.
Haben Sie Geduld und schwitzen Sie die Details (wenn es um Codiertechniken und Möglichkeiten geht, Dinge im Code zu erledigen).
Fragen stellen
Wir haben MakeUseOf Antworten für Ihre Fragen und es gibt auch den fantastischen Stack Overflow, den Sie im obigen Screenshot sehen können. Es gibt viele andere sprachspezifische Foren online, aber egal, welchen Ort du wählst, habe keine Angst davor, Fragen zu stellen. Wenn die Leute nicht nett sind, finde heraus, was du falsch gemacht hast und lerne, bessere Fragen zu stellen (ein Thema für einen Artikel an sich, wirklich).
Gelingt dies nicht, suchen Sie eine andere Community. Aber egal, stellen Sie Ihre Fragen und hören Sie den Antworten zu. Es ist auch eine gute Idee, den Menschen zu danken, dass sie ihnen geholfen haben.
Verwenden Sie Spatial Repetition, um Informationen zu erhalten
Dieser letzte Tipp ist kurz - lesen Sie alles über die Janki-Methode. Es ist eine absolut brillante Möglichkeit, ein Arsenal von immer aktuellen Programmierkenntnissen aufzubauen und es auf unbestimmte Zeit zu speichern, nicht in Ihrem Computer, sondern in Ihrem Gehirn, wo Sie es brauchen. Ernsthaft, geh und lies diesen Beitrag.
Abschließende Gedanken
Lernen ist eine sehr persönliche Sache, also werden vielleicht nicht alle diese Tipps für dich funktionieren. Dann haben Sie vielleicht noch ein paar andere erprobte und wahre, die Sie teilen möchten.
Am wichtigsten (für mich), würde ich gerne wissen, ob Sie einen dieser Tipps auf Ihrem Weg zum Programmierer verwenden werden. Wirst du? Lass es mich wissen.
Bildnachweis: Alte große Bücher über ShutterStock