ページ

2009年9月30日

ホーバーがなくなる!?

大分ホーバーが会社清算へ 負債5億、不況で利用者減」。去年乗っといてよかった!でも、ドリフトしたり、海の上に出たりした最初の5分ぐらいしかうれしくはなかったけど・・・。

第一回五反田でEmacsをネタにピザを食べる会終わった

今日はアリエル主催の第一回五反田でEmacsをネタにピザを食べる会、略して(もしくは通称)五反田Emacs勉強会でした。アリエルができて8年か9年たちましたが、このような形で勉強会を開いたのは初めてなのです。ハートビートさんの会社のように、ある程度、勉強会を定期的にやっていきたいと思っています。一応、次回もEmacsで勉強会を11月ぐらいにやるつもりです。

それから、多分、今後も勉強会のあとはピザを振る舞えるはずです。社長に適当に意義や趣旨を吹き込んだら、そのぐらいは会社で出せることになっています。でも、会場がアリエルの社内じゃないので、お酒が出せません。

で、勉強会は多分、数え間違えていなければ26人ぐらいきていました。他の勉強会に比べて平均年齢が少し高めです。Emacsなのでしかたないのかもしれません。

最初はアリエルの井上さんのお話でした。まあ、挨拶みたいなもの?で、うーん、笑いをとろうとしている気持ちは伝わってくるのですが、何というか・・・。まあ、それも個性です。

そのあと、菅原さんのanythingについての説明でした。Software Designの連載でanythingを取り上げていたのですが、それをあまり前提にしすぎなかった方がよかったかもしれません。その辺は失敗なんですが、それでもなぜかそこそこ盛り上がった、もしくは楽しんでもらえたので、結果はよかったでしょう。それに雑誌の内容を補完したいということもあったので、目的の設定をもう少し変えた方がいいのかも。ちなみに、記事の延長線上というのは僕の思惑です。

それから、すがわらさんが謙遜していますが、彼はnavi2ch(昔ぼくも使っていた)の作者です。今はプロジェクトに関わっていないようですが・・・。なので、とってもすごい人なのです。ちなみに彼が今日、会社に来たのは17:00ぐらいです。

僕にとっては初めてのEmacsの勉強会なので、どんな人たちがあつまるのかどきどきでした。

さて、次回はまたEmacsなんですが、その次に変な言語特集、もしくはできたてほやほやの言語特集みたいなのもやってみたいなー。 



2009年9月28日

Tornadoってシングルスレッドのままなのかな?

前回は、パフォーマンスにちょっと疑問があるって書きました。で、その解決として、Tornadoのプロセスをたくさん立ち上げるのかなー、と夢想しました。でも、プロセスをたくさん立ち上げると、管理が大変です。でも、その辺は自動化すれば何とかなるかもしれません。で、プロセスやスレッドのスイッチングコストは無視するとして、プロセスでやる場合、メモリの使用量はどうなるんでしょう?まあ、数十のプロセスなら問題ないし、現状のアプリも数十個か数百個のスレッドでしかほとんど動いていないので、プロセスモデルで数十か数百のプロセスを作っても、問題なのかもしれません。まあ、プロセスはスレッドを作るよりさらにメモリを食うのですが、そこそこのサーバを使えば心配いらないのかも。

で、結局、Tornadoってロングポーリングに特化したWebアプリケーションサーバにしかならないんじゃないの?というのが今のところの僕の印象。結局、WSGIのアプリケーションを動かすにはC10K問題を解決していないんじゃないかなー。で、ほとんどのアプリがその恩恵にあやかれないので、現状はapache + mod_wsgi(現在のインフラを変える必要はないと言うこと)とかで十分かと。

2009年9月26日

キャッシュカードのICが壊れた


連休に突入するとキャッシュカードのICが壊れていることが判明しました。ATMにカードを入れてお金をおろそうとすると、「ICが壊れている」と怒られて引き出せません。連休中は他の家族は実家に帰省していて僕一人の独身生活です。で、そのとき財布の中には1000円しかありません。とりあえず、銀行に電話すると、「ICが壊れているか銀行の窓口で確認してください」と。 それから、「他のATMの機械でやれば?」とも。機械は2,3台試したし、ATMが壊れていると言っているんだから壊れているのです。確認するまでもないです。でも、どうしてもお金がおろしたいのでどうすればいいか聞くと、「IC非対応のATMでおろしてください」と。けれども、近くの銀行には非対応のATMは一台もいません。どこにそんなATMがあるか聞いてみると、「探してください。銀行に行けばあるところもあります」。僕の近所の銀行にはそんなところはないし、藤沢に昔あった気もするが、昔の話です。結局、連休中は見つかりませんでした。

連休が終わって銀行に行って再発行の手続きをしました。そのとき、「再発行するまでキャッシュカードは使いますか?」と。いや、使えないからここにいるんですけど・・・。で、「使いたくても使えない」と訴えると、「それではキャッシュカードを回収させていただきます」 。えっ?このカードってクレジットカードも一緒になっているので、回収されると困るんです。すると、「しばらくお待ちください」と言って奥の方でなにやら話し込んでいます。数分後、戻ってくると、「それでは手続きは終わりました。3週間ぐらいで届きます」。うーん、不便だ。




2009年9月25日

インフルエンザと運動会

僕の直接知っている人はまだだれも感染していないので実感がないのですが、インフルエンザは結構はやっているみたいです。アリエルの社長の子供の小学校では一部、学級閉鎖しているらしいです。それでも、ちょっと遠くの世界だと思っていましたが、自分の子供の通っている小学校でも学級閉鎖があるらしいです。連休は運動会があるはずでしたが、学級閉鎖しているクラスがあったので、一週間運動会が延期されました。一週間でなんとかなるかは微妙のような気もします。僕は運動会が嫌い(つまらない)なので、どうせなら中止すればとも思ってしまいます。ちなみに、去年は途中で雨が降ってきて、午前中で終わりました。

 保育園では、玄関のところでアルコール消毒(これはインフルエンザがはやり始めるといつもやっている)できるようになっていますが、さらに子供がいる部屋に大人がはいれません。入り口のところで、荷物を保育士さんにあずけます。最初は面倒になるし、そこまでする必要性を感じませんでしたが、実は面倒になるのは保育士さんだけで親は準備しなくていいので楽です。まあ、保育園で感染するとその親たちはみんな仕事にいけなくなるので、保育園も大変です。 

さて、インフルエンザは遠い世界だと思っていましたが、思ったより近くにもいたようです。子供が3人いるので、早く予防接種を受けさせたいですが、いつになるんでしょう? 



2009年9月24日

Tornadoの最初の印象

今噂のTornadoを少し触ってみました。と言っても、ホームページのHello, worldのサンプルを動かすぐらいですが・・・。

で、Hello, worldを見て、「雰囲気がTwistedに似ている」というのが最初の印象です。まあ、Tornadoを作った人たちは最初はTwistedを使おうとしていたらしいので、似ていて当然かもしれません。URLのディスパッチはRoutっぽいです。うーん、Railsっぽいです。TwistedやZopeみたいにURL Traversalするとコストがかかるので、賢明な選択かもしれません。

パフォーマンスがいいと言う評判だったので、自分で計測したかったのですが、めんどくさくなたので、やめました。mopemopeさんのお仕事(多分これ)です。生のデータしかのっていないので、よく分かりません。
パフォーマンスに関するTornadoのドキュメントを見るとすごそうです。でも、これって、Hello, worldでベンチマークしたものです。あまりにも処理が少なすぎます。実質HTTPのハンドリングする時間だけです。Hello, Worldのハンドラーが処理する時間ってほとんどありません。そうなってくると、他のフレームワークが培ってきたものはかえってあだになります。新しいものはそれだけコード量が少ないし・・・。それから、Tornadoはepollを使おうが、なんでもいいですが、シングルスレッドで動いています。で、handlerが少し重い処理をしたら、全体がとまります。他のフレームワークがスレッドなりで効率化しようとしていますが、Tornadoは(少なくとも現状は)無理です。まあ、ロングポーリングするようなところには向いているので、適用分野がちがうのかもしれません。でも、そうなら、ページに載っているベンチマークってあんまり意味がないような・・・。
で、多分、そんな風に思った理由がwsgiのコンテナとして機能するからかもしれません。wsgiのコンテナとして使うのなら、非同期IOのメリットが受けられれないTornadoは不利というか、向いていません。wsgiアプリがmultiprocessingとか、スレッドとかで動いていると思ったら、ここもすべてシングルスレッドで動いていました。まあ、そのうち、プロセスなりスレッドなりで動作するのかもしれません。それとも、プロセスをもっと立ち上げろと言うこと?まあ、少なくとも、ベンチマークの結果は気にしちゃいけない、もしくは自分のアプリで計測しろ、ということでしょう。

Python界ではWebアプリケーションと言えばWSGIばかりです。Twistedのにおいは感じますが、それでも別の仕組みのフレームワークが出てきたことはやっぱり楽しいです。でも、それを使うかどうかはちょっと微妙。多分、しばらくはウォッチすると思いますが・・・。それから、みんな騒ぎすぎ。というか、ほめすぎ。もしくは僕が否定的すぎ。でも、好きな子ほどいじめるので仕方ないです。

IEなんていなくなればいい

IEは困ったちゃんで、いつもいろいろ手を焼きます。パフォーマンスが問題になるときは、別のブラウザにすれば一桁パフォーマンスが上がるのに・・・、と思うこともあります。なので、会社でGeckoをIEのActiveXプラグインで使えないかなー、とまじめに計画を立てようとしたこともあります。

GoogleがWebの問題児Internet Explorer対策を発表: IEをChromeにしてしまう」。これ、いいですね。エンジンが違いますが、同じことを考えている人がいるみたいです。

2009年9月19日

InfoTalkでお話ししました

昨日、一時間ばかしInfoTalkでPythonのTwisted Frameworkで非同期プログラミンという内容でお話をしてきました。申し込みが開催の一週間前からで、人が集まるのかどきどきしていましたが、たくさん人がいました。

僕の話はプログラミングの話題で、しかも小難しいことが多いので、ほとんどの人が興味がないじゃ ないかと思っていました。寝ちゃっている人もいましたが、思った以上にちゃんと聞こうとしている人が多くてびっくりです。まあ、そのあとの懇親会でわかんなかったという人も結構いました。負け惜しみじゃなくって、思惑通りです。

日本人は奥ゆかしいので、多分、本人の前では悪いことは 言わないと思いますが、自分のしゃべっていることを冷静にみると、論理展開が矛盾してたり、はしょりすぎだろう?というところがたくさんありました。やっぱり、準備不足です。それでも楽しんでもらえる人には楽しんでもらえたのでよかったかな。それと、笑いをとるところはとれたので、そこは成功です。 

それから、大勢の前でしゃべるのって、かなり久しぶりのような気がします。まあ、緊張するとかっていうのはそれほどないのですが、時間配分がいまいちだったかもしれません。 

 次回はロボットのお話とC++のお話です。ロボットはガンダム世代にとってはとても興味があります。実際に手に触れるもの、っていうのはやっぱりおもしろいです。それから、C++。自分ではもう、よほどのことがない限りC++のコードは書かないと思いますが、C++のお話を聞くのは楽しいです。C++知らない人でも、プログラマーなら自分が知らない世界があって、わかんなくてもいいから、それを知ることができるって、とっても重要だと思うんです。なので、おもしろそう。



そういえばInfoTalkでおしゃべりします

書くのをすっかり忘れていましたが、今日の7時から、InfoTalkでTwistedについてお話しします。アナウンスが遅い?ごめんなさいごめんなさい。

どこかで僕がTwistedについて話しているのを聞いたことがある人であれば、それの焼き直しなので、安心?してください。 

 でわでわ 



2009年9月14日

PythonのWebサーバのベンチマーク

基本的にPythonベースのフレームワークとJavaのScalaで作ったもののベンチマークみたいです。これはTwistedは遅いとみるべきなのか、汎用化されたものは専用のものより遅いとみるべきなのか、fapws3は速いとみるべきなのか、PythonじゃJava(+Scala)に対抗できないとみるべきなのか・・・?

実際に自分でベンチマークしたことがないですが、感覚的なものとあっているので、納得できたりする。

2009年9月10日

第一回五反田Emacs勉強会 定員増やしました

第一回五反田Emacs勉強会ですが、会場を200mか300mずらして確保できたので、定員を増やしました。まだ、空きがあるので、興味のある人はどうぞ。

2009年9月9日

SIMBLがSnow Leopardに対応しつつある件

Snow LeopardになってSafariのプラグインたちが軒並み使えなくなって、理由がSIMBLが対応していなかったからです。SIMBLのサイトをみると、まだベータ版ですが、そこそこ動いているみたいです。やっぱりプラグイン自体はコンパイルし直さないといけないみたいですが、コンパイルし直せばだいたい動くらしいです。

でも、SafariStandは対応してくれるんでしょうか?ちょっと不便な生活です。 



社内勉強会の光景 その1

アリエルでは社内勉強会が定期的にあります。今後は勉強会の内容も「ありえるえりあ」で公開していきますが、その勉強会は自称20代の人たちが自発的に始めたもの(少なくとも表向きは)です。いろいろ試行錯誤していい感じになってきたので、それを社外にもアウトプットしようということになったようです。やっている内容は、Scalaとか、テスト手法とか、ツールの紹介とか、いろいろあります。以前はAndroidのお話とかが公開されたりしました。

アウトプットするのは、単に社内でためておくだけじゃもったいないし、あまり文書を書いたりしないのでその練習にもちょうどいいからです。それから、アリエルの開発の人は、単に仕事をしていればいいというわけじゃなくって、社外への情報発信というオブジェクションもあって、それは評価対象になります。でも、いきなりそんなこと言われても中々できません。特に、最近は人も増えてきて、アリエルができた時の文化とは少し違ってきています。それを取り戻すためにもちょうどいいです。

とかいいつつ、勉強会は一週間か二週間に一度あるので、お楽しみに。多分、一番楽しみにしているのは僕なのかもしれません。がんばって続けてほしいです。 



2009年9月7日

第一回五反田Emacs勉強会

第一回五反田Emacs勉強会が9/29にあります。Emacsを愛している人、Emacsを愛したい人、Emacsを愛していた人、Emacsと物別れをしてしまった人たちへの勉強会です。

とりあえず、第二回までは計画しています。二回目は来月か11月ぐらいで、もうちょっと大きな場所を借りる予定です。

それから、誤解がないように言っておくとアリエルの開発者すべての人がEmacsを使っている訳ではないです。僕のおとなりさんはvi使いです。僕の前の人はかたくなにEclipseを使い続けています。



Yahoo!JapanとGyaoが仲良くなると・・・

Yahoo!JapanとGyaoが仲良くなるとMacでも動画が見れるようになるのか!Silverlightは偉い。

2009年9月3日

Snow Leopardは本当に速くなったのか?(体感的に)

Snow LeopardはWeb上のレビューを読んでいると速くなったとよく書いています。特にMac Book Airを使っている人たちが感じているのかもしれません。僕はというと・・・。アルミになったMacBookで2.4GのC2Dで4Gのメモリですが、あんまりスピードが速くなったとは感じません。言われてみると速くなった気がしてきますが・・・。ただ、遅くはなっていないようです。

さて、ソフトウェアを会社で作っていますが、会社のソフトのパフォーマンスを計測すると、バージョンを上げれば以前に比べて30%速くなったり、50%速くなったりしています。地道に改善されています。ある程度までは一気に速くできますが、そこから先は小手先ではどうにもならなかったりします。そのなかで、30%速くなるだけでもすごいんですが、その程度のスピードアップだと体感的には変わらなかったり、言われてみると速くなっているかも、という違いしかありません。もっと悲しいことは、IE6で使っているのをやめて、Chromeなり、FireFoxなり、Safariにすれば劇的に速くなることです。せめてIE8とか・・・。それを知っていると、IE6のサポートは打ち切りたいです。なんだか、むなしい。

で、Snow Leopardも速くなったかもしれないけど、そんなに体感できるほどじゃないなー、という印象です。 



2009年9月1日

ParallelsでUbuntu9.04が動いたじょー

Parallelsがいつのまにか更新されていたので、アップデートしました。理由は、Snow Leopardにしたら遅くて使い物にならなくて、アップデートのチェックをしただけです。それで、更新するとParallelsの中のWindowsがまあ、遅すぎることはない程度に動くようになりました(微妙な言い回し)。

アップデートをしたので、今までParallels ToolsがインストールできなかったUbuntu 9.04にもう一度試してみました。今回はちゃんとイントールが終了して、画面のリサイズとかマウスの操作とか、まあ、まともっぽくなりました。めでたしめでたし。これで、あまり使わなくなっていたUbuntuも使えそうです。ただ、まともっぽくなっただけで、Ubuntuを全画面表示にしたときとか、なんだか動作が怪しいときがあります。1280x800にならずにそのふた周り小さいサイズを引き延ばしたような感じ。何回か画面サイズを変更するとちゃんとなったりするので、使えなくはないんですが、微妙です。

とりあえず、Ubuntuがうごいちゃったので、Virtual Boxに移行しようかと思っていたのはとりあえず見送ることにしました。まあ、Windwosのイメージを変換するのが面倒なだけなんですが・・・。多分、Virtual BoxにParallelsのイメージをインポートする機能があれば、Virtual Boxに移行していると思います。