mumumu の日記

Development, Translation, daily life, thoughts, and so on.

2013-11-14 12:36:00 +0900

Fabric Essentials

自宅のサーバで遊びで使っていた Fabric をいつの間にか業務で使うことになってしまった。Capistrano でもよかったのかもしれないが、Python で書けることで皆がインフラ周りのオペレーションに違和感なく手を染められるように、という目的が一番大きかったと思う。Ruby なソフトウェアはそれと心中するような勢いでないと長期的な運用は厳しい、という認識もあったと思う。

使い込んだら使い込んだでそれなりにノウハウはあった。自分でタスクを書いたり、他の人を誘導している間にたまったノウハウを、社内でLTという形で喋ったのが上のプレゼンテーションだ。特に env.disable_known_hosts = True としないと paramiko がガチで遅くなったことには閉口した。数台で遊ぶレベルとの違いを感じるのがやはり大規模サイトの面白いところだ。あとはこのスライドでも再三強調している通り、ホストの指定は注意を払わないとおかしな挙動にはまりやすいのが中心的なノウハウと言えるかもしれない。

レベルとしては初心者向けにあたるこのスライドになんで反響があるのか 驚かなくもないが、需要があるということなのだろう。

また、このスライドではちらっと自分の所属を公開している。自分の中では所属をインターネットで公開しないことは長年守ってきたポリシーのひとつである。それを転換したことが、現在の所属に満足しており、自信を持つことができていることの現れだと思う。まだまだ至らないところが多い自分を大人のエンジニアとして扱ってくれ、様々なことにチャレンジさせてくれるチームには深く感謝している。

そして、喋ることにも大分慣れてきた。自分の知見を開陳することにはためらいがないこともなかったが、それも最近消えつつある。様々なところからフィードバックを貰えることも楽しめているので、アウトプットする手段の一つとしてやっていきたい。

2013-10-13 03:53:00 +0900

mumumu++

今日またひとつ歳をとった。

職場が変わったり、家族が増えたりと、予想通り慌しい一年になった。
変わっていないものってほとんどないように見えるけれども、ソフトウェアエンジニアとしての原点だけはブレていないと思う。

いろんな変化を楽しみつつ、変わらないもの、そして家族を大事にしたい、と思いました。
そして、お世話になっている周囲の方々にも感謝を。これからも宜しくお願いします。

2013-10-13 02:20:00 +0900

debugging server with strace




社内LT で strace について喋ったので記録しておく。

結構噛み砕いて喋ったつもりだし、自分はこれくらいまで噛み砕かないと多分人前では喋らないんだろうな、という実感が得られたトークでもあった。幸い好評だったようなので、ここに貼る次第だ。

今度は統計の話でもトークしてみたいと思う。これくらいの噛み砕き具合で(*´~`)

2013-10-04 14:35:00 +0900

passion for translation

http://daipresents.com/2013/translators-blues/

翻訳が情熱で成り立っていることは激しく同意。また、本業があるんだったら、儲けるために翻訳をやろうと思わない方がよいと思います。
プロが教える技術翻訳のスキル とかを読むと分かりますが、プロとしてやろうと思うとそれ相応の覚悟が必要です。

一人でやるのであればともかく、複数人でやるのであれば、どんな意見やフィードバックでも全力で向き合うことが必要です。それがたとえ監訳者とかの偉い人であっても関係ありません。それが情熱ってものではないかと思ったり。

高木さんと自分が手掛けた Producing Open Source Software についていえば、翻訳してでも世の中に伝えたい、というモチベーションがあったことと、翻訳した現物 があったこと、その2点が2005年の本であっても出版までできた要因なんじゃないかなと思ったりしています。

2013-09-12 13:29:00 +0900

'X not in Y' or 'not X in Y'?

http://docs.python.jp/2/reference/expressions.html#summary

Python で Y (辞書またはリスト) に X という要素やキーが「存在しない」ことをどう書くか。 Python では以下の2通りが書ける。

A) not X in Y
B) X not in Y

現に両方の書き方をしている人が社内ではいた。そこで「どっちかに統一した方がよくね?」という話になった。

A) は "in 演算子" を "not 演算子" で否定したもので、B) は "not in 演算子" をそのまま使ったものである。社内では B) の書き方をしている人が多数を占めた。理由としては以下のようにいくつか考えられる。

a) 演算子の優先順位を考えなくて良い
b) 英語としても自然
c) SQL にも not in があるので馴染みがある

個人的には a) が一番大きい。in を not で否定するというのも読めなくもないけど、"not in" がひとつの演算子なんだ、という認識を c) からもしているので、やはり B) が読みやすい。