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

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

ブログに書いておくことで、過去の記録を有効活用する

お客さんから、自動生成されるPDFファイルの文字列が重なり合っていると連絡がありました。
該当のPDFファイルを確認すると、確かに文字列が重なりあっています。

他のPDFファイルは大丈夫か確認すると、他のPDFファイルでは文字列は重なり合っていません。

文字列は、最初に日本語、次に英語という並びが一緒なだけで、日本語、英語ともに文字列の内容と長さは、まちまちです。

小手先の位置調整で対処できるか試してみましたが、無理なようです。
理由はわかりませんが、文字列の長さを判定し、一定の長さ以上になる場合は、改行してから文字列を出力するように修正が必要です。

f:id:AJYA:20170228061134j:plain
photo credit: Rev. Xanatos Satanicos Bombasticos (ClintJCL) 20150910 - Carolyn Casl is REAL! - CarolynCASL is REAL! - IMG_0587 via photopin (license)

過去記事を思い出す

予定外のコードを手早く追加しなければと思ったところで、ブログに記事として以前書いたことがなかったかと思いました。
過去記事を「shift」で検索すると、
ajya.hatenablog.jp

ajya.hatenablog.jp
が見つかりました。

今回は1記事目のコードをコピーしました。
一定のバイト数以上になったら改行を行うようにソースコードを修正して試してところ、想定どおりに改行ができていました。
改行するバイト数や改行後の位置を調整し、文字列が重なり合っているPDFファイルを再作成して、お客さんに連絡しました。


過去に記事として書いておいたおかげで、手持ちのソースコードから時間をかけて探すことなく素早く必要なコードを見つけ、対応することができました。

動作が思いどおりになっていることを確認するまで行ったことによる影響

仕事中の夕方、メールで問い合わせがありました。
問い合わせの内容を確認すると、問い合わせ内容どおりの現象が発生していました。

以前から発生することは知っていましたが、対処できない現象と考えていました。


会社からの帰り道の電車の中で、現象に対する対処方法を思いつきました。
思いついた対処方法は、理屈からすればできるはずです。
ただ、元々僕自身が作ったプログラムではなく、手直ししている程度なので、すぐにできるのかどうわかりません。
それでも気になります。

気になるものは解消したい、問い合わせを受けた現象が再度発生すると対処に手間ばかりかかるので解決したいという思いが強く、ソースコードを調べ始めました。
調べた結果、幸いなことに想定どおりに修正することは容易そうです。

修正を実施しテストを複数回行って、問題が発生しないこと、現象に対処できていることを確認して、システムに反映し、夜も遅かったので眠りにつきました。


f:id:AJYA:20170227125948j:plain
photo credit: jpalinsad360 Deadly Listeria Food Poisoning: Who are at Risk? via photopin (license)

寝不足、膨満感、胃痛に襲われる

朝目が覚めると、寝不足がたたって少しぼうっとしています。
だるいとまではいいませんが、なんかまどろっこしいような感じもしています。

朝食を食べ、出かける準備をしていると、今度は膨満感を感じ、おなかがずっと張っていて、ゲップをすごくしたくなります。
ゲップを我慢し切れなくて何度も繰り返ししても、膨満感を解消しません。

出かけた先でさらに症状が悪化し、胃が痛くなってきました。
慌てて胃痛に効果があるツボを探して、脾兪(ヒユ)と呼ばれるツボを何度も押したところ、なんとか落ち着いてきました。
www.skincare-univ.com


偶然寝不足の日に消化器系の調子が悪くなっただけかもしれません。
薬を飲んだのもありますが、寝るようにも心がけているおかげか、今のところ再発していません。

あらかじめ決めたとおりに仕事をこなしていくことの効果

前日と当日の朝に、午前、午後1時から2時間、午後3時から2時間、午後5時以降という枠に対してそれぞれ仕事を割り振りました。
枠の中での順番も決めました。

始業から決めた順番どおりに仕事をこなしていきました。

f:id:AJYA:20170227002104j:plain
photo credit: sardinista Bad trousers via photopin (license)

決めることによる効果

あらかじめどの仕事をするのか決まっているので、次はどの仕事をするべきかと考える必要がありません。
考えることはあらかじめ終わっているので、考える時間不要で次の仕事に取り組めました。

時間が決まっているので、その時間を守ろうとする気持ちになり、集中して仕事に取り組めました。

割り込みへの対処

午前の後半に電話での問い合わせがありました。
それまで行っていた仕事を中断して、メールを送らなければならなくなりました。
それまで行っていた仕事は、すぐには終わる内容ではなかったので、午後1時から2時間の枠に移動することも考えましたが、午後5時以降に時間を確保することにしました。

どの時間に中断した仕事に取り組むのか決めているので、それまでは中断した仕事のことは考えなくて済みます。
決めていないと、中断した仕事が気になり、他の仕事への集中が落ちてしまいます。


午前と午後1時から2時間までは決めたことはありましたが、午後3時から2時間、午後5時以降まで決めたことはありませんでした。
割り込みを考えると決めるだけ無駄かといいう思いもありましたが、割り込みが少なかったので思い通りに仕事ができました。