Ich bin 16. Ich habe vor ungefähr einem Jahr mit dem Programmieren begonnen, als ich kurz vor der Highschool stand. Ich strebe eine Karriere im Programmieren an und gebe mein Bestes, um so viel wie möglich zu lernen. Als ich anfing, lernte ich die Grundlagen von C ++ aus einem Buch und von da an fing ich an, Dinge selbst zu lernen. Heute bin ich viel erfahrener als vor einem Jahr. Ich wusste, dass ich alleine lernen musste, weil die Highschool mir (wahrscheinlich) nichts Wertvolles über das Programmieren beibringt, und ich möchte darauf vorbereitet sein.
Die Frage ist hier: Wie wichtig ist es, selbst Programmieren zu lernen?
learning
self-improvement
Bugster
quelle
quelle
Antworten:
Es ist kritisch. Ich glaube nicht, dass ich jemals einen guten Programmierer gekannt habe, der auf irgendeiner Ebene nicht Autodidakt war. Als Einstellungsmanager in einem großen Unternehmen kann ich sagen, dass ein Kandidat, der persönliche Projekte und den Wunsch zu lernen beschreibt, jedes Mal einen beeindruckenden Abschluss vorweisen kann. (Obwohl es am besten ist, beides zu haben.)
Hier ist die Sache über das College: Informatikkurse lehren Theorie, nicht Technologie. Sie lernen den Unterschied zwischen einer Hash-Tabelle und einem B-Baum sowie die Grundlagen der Funktionsweise eines Betriebssystems kennen. Sie werden Ihnen im Allgemeinen keine Computersprachen, Betriebssysteme oder andere Technologien jenseits eines geringen Niveaus beibringen.
Ich erinnere mich an die Zeit, als ich meine erste Klasse für Datenstrukturen belegte und wir ein dünnes Handbuch für diese neue Sprache mit dem Namen "C ++" erhielten, in dem sie beschlossen hatten, mit dem Lernen zu beginnen. Wir hatten zwei Wochen Zeit, um den Code zu schreiben. Das war eine gute Lektion für sich. So wird Ihre Karriere verlaufen.
Deine Schule wird dir wahrscheinlich nicht beibringen, was du brauchst, um einen guten Job zu bekommen. Die Schulen sind oft viele Jahre hinter dem zurückgeblieben, was in der Branche angesagt ist. Dann bekommst du einen Job. Welches Unternehmen Sie auch besuchen, Sie werden mit ziemlicher Sicherheit keine besonderen Anstrengungen unternehmen, um Sie zu schulen. Die schlechten Unternehmen sind zu billig, und ehrlich gesagt, stellen die guten Unternehmen nur Leute ein, die klug genug sind, um sie bei sich aufzunehmen.
Ich habe 1987 meinen College-Abschluss gemacht. Ich habe als C-Programmierer mit Fachkenntnissen in DOS-, NetBIOS- und "Terminate-and-Stay-Resident" -Programmen gearbeitet. In den letzten Jahren habe ich wenig oder gar keine Ausbildung gehabt. Schauen Sie sich die Stellenanzeigen an ... nicht viel verlangt nach diesen Fähigkeiten! Der einzige Grund, warum ich heute angestellt werden kann, ist, dass ich die dazwischen liegenden Jahre ständig mit Lernen verbracht habe. Um als Ingenieur erfolgreich zu sein, muss man die Gewohnheit haben, zu lernen. Hölle, ich würde darüber hinausgehen: Sie müssen die Liebe zum Lernen haben. Sie müssen der Typ sein, der mit WebGL, Android oder iOS herumspielt, weil es Spaß macht. Wenn Sie diese Art von Person sind und die Angewohnheit des Lernens beibehalten, werden Sie in der Branche weit kommen.
quelle
Autodidakt ist sehr wichtig. Sie können sich nicht auf eine formelle Ausbildung verlassen, um Ihnen alles beizubringen, was Sie über Ihr Fach wissen müssen. Allerdings ist eine formelle Ausbildung auch sehr wichtig, wenn Sie gut vorbereitet und gut ausgestattet in dieses Berufsfeld eintreten möchten.
Ich bin auf dem Weg zum College und habe mir in den letzten vier Jahren die Entwicklung von Software selbst beigebracht. Daher arbeite ich jetzt für ein großes, bekanntes Unternehmen, das Unternehmensanwendungen betreut. Es braucht nicht viel Talent, aber viel Arbeit und Motivation. Ich denke, Literatur und Praxis sind die beste Wahl, wenn es ums Lernen geht. Es ist auch wichtig, ein bestimmtes Fachgebiet auszuwählen, da Sie, obwohl Sie Sprachen und Logik in allen Fachgebieten verwenden können, nur dann wirklich "großartig" werden können, wenn Sie in einem bestimmten Fachgebiet ausreichend geübt und verstanden haben.
quelle
Selbständiges Lernen ist sehr wichtig. Wenn Sie die Disziplin haben, zu recherchieren und das notwendige Wissen zu sammeln, um eine Aufgabe zu erfüllen, sind Sie vielen anderen weit voraus, die auf formale Schulungen angewiesen sind, um dieselbe Aufgabe zu erfüllen. Dies gilt für jede Branche, nicht nur für die Softwareindustrie.
Verstehen Sie mich nicht falsch, eine formelle Schulung oder Ausbildung ist hilfreich, aber Ihre eigene Motivation, Ihre Fähigkeiten zu verbessern, wird Ihnen helfen, sich zu einem besseren Softwareentwickler zu entwickeln. Es gibt immer etwas zu lernen: neue Plattformen oder Programmiersprachen zum Experimentieren, zu implementierende Entwicklungsmethoden, Tools und Algorithmen, die Liste geht weiter. Nicht alles wird Ihnen durch formelle Schulungen vorgestellt. Es liegt daher an Ihnen, sich über andere Themen und Ideen zu informieren, die Sie während Ihrer Karriere in der Programmierung interessieren könnten.
quelle
Beim Programmieren ist Autodidakt das, was Sie jeden Tag tun werden. Sie müssen sich eine Menge Dinge beibringen, nicht nur Computersprachen und Werkzeuge, die sich ständig ändern. Sie müssen Code lernen, den andere Leute geschrieben haben, und Sie müssen das auch mit minimaler Anleitung und Aufsicht beheben. In einigen Organisationen ist es selten, dass mehr als ein Mal im Jahr (wenn überhaupt!) Eine echte Schulung durchgeführt wird. Stellen Sie sicher, dass Sie dies tun (und genießen) können. Andernfalls sollten Sie eine andere Karriere in Betracht ziehen, während Sie noch jung sind.
quelle
Selbstunterricht ist eine unverzichtbare Fähigkeit für einen Programmierer. Zu viele nicht. Wenn Sie gut sind, werden Sie diese Fähigkeit für den Rest Ihrer Karriere nutzen.
quelle
Das Selbststudium ist sehr wichtig, da Sie nicht immer die Möglichkeit haben, eine formelle Ausbildung zu absolvieren. Wenn Sie sich auf die Suche nach einem Projekt, Praktikum oder Job machen, sollten Sie nach solchen suchen, die solide leitende Entwickler haben, die Ihnen wirklich etwas beibringen können. In einer Umgebung zu sein, die die Dinge richtig macht, kann der Express-Weg zum Qualitätscode sein.
quelle
Ich kann Ihnen sagen, dass es mehrere Orte gab, an denen ich gearbeitet habe und an denen sie nicht einmal jemanden in Betracht zogen, der außerhalb der Arbeit keine eigenen Projekte hatte. Es zeigt Liebe zum Programmieren, als nur zu einem Job aufzutauchen und einen Scheck einzusammeln. Ich werde hier auf die Probe stellen und Folgendes sagen: Alle Programmierer, die nicht gerne programmieren, saugen an ihrer Arbeit. Schlimmer noch, sie haben keinem Team etwas hinzuzufügen, dem sie beitreten könnten.
Ich würde einen unerfahrenen Nachwuchsentwickler nehmen, der liebt, was er tut, den er in seiner Freizeit mit Code spielt, und zwar über drei mittelständische Entwickler, die nur die folgenden Bewegungen durchlaufen: Dieser Nachwuchsentwickler wird eines Tages großartig sein, und die anderen werden es Sei niemals besser als sie.
Wenn Sie nichts Neues lernen, sitzen Sie nur herum und vergessen, was Sie wissen.
quelle
Talent wird überbewertet.
Es dauert mindestens 10 Jahre Übung, bis man in einem bestimmten Bereich großartig werden kann. Es ist also wichtig, früh zu beginnen.
Die Tatsache, dass Sie in einem frühen Stadium Ihres Lebens begonnen haben, etwas zu tun, das Sie zu mögen scheinen, versetzt Sie in die Gewinnzone. Also hören Sie nicht auf ... hören Sie nie auf , es sei denn, Sie haben Bedenken über den Bereich, in dem Sie arbeiten !
Ich halte das Selbstlernen für eine der besten Fähigkeiten eines jeden Entwicklers und das zweite für einen Hochschulabschluss. Ein guter Hochschulabschluss ist wichtig, nur weil er Ihrem Wissen so viel Qualität verleiht, dass Sie es wahrscheinlich nicht selbst sammeln könnten. Es gibt sicherlich Ausnahmen von dieser Regel, aber das ist alles, was sie sind; Ausnahmen.
Je mehr Erfahrung Sie früh sammeln, desto besser werden Sie das College genießen und desto besser werden Sie neue Konzepte aufnehmen, die Ihnen präsentiert werden. Zuerst werden Sie alles so einfach und sinnlos finden, aber sehr schnell werden Sie sich herausgefordert fühlen und begierig darauf, mehr zu lernen.
Wenn Sie das College verlassen, hören Sie nie mehr auf zu lernen, da dies eine Ihrer besten Eigenschaften sein wird. Ich empfehle "Talent ist überbewertet" zu lesen. Sie können sich diesen kurzen Artikel über dieses Buch ansehen:
http://www.devlounge.net/strategy/the-talent-myth
quelle
Im Vergleich zu fast jedem anderen Bereich, den ich mir vorstellen kann, dreht sich beim Programmieren alles um Selbstbildung. Formale Informatik- / Software-Ingenieurausbildung ist nützlich, aber es ist nicht wirklich der Ort, an dem Sie das Programmieren lernen.
Was Sie wirklich tun sollten, ist, mit der Arbeit an Projekten zu beginnen: Bauen Sie etwas, das Sie existieren möchten. Schließen Sie sich dann einem Open Source-Projekt an, um an etwas zu arbeiten, das Sie noch verbessern möchten. Das Lernen ist dann kostenlos ...
quelle
Sie müssen selbst neue Dinge lernen - gehen Sie dorthin, wo Ihre Neugier Sie hinführt.
Holen Sie sich auch eine formelle Ausbildung - 90% von dem, was Sie in einer formellen Ausbildung lernen, werden nicht am Arbeitsplatz verwendet. Aber die 10%, die verwendet werden, werden eine seltsame und undurchsichtige Sache sein, von der Sie damals dachten, dass sie niemals von Nutzen sein würde.
Ohne die formale Ausbildung leiden Sie unter dem Problem, das am besten beschrieben wird als "Sie wissen nicht, was Sie nicht wissen". Die formelle Ausbildung bietet Ihnen eine breite Abdeckung vieler Dinge mit dem Wissen, dass niemand jemals alles benutzen wird. Da Sie das, was Sie verwenden werden, erst dann kennen, wenn Sie es benötigen, müssen Sie darauf vorbereitet sein, damit Sie wissen, wohin Sie gehen müssen.
Das Selbstlernende / Neugierige ist es, was Sie zu einer viel sachkundigeren und vielseitigeren Person macht. Ganz zu schweigen von mehr Wert für einen Arbeitgeber.
Randbemerkung: Ich habe meine gesamte Karriere damit verbracht, mit dem Programmieren im Alter von ungefähr 15 Jahren (meine Güte, über 25 Jahre ... fast 30 Jahre) zu beginnen, und dabei festgestellt, dass abgesehen von meiner Universitätsausbildung die meisten Ausbildungskurse (Sie wissen, ... BLAH in Englisch lernen) 3 Vollzeit-Tage) sind ziemlich nutzlos. Diese sind in der Regel oberflächlich, und was das vielbeschworene Mantra "Behalten Sie Ihre Fähigkeiten bei" anbelangt, ist es nicht sehr hilfreich für jemanden, der sich mit tiefen technischen Details befassen muss. Bücher kaufen, im Internet surfen, in Mathematik, Physik, Architektur und was auch immer mich nützlich und wertvoll gemacht hat. Zu einem bestimmten Zeitpunkt war ich einer von 10 Menschen auf der Welt mit spezifischem Fachwissen zu einem bestimmten Thema - all dieses Wissen wurde durch Autodidakt und Lernen am Arbeitsplatz erworben.
Die einzige Zeit, um mit dem Lernen aufzuhören, ist, wenn Sie 6 Fuß unter in einer Kiefernkiste sind.
quelle
Es gibt eine gute Parabel darüber:
Sie sollten also die ganze Zeit lernen, um Ihre Axt scharf zu halten .
quelle
Es ist entscheidend, sonst bleiben Sie zurück
Ich lerne hier jeden Tag bei der Arbeit, indem ich Bücher lese, Fragen stelle und beantworte. Je mehr ich lerne, desto mehr verstehe ich, wie wenig ich weiß.
quelle
Autodidakt ist aus zwei Gründen sehr wichtig:
Da das Verwalten von Legacy-Code unerlässlich ist, müssen Sie auch selbst verwaltbaren Code schreiben, und dies wird nur selten in formellen Lektionen unterrichtet (siehe Wie kann die Schulung von Schülern in Bezug auf Wartbarkeit verbessert werden?).). Wenn Sie sich während Ihres Studiums nicht selbst unterrichten und viel lesen, ist es unwahrscheinlich, dass Sie die erforderlichen Fähigkeiten erwerben, die Sie zu einem überdurchschnittlich guten Entwickler machen.
Versuchen Sie nicht, während Ihres Studiums viele Sprachen / Technologien zu erlernen, sondern lernen Sie bewährte Methoden und sauberes Codieren. Zum Beispiel sollten Sie Robert C. Martins "Clean Code" während Ihres Studiums besser lesen als Herbert Schildts "Java The Complete Reference".
quelle
Selbstunterricht ist sehr wichtig, da Sie die Konzepte auf Ihre eigene Weise verinnerlichen und dies wirklich hilft. Die Wahl einer Sprache für den Selbstunterricht ist sehr wichtig. Sprachen, die klar dokumentiert sind, sind sehr wichtig und das, was Sie nicht wollen, ist sehr ehrgeizig Da Sie sagen, Sie haben mit C ++ begonnen, würde ich Java für Sie empfehlen, es funktioniert immer so gut für Autodidakten.
quelle
Wahrscheinlich habe ich 95% meines Wissens in Bezug auf das Programmieren gelernt, indem ich Dinge selbst ausprobiert habe und gelernt habe, wie es funktioniert. Die Schule kann beim Unterrichten eines guten Programmierstils und beim Optimieren des Codes auf Geschwindigkeit usw. helfen, aber Sie werden niemals ein "guter" Programmierer, wenn Sie nur ein Lehrbuch lesen. Ein guter Weg, um Programmierkenntnisse aufzubauen, besteht darin, alltägliche Probleme zu finden, die Sie mit einem Computer lösen können, und zu versuchen, Code zu schreiben, um diese zu lösen. Feststecken ist ein Teil des Lernens. Am Anfang wollte ich ein Webentwickler sein, also machte ich ziemlich oft Dummy-Websites (ohne Hosting oder so), um neue Dinge auszuprobieren, die ich ausprobieren wollte. Für mich hat es ganz gut geklappt!
quelle
Ich habe vor 2 Jahren angefangen zu programmieren. Meine Schule konnte die Sprachen nicht gut unterrichten und ich muss online gehen und viel über mich selbst recherchieren. Ich lerne langsamer und brauchte daher 2 Jahre, um mein erstes Programm zu schreiben, während alle meine Schulkameraden immer noch Probleme haben oder auf Programmierung verzichten.
Dies zeigt, dass es für einen Programmierer besser ist, sich selbst zu unterrichten, als von der Schule abhängig zu sein. Die Schule wird Informationen immer verbergen, da sie der Meinung sind, dass wir nicht dazu bereit sind.
quelle
Wie immer in Mathematik und Informatik gibt es zwei Gesichtspunkte: 1. Notwendige und 2. Ausreichende Bedingungen
quelle