Ich war bis ca. 2004 freiberuflich als Webentwickler tätig und habe mich entschlossen, wieder in die Entwicklung einzusteigen (insbesondere JavaScript und HTML5-Web / Mobile-Web-Apps). Ich habe den Eindruck, wirklich gut zu sein Für diese und ähnliche schnelllebige Technologien ist eine konstante Zeitspanne erforderlich, um nicht nur neue Fähigkeiten zu erlernen, sondern auch in die Verbesserung bestehender Fähigkeiten zu investieren.
Ich verstehe jetzt, da ich mich wieder mit Dingen beschäftige, gibt es eine ziemlich steile Lernkurve, aber zu sehen, wie gut viele Leute da draußen sind - der einzige Weg, wie ich dort hinaufkomme, ist, eine Menge Zeit zu investieren.
Für diejenigen, die als Vollzeitentwickler arbeiten, ist das, was ich zu verstehen versuche: An den meisten Tagen wird im Vergleich zum Lernen / Forschen mehr Zeit im Büro aufgewendet, um den Code herauszuschleifen. Ich könnte leicht 2-4 Stunden täglich damit verbringen, die besten Wege zu finden, Dinge zu tun.
Investieren die meisten guten Entwickler, die Vollzeit angestellt sind, bedeutende Stunden außerhalb der Arbeit, um ihre Fähigkeiten zu verbessern?
Oder schaue ich das alles vielleicht komplett falsch an?
quelle
Antworten:
Um ehrlich zu sein, benutze ich Newsfeed Reader. Ich abonniere eine Reihe von Blogs und technologiebezogenen Websites. Ich lese meinen Feed während des Mittagessens, vor der Arbeit und manchmal nach der Arbeit. Dafür benutze ich jedoch mein Tablet und überprüfe ständig die Nachrichtenquellen, ob sie ein gutes Zeit-zu-Wert-Verhältnis bieten. Wahrscheinlich lese ich 1-2 Stunden am Tag über neue Dinge.
Im Allgemeinen werde ich keine Zeit damit verschwenden, Kommentare zu lesen oder zu kommentieren, es sei denn, es handelt sich um eine echte Wissensübertragung.
quelle
Generally I will not waste time on reading comments or commenting unless its a real knowledge transfer.
Das ist eigentlich wirklich ein guter Rat. Ich bleibe auch über Blogs und Websites mit technologiebezogenen Inhalten auf dem Laufenden, habe aber erst kürzlich herausgefunden, wie viel Zeit ich mit dem Lesen von Kommentaren vergeude, die selten einen Wert liefern (dies hängt jedoch vom Thema und der Art der Quelle ab)."Ja wirklich?" Dies ist noch keine Antwort?
Schlagen Sie dem Chef vor, von dem Sie gehört haben,
newThing
dass er dem Unternehmen helfen könnte, insbesondere beihideousProblemWeJustHad
. So habe ich meinen Streifzug durch Unit-Tests gemacht. Das ist nicht gerade topaktuell, aber meine Schule hat schrecklich gut unterrichtet, worum es ging, und es war neu für mich. Ein Teil der Zeit dafür war definitiv die Erforschung, wie man es richtig macht.Und obwohl dies mehr oder weniger außerhalb Ihrer Kontrolle liegt, lerne ich oft neue Dinge, nur um meine Arbeit zu erledigen. Ich habe DO-178 und SQL gelernt, weil sie für die jeweilige Aufgabe obligatorisch waren. Wenn Sie WIRKLICH in neue Dinge eintauchen möchten, suchen Sie sich einen neuen Job.
Zusamenfassend. Lass dich dafür bezahlen, dass du lernst.Weil es einen wirklichen Grund gibt, ehrlich zu Gott zu sein, (einige) dieser neuen Dinge zu benutzen. Weil sie besser sind. Wenn es ihnen besser geht, möchte der Chef, dass Sie sie verwenden, weil dies seinem Geschäftsergebnis zugute kommt. Es gibt etwas Aufwand, sicher. Der Lernprozess ist nicht sofort und Zeit ist Geld, aber wenn es sich nicht lohnt, ist das Neue vielleicht nicht viel besser. In diesem Fall scheiß drauf.
quelle
ember.js
und schaffte es tatsächlich, das Projektnewthing
und derjenige ist, der vorschlägt, sie zu verwenden, anstatt die Peons, die das Unternehmen leiten. Aber es gibt nur so viele nicht-technische Chefs und das Feld ist so groß, dass es ziemlich dumm ist, von den Chefs zu erwarten, dass sie wissen, was am besten ist. Es geht nicht darum, Ihren Chef zu managen, sondern nur darum, eine Idee herauszubringen.Ich habe die nützlichsten Informationen, auf die ich stoße, in ein Anki- Deck geschrieben. Jeden Morgen verbringe ich 5-10 Minuten damit, das Material durchzugehen. Zum Beispiel hat mir Anki diese Woche diese Frage gestellt, mit der ich mich seit einiger Zeit nicht mehr befasst habe:
Ich erinnerte mich nicht, ob die Antwort
unset($value)
oder lautetereset($value)
, und das hielt mich scharf. Klar, heute morgen musste ich das im Code verwenden.Ich behalte einige Informationen zu AWS, PHP, Bash und anderen Technologien, die ich dort verwende. Zumindest behält Anki die Informationen im Kopf oder ist leicht zu finden, wenn ich sie vergesse.
EDIT: Ich sollte auch erwähnen, dass das Programmieren für mich ein Hobby war, das sich zu einer Karriere in der Softwareentwicklung entwickelte. Ich finde, dass Menschen, deren Karrieren auch ihre Hobbys sind, dazu neigen, auf dem Laufenden zu bleiben, da dies nicht nur ihr berufliches, sondern auch ihr persönliches Interesse ist. Dies gilt für Künstler, Ärzte, Gärtner und die meisten anderen qualifizierten Berufe, nicht nur für Programmierer.
quelle
Wenn die Zeit begrenzt ist, sollten Sie sich auf das Material von höchster Qualität konzentrieren.
Bücher (die Guten) haben mit größerer Wahrscheinlichkeit höherwertiges Material als Blogs. Bücher mit hohen durchschnittlichen Kundenbewertungen bei Amazon haben normalerweise das hochwertigste Material. Holen Sie sich einen Kindle und laden Sie ein paar hoch bewertete Bücher zu diesem Thema herunter - bewahren Sie sie immer bei sich auf. Vielleicht eine Stunde am Tag zum Lesen? - Ich bin mir sowieso nicht sicher, was eine gute Zeitvorgabe ist.
Wenn Sie wieder im Sattel sitzen und das Budget haben, ist es wieder besser, einen angemessenen Trainingskurs (oder eine Konferenz) für einen Kickstart zu besuchen. Ein paar Tage intensives Training = Monate Lesen.
quelle
Das Schärfen der Säge ist ein Muss für alle, die an wissensbasierten Arbeiten beteiligt sind. Wie das geht, bleibt dem Einzelnen überlassen. Hier sind einige Dinge, die ich tue
quelle
Stumpf zu sein, ja. Gute Entwickler tun eine gewisse Menge an Nicht-Arbeitszeitprogrammierung verbringen. Oft ist das ein Haustierprojekt, in dem sie mit neuen und interessanten Dingen herumspielen können. Oft sind Dinge, die für die Arbeit nicht anwendbar sind, dazu da, den Geist zu erweitern und mit der (relativ) Schneide mitzuhalten.
quelle
Als AC / DC würde sagen: "Es ist ein langer Weg nach oben, wenn Sie Rock and Roll wollen".
Es wird nicht einfach, wenn Sie nach oben streben. Das Hauptproblem beim Versuch, wieder auf das Pferd zu kommen, besteht darin, sich überholt zu fühlen - ganz zu schweigen von der Dummheit.
Sie versuchen, TDD zu verstehen, und stoßen dann auf Dependency Injection und dann auf Inversion of Control-Container. Das Letzte, was ich unter meinem Radar gesehen habe, war CQRS. Es ist wirklich schwer, all das auf einmal zu erfassen. Kleine Schritte.
Und es hilft nicht der Tatsache, dass einige davon nur eine Modeerscheinung sein können. Junge, rühmen wir uns gerne mit diesem neuen, glänzenden Ding, das all unsere Probleme lösen wird?
Einige Dinge, die Sie ausprobieren sollten:
http://www.safaribooksonline.com/ Sie haben (irgendwie versteckt) ein 5-Slot-Abonnement für 9,99 USD pro Monat. Sie haben eine mobile App. Sie können lernen, wo immer Sie sind.
Abonnieren Sie einige Videoklassen. Ich habe http://tekpub.com/ einmal abonniert und geliebt. Ich kenne auch https://peepcode.com und http://pluralsight.com . Sie können unterwegs zuschauen.
Wähle ein paar gute Newsfeeds und folge ihnen. Wählen Sie Qualität vor Quantität. Ansonsten fühlen Sie sich einfach von zu vielen Informationen niedergeschlagen.
Verwenden Sie https://getpocket.com , um die interessanten Seiten zu speichern, die Sie möglicherweise später anzeigen möchten. Hören Sie auf, neue Tabs zu öffnen, um sie später anzuzeigen und zu vergessen. Sie verfügen über mobile Apps, mit denen Sie Ihre gespeicherten Seiten auch unterwegs anzeigen können.
Verwenden Sie https://ifttt.com , um Ihr Leben zu erleichtern. Ich mache es so, dass wenn ich einen Artikel in Google Reader starte, er automatisch für mich in Pocket gespeichert wird.
http://www.class-central.com/ Liste der MOOC, die von Institutionen wie Stanford und MIT angeboten werden. Einiges davon kann wirklich interessant sein.
Wie auch immer, die besten Programmierer verbringen wahrscheinlich viel Zeit außerhalb der Arbeitszeit, um neue Dinge zu lernen. Aber sie tun das, weil sie das Codieren lieben. Es ist einfach, Zeit zu finden, um Ihre Codierungsfähigkeiten zu verbessern, wenn Sie das Codieren lieben. :)
quelle
"Code ausschleifen" IST das beste Lernwerkzeug. Wenn ich etwas bekomme, das eine neue Methode anwenden kann, hämmere ich darauf, bis es funktioniert. Wenn ein Kunde etwas angefordert hat, das die neue Technologie erfordert, werde ich es ihnen in Rechnung stellen, aber wenn es etwas ist, das ich gerade nicht gelernt habe, rechne ich es ihnen nicht ab.
Das Webmaterial bewegt sich in einem guten Tempo. In meiner kleinen Firma benutze ich Freiberufler für Dinge, die ich nicht kenne oder für die ich keine Zeit habe. Normalerweise unterrichten sie mich, aber es ist schwieriger geworden, mit dem Schritt zu halten, was heute funktioniert, aber du konntest es gestern nicht verwenden, oder es wird morgen funktionieren, also solltest du es heute und immer weiter lernen.
Für Nicht-Web-Sachen waren die Dinge stabiler. Sie haben Code in einer Sprache auf einer Plattform geschrieben. Jetzt müssen Sie HTML / CSS / Javascript / Java / SQL / PHP / * nix / all diese APIs kennen ... und dann gibt es den Internet Explorer ... seufz.
Es ist ein Kampf für einen Entwickler.
quelle
Konzipieren und bauen Sie Ihre eigenen Projekte.
Ernsthaft. Alles, was ich gelernt habe, kam von mir, als ich eine weit hergeholte Idee hatte und mich dann hinsetzte, um es herauszufinden. Wenn Sie dies lange genug tun, werden Sie sich auf einen Weg der kontinuierlichen Verbesserung begeben.
quelle
Versuchen Sie einfach, Ihre Freizeit optimal zu nutzen. Sie könnten jeden Tag 3 Stunden damit verbringen, sich mit neuen Technologien vertraut zu machen, aber Sie möchten wahrscheinlich immer noch ein bisschen soziales Leben führen. Es ist also möglicherweise nicht der beste Ansatz.
Normalerweise lerne ich in solchen Momenten, in denen ich (unter normalen Umständen) "faul" bin. Im Zug Technologiebücher lesen, Podcasts anschauen, bevor ich ins Bett gehe (statt fernzusehen), StackOverflow, Technologieblogs oder anderes lesen Quellen, wenn ich mich auf der Arbeit ausruhen muss (anstatt auf Facebook zu sein) und mit meinen Arbeitskollegen während der Mittagspause über Technologie spreche.
quelle
Ein Trick, mit dem ich etwas Neues lerne, besteht darin, in StackOverflow (oder in den speziellen Foren der Technik) nach einer Frage zu suchen, deren Antwort ich nicht kenne, und die Antwort zu erarbeiten. Außerdem versuche ich, etwas mit der neuen Fähigkeit / Technologie umzusetzen. Zum Beispiel, um zu lernen, wie man für Windows Phone programmiert, fragte ich meine Frau, welche Art von App sie will. Das Schreiben dieser App hat mich gezwungen, mehr über die Plattform und die Vorgehensweise zu erfahren.
Sie können alles lesen, was Sie wollen, aber Sie haben keine Erfahrung mit dem Lesen.
quelle
Fragen Sie sich einfach, was Sie antreibt und nicht, wovon andere angetrieben werden.
Zum Beispiel: Möchte ich mobile Apps erstellen oder weiter an Web-Apps arbeiten, da ich bereits Erfahrungen damit gesammelt habe, oder möchte ich technische Beratung leisten? Ich denke, sobald Sie wissen, was Sie in den nächsten Monaten oder Jahren tun möchten, wissen Sie genau, wo Sie anfangen sollen und was Sie lernen müssen.
Dies ist keine Frage, die nur IT-Mitarbeiter stellen.
quelle
Ich habe nie eine bessere Erklärung dafür gefunden, "wie" oder "warum", als Peter Norvigs "Teach Yourself Programming in 10 Years" . Wenn ich die Motivation für "Zeit gewinnen" verliere - wie Sie betont haben, wer nicht?!? - Ich habe gerade seinen Artikel noch einmal gelesen und erneut zugesagt. :)
quelle
Mein Unternehmen ist sehr vorausschauend und möchte sicherstellen, dass wir uns gegen die neuesten Technologien entwickeln. Sie wissen zu schätzen, dass sie ihren Entwicklern Zeit geben müssen, um sich mit neuen Funktionen / APIs usw. vertraut zu machen. So haben wir kürzlich von Richfaces 3 auf Richfaces 4 umgestellt Verstehe die neue Landschaft. Wenn sich ein Unternehmen nicht dazu verpflichten kann, Ihnen Zeit zu geben, um über die neuesten Entwicklungen auf dem Laufenden zu bleiben, sind Sie möglicherweise am falschen Ort.
Lassen Sie Ihr Unternehmen eine Safari Books-Lizenz erwerben. Es ist eine umfassende Ressource der besten Fachbücher. Darunter eine Reihe von Rohschnitten und in Arbeit. Das Internet ist im Allgemeinen auch eine großartige Ressource, aber der Pegel von Umgebungsgeräuschen und Fehlinformationen ist hoch.
Ich investiere auch jeden Abend ungefähr eine Stunde außerhalb der Arbeit, um auf dem Laufenden zu bleiben. Hin und wieder aktualisiere ich auch meine beruflichen Zertifizierungen, für deren Erreichung an Wochenenden zusätzliches Engagement erforderlich ist.
Lassen Sie Ihr Unternehmen erneut wissen, dass Sie dies in Ihrer eigenen Zeit tun, und prüfen Sie, ob es für Ihre Prüfungsgebühren oder Schulungen aufkommt. Oder erlauben Sie Ihnen vielleicht, die Prüfung zur Firmenzeit abzulegen.
quelle
Die Antwort ist einfach: Versuchen Sie, die neuesten Technologien bei der Arbeit einzusetzen, und führen Sie Nebenprojekte durch, wenn dies nicht möglich ist
Aber um Zeit zu sparen, müssen Sie zuerst wissen, was Sie lernen müssen, damit Ihre Zeit gut angelegt ist.
Das hat bei mir funktioniert
Der zweite Teil ist, wie man es effektiv lernt, damit man seine Zeit effektiv nutzt
Ich fand udacity, coursera, codeschool, codecademy, teamtreehouse, edx.org, udemy, net tuts + und andere großartige Ressourcen, da ihre Kurse dazu neigen, mit der neuesten Technologie Schritt zu halten
Auf der anderen Seite können Sie in eine Informationsexplosion geraten und darüber schimpfen, wie ich es zuvor getan habe: http://tilomitra.com/the-crazy-world-of-code/
quelle
Ressourcen und Tools, die ich verwende, um auf dem Laufenden zu bleiben, sind unten aufgeführt. Wahrscheinlich verbringe ich 1-2 Stunden pro Tag damit, mich mit technischen Themen zu befassen, aber nicht immer mit den technischen Themen, auf die ich meine Aufmerksamkeit richten sollte.
In Bezug auf das Verhältnis von Zeitaufwand für das Lesen bei der Arbeit zu Zeitaufwand für das Codieren werde ich mich mit einem Thema befassen, wenn es in direktem Zusammenhang mit der vorliegenden Arbeit steht (z. B. wie man dieses neue Framework richtig einsetzt).
Ich finde, ich lese zwei Arten. Deep Reading zu einem bestimmten Thema, das ich verwende oder in Zukunft verwenden werde, oder Wide Reading, bei dem ich andere Technologiebereiche durchsuchen werde, die ich nicht verwende, aber immer noch interessant finde.
Podcasts
RSS-Leser
Safari-Online-Dokumentation
Bücher (Dead Tree Format)
Scott Hanselman hat ein gutes Video zum Umgang mit Ihrem "persönlichen Datenstrom" - http://www.hanselman.com/blog/ItsNotWhatYouReadItsWhatYouIgnoreVideoOfScottHanselmansPersonalProductivityTips.aspx
quelle
Zusätzlich zu dem, was gesagt wurde, möchte ich hinzufügen - "Haben Sie einen Plan". Ich versuche, alle 6 - 12 Monate eine oder zwei Technologien auszuwählen und mir das Ziel zu setzen, ein tiefes Verständnis für diese zu erlangen. Dann versuche ich, die eigentlichen Aufgaben zu definieren, um mich dorthin zu bringen - z. B. ein paar Online-Tutorials durchzulesen, ein Nebenprojekt mit dieser Technologie auszuwählen, neue Diskussionsseiten zu verfolgen (oder die neuen Tags in StackOverflow zu abonnieren) usw. Dies funktioniert nicht Ich brauche nicht viel Zeit, aber die Konsequenz, jede Woche ein wenig voranzukommen. (Wenn Sie ein Produktivitätssystem wie GTD verwenden, können Ihre Lernziele in Ihre normale Projekt- und Zielplanung einbezogen und regelmäßig überprüft werden.)
quelle
Newsletter!
Momentan schreibe ich einen Newsletter namens Pycoder's Weekly, einen wöchentlichen Newsletter für Python-Entwickler, der die wöchentlichen Ereignisse in verschiedenen Themen innerhalb von Python behandelt.
Das war wirklich kein Stecker.
Ich denke, dass dieses Medium sich sehr gut dazu eignet, mit den Dingen Schritt zu halten, und für viele Entwickler eine hervorragende Ressource ist.
Es gibt viele für verschiedene Sprachen und Tools, die durch jede Menge Neuigkeiten stapfen müssen und interessante Dinge finden, die zeitaufwendig und extrem ablenkend sein können.
quelle
Ich versuche ein paar Dinge, um auf dem neuesten Stand der Technik zu bleiben:
Dies sind nur einige der Dinge, die ich tue, aber es ist klar, dass Sie nur bereit sein müssen, die Zeit zu investieren, wenn Sie etwas Neues lernen und auf dem Laufenden bleiben möchten. Es ist wie jede andere Fähigkeit, die Sie verbessern möchten.
quelle
In einigen Unternehmen gelten Richtlinien, nach denen der Mitarbeiter 20% seiner Zeit für andere Tätigkeiten als die tägliche Arbeit aufwenden kann. Diese Zeit kann man nutzen, um die Säge zu schärfen oder auf dem neuesten Stand der Technik zu bleiben.
quelle
Ich organisiere ab und zu Lunchmeetings bei der Arbeit.
Ich finde ein Video (zB von Kanal 9) und plane es einfach während des Mittagessens, hole einen Beamer und einen Raum und lade alle ein, die interessiert sein könnten. Eine großartige Möglichkeit, das Mittagessen mit Kollegen zu verbringen. Auch eine gute Möglichkeit, Initiative zu zeigen.
quelle
Technologie ist darüber hinaus Leidenschaft, unabhängig von Zeit und Mühe, die sie erfordert, sie macht in sich selbst Wahnsinn und wenn sich süchtig danach fühlt, für sich selbst leer zu sein. Wie bereits erwähnt, sollten Sie sich am besten mit dem Online-Reader aktualisieren. Meistens verbringe ich 1-2 Stunden mit verschiedenen Newsfeeds, obwohl ich keinen physischen Zugang zur Technologie habe. Es ist eine schwer verdiente Technologie für mich, aber dank Feeds kann ich sie kaum spüren. Das Wissen um Technologie ist nicht nur ein Weg, Dinge für sich selbst bekannt zu machen, sondern eine Möglichkeit, den Innovatoren Tribut zu zollen
quelle