2006年9月29日金曜日

所信表明

たまたま家に居たので、新首相の所信表明を聞いてみました。

それにしても、国会はどうしてこうも品がないのでしょうか。「そうだ、そうだ!」と大声で相づちをうったり、野次を飛ばしたり…。 投票で選ばれるわけだから、見た目だったり、それなりに立派な人が国会議員になるのだと思いたいのですが、サクラ役とはいえ、あまりにも下品です。 女性議員も、なぜ変に目出つピンク・黄色・黄緑のパステルカラーばかり着ているのか。 どうも、国会という場所には一般人が知り得ない不思議な文化が存在するようです。


話の中にあった、新卒一括採用の慣習をなくすというのは、ありなんでしょうね。バイトのような時間の切り売り以外で、いつでも仕事につける自由さがあると、確かに働きやすいもの。でも、自分で仕事を作るという発想とはやっぱり違うなぁ。 イノベーションを重視するなら、大事なのは起業促進の方だと思うのですが。

2006年9月17日日曜日

子育てハッピーアドバイス



「子育てハッピーアドバイス」はいい本です。全部で3冊あるのですが、一気に読んでしまいました。

僕も、子供が言うことを聞かないとよく叱ってしまうので、どうにかならないものかと悩んでいましたが、親を楽にしてくれる本だと思います。

いい子にするには、親がしっかりしつけないといけない、とはよく言われますが、あれこれしなさいと怒る前に、大切なことってあるんですよね。子供の「甘え」を大事にするとか(甘やかしとはちょっと違うの)、子供に自分の考えてることに自信をつけさせるとか。

例えば、靴を一人で上手に履けなくて、「手伝って~」と言うときは「甘え」のサインなので、甘えさせてあげましょう。でも、親がなんでも子供のお世話をしてしまうのは、「甘やかし」。「甘え」を通じて、ちゃんと親子のやりとりをするの。

わがままを言われたときの扱いも困りますよね。お店でおやつを欲しい~とごねて泣き出したり…。あまり要求を突っぱねすぎても、子供が自分の感情を殺すようになってしまうし、なんでも認めてしまうのも、甘やかしになって、際限がなくなってしまう。

でも、こういうのに、どう対応すればいいかはやっぱり難しいんだって。 むしろ、どこまで認めていいか悩む親なら、ちゃんと子供に向き合っているから安心だとか。

あと、子供をしつけようとしてうまくいかないときは、子供ってそういうものなんだ、と、いい意味であきらめてみることも大事みたい。あれはだめ、これはだめと言ってばかりだと、子供は自分自身の評価をどんどん下げてしまうんだって。わがまま言ったり、自己主張ができるというのも、成長の証。

読んでみると、衝撃の子育て法!とかそういう類のものではなくて、納得できることばかりなんだけど、実際の自分に照らし合わせてみると、あれ、意外と実践できていないと思うところが多くて。。

あと、専業主婦(夫)って、とってもストレスが貯まる仕事なんです。まる1日、家事をしながら子供の世話をしてみるとよ~くわかりますので、仕事ばかりであまり子供やパートナーと向き合っていない方は、お試しあれ。他人の子供だと、楽しさ半分というところもあるのですが、自分の子供だと、やっぱり親が全部のトラブルに対応しないといけなかったりと、ストレスが貯まるものです。大変さを共有して、夫婦で負担を分かち合えるといいですよね。

最後のところって、本当は、夫婦だけでなくて、社会全体で共有できるといいことなんだと思っています。小さい頃、親が自分をどのように育ててくれたかなんて、意外と覚えていないものですから。だから、子供がいない人にも是非読んで欲しい本です。 子育てだけでなくて、普通の人とよりよい人間関係を築くのにも役立つと思いますよ。

2006年9月16日土曜日

Mariners: 城島が3番に

これをシーズン中盤で試して欲しかった。Seattle MarinersのHargrove監督。打線がうまくいっていなくても、打順は不動。監督として何もやっていないと思われても仕方がないでしょう。

じっくり腰を据えさせることで、信頼を勝ち取る選手もいるのでしょうが、クリーンナップに据えられた先週がことごとく不調で、他の選手にはチャンスすらまわしてあげない(ペタジーニとか)。今年は(も)ファンをがっかりさせすぎです。球場もがらがらみたいですね。なんともはや。

打順は不動といっても、シーズン当初は2番だったロペスは、もう下位に回されてしまっているし、結局一貫性がないのです。早いうちにあれこれ試さないで、シーズン終了間際に試すからストレスが貯まります。

もうマリナーズにはいないEverettはチャンスで殆ど打てなかったのに、打線は常に城島より前の5番か6番で固定。チャンスが回ってきた回数(ESPN)をみると、いかにバランスが悪いかわかるというか。シーズン中に主力以外はちっとも試さないで、終わりの方であれこれ試すから、印象は最悪です。

ファンが見ている感覚と、監督の采配時期が、数ヶ月遅れているんですよね。 去年までの成績だけを頼りに選手を見ていて、適正を見ようとしていないような気がします。。ベタンコートの3番だって、数試合しか試さないで何がわかったというのだろう…。

2006年9月14日木曜日

15万行のプログラミング

ものは試しに、今自分が作っているシステムのコード行数をカウントしてみました。

C++で7万行超えている…。

えーと、1日に1000行もプログラミングするのなんて、無理ですよね。既存のコードの修正もあるので、のらりくらりと1日200行くらい追加されると見積もって、350日分。ちょうど1年分。 うーん。たいしたこと有るような、たいしたこと無いような。

一番古いファイルは何かと見てみると、2003年4月28日。CVSから、Subversionを使ってソースコードを管理するように変えたのがこのあたりなのかも。

違うプロジェクトで作ったJavaのコード行数を見てみると、8万行ありました。計15万行。これで2年分ですね。

書いたコードを廃棄することなんてよくやるから、単純にコードを書いた量だけだったらもっとあるんでしょう。

ちなみに、BerkeleyDBのソースコードはおよそ19万行、xerces-cは30万行でした。sqliteは7万行ですね。PostgreSQLは70万行だとか。 まぁ、CのコードはC++と比べて大きくなりがち。

これだけ書いていて、自分の作ったシステムがまだつぎはぎだらけなのは、研究結果が優先になってしまうことで、機能優先ではないというところかな。 機能優先にするなら起業しないと金銭的にやっていけない。

年間10万行書くには、1日当たり、400行ですね(休日等を除いて1年を250日として計算)。調子がいいとできるんだろうけど。3時間経ってもバグ取りで10行しか進まないということがありますから…。企業のプログラマだと、これくらい書くと聞いたことがあります。仕様を先に決めてしまうから書きやすいのかもしれないけれど。

あと、経験とともにコード数って短くなるのです。コードを短くするための自作ライブラリも増えるし、人の作ったライブラリの使い方を習得して、ますますコードが簡潔になったり。だから、コードの行数って技術力を表すものではないんだけれど、コード量と実際の書き方をちらっと見ると、プログラミングの経験値は推し量ることができます。

まぁ、これだけ書いたんだから、自分のシステムもそろそろ世の中にちゃんと送り出してあげないと。

2006年9月13日水曜日

Godzilla Returns

久々にたっぷり感動しました。松井の再スタートの試合。

4ヶ月ぶりの試合なのに4-4。打席ごとに、ファンの暖かい声援。でも、それだけでなくて、本当に活躍してしまうのだから、なにか特別なものを持っている気がします。開幕戦はいつも絶好調だし、AL Championship Seriesで、Red Sox相手に5打点を2試合もたたき出したりするのは記憶に新しいです。そういえば、日本でMLBが開幕したときに、東京ドームでも凱旋HRを打ってましたね。

今日の試合は、まぁ、blooperと書かれるように2本は詰まった当たりだったのだけれど、ゴロにならないということはバットをうまく振れているということでしょうか。松井の実績からすると、4-4と打っても不思議はないのですが、本当に大舞台(彼にとっての)でやってしまうところが驚きです。

ジーターがあきれるように笑っていたのが印象的でした。Google Newsでいくつか記事をあさってみたのですが、上記リンクのMLB.comの記事と似たものが多いですね。New York Timesの記事が他と違うことが書いてあって、面白いかも。試合中の雰囲気も伝わるし。

The Yankees Are Fireing on All Cylinders.
Matsui and Sheffield: Future Is All in the Wrist


なかでも、Mike Mussinaの次のコメントが秀逸。
“I hope they don’t expect him to get four hits every night,” said Mike Mussina, last night’s winning pitcher. “That might be a little much.” Mussina paused before adding, “Maybe three.”

(「これで、松井が毎日4本打ってくれるなんて思わないで欲しいね。…まぁ、3本ならw」)

もうみんな期待しちゃっています。ゴジラが戻ってきました。

2006年9月12日火曜日

Windows Vistaはすごい

上記リンクの記事を読んでみて、Windows VistaってXPと比べて確実に進化してる~というのを感じました。スタンバイからの復帰が2秒というのは驚き。期待のMeiryoフォントはあまり文字を並べたときのバランスがよくないような気もしますが、MSゴシックよりは綺麗。

Windows Meeting Spaceって、NetMeetingの改良版かな? 動作が綺麗になっているといいんだけど。
ファイルも共有できるようだから、pair programmingなんてのも簡単になりそう。

ファイルのヴァージョン管理もなされる模様。ファイルを上書きしても、以前の状態が復元できるという機能。まぁ、使用頻度は低いのだけれど、これがあるのとないのでは、作業するときの安心感が違います。

公式ページを覗いてみたら、USBメモリとかを増設メモリとして使えるんだって。今、フラッシュメモリは1GB、1万以下くらいの相場だから、これはありがたい話。フラッシュメモリは、HDDと比較すると、ヘッドを動かすシークタイムが無い上、データが連続に並んでいなくても読み込み速度は一定(だと思うのだけれど)だから、スワップ領域(Windowsでは仮想メモリ)へのデータ退避が相当高速になる。これはすごいことで、だって、メモリ容量ぎりぎりでアプリケーション開くと、動作が途端に重くなるとか、経験したことあるよね? そういうのが、USBメモリを指すだけで回避できるようになるの。

すごいよ、Vista。(まぁ、それぞれの機能のできが良くなくてこける危険性はあるけど)。Web2.0といって、Webアプリケーション(Googleなど) V.S. デスクトップアプリケーション(MS)の構図を主張している人がいっぱいいるけど、ちっぽけなものです。やっぱりOS作れるところが俄然強い。

OSを作るというのはすごい仕事なのです。MacがIntel Core Duoを搭載したとかで喜んでいるのなんて、小さい小さい。一般の人がやれWindowsだ、これMacだとか評価するときって、十中八九見た目の話なの。Macの方が見た目がいい、Windowsはダサい、みたいな。それはそうなんだけど(笑)、OSとしてどっちができがいいかというと、どう考えてもWindowsに軍配があがる。画像描画の速さとか、安定性とかね(昔のWindowsはひどかったけど)。AppleのSteve JobsはMac用の魅力的なアプリケーションは紹介するけど、それってOSの機能じゃないの。iLifeとかiPodとか。

ここから先はOSを作るようなプログラマについての話。ちょっと難しめかも。

今週の週刊ダイヤモンドは、職業別給料比較でした。その中に、「プログラマは単純作業だから、30代までにシステムエンジニアに転機を計らないと先がない」みたいなことが書いてありました。僕はこれに断然反対。Webアプリケーション開発ならいざしらず、OSのように土台に近いシステムを作るとか、innovationになるようなソフトウェアを書くのって、単純作業なんかじゃないんだよ。ハードウェアの知識はいるし、OSの仕組みも知らないで、効率のよいプログラムなんて書けっこない。コーディングの上でオブジェクト指向(デザインパターンとか)やプログラミングスタイル、XP(eXtreme Programming)なんて宗教論争が盛んな方法論もあるけど、それらは所詮方法論。画家でいうなら、絵の具の使い方のようなもの。

本当のプログラマーっていうのは芸術家です。使ってみて初めて便利さがわかるようなプログラムを作る仕事。きっとこの記事を書いた人は、コンピュータにもうわかりきった仕事を反復してやらせるためのプログラムを書く仕事がプログラマーだ、という認識なんだろうな。 しかも去年もまったく同じ記述を見ました(涙)。週刊ダイヤモンドは記事の使い回しが多いようです。言われた通りの絵とか文章しかかかない芸術家なんて、付加価値を生むものは作れないでしょ。それだけのこと。

まぁ、世の中一般のプログラマの仕事というのはそういう単純なもの、ということを言っているだけなのかもしれない。確かに、技術的にみたら、Joelさんも話題にしていたけれど、コンパイラを作れるプログラマが世の中にどれだけいるかというと、僕は、東大でも、情報科学科のコースで学んだ人以外には思い浮かばないです。本1冊程度の知識でできることだけれど、わりと皆やろうとしない。コンパイラってC++とかJavaのとか、難しいものを想像するかもしれないけれど、要するに人間の入力を受け取って、プログラムにしたりデータにしたり、コンピュータがわかる形に変換するだけのもの。

コンパイラが自分で作れるようになると、楽しいですよ~。GoogleのWeb Toolkitなんてのもその例。SQLのように、データベースを操作する言語なんてのも自分で作れます。 standardがあるときに、そういう新しい言語を作るなんてことはしなくてもいいのですが、目的にあったものがないときに、新しいものを生み出す力があると、随分可能性が広がります。僕が自分で開発しているデータベースシステムだって新しい言語が必要だし、rubyなんてプログラミング言語も、プログラムを簡単に書きたいっていうニーズから生まれたもの。で、そう思った人にコンパイラを書く力があったという、その組み合わせが重要。


ここから先はデータベース屋さんとしてフラッシュメモリなどについて思うことなので、興味ない人は飛ばして。

フラッシュメモリがもっと大容量化すると、データベースでいうclustered indexが重要でなくなってくる。メモリに比べると速度が劣ることは変わらないから、ページ単位の読み書きという概念までは無くならないのだろうけれど。 でも、この変化は重要。 PostgreSQLみたいに、ヒープにデータを追記していって、データをディスク上でソートしてないようなへぼな構造でも(vacuumしないと性能がでないやつ)、性能には関係ないってことだから。 ディスク上(ここでいうのは、フラッシュメモリ上)でデータが分散して配置されていようと、連続して配置されていようと読み出し速度が変わらないということは、追記型のデータベースの利用価値も高まります。すごい。HDDに縛られていたデータベース界からのパラダイムシフトが間近。

2006年9月3日日曜日

ヘッドホン考

僕がウォークマン用のヘッドホンに求める条件

  • 長時間使用しても、疲れにくい
  • 電車の中でも低音が聞こえる
  • 音楽を聴きながらでも、周囲の音(特に車の音)が聞こえる
  • 装着感が良いこと

これくらいかな。音質が良い方がもちろんいいんだけど、上の条件の方が毎日使う上では重要なんです。

とりあえず、よく使うソニーの製品を例に説明。
まずは、耳かけ式ヘッドホン。これはコードも巻き取れて持ち歩きに便利な画期的な製品です。ただ、構造的に耳にフィットさせるのが難しいから、耳に届かない音が出てきます。 手で耳を覆うようにヘッドホンを押さえてあげると、音質は悪くないことに気がつきます。
電車に入ると壊滅的。隙間がある分、騒音の方が耳に入ってきてしまいます。




電車にわりと強いのは、インナーイアー(耳栓)タイプ。新発売の、EX-90SLはドライバユニットが大きいので、今までの耳栓タイプのものとは、一線を画しているとか。

耳にしっかり音が届くという意味では、悪くないのですが、なにせ耳栓です。 このタイプのヘッドホンをつけて歩道を歩くだけでも僕は恐怖を感じます。車のエンジン音がまったく聞こえませんから。 自転車に乗りながら…なんてのは自殺行為でしょう。

その意味では、耳掛け式の方は音質を犠牲にするものの、かなり安全です。


双方の欠点を補っているものは、ネックバンド型。耳栓型ほど遮蔽性はないので、街中でも安心して使用できますし、両側から耳を挟むので、音の聞こえ方も悪くはありません。 左の、MD-G94NCは、ノイズキャンセリング機能があるので、電車の中でもベースの低音が聞けるという楽しみがあります。

ただ、悲しいことに、このヘッドホン、音質があまり良くないし、音量も出ないし、なにより見た目がいまいちです。でも、上記の条件をすべて満たしているヘッドホンはこれだけなので、仕方がなく、現在、僕はこれを使っています。 もう一つの欠点は、ノイズキャンセリング用に周囲の音を取り込むマイク穴があるのですが、そこが風に吹かれると、ゴーゴー響いてしまって、かえってうるさくなってしまいます。このせいで自転車に乗りながらノイズキャンセリング機能は使えないのですが、ある意味事故防止の安全弁になっているので、欠点ともいえず。 まぁ、テレビ局の音声さんが、どうして、毛のフサフサしているマイクを使っているのか、理由がよくわかりました。


最後の砦は、オーバーヘッド式のもの。なんか、街中でこの仰々しいものを付けていると負けた気分になりそうなので、僕はまだ使えません。ケーブルも長くて、うっとおしいだろうし。

ちなみに、左はモニタ用ヘッドホンシリーズなのですが、ヤマハのエレクトーンに付属している安いヘッドホンではわからない音の立体感がわかるので、エレクトーンなど電子楽器を弾く人にはお勧めです。

このタイプの欠点というか、これに限らず、耳をすっぽり覆うタイプのヘッドホンは、どうしても長時間使用すると、長電話をしたあとのように、耳が熱くなって痛くなってしまいます。 自宅で使う分にも、長くは使えないのが悲しいところ。


最近見た強者は、左の、ヘッドホンにiPodを差し込むという代物。 かなり目立ちます。びっくりして、一体なんなんだろうと、そのヘッドホンを付けていた女の人を、しばらくじーっと見つめてしまいました(ごめんなさい)。

調べてみると、mTuneというヘッドホンらしいです。やっぱり外でも高音質、携帯性を求める人というのはいるのだなぁと実感しました。ケーブルがないのも良いですね。
うーん。でも、やっぱり、これ付けて歩いている人がいると、びっくりするよなぁ。

そういえば、 耳栓とまでは行かないヘッドホンもありましたね。 このタイプも、周囲の音は聞こえるので安全だと思います。でも、高校の時にこのタイプをよく使っていて(というか当時はこれくらいしかウォークマン用のヘッドホンの種類がなかった)、耳が痛くなることが多かったので、最近は試していません。

最近気になるヘッドホンは、BOSEのTriPort。装着感も音質も良さそうだし。ただ、折りたためないから、持ち歩くのには不便? オーバーヘッドだから髪型も崩しそうだし。 あと、値段が2万超えと高めです。

並べてみても、どれも帯に短し襷に長しなんですよね。音質と見た目の良くなった MDR-G94NCがあれば、最高なんでしょうが。

2006年9月2日土曜日

BlueTooth ヘッドホン: VGP-BRM1D

VGP-BRM1D -Sony Style

こういうのって、ポータブルオーディオ本体と一体化して欲しいと思います。
ヘッドホンケーブルから解放される日が来るのが待ち遠しい…。

License

Creative Commons LicenseLeo's Chronicle by Taro L. Saito is licensed under a Creative Commons Attribution-Noncommercial-Share Alike 2.1 Japan License.