2014年10月12日日曜日

社員が亡くなりました

当社カンボジア大六の社員で、DTPチームの最古参社員であるプロム=スレイリスが、今朝交通事故で亡くなったとの報を受けました。

数ヶ月前に結婚式を挙げた新婚女性でした。

ご冥福をお祈り致します。

理不尽です。

カッコつけないことがカッコいいと考えてるプログラマの痛さ

Redmineのプログラムに手を入れるようになって知ったのだが、Rubyというのは関数であれサブルーチンであれ呼び出しに()つけなくていい言語らしい。

で、HubotのためにCoffeeScriptをチョボチョボと書いていますが、この糖衣言語はRubyプログラマに好かれているらしく、そのせいか同様に()つけなくていい。

そりゃ確かに()は打つのめんどいよねえ。わかるよ~。ということで僕も倣ってみた。
これがほんとのカッコつけないコーディングスタイルである。

だけど、メソッドチェーンとか関数入れ子のときは引数の具合によっては結局()つけなきゃいけない。
単純に引数ないときもつけなきゃいけない。
ぐにゅ。
プログラムが複雑になってきたら、これがバグの温床となっている気がする今日このごろである。
↑などと書く理由は、ご明察のとおり、数日前にそこでみずから実際にハマったからである。初心者さんホイホイの穴へ見事にいらっしゃ~いなカンジ!

カッコいかに付けないかを競うプログラマーとかいそうで、いたら痛い。
んなことより、プログラムが確実に動くことや、後で見やすいことを目指せよとおもう。

むかし業務でげしげし書いていたVisual Basicでは、関数には()必須で、サブルーチンには()つけないでいいことになっていた。たしかに、サブルーチン(としてプロシージャを呼び出す)ならばメソッドチェーンとか関数入れ子はありえないわけで、実は最も合理的な言語仕様かもしれない。

CoffeeScriptで引数ないときに()つけないといけないのは、そうしないと関数というオブジェクトを指すことになってしまうからだが、人間としたら、俺が動詞1個発したら、そこは素直に命令文と受け止めてくれよとおもうのが人情ではないだろうか。

「その動詞というオブジェクトですね!」
とか、
「その動詞への参照ですね!」
とか、
「その動詞へのポインタですね!」
なんてシチめんどくさい答え返すヤツは、現場で生き残れないのではないだろうか。

"Freeze!"
と言われて、
「はい、ご注文のfreezeという動詞への参照をご用意しました。お持ち帰りですか? こちらでお召し上がりになりますか?」
などと答えるヤツは、俺だったら撃ってしまいたい。

その動詞による命令よりも、その動詞というオブジェクトを指すほうが、より抽象的な、間接的な伝達内容なのだから、符号化理論的に言って、より表記が複雑であるべきだ。C#はそのようになっている。

逆になっているのは僭越だと個人的に感じる。

などと、JavaScriptでサブルーチンから()を取ってしまってコンパイルエラー出した日曜の昼下がりにつらつら想うのでありました。

クアラルンプール都心で手榴弾爆発、シンガポール人・タイ人・中国人含む14名死傷

「しばらくブキ=ビンタンへは行きたくない」という外国人たちの声を報じるニュースです。

プノンペンですらこれほどの事件は2001年頃を最後に起こっていないとおもいます。

クアラルンプールへはトランジット以外で行ったことがありませんが、非常に安全な街という印象があったので驚きです。

お子ちゃまはアスピリンに注意

歯が痛い痛いと言っていたら、
ゆうべ妻が薬2種類1錠ずつくれたので、
飲んだら痛みがなくなったが、
しばらくして、
頭が冴えすぎて息切れと目眩が来た。
エロ動画見て大脳新皮質休ませることで
治まったけど。

1つは、
アスピリン85%カフェイン15%、
と書いてあって、
僕には強いかな、
とおもったが、
やはり強すぎたようだ。

もう1つは、
薬名で引いたら、
アセトアミノフェンだった。
今朝はこっちだけ飲んだ。
痛みは完全には引かないが、
目眩もあまり起こらない。

お子ちゃまなので、
カフェインに弱いが、
アスピリンにも弱いと、
ゆうべ思い知った。

アスピリン(アセチルサリチル酸)には、
消化器潰瘍を悪化させる副作用がある。
クローン病なので、
その意味でもできれば避けたい。

人生これまで、
ほとんど薬飲んで来なかったので…。
効きがいいのはいいけど、
効きすぎに注意しないと…。