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

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

思い込みで無駄な時間を使ってしまうか慌ててしまう

先日、既存のプログラムを再利用する機会がありました。
再利用にあたり、CASEが使われているクエリを修正しなければいけないことに気がつきました。

データベースの値が1なら5000、0なら0を検索結果として戻るためにCASEは使われています。
再利用後は、CASEを止めてJOINした別のテーブルの値を用いて、検索結果を戻すようにしなければなりません。

思い込みで無駄な時間を使ってしまう

クエリの修正をしなくてはならないことは覚えていたので、該当のクエリを修正し始める前に、こんなクエリにしなければならないと考え、既存のプログラムのクエリを元にしないで、新たなクエリを考えだしました。

CASEを止めてJOINした別のテーブルの値を用いる部分ができたので、既存のクエリのCASE以外の部分を反映しようと、既存のクエリを改めて確認しました。

確認した結果、新たにJOINしなければいけないと考えたテーブルは、既存のクエリでもJOINしていました。
JOINした後のテーブルの別名を指定して、値をデータベースから取得するようにするだけで目的を果たせるようになっていました。

既存のクエリは修正後にはあまり使えないと思い込んでしまったために、無駄な時間を使ってしまいました。
既存のクエリを元に、修正できるのか、新たなクエリを考えた方が早いのかという判断が必要でした。

f:id:AJYA:20170404061549j:plain
photo credit: World Economic Forum Davos Insights: Addressing Identity through Positive Narratives via photopin (license)

思い込みで慌ててしまう

システムの作成が終ったのでお客さんに連絡しようと思い、ふと最近のメールを読み返すと、選択肢の変更依頼がありました。
読み返すまで変更をしたつもりでいて、念のためと表示を確認すると変更前の状態です。

変更したつもりになっていました。
お客さんへの連絡をしなければいけない期限も迫っています。
慌てて選択肢を変更し動作確認を行って、お客さんへの連絡の期限に間に合いました。

思い込みがないか、連絡の前日に再確認を行う時間を確保して、確認の結果翌日に連絡できるように余裕を持たせたいです。

面倒と思ったときが作業を見直すチャンス

日々いろいろな作業をしています。
作業をしていると、これは面倒と思うことがよくあります。

面倒だから少しでも手早くできる方法はないのかと考え、その場で改善することがあります。

テストと本番のデータベースに、データを登録

テスト環境と本番環境のデータベースに、全く同じデータを登録するとき、PgAdminIIIでテスト環境に登録してから、本番環境に登録していました。
PgAdminIIIで表示したテーブル同士でコピーはできないので、名称用のカラムはコピー&ペーストで、数値のカラムはテンキーで入力しながら、1レコードや2レコードであれば面倒にも思わず登録を済ませていました。
5レコードを超えると面倒になってきます。

こういうときは、ExcelAccessの出番です。
データベースに登録する元データを、Excelで作成します。
作成できたら、Accessのリンクテーブルで登録先のテーブルを開いて追加貼付で登録します。
追加貼付をテスト環境と本番環境の2回行えば終わるので、作業時間を短縮できます。

f:id:AJYA:20170403061542j:plain
photo credit: CJS*64 Out of touch ! via photopin (license)

特定のデータだけ、一定のデータに戻す

データの登録を受け付けていて、ある時期を過ぎたら、同じデータを登録してあるカラムを、個別のデータで一括更新する予定でいました。
ところが、ある時期を過ぎても一括でデータを更新できない状況になっていまいました。
一括でデータを更新せず、1レコード毎にデータを更新するのは手間です。

更新の除外の条件を見つけ、一括でデータを更新するプログラムを修正することも考えましたが、それも面倒に思えました。

一番面倒ではなさそうなのは、一括でデータを更新したあとに、更新の除外対象のみ同じデータで再度更新する方法です。
早速更新の除外対象のみを絞り込む条件を探して、一括でデータを更新したあとに、更新の除外対象のみ同じデータで再度更新して、予定通りのデータにしました。
プログラムと一括での更新だけなので、作業時間を短縮できます。


面倒に感じたときは、少しでも手間を感じない方法がないかを心がけています。

忙しいときこそルーチンタスクをおろそかにせず、仕事を振り返る

最近仕事量が多く、手が回らなくなりそうな状況です。
そんな状況になると、後でもなんとかなると思いがちなルーチンタスクをおろそかにしがちですが、おろそかにしないようにしています。
この点については以下の記事に、おろそかにしないよう自戒の意味も込めて書いています。
ajya.hatenablog.jp

土日に行う仕事の振り返りも、忙しくなると覚えているだろうからと、手を抜いてやらなくなりがちですが、行っています。
行う理由は、以下の記事にも書いていますが、

僕が振り返りを行っていて感じている効果は、以下のとおりです。
・忘れかけていた、やらなければいけないことを思い出すことがあります。
・客観的に状況を見直すことができます。
・翌週からの状況を全ては見通せませんが、週の始めの時点でどれくらいの仕事量があるのか把握できます。

週に一度、仕事を振り返ることの効果と振り返らない影響 - ソフトウェア開発者の日常

ajya.hatenablog.jp

f:id:AJYA:20170403001014j:plain
photo credit: Sebastiaan ter Burg Design A Better Business Workshop @ Zoku Amsterdam via photopin (license)

なぜやるのか

やらなければそれでその場はしのげるし、他のことに時間は使えます。
特に土日は家にいるときは、子どもの相手を優先し、なかなか自分のためだけに時間を使うことはできません。

そんな状況でも、やらなければならないこととしています。
そうしなければ、見逃しが発生し、後々大きな失敗として、反動がありそうな気がしてなりません。
小さな芽のうちに摘み取る対処のために、必要なことと考えています。