私はラップトップと1日を通して5分のセグメントの束を持っています。私はこれが「何でも」するのに単に短すぎると思っていました。少し練習し、いくつかの小さな動作の変更(プラグを抜くなど)を行うことで、各セグメントで何かを実行できることに気付きました。だから今、私はあなたのすべてのクイックドロープログラマーに連絡を取り、最短の時間セグメントで何かを成し遂げるためのヒントを求めています。
- あなたは何をした?
- どれくらい働きますか?
私はラップトップと1日を通して5分のセグメントの束を持っています。私はこれが「何でも」するのに単に短すぎると思っていました。少し練習し、いくつかの小さな動作の変更(プラグを抜くなど)を行うことで、各セグメントで何かを実行できることに気付きました。だから今、私はあなたのすべてのクイックドロープログラマーに連絡を取り、最短の時間セグメントで何かを成し遂げるためのヒントを求めています。
アイデアは次のとおりです。時間のチャンクが大きい場合は、実装する予定の機能の単体テストをいくつか作成します。次に、5 分の増分がある場合は、テストを選択し、それを満たすコードを記述します。この方法では、何に取り組むかを決定するために 5 分間を費やす必要はありません。すでにそれを行っており、単体テストの形式で文書化しています。
しかも、TDD とテスト カバレッジを無料で利用できます。ボーナス。
テスト駆動開発を採用。
タスク切り替えの大きなコストは、自分が最後にいた場所を把握することです。
開始する前に常にテストを作成している場合は、中断したところから再開するのは簡単です。テストを実行し、何が失敗しても、それが次に行うことです。
信じられないかもしれませんが、Five Minute Videos という Web サイトがあり、ソフトウェアのセクションがあります。
SOのランダムな投稿を読んで、何か新しいことを学びましょう:-)
退屈な裏話: 10 歳の妹の世話を 1 日しなければならなかったとき、私は似たような状況にありました。友人が来るのを待っている間、個人的なプロジェクトでいくつかの機能を完成させたいと思っていました。
約 20 秒のアコースティック音楽を演奏し、何かを書く前に頭を空っぽにすることは、最初の 5 分間を費やしてやりたいことのありふれたリストを作成することに加えて、非常に役立つことがわかりました。
すべてのキーボードショートカットキーを学びます。
また、電車を待っている間など、短いバーストでプログラミングすることもあります。私の方法は、「TODO: 次のステップはクエリをここに返すことです」という例外をスローすることです。ラップトップを開くと、作業中のモジュールを実行すると、モジュールが爆発し、コードのどこから開始するかを示すスタック トレースが表示されます。
また、わざわざIDEを閉じないでください...
TODO の大量使用。新しいクラスを開始するとき (私は Java プログラマーです)、コードの代わりにすべてのメソッド名と TODO を記述します。通常、これには (悪名高い) 5 分かかります。次に、次の 5 つができたら、ランダムな TODO の選択から始めて、コードを記述します。私はそれらをランダムな順序で行うことを好みますが、最初にすべての TODO をメソッドに書き込む方がうまくいくことに気付くかもしれません。試してみてください :)
私はフルタイムのプログラマーではなく、学生で趣味のハッカーなので、プログラミングのほとんどは自宅、図書館、またはカフェで行っています。1 つまたは 2 つの TODO を完了し、ネットサーフィンを少ししたり、人々が歩いているのを見たり、新しいコーヒーを注文したり、キッチンで軽食をとったりします。
これはおそらく制作環境では機能しませんが、個人的なプロジェクトでは王様です!
プロジェクトオイラー!
Project Euler は一連の挑戦的な数学的/コンピューター プログラミングの問題であり、解決するには数学的洞察以上のものを必要とします。数学は洗練された効率的な方法にたどり着くのに役立ちますが、ほとんどの問題を解決するには、コンピューターとプログラミングのスキルを使用する必要があります。
また、 The Daily WTFを読むこともできます。5 分の価値があります。
IDEにすばやくアクセスできるため、Hibernateではなくラップトップでスタンバイを使用しています。これが原因でバッテリーの問題が発生すると予想していましたが、かなりうまく機能しているようです。
最大のハードルは、どのタスクが 5 分に収まるかを知ることだと思います。そのため、私が最初に行うことは、より大きな作業を、それぞれが 5 分に収まる一口サイズのタスクに分割することです。そうすれば、5 分の余裕があるときに、コンテキストを大きな問題に切り替える必要がなくなります。次に、何をする必要があるかを考え出し、何かを成し遂げようとします。代わりに、タスク/ToDo リストを見て、一番上の項目をつかむだけです。
プログラミングには、プログラムについて考えるプロセスと、コードをコンピュータに入力するプロセスの 2 つがあります。すべてを 10 分以内の小さなプロジェクトに定義してみてください。入力したい内容を事前に計算し、上手に入力する方法を学んでおけば、5 ~ 10 分である程度の成果を上げることができます。
別の質問への答えは良い考え だと思います。jalfは提案します:
非常に簡単なトリックは、ここSOでC++の質問のRSSフィードを購読することかもしれません。
ここでは、あらゆる難易度で幅広い質問に回答し、通常は非常に詳細な回答を取得します。
もちろん、C ++に関する優れた本に取って代わるものではありませんが、他の方法では知らなかった可能性のある幅広い概念、落とし穴、および解決策を発見するための良い方法かもしれません。
したがって、あちこちで5分あれば、Stack Overflowで特定のタグのRSSをチェックして、質問を読んで(そして答えてください?)。
Code Complete 2の数ページを読む