参加するにはあまりにも多くのプロジェクト、遊ぶには多すぎる言語 (そしてそれらの言語にはあまりにも多くのクールな機能)、そして読むべき本が多すぎる...
部分的に完了した「実験」の痕跡を残すのではなく、集中力を維持し、実際に何かを成し遂げるにはどうすればよいでしょうか?
参加するにはあまりにも多くのプロジェクト、遊ぶには多すぎる言語 (そしてそれらの言語にはあまりにも多くのクールな機能)、そして読むべき本が多すぎる...
部分的に完了した「実験」の痕跡を残すのではなく、集中力を維持し、実際に何かを成し遂げるにはどうすればよいでしょうか?
開発者には、Tinkerers と Entrepreneurs の 2 種類があるようです。
いじくり回しは、すべての小さなことがどのように機能するかを知りたがっています。何かのこつをつかむと、知らないことすべてに気を取られます。テクノロジーの世界は、学ぶべきことがたくさんあり、新しい年が来るたびに新しいことが生まれるため、いじくり回す人にとっては厳しいものです。ティンカラーは自分の知識に誇りを持っています。
起業家は、本当に素晴らしいものを作るために十分な知識を持ちたいと思っています。彼らは、機能とエンド ユーザー エクスペリエンスの観点から考えます。C よりも Java よりも .NET よりも Python について議論するのを聞くことはありません。彼らは気にしないからです。彼らは、言語自体よりも言語の結果に関心があります。起業家は、ユーザーベースを誇りに思っています。
ティンカラーの傾向に苦しんでいるようですね。私も同じ問題を抱えており、1 つだけ解決策を見つけました。それは、あなたが完全に尊敬できる起業家開発者を見つけることです。この2つが合わさると無敵です。Tinkerer は、すべての技術的なニュアンスの深みを掘り下げます。彼らは起業家を技術的に正直に保ちます。次に、起業家はティンカラーに焦点と機会をもたらします。彼らがあなたが Scala サイトをブラウズしているのを見つけたとき (あなたが Scala 開発者ではないことを前提としています)、彼らはあなたの既存のプロジェクトにおける新しい課題を明らかにします。それだけでなく、Tinkerers ではない人が何を望んでいるかを理解するのに優れています。
お金、そして何かを実際にやり遂げたときの達成感。自分で働くことを最初に考えたとき、自分が開発して後で販売するソフトウェアのアイデアを思いつき始めました。もちろん、自分が作っているものが実際に売れるかどうかは本当にわからなかったので、気が散って新しいアイデアに飛びつくのは簡単でした.
それで、私は請負業者/コンサルタントになることに決めました。自分が作っているものに買い手がいて、待っている人がいるとわかると、モチベーションが上がります。興味深いプロジェクトややりがいのあるプロジェクトの場合、それを完成させるために急いでいます。そのラッシュがますます欲しくなるので、それは余分なモチベーションを追加します.
仕事のための仕事のプロジェクトの流れがかなり安定すると、良い時間管理を実践するインセンティブがあるため、サイドプロジェクトにより集中できることがわかりました. サイド プロジェクトに取り組むために、毎日または毎週、一定の時間を自分に与えています。
もちろん、今でも時折話題を逸らしたり、新しいサイド プロジェクトを開始したりしていますが、私が最も興味を持っているプロジェクトは継続できています。
また、いくつかのプロジェクトを完了すると、構想から完成までに実際に何が必要かをよりよく感じることができ、何度も何度もやり直すのがずっと簡単になります.
優れたプログラマーは、未完成の「実験」をたくさん抱えているかもしれませんが、これは良いことです。
通常、優れたマネージャーの場合、単に仕事が完了していない場合、責任を問われることになります。学生ならもっと大変ですけどね。学びたいことをすべて学ぶことは不可能だと気づきました。
私は、新しい言語を年に 1 つか 2 つ、月に 1 冊の本だけを学ぶように制限しています。これは、混乱したプログラミングと私の仕事をうまくこなすこととの間のバランスが取れているようです。
素晴らしい学習態度を持っていることを称賛します:)
おそらく、(チームまたは個人にとって) 最善の動機は、早い段階で頻繁に目標を設定することです。
プロジェクト管理で私が観察した最良の方法の 1 つは、「機能をテーマにした週」の導入でした。チーム (または個人) は、「顧客の機能」、「レポートおよびメトリクス」など。これにより、チーム/人は、提供/努力の 1 つの領域に集中することができました。また、進捗状況を顧客に簡単に伝えることができました。
また.. あなた (またはあなたのチーム) の進捗状況を可視化するようにしてください。自動化されたビルド プロセス (またはその他のメカニズム) を確立し、作業の段階的な実装を短期間で "公開" できれば、多くの場合、牽引力を獲得し、結果をより迅速に推進することができます (また、初期段階の支援に役立ちます)。修正)。
1)もちろん、すべてのサイドプロジェクトで、未完成のものの完全に大規模なトレイルを残します。
2)仕事へのモチベーションが必要なときは、財布を開けます...それは通常私のためにそれを行います。
方程式の「ビジネス」側に関与することは非常に役立つことがわかりました。あなたのプログラムの実際のユーザーが彼らの問題に対するあなたの創造的な解決策からどれだけの利益を得ることができるかを見るとき-彼らにそれらの解決策を提供することは極端な動機です。:-)
私は販売を計画しているアプリを作成しており、それを余分なお金を稼ぐ方法、または他の人のために働く時間を減らす方法と見なしています。
私の妻はこのアイデアが好きで、彼女の励ましは、今では「遊び」ではなく「仕事」になっているので、私を通常より長く集中させることができました。