1.9ブランチで以前から宣言していた「クラス変数のプライベート化」をコミットした。
これで「ぎゃっ」という人はそれなりにいそうだ。 実際、drbのtestは修正の必要があったし。
今後は、クラス変数は外からは(サブクラスからも)見えないことに注意していただきたい。
勧誘の電話が来た。玉造でもYahooBBのサービスが始まったということだ。 いや、近所のスーパーでも赤いジャケットを着た人が待ち伏せしてたので、とっくに知ってたけど。 実は数日前にも電話があったのだが、その人は「Linux使ってます」と言った時点で退散したのだった。 根性なし。
別に個人情報がどうこうということはないので(苦笑)、 今日は話を聞いてみることにした。
せっかくなのでいろいろ聞いてみたが、 ちょっとツッコんだ話になると、すぐに分からない、とあきらめてしまうので面白くない。 技術担当という人に代わってもらったのだが、 その人も「サブネットの構成は?」とか聞いたら、やっぱり分かんないみたい。
クレーマーみたいだな。いじわるすぎたか?
今年はDave ThomasとAndy Huntの『Pragmatic Starter Kit』がJolt AwardのBooks sectionでProductivity Awardを受賞したそうだ。
おめでとう。日本語版は...出ないかなあ。
Daveは来年はPickaxe IIで取るとか言ってるぞ。
Paul Grahamの新作。コンピュータサイエンス専攻の学生が卒業までに学んでおいた方が良いことはなにか、Graham流の助言。
ここで(私にとって)重要なのは「仕事に役立つ知識」についての彼の言葉。
What you should learn to get a job depends on the kind you want. If you want to work in a big company, learn how to hack Blub on Windows. If you want to work at a cool little company or research lab, you'll do better to learn Ruby on Linux. And if you want to start your own company, which I think will be more and more common, master the most powerful tools you can find, because you're going to be in a race against your competitors, and they'll be your horse.
(超訳)大企業に勤めたいならWindowsを、クールな小企業や研究所に勤めたいならLinux上のRubyを学ぶべき。自分で起業したいなら最強のツールを自分で探すこと。
ご存じのようにPaulは(元)Common Lispハッカーで、そのつながりでLight-weight Languageを推奨している。 その文脈でPerl, Python, Rubyを紹介することもたびたびあった。
しかし、私の記憶する限り、今まで彼がRubyについて言及する時にはいつも「PythonやRuby」というような、 無視はしないものの、おまけのような扱いであった。まあ、RubyはPythonよりもマイナーだし、 当然の扱いだと私自身も考えていた。
しかし、上記の引用では「Ruby on Linux」とはっきり書いている。 もちろん、ここでの正確な意味は「Rubyのような動的言語」であることは間違いないのだが、 Paulの中で「RubyはPythonよりマイナー」という意識が減ったことを示しているような気がしないでもない。
いや、考えすぎかも。
同社は...、「Coyote」と呼ばれる新たな開発プロジェクトをSun Public License(SPL)の下で立ち上げた。その目的は、開発者がNetBeans IDE(統合開発環境)を使って動的言語でコードを書く上で役に立つモジュールを作ることにある。
JVMベースの動的言語を支援するIDEということか。まあ、動的言語のプレゼンスが向上することは望ましいことだと思う。
Lisp (というか、S式的文法を持つ言語)をJavaScriptに変換するコンパイラ。 これでJavaScriptを書かなくてすむ、しかし、そこまで嫌わんでも。
変換例:
(defun apply-effect () (when (and document.all photoslider.filters) (let ((trans photoslider.filters.reveal-trans)) (setf (slot-value trans ’*Transition) (floor (* (random) 23))) (trans.stop) (trans.apply))))
これがこうなる(↓)
function applyEffect() { if (document.all && photoslider.filters) { var trans = photoslider.filters.revealTrans; trans.Transition = Math.floor(Math.random() * 23); trans.stop(); trans.apply(); } }
先週のステーク大会に出席しなかった人もいるので、 新監督(会)から改めて挨拶。
といっても、今までの監督会のメンバーが変わったわけでもないので、 急に方針が変わるわけでもなく、 なにか特別なことと言う感じもないな。
淡々と集会をこなす。
むしろ、集会後に気になることが。
集会終了後、米子に移動する。
松江の教会堂はバリアフリーの点で欠点があるので、 米子の教会堂を借りようと言うのだ。
今回は男女一人ずつのバプテスマ。 米子のみなさんありがとう。
男性の方はガールフレンドが遠方から参加。 弟さんがバプテスマを施した。
女性の方は宣教師が。
実にすばらしい集会であった。
新しい仲間を心から歓迎したい。
後は、弟と姪っ子に会ったり、実家に寄ったり。
Rubirickの上にサービスを実装してSaaSで提供するという話。
こちらもNaClがお手伝いさせていただいている。 っていうか、お手伝いしているところが多すぎて、 最近手が足りない。特に東京勤務。
SQLを組み立てるライブラリ。 ちょっと前に取り上げたSQLAlchemyに似たコンセプトのような気がするが、 見栄えはずいぶん違っている。
私はSQLな人ではないので実際にはどっちが使いやすいのかはよくわからない。 感想歓迎。
ひとつの時代が終わった。が、彼の作品の価値が減じることはない。
っていうか、作家の作品ってのは寿命が長いよね。 芸術家は全般にそうだけど。 比べてプログラマの作品の寿命はそれほどじゃない。
ちょっと寂しい。
gitは出力先がttyだと自動的にページャを起動してくれる。 それをRubyで実現する方法。
あと、コマンドラインオプションが間違ってたらスペルチェックかけて 候補を出してくれる機能(コマンド名ならzshがやってくれる)も標準でほしい。
Rubyで STDOUTとoptparseにttyを特別扱いするコードを組み込むと Rubyで作られたコマンドは全部そういう機能を装備することになるな。 どうだろうか。
先日、MacRubyについて、AppleScriptの代替になるのでは、と書いたが、 実際にやってみた例。
tell application "TextEdit" get paragraph 1 of document "Read Me" end tell
が、こうなる。
app('TextEdit').documents['Read Me'].paragraphs[1].get
おおむね好評のようだ。
先日のGoogle TechTalkの内容を「アメリカ流プレゼンテーション」流儀にしたがうと こんな感じになると言う話。勉強になるが、正直恥ずかしい。
ただし、これはあくまでも「アメリカ(ビジネス?)流儀」である。 RubyConfとかOSCONとかでプレゼンするギークたちはもうちょっと別の流儀にしたがっている印象がある。
それと、私のプレゼンに対するコメントには、 ネガティブに取り扱われているのは発音や語彙で、 ここで言われているようなフォーマットに踏み込んだものがないことからも ギークたちの間では原田さんの紹介してくださっているプレゼン術は一般的になっていないことがうかがえる。
ま、だから勉強しなくていいわけじゃないけど。