web-dev-qa-db-ja.com

「終点症候群」についてどうするか?

私は自分自身で「ストップポイントシンドローム」と呼ぶ行動に気づきました。「ストップポイント」に達するまで(または疲労するまで)仕事を止めることができないことを意味します。つまり、機能の完成に取り組んでいるゾーンにいる場合、その機能が完成するまで止まりません。それが私が取り組んでいるバグである場合、この影響はさらに顕著になります...修正されるか、少なくとも理解されるまで、私は止まりません。私はラップトップで作業していて、VPNを使用していて、その夜遅くに家に帰って仕事に取りかかることができたとしても、その事実は私が仕事を辞めるのに役立ちません...バグを見つける前に死ぬのではないかと心配しています。

なぜ私が仕事から帰宅しなかったのか、時には午後11時に帰宅しなかった理由を理解できない家族にこれを説明するのは非常に困難です。マネージャーでさえこれに不思議に思っており、私の同僚のほとんどが毎日同じ時間に仕事をすることに問題がないことに気づきました。

他に誰かがこの問題を抱えていますか?これについて心配したり、変更したりする必要がありますか?もしそうなら?

44
JoelFan

いつも私に起こります。あなたはコーディングのゾーンにいて、時計に気づくでしょう...家に帰る時間ですが、それからあなたは「まあ、私がXを終えたらすぐに」と自分に言い聞かせます。次に発生するのは...「まあ、X + Yが完了するとすぐ」です。

これに対抗するために、コードに「ここから開始」と記したメモを入れ、自分が取り組んでいたことと、それを実行するために重要だったキーのポストイットを残します。

肝心なのは、これが起こったときに私のプログラマーは愛するということですが、家族の場合は特に、これをバランスさせて手に負えないようにすることが重要です。

36
Walter

これは通常の動作で、ここでも同じだと思います。対処するための最善の方法は、予定された出発まで完了できないように見える場合、新しい作業点を開始しないことです。確かに、この50分間を埋めるのに十分な忙しい仕事がありますね。

10
user281377

確かに私はこれを認識しています。私はあきらめ、疲れ果て、欲求不満になるまで、一晩中問題に取りつかれます。 脳の霧

おもしろいのは、私が朝仕事に戻ったとき、いつも問題を解決するすぐにことができることです。それは、良い睡眠の後、私の脳の働きがずっと良くなるからだと思います。

私がこれから学んだことは、脳が十分に休んでエネルギーを与えられていると何倍も効果的であるため、すべての夜間労働者に働く意味がないということです。少なくとも私にとっては、これは誰にとっても同じだと思います。

持続可能なペース および デスマーチ も参照してください。

10
Martin Wickman

プログラミング、特にデバッグは、短期間のメモリを大量に消費します。完了する前に停止すると、キャッシュが消去され、以前の場所に戻るのに多くの時間が無駄になります。

したがって、これは自然で効率的であり、「対抗」するものではありません-計画されるべきですが。

役立つ1つのことは、作業中にメモをとること、そしてやめたときに次にやることをメモすることです。

9
Steven A. Lowe

これがまだ言及されていないことに驚いています。

停止する必要がある場合、stopコールドターキー、正中線、簡単で明白なものの真ん中にあります。 IDEは、エラーがあることを示す赤と黄色の行を随所に配置しますが、これは問題ありません。その行の前に、作業した項目について短い/ *コメント* /を作成してください。

作業を保存して終了します。

翌日戻ってくると、「ああ、そうだ、YのせいでXの真ん中だった」と思われ、作業の内容に戻るのは難しくありません。

私が最後に取り組んだこと(個人用のマイナーな趣味のアプリケーション)は、バグを狩っているときに何時間も飛んでいることに気付いたときにこれを行いました。手遅れになると、「これをねじ込んで」保存して終了すると思いますが、コンパイルエラーが発生します。その後、もう一度開くと、「エラー?wtf?!1 /」のようになり、「そうです、このメソッドが例外をスローした理由をテストしようとしていました」。

意外と効率が良かったので、今後はこの手法を使うつもりです。

7
Corey

以前は、タイマーでコンピューターを再起動する小さなアプリケーションがありました。私はそれが行われるはずだったときはいつでもそれを設定しました。私のコンピューターは起動に5分かかりました。これは、ワークフローに支障をきたして家に帰るよう説得するのに十分でした。これと、仕事外での生活が、仕事での生活と同じように、停止するのに苦労するほどの活動でいっぱいであり、始めたいと思っていることを確認することと組み合わせました。そのような活動を見つけるのに多少の努力が必要でしたが、それだけの価値がありました。

4
blueberryfields

あなたの人生が仕事を中心に展開している場合、それは間違いなく非常に効率的な仕事の方法です。

私は同じ問題を抱えていた時代を経験しました。私はいつも仕事をしていましたが、すべてが縛られ、次回は完全に白紙の状態で座ることができるようになるまで止まりませんでした。残念ながら、管理されていないと、家族、友人、その他の趣味との時間を節約できます。

これは、私の習慣をもう少し扱いやすいものに集中させるのに役立ついくつかのヒントです:

  • 早い段階で頻繁にチェックインします。停止点が近くなるように、小さな変更を加えてください!
  • GTDを使用します。タスクで作業すると、作業を小さなチャンクに分割する必要があるため、より多くの停止点があります。
  • カレンダーを使用してください。イベントや睡眠、食べ物などであなたのスケジュールにペン(鉛筆ではありません)を入れて、それに固執してください。事前にリマインダーを設定しておくと、すぐに立ち寄る場所に到着する必要があることに気づくことができます。
4
Ryan Hayes

他のほとんどの人がすることと比較してより長い時間サイクルで作業することはプログラミングの性質です。

レンガ層は、わずか1分で別のレンガを積み上げることができ、いつでも+/- 1分間停止して、作業が中断したところから再開できます。シンプルなステップ、短い時間サイクル。小売では、1人あたり1〜2分です。マッサージセラピストは1時間か2時間のタイムサイクルで作業します。午前中に何が行われたとしても、午後の予定とは無関係です。クライアントは時間の経過とともに実行される場合や、早期に表示される場合がありますが、特定の時間に実行されることを期待して、10分または20分かかることがあります。

飛行機を世界一周飛行させて世界新記録を樹立すること。これはストップアンドスタートのような活動ではありません。 1時間おきに2時間おやつに上陸したり、ビーチで戯れることは、その努力をはるかに印象的でなくなります。時間の最小増分は、日数に関係なく、旅行全体です。

ソフトウェア開発者がタスクを開始し、事実と詳細のメンタルキャッシュを構築し、バグを見つけるか、新しい機能を追加する方法を確認し、コーディングが完了するまで短期記憶のキャッシュを保持することは一般的です。あなたは時間的にダイムに止まることはできません。損失なしでは分割できない自然な時間の増分は、おそらく1時間から10程度のYMMVであり、メンタルキャッシュの損失が許容される主要な方法と同様に、いくつかの小さな弱い停止ポイントが途中にあります。タスクが本当に行われる停止点。

もちろん、私たちの体は疲れます。そして、善よりも害を及ぼす前に止めなければなりません。 「死はあなたに減速するように言う自然の方法です」という古いことわざが当てはまるかもしれません。

3
DarenW

それは時々すべてのプログラマーに起こると思います。恐怖が原因だと思います。翌日、今していることを完全に忘れてしまうのではないかと恐れています。次に、すでに行ったことをやり直すために多くの時間を費やす必要があります。これは非常に非効率的です。私の経験では、ほとんどのプログラマhate非効率です。

これと戦うには、あなたがどこにいて次の日に何をしているのかをメモしてから、仕事をしていないもので賄賂を受け取り、自分を動かします。

3
John

あなたが家族を持っているなら、これは非常に簡単です。

  • 午後5時に仕事を辞めた場合、コードは明日入社したときとまったく同じになります。

  • 午後10時に仕事を辞めた場合、息子は家に帰るときにすでにベッドにいるので、抱擁したり、その日学んだことを披露したりすることはありません。そして、私の妻は助けなしで一日中お尻を動かさなければならなかったので不機嫌になります。

しかし、あなたが独身で、「ソーシャルシーン」に過度に興味がない場合は、気が狂います!

ただし、午後9時に行う作業は、午前9時に行う作業よりも品質が低い可能性があることに注意してください。十分に休息し、明確な心を持つことの利点を過小評価しないでください。

2
Dhaust

はい、これも持っています。ええと、実際に私は年をとったので、あまり目立たなくなりました。

また、一日の終わりには、また疲れていると、もっと間違いを犯すことに気づきました。到着して翌日仕事に戻ると、解決策が明らかになり、大量のコードを書き直さなければなりません。ただし、前日と比べてほんのわずかな時間で済みます。

2
NimChimpsky

私は犬(2匹)を飼うまでこの問題を抱えていました。私は特定の時間までに家に帰るか、尿を浄化する必要があります。また、ほとんどの場合、解決策は午前中に明らかになると思います。

2
Matthew Bierman

これを制御する必要があります。あなたは現在、あなたの仕事を扱いやすい部分に分割することができないか、何かがかかるのにかかる時間を見積もることができないようです。だから、それが完了するまであなたは働きます。おそらく、競争が激しすぎるか、予定どおりに仕事を進められないのではないかと心配しています。

これは悪循環であり、長期的には役に立ちません。疲労、焼損などにつながる可能性があります...

だから、あなたの仕事をより小さな管理可能な達成可能なタスクに分割する練習をしてください。各タスクにかかる時間を見積もります。数時間以上かかるタスクはありません。これを正しく行うには、十分な時間をかけてください。休憩時間をとってください。そして、プログラミングではなく、人生の他の側面を楽しみ、学び、評価し、体験する時間を自分に与えてください。

1
Conor

いや、あなただけではありません。私は同じ問題を抱えています。私が少し前に尋ねた同様の質問の答えをチェックしたいかもしれません: プログラミング活動が問題になったときにどうするか?

1
gablin

一時停止しました。午前1時30分頃です。そのときは目を覚ましていることはできますが、どんな仕事も終わらせられません。そして、眠らない限り、翌日は何の価値もありません。

だから、11時以降に仕事をやめて、就寝することを学びました。そうすれば、翌日は新鮮で、週を通して着実に仕事ができます。

1
Michael K

それはプログラマの性質だと思います。時々、あなたは新しい問題に取り掛かる前に早く去らなければならないかもしれません。あなたが入れたすべての余分な時間で、罪悪感を感じる必要はありません。次に、それについてあまり考えないように注意する必要があります。翌朝最初に取り組む準備をしてください。

1
JeffO

仕事を楽しむのは素晴らしいことです。しかし、ここをそんなに多くの人々が仕事を中心に生活を送っているように見えるのも非常に悲しいことです。

1
user9493

ええ、私はいつもそれをします。

興味深いことに、私が一緒に働いた最高のマネージャーは、私がそれをやり過ぎたとき、いつでも家に帰るように言う準備ができていました。

0

それは当たり前のことですが、闘うべきだと思います。通常、私は高品質のコードを生成しているポイントをはるかに超えてプッシュし、正直に考えるのに疲れすぎて見栄えが良いものを修正するために午前中に多くの時間を費やすことになります。

通常、私はそれについて不合理になっていることを知ることができますが、警告の兆候に気付かなかった場合、誰かがあなたを平手打ちすることを助けます。

0
Satanicpuppy