何台も積み上げられていて、週に何度も、マシンにOSをインストールして、ApacheやSendmailをインストールして、レンタルサーバの管理用のCGIをインストールして、それをデータセンターに設置しに行ってました。会社は大手町と神田の中間にあり、データセンターはKDD大手町ビル(当時はKDDとDDIは別会社)で、歩いて10分程度。5は微妙に重く、途中の鎌倉橋あたりで必ず休憩をしてました。KDD(KDDI)ビルは当時(も今も?)インターネットの中心で、自分たちがハウジングしてるラック以外には、誰でも知ってる某検索エンジンサイトなど錚々たる顔ぶれでしたが、セキュリティは非常に甘かったです。本来は、事前に入館予定のFAXを送り、ビルに入る際に守衛さんに入館証を見せて入館するんですが、急いでる時は、「すいません、FAX送ってないんですが、緊急なんで!入館証は忘れました。」と言って名刺を見せるだけで入れました!当時のインターネット業界はまだ牧歌的でした。何も変わってないような、すべてが変わってしまったような...。先週の土曜日、PostgreSQLしくみ勉強会に参加してきた。2本立てで構成されていて、最初はチューニングの話。高度な内容で参考になったが、遅刻してしまい、半分くらいしか話が聞けなかったのは今回の反省点。チューニングの話の後、plploxyとpgbouncerというPostgreSQLのロードバランシング(レプリケーション)の話だった。なっていて、ハンズオンって何だろう?って思っていたのだが、会場には備え付けのPCにPostgreSQLを用意されており、講師の人の説明を受けながら、実際にplploxyやpgbouncerをインストール、設定してみる形式だった。いうのをハンズオンというのか。会場で配布されたOpenSolarisのブータブルCDでSolarisを起動し、そこから仮想OS環境のCentOSを起動して、PostgreSQLにアクセスするという複雑な構成。講師の人は、どこそこのファイルに実行権を与えてシェルスクリプトを実行しろとか、普通にターミナルの操作を要求してくるので、諦めて話しを聞いてるだけの参加者も結構いたような。講師は、桑村潤さんという方で、そう言えば名前を聞いたことがあるなと思ったが、マンモス本書いてた人なのか。桑村さんがターミナルの操作をする様子は、前面の大きなプロジェクターに映し出されてたんだけど、テキストファイルを閲覧するのに(lessやlvじゃなくて)moreを使っていた。うーん、いまどきmoreか・・・と。伝統的なUNIX使いなんでしょうね。UNIXPostgreSQLしくみ勉強会に参加にコメントCatalyst(またはPerl)のドキュメントCatalyst(Perlで一番メジャーなウェブフレームワーク)を採用しているサイトの追加開発をしてる。以前買ってあまり読まずにいた『モダンPerl入門』を読みながら、Catalystを学習している。本で足りない部分を補うために、ネットで検索して、Perl開発者のブログの記事を参考にしている。「はてなブックマーク」(http://b.hatena.ne.jp/t/catalyst?sort=)の中から、めぼしい物を適当に読んでるけれど、ブログだから内容が断片的で、古い記事だと今では非推奨な方法で書いてあったりするので注意が必要。Perlって、Catalystに限らず(と言っても、他にメジャーなのはCGI::Appぐらいだけど)フレームワークの本ってあまりない。PHPのCakeやZend、RubyのRoR、JavaのStruts、C#のASP.NETなどは、専門の本がたくさん出てるのに。何でフレームワークの本がないんだろうって理由を考えると、Perlライブラリの流行が早くて、本を作ってもすぐに内容が陳腐化するからというのもその一つでは?Perl本体は5.8のリリースからもう7年も経っていて大きな変化はないけれど、ライブラリは似た機能のライブラリがCPANに次々にリリースされる。Perlだけ追っかけてる分にはいいだろうけど、たまにしかPerl触らないとついて行けない。系統だった学習が出来るように、もう少し整理されたドキュメントが必要じゃないかなと思う。CPANのドキュメントは詳しいことはソースを読めみたいな感じだし。PHPが普及した理由って、日本語のドキュメントが大量にある事が大きいと思う。PerlCatalyst(またはPerl)のドキュメントにコメントJavaScriptの勉強でBresenhamアルゴリズムを知る最近はJavaScriptの勉強をしてる。一応仕事のためで、マストで必要ってわけじゃなかったけど、どうせならJavaScript使って見るか!ってことで。教材にしたのは、この、TinyTable(http://www.leigeber.com/2009/03/table-sorter)というテーブル(表)を任意のカラムでソートするためのライブラリ。これはとても良くできていて、このまま使っても良かったんだけど、ソースコードを見てみると、変数名が短くて意味不明だったり、実行速度を上げるため?なのか分かりづらい処理があったので、若干機能を修正して移植してみた。車輪の再発明ってやつ。一つは、グラフ表示のライブラリというか、コードプロジェクトのチュートリアル記事(http://www.codeproject.com/KB/scripting/javascriptlinedrawing.aspx)。前にFlashの勉強をした時も思ったけど、グラフィックのプログラミングすると、数学の能力が求められるなって。昔、♪サインコサイン何になる〜って受験生の歌があったと思うけど、やっぱ数学は大事だよ!この記事では、グラフを描くのにBresenhamアルゴリズムというのを利用している。解説を読むとああそうかって思うけど、こういうのを自分で思いつくBresenhamさんは賢い人なんだろうなあ。仕事で調べたメモをPukiwikiで公開してるんだけど、Pukiwikiの文法って、小気味いいと思う。*1個でH1タグ、**2個でH2タグって自明だし、−でULタグ、+でOLタグっていうのも、納得がいく。HTMLに変換しなくても、Pukiwikiの文法が残ってるテキストの状態でも見やすいのがいい。行頭にスペース1個でPREタグになるのも、そういう点でよい。Pukiwiki以外のwikiの文法に詳しいわけじゃないけど、とりあえずTracのwikiの文法は酷いと思う。何であんなにしちゃったんだろう。PukiWikiwikiの文法にコメントAboutこんにちは!矢野と申します。東京でウェブ系ソフトウェアエンジニアとしてフリーランスで活動してます。1999年にレンタルサーバの管理者を始めて以来、この20年間ウェブサイトを作る仕事をしてきました。PHP/Perl/JavaScriptのウェブプログラミング、UNIX/Windowsサーバ構築、Java/C#の業務アプリ制作、IT講習のトレーナーなどの実績があります。20年間で手がけたウェブサイト、サービスは無数にあります。お気軽にご連絡下さい。