ソフトウェア開発者の日常

こだわりなく書きたいことを書いていきます。

気が向かない仕事を進めるために、やっていること

今週から気が向かない仕事に着手しました。
以前作成したプログラムの改修です。

改修の目的は、処理速度の改善のためです。

なぜ気が向かない仕事なのか?

2019年の夏から設計を行い、その後実装を行ったプログラムです。
その過程で思いついた様々なことを、このブログの記事として書きました。
未経験業種のシステム設計に四苦八苦中 - ソフトウェア開発者の日常
書き出す効果を改めて実感中 - ソフトウェア開発者の日常
継続案件は、毎日少しずつ考えるのが無難 - ソフトウェア開発者の日常
未経験業種のシステム設計で手が止まる理由 - ソフトウェア開発者の日常
今年は仕事の秋かな? - ソフトウェア開発者の日常
データの保持の方法 - ソフトウェア開発者の日常
データの保持方法の変更 - ソフトウェア開発者の日常
さらにデータの保持方法を変更しつつ悩む - ソフトウェア開発者の日常
データの検索処理を速くする - ソフトウェア開発者の日常
プログラミングしていても手が止まる - ソフトウェア開発者の日常
思いつきを得られるタイミングは、状況が変わったとき - ソフトウェア開発者の日常
加工したデータを元に戻すのは、バックアップから復元するのが手早い - ソフトウェア開発者の日常
プログラミングをしていて関数/メソッドを分割したくなるとき - ソフトウェア開発者の日常
仕事中に状況を変える方法 - ソフトウェア開発者の日常
下手に削除のロジックを作成するくらいなら、再構築のロジックを作成する方が手早い - ソフトウェア開発者の日常
切羽詰まったときに、思いつけるか思いつけないか - ソフトウェア開発者の日常
テスト用のコードが書きにくいときにも、関数/メソッドを分割したくなります - ソフトウェア開発者の日常
デバッグ用のログの出力と処理速度を天秤にかける - ソフトウェア開発者の日常
手間をかけてデバッグしたロジックを、あっさり捨てて作り替える - ソフトウェア開発者の日常
なかなか思った通りの動作に修正できなくて、なんとかなったのは状況が変わって思いつけたから - ソフトウェア開発者の日常
マルチタスクをしたくなくても、待ち時間があるのだから仕方がない - ソフトウェア開発者の日常
探して見つけただけでも、これだけあります。
これだけ書いたのは、楽に済ませられた仕事ではないからです。
ときには、22時以降に会社を出たときもあります。
苦労したという記憶が残る仕事なので、気が向かないです。

苦労した点として、正しいデータを得るための複雑なロジックがあり、処理速度を確保するためにあれこれ悩んだ記憶も残っています。
苦労した点として覚えているくらいなので、処理速度の改善は、簡単にできそうもないという意識が働き、気が向かないです。

仕事したくない
Photo by Magnet.me on Unsplash

気が向かない仕事を進めるための方法

改善の期間はある程度あるとはいえ、何ヶ月もかけてのんびりできる仕事ではありません。
気が向かなくても着手して、結果をださなければなりません。
結果を出すためには、現状のプログラムのどこを改修すべきか、どこまでの範囲の改修が必要か、把握しなければなりません。

納品物としての資料が残っていますが、ソースコードを見ながら、どこがどんな処理をしているのか思い出す、あるいは理解しなおす必要があります。
思い出す、理解しなおす過程で思ったことを、どんどん書き出して残すようにしました。
あとで間違っていたと気付くときもありますが、構わず書き出していきます。
日誌のように、1日単位で書き出していきます。
タイトル行には、日付を書いておきます。

今日で3日目で、3日分貯まりました。
毎日なんらかの進展があります。
進展があるということは、遠回りしているかもしれなくても、進んではいます。
その進んでいるという状況を、見て実感するために、1日単位で書き出して、タイトルに日付をつけています。

進んでいるのだから、気が向かない仕事だけれど、このまま継続しようという気になるように、仕掛けています。


今後も毎日、なにかが進んだという記録を残しています。