システム屋さん版三種の神器【おまけ_怠惰が招いた悲劇】

みなさま、気温は急降下、気分は急上昇、アマチュアラッパの杉本です。
韻もまともに踏めないので、勉強して出直してきます。

そもそも普段、声を出さないので最初から向いてなかった?

今回は、システム屋さんの三種の神器と、怠惰が招く悲劇とその対策をご紹介申し上げます。

 

 

三種の神器

システム屋さんの3種の神器とははたして….?

 

Microsoft Office Excel

何度でも言おう、仕事でプログラムを扱うならこいつを避けることは出来ない。
複雑に結合されたセル、統一されない入力内容、素晴らしい仕様書(笑)等だ。

常にシステム屋に寄り添うよき友であり、最大の敵だ。

僕は過去にさんざんExcelを擁護しているが、拘りが無いExcelに意味など無いと断言しよう。

でもExcelは手放せない、手早く資料を作り、共有できる。
要件定義書、設計書、テスト仕様書となんでも手早くそれっぽく作れる。

Markdownなんかはだと、自分はいいが….となるので、古巣に落ち着くのだ。

便利なところも当然ある。

おじさん(じゃないけど)SIer的発想で行くと、セルのデータからプログラムの自動生成ツールとかだろうか。
弊社だと使うことは余りないが、VB(6とかA)系やデカいシステムでお世話になる方も多いと思う。

今となっては、親の仇と言わんばかりに叩かれるが、SEにとっての神器の一つであることには変わりないだろう。

 

サクラエディタ

こちらも絶対必要といっていいレベルだ。
Grepが早いので、調査や資料検索に役立つ。
(シェル芸人の方には無用かもしれないが….)
※シェル芸人とは

最近気づいたのだが、Excelなんかのバイナリファイルでも検索に引っ掛かってくる。
とにかく資料が多くなりがちなチーム開発で、「どこやねん!(怒)」となる前にgrep検索で対応できのは素晴らしい。

正直何でもいいのだが、grepと文字エンコード、改行文字指定等が出来るテキストエディタがあると精神衛生上、大変によろしいと思う。

 

7zip/winRAR

有名な圧縮/展開ユーティリティだ。

ユーザから受領するものや、送付するもの圧縮、展開共にどのような環境かわからないのだ。
そんな時、「ファイルが読めない….」とか、「日本語ファイル/ディレクトリ名がおかしい」となるとこが多々ある。

そんな時でも、これらで圧縮したり展開すれば何ら問題ないことが多い。

また、メジャーなソフトであるし情報も多いのでユーザにもオススメしやすい点も良き点だ。

 

まとめ

以上、最近特に重要だと感じた。
システム屋さんの神器たちをまとめてみた。

ともかくして、重要な点は

・それが生産性や確実性を向上させる等の利益となること。
・十分に信頼できて、利益のそれに見合った利益であるか。
・チームとして使えるか。

これらが重要だと感じている次第である。

皆様も、使ってはやめを繰り返して、是非ともチームや自身に有益な構成や運用を見つけていただければ幸いだ。

 

 

(おまけ)怠惰が招いた悲劇

多分プログラマ特有の思考ロジックで招いてしまった開発中の事故だ。
この記事を見た方は、なにかしらのリファクタリングツールを使う際はお気を付けをば。

(内容)
クラスをコピペして呼び出しクラス(A_Service->B_Service)と書き換える際に、B_Service自体をA_Serviceと書き換えるリファクタリングを実行してすべての関係コードが書き換わった。

(起こったこと)
数個の処理が違うクラスを複製して、A_ServiceをB_Serviceに書き換えていた。
つまり呼び出しクラスをA->Bに変えていたのだ。
「Rename (B_Sercive)」とあったので、「おっ気が利くねー」と思って実行したら大元のB_SerciveをA_Serciveという名前に書換えられた。

(原因)
言葉の誤認、日本語的に考えると「変更 B_Service」なのでどう変えるのかまではわからないのだ。
確実に事故らないと言えないので、この場合はマニュアルを確認すべきであった。

(対応)
頻繁に変更を保存、commitしよう!
今回は面倒だったのでコミットの粒度を大きくした結果、戻すのが面倒になったのだ。

 

反省

 

おわり