Sie interessieren sich für eine Million Dinge und haben eine Million Ziele: Wie soll man entscheiden, worauf man sich konzentriert?

19

Ich arbeite derzeit als Webanwendungsentwickler mit .NET-Technologien. Ich bin daran interessiert, mehr über die Technologien zu erfahren, mit denen ich arbeite, aber ich interessiere mich AUCH für eine Million anderer Dinge ... (einschließlich Systemprogrammierung, Networking, Spieleentwicklung, Mobile Entwicklung, Informatik-Themen, Mathematik, Teilnahme an einem Open Quellprojekt, Gründung eines eigenen Unternehmens usw.).

Ich kann mich anscheinend nicht auf eine Sache konzentrieren, um ein "Experte" zu werden, wenn es so viele andere Dinge gibt, die "zu meistern" sind und die meine Aufmerksamkeit auf sich ziehen, und es gibt nur so viele Stunden am Tag ...

Meine Frage ist, was sind einige gute Strategien, um das Zögern zu beenden und die Zeit effektiv zu verwalten, damit Sie Ihre Freizeit optimal nutzen und lernen, woran Sie interessiert sind, ohne dabei andere Prioritäten aus den Augen zu verlieren und andere Interessen außer Acht zu lassen Die Risse? Oder muss ich opfern und wenn ja, wie priorisiere ich, was zu opfern ist?

donnovan9
quelle
Entschuldigung, ich habe die Frage bearbeitet, um sie zu klären.
Donnovan9
Hallo Konrad, deine Frage ist wirklich lang und es gibt eine Menge, die die Leute als "Garantie" bezeichnen würden. Ich weiß, dass dies in Anbetracht der Frage eine etwas ironische Frage ist, aber können Sie Ihre Frage auf einige wichtige Punkte beschränken, die für die Beantwortung einer bestimmten, lösbaren Frage erforderlich sind? Andernfalls besteht die Gefahr, dass Ihre Frage geschlossen wird und nicht mehr als die Frage beantwortet wird.
Sicher ... besser? Es ist definitiv ironisch haha
donnovan9
7
Ich halte das für eine interessante Frage ... und ich meine es ernst!
Sal
3
Nicht die gleiche Frage, aber einige der Antworten könnten für Sie von Interesse sein: programmers.stackexchange.com/questions/16708/…
Benjol

Antworten:

4

Suchen Sie Bereiche innerhalb der Felder, die Sie lernen möchten, mit Überlappung. Du denkst es vielleicht nicht intuitiv, aber Systemprogrammierung und Spielprogrammierung können sehr ähnlich sein. Vor allem, wenn es darum geht, Hardware zu beschleunigen.

Ein weiteres Beispiel: Wenn Sie mindestens 10 Stunden pro Woche für den Aufbau eines Start-ups investieren, das ein Multiplayer-Handyspiel entwickelt, haben Sie neben der Gründung Ihres eigenen Unternehmens auch die Entwicklung von Handys, Spielen und Netzwerken berücksichtigt. Suchen Sie sich eine gute Open Source-Bibliothek, die einen wesentlichen Teil Ihres Projekts ausmacht, und entwickeln Sie sie weiter, um sich mit Ihrem Framework vertraut zu machen.

Versuchen Sie, das KISS-Prinzip nicht nur beim Programmieren, sondern auch im Leben zu befolgen. In meiner Situation entwickle ich normalerweise interne Software, um die täglichen Aufgaben eines Unternehmens auszuführen, Daten zu verfolgen usw. In meiner Freizeit arbeite ich an einer Spiele-Engine.

Beide haben riesige Datenmengen, die über komplexe Kanäle geleitet werden müssen. Beide profitieren von Optimierungen und nutzen unter anderem Datenbanken, Netzwerke, Cache und intelligente Präzision. Ich habe von jeder Seite gelernt, wie man Leistung und Qualität auf der anderen Seite verbessert.

Mein Rat ist, die besten Aufgaben zu finden und dabei zu berücksichtigen, was Sie am meisten interessiert, und dann, eine knappe Sekunde, wie gut sie miteinander verbunden sind.

Garet Claborn
quelle
1
Das entspricht genau dem, wonach ich gesucht habe! Ich denke, der Trick besteht jetzt darin, ein Projekt zu entwickeln, das diese Überlappungen aufweist. Ich mag die Idee, ein Spiel zu machen, gerade weil es so viele verschiedene, sich überschneidende Fähigkeiten beinhaltet. Ganz zu schweigen davon, ein einfaches Pong-Spiel zu absolvieren, würde mir ein Gefühl des Vertrauens und des höchsten Wohlbefindens geben - das war ich schon eine Weile aufschieben. Eine Game Engine ist ebenfalls eine großartige Idee, da sie ein Ausgangspunkt für zukünftige Projekte ist und auf der ich aufbauen und erweitern kann. Cooles Zeug!
Donnovan9
1
Ein schöner, saftiger Motor ist eine große Herausforderung, die meine Fähigkeiten erweitert hat! Hält die Blöße meines Tagesberufscodes fern :) ... + 1 für das höchste Wohlbefinden
Garet Claborn
1
+ 1 für "saftiger Motor"
donnovan9
> _ <; Ich hoffe, ich sehe dein Spiel, wenn es herauskommt = P
Garet Claborn
7

Ja, ich habe immer so gedacht wie du. Ich wollte ein Spiel machen können. Dann würde ich gehen "Nein! Ich möchte eine Web-App machen!" dann werde ich sagen "nein! Ich möchte Unix beherrschen!" Und dieser gesamte Zyklus von "nein, ich will das, nein, ich will das" hörte nie auf.

Also hier ist eine kurze Antwort auf alles: Bleib dabei, was du willst .


Also hier ist eine Geschichte

Ich wollte schon immer Programme generell erstellen. Es war egal was; Ich wollte nur etwas bauen . Am Ende war es das Beste, was ich in meinem Leben erreichen konnte, etwas zu tun, indem ich ein Werkzeug benutzte, von dem ich "hörte", dass es sich um ein Gespräch handelte. Wenn ich völlig versagt hätte, wäre ich zu etwas anderem übergegangen.

Und so bin ich zum Programmieren von Spielen gekommen.

Alles begann damit, dass Visual C # Express auf der Microsoft.com-Homepage vorgestellt wurde. Die gesamte IDE war direkt vor mir verfügbar, also habe ich auf den Download-Link geklickt und sofort damit begonnen. Ich habe mir Video-Tutorials angesehen, viel Code geschrieben und war dabei.

Dann fing ich an, nach links und rechts zu gehen, um etwas zu finden, was ich tun konnte. Ich hätte eine Windows Forms-Anwendung oder eine Website erstellen können. Dann würde ich über Features nachdenken, die ich in meine Projekte einbeziehen könnte, aber ich werde nie damit fortfahren , etwas zu erstellen . Ich war einfach nicht motiviert genug.

Erst im MSDN-Newsfeed in Visual Studio wurde die Veröffentlichung eines kostenlosen Frameworks angekündigt, mit dem Sie Ihr Spiel erweitern können. Es war XNA Game Studio Express v1.0! Ich habe sofort angefangen. Ich habe hier und da ein paar kleine Spiele gebaut.

Aber hier ist der Haken: Ich fühlte mich motivierter, an einem Spiel zu arbeiten, das mir gerade in den Sinn kam, als an dem, für das ich wirklich nachdenken musste. Ich hatte eine großartige Idee, ein 3D-Snake-Spiel zu bauen, an dem ich zwei Tage hintereinander gearbeitet habe - und dabei natürlich Pausen gemacht habe - und voila! Ein sehr schönes Spiel, das funktioniert!

Und wenn es um Spiele ging, bei denen ich nur meine Freunde beeindrucken wollte. Ich würde zwei oder drei Stunden daran arbeiten und aufgeben und es nie wieder anschauen. Tatsächlich habe ich es mir seit mindestens zwei Jahren nicht mehr angesehen.

Hier ist die Moral der Geschichte: Lassen Sie sich von Inspiration leiten. Zwinge dich nicht, etwas zu tun . Wenn Sie eine Webanwendung erstellen möchten, sollten Sie möglicherweise in Betracht ziehen , ein Problem zu lösen, das Sie immer gestört hat . Wenn du ein Spiel machen willst, dann schlage ich vor, dass du dir die kleinen Dinge im Leben ansiehst, die du als "lustig" empfunden hast. Auch hier kommt es auf die Inspiration an.

Ich hoffe das hilft.

Sal
quelle
1
+1 denn es ist nicht die Technologie an sich, die wirklich interessant ist, sondern die Erfüllung der wirklichen Ideen (Träume, wenn Sie es wünschen) und die Lösung der wirklichen Probleme.
Péter Török
Danke, das ist ein wunderbarer Rat und ein guter Punkt. Manchmal vermische ich das, was ich tun möchte, mit dem, was ich tun möchte - aber wenn ich mich auf ein inspirierendes Projekt konzentrieren muss, sollte klar werden, worauf ich als nächstes achten muss, um das Projekt voranzutreiben . Das einzige verbleibende Problem ist wohl mein Wunsch zu verstehen, wie andere Dinge funktionieren, die nicht unbedingt in den Projektumfang fallen. Es wäre schwer, ein Projekt zu finden, das sowohl inspirierend ist als auch alle Themen nutzt, die ich in dem Beitrag erwähnt habe - aber ich habe das Gefühl, dass ich nahe kommen kann :)
donnovan9
2

Ich schlage vor, nebenbei ein schönes Projekt zu machen. Überlegen Sie sich etwas Cooles, das Sie gerne bauen würden, aber Sie wissen nicht, wie Sie vorgehen sollen - vielleicht ein Spiel oder eine Programmiersprache oder ...

Anstatt ein Thema auszuwählen und zu lernen, lernen Sie, was Sie brauchen, um den nächsten Meilenstein in Ihrem Projekt zu erreichen.

Nach meiner Erfahrung konzentriert sich dies auf Ihr Lernen und stellt gleichzeitig sicher, dass es vollständig ist. Sie lernen nur die Fächer, die Sie zum Abschluss Ihres Projekts benötigen, aber (solange Sie das Projekt tatsächlich abschließen) lernen Sie sie gut genug . Das Beste daran ist, dass nicht-triviale Projekte in der Regel eine Vielzahl von Themen abdecken, sodass Sie auch nicht übermäßig spezialisiert werden.

Am Ende werden Sie nicht nur etwas gelernt haben (manchmal sogar nicht das, was Sie erwartet haben!), Sondern Sie werden auch etwas Glänzendes für Ihre Bemühungen vorweisen können.

Tikhon Jelvis
quelle
Guter Rat. Ich konzentriere mich oft darauf, das "Techbook" als Projekt fertigzustellen, um eine Grundlage für die Schaffung von etwas "Eines Tages" zu schaffen, aber jetzt beginne ich zu erkennen, wie mangelhaft dieser Ansatz ist: langsamer Fortschritt, schlechte Wissenserhaltung und nichts zu zeigen! Das Gegenteil klingt ansprechender: Beginnen Sie mit einem Projekt, und dann haben Sie den Durst, die nächste Herausforderung in Ihrem Projekt zu lösen.
Donnovan9
0

Nun, Ihre Situation ist verständlich. Passiert Neulingen. Nun, Ihr aktueller Job wird so ziemlich entscheiden, was Sie in Ihrem restlichen Leben tun werden. Je länger Sie in Ihrer aktuellen Zeile arbeiten, desto schwieriger (fast unmöglich zu lesen) wird es sein, auf eine andere Zeile wie die Systemprogrammierung umzuschalten. Wenn Sie wechseln möchten, tun Sie dies in 2 Jahren. Nebenbei können Sie Ihre anderen Interessen verfolgen. Suchen Sie in sourceforge nach Projekten.

DPD
quelle
-1

Das wird wohl viele Jahre dauern. Lerne Unix, es wird nicht obsolet.

Christopher Mahan
quelle
Ja, das ist ein Teil des Problems ... Technologien kommen und gehen, also schwitze ich über die Tatsache, dass Silverlight 5 herauskommt und ich das Buch über Silverlight 3 noch nicht fertiggestellt habe ... zum Beispiel
donnovan9
und Unix ist auch auf der Liste;)
Donnovan9
@Konrad - Wenn Sie sich nicht entscheiden können und nicht mithalten können, wäre es ratsam, die Technologiepfade zu wählen, die sich "langsamer" ändern, um es so auszudrücken, wie * nix, Perl, C, Fortran ... das haben eine Geschichte und werden in absehbarer Zeit hier sein. Das Problem bei neuen Technologien ist, dass sie zu schnell ausbrennen. Wenn Sie sich nicht nur auf sie konzentrieren, können Sie meistens nicht einfach mithalten.
Turm
Interessant ... Ich bin immer auf dem Laufenden mit dem, was ich bei der Arbeit tun muss, zumindest ... einfach überwältigt von der Auswahl, was ich in meiner Freizeit lernen kann. Dennoch mag ich die Idee, einen Kontrast zu schaffen, indem ich in meiner Freizeit mehr an OS-Interna oder Netzwerken arbeite (die sich auch langsamer ändern). Ich bin immer noch auf der Suche nach mehr.
Donnovan9