こんなソースに誰がした

都内で末端SE/PGをやっている4年目の社会人のブログ。

Who made such a source?

こんなソースに誰がした

フォーマットの乱れは心の乱れ

 

おはこんばんちは!(死語)
煉獄乙女です。

 

私には、仕事に対してあるモットーが存在します。
それが掲題の、
「フォーマットの乱れは心の乱れ*1」。

もちろんこの言葉の響きは
「部屋の乱れは心の乱れ」
「服装の乱れは心の乱れ」
等になぞらった言葉遊びな訳ですが、
「フォーマットを守る」ということは、とても大事なことだと思います。

 

 

 

 

 部長の言葉

仕事をする上で、忘れないでいる言葉があります。
入社したてに聞いた、部長の部会での一言。

「『なぜそのソースを書いたのか?』
 『なぜそのやり方でやったのか?』
 それを聞いてみて、ちゃんとその人なりに
 理由があっての事なら、僕は怒ることはしない」

 

部長とはまだ仕事を共にしたことはないのですが、
とても朗らかなオーラを纏っている人。
(色で言えばオレンジ~黄色の暖色系といった感じ)
社内では、いわゆるデキる人筆頭として君臨しております。

その部長が、部会で昼間から、
ビールを片手に、手羽先をもう片方の手にして、そう言った。

その言葉は同じくビールと手羽先を持った、
新入社員真っ盛りの1年目の私にとても響きました。

 

理由ってなんだ

ソースを書く時、書き方なんて1つではない。
仕様通り正しく動いていれば、とりあえず及第点として、
どんなソースが満点か、なんてわからない中で、
自分の中の知識に加え、先人の残した知恵を借りつつ、コーディングする。

『なぜ自分はそのように書いたのか?』
何も考えずにとりあえず及第点のコードになるように書いていれば、
その問いに答えられるはずもない。


例えばコーディングをする上で、コメントを入れる頻度や記述の細かさについては、
人によって千差万別だろうと思います。

コメントが少ない人からすれば、
「コメントが多いとソースが煩雑になる」
「見たら何が入っているかわかる変数名・メソッド名なんだから不要」
等と思ってコメントを削っているだろうし、

コメントが多い人からすれば、
「ソースを読み解かないでもコメントされていれば処理内容がわかる」
「何の為に一見余計と思われるような処理をしているかが仕様書を読まなくてもわかる」
等と思ってコメントを書いているかもしれない。

もちろん少なすぎたり、多すぎたりするコメントが、及第点とは言えないかもしれないけれども、
及第点以上でコメントを増やしたり減らしたりする分については、
どちらも自分の正義に基づいて要否を判断しているし、
どちらが正解と一概には言えないと思います。


ちなみに私はコメントをなるべく書くように心がけています。
理由は、「他人が書いたコメントの少ないソースを見た際に、
非常にわかり辛く、一部分を確認する為にソースの全てを追いかける羽目になった」から。

 

例えばの話が長くなりましたが、ともかく、この部長の言葉は、
自分が仕事をする上でも、後輩に何かを教えたり、レビューをしたりする際にも、
未だに自分の中に根強く残っている言葉なのです。

 

フォーマットを守るということ


この言葉がモットーと関係があるのか、というと、
まぁこの言葉が私の第二のモットーみたいなものというのもありますが、

新入社員で右も左もわからないときに、
いざコーディングして、「なんでこの書き方をしたの?」と問われて、
「こっちの方が処理速度に優れてて~」だの、
「この書き方だと修正する際にコストが低く済むので~」だの
理由を述べられる人なんてほぼいないと思います。
せいぜい、
「だって、ググったらこのコードが載ってて、コピペしたら思った通りに動いたので…」
と言えたらいい方というか、これが関の山というか。

でも、作成する書類のフォーマットを守ったり、
インデントを綺麗にすることって、新入社員でも簡単にできる事だと思うんですね。
不揃いなインデントを見て、「こっちの方が読みやすい」とあえて選ぶ人はいないでしょう。
いたら私がぶっ飛ばす

フォーマットを守るということは、
ひとえに可読性を高めることに繋がると思います。
誰が見ても見やすい。それは自分にとっても同じ。

 

最後に

フォーマットが存在するということは、理由があります。
管理のしやすさだったり、見やすさだったり、様々です。
自分がフォーマットに則って何かを作成したりする時は、
「なぜそのフォーマットが存在するのか?誰のためのフォーマットなのか?」
というところまで考えられると素晴らしいね、と後輩には話します。


フォーマットの乱れは心の乱れ。
他人のために、そして何より自分の為に*2
今日もフォーマットを守ってお仕事がんばります。

*1:ここで言うフォーマットは「初期化」ではなく、「書式・様式」の方

*2:情けは人の為ならずが人生のモットーです