技術ブログの客観性

http://www3.ocn.ne.jp/~sitemm/writerjibun.htmlなんて話があるわけだけど、技術系ブログとかは淡々と客観的に技術がこうだ、と語る部分が多く、極めてライター的であろうと思うのだ。

もちろん、自分の思想を語るような作家的なエントリも書けるが、こうコードを書いたらこう動く、という客観的な事象がメインなんじゃないだろうか。

プログラマーにとっての読み書きそろばん : 小野和俊のブログの「そろばん」の項で論理的思考能力がプログラマには求められるという話が挙がっている。

プログラマが正しさに過敏なまでにこだわるのは、扱う事象がプログラムなだけに「機械的に正誤が判別できてしまう」からなのかもしれない。

ルサンチマンもマウンティングも地位も名誉も

人間がルサンチマンでもってどれだけ価値観を倒錯させようが、プログラムは無情にもエラーをはじき出す。

ニホンザルのマウンティングのごとく、PCに向かって「手前ぇは機械だろうが、人間様をなめんるんじゃねぇ」と恫喝しようが、プログラムは無情にもエラーをはじき出す。

プログラムを触るのが総理大臣だろうが天皇陛下だろうが、プログラムは無情にもエラーをはじき出す。

プログラムを書いたのがジェームス・ゴスリンだろうが、リーナス・トーバルズだろうがそれがバグであれば、プログラムは無情にもエラーをはじき出す。

どんな御託よりも正しく動くコードを

結局のところ、機械というのは怖いもの知らずで、バグであればバグのままエラーを出す。*1そこにはルサンチマンもマウンティングも地位も名誉も関係ない。

だからこそ、技術ブログでは正しさが美徳とされる。どんなに丁寧な言葉遣いだろうとも立派な肩書だろうとも、間違ったソースコード掲示すれば間違っていると突っ込まれる。その言説が正しいかどうかについて議論する余地は少なく、大抵の場合はソースをコピー&ペーストして実行するだけで、あとは機械が正誤を判別してくれる。

この、究極的に客観的なコンピュータという第三者に常に評価される世界において、論理的整合性こそが最大の美徳とされるのは自然な成り行きだと思う。

プログラマ宗教戦争

コードの正しさについては議論の余地は少ない。*2

なので、プログラマが言い争いをする事象は限られていて

  • 思想などのコード以外の部分
  • 対象の言語や技術に対して無知で、先入観から検証なしに断定するような放言
  • 個人的な感情による喧嘩

といった部分。いやまぁプログラマも人間なんだなという話なんだけども、技術については「言い争い」ではなく「議論」になって結論がでちゃうのがほとんど。

揚げ足取りに従事したところでバグは取り除けないのだから。

*1:明確にエラーを出すバグなんてのはデバッグしやすくてむしろ助かるぐらいだ

*2:そのコードがどういう動き方をするのかを理解しないと一見して正しく動くように見えて潜在的に問題を抱えるケースがある。そうしたケースではどのように正しくないかについて議論する余地がある