2005-08-01から1ヶ月間の記事一覧

Perl6 と後方互換性

LLDN で弾さんの Perl Updates のときに、後方互換性についての質問をしました。僕が聞きたかったことを詳細に言うと「Perl5 のときは 5.6 → 5.8 みたいに後方互換性を維持しつつもバージョンアップという形で進んできたのに、Perl 6 はまるで別言語のようだ…

startup.pl で require?

use と require の話、まだ引っ張るのかよって感じですがもうちょっとだけ。del.icio.us で typester 氏からコメントがありました。 requireだけでも、startup.pl のような使い方すればいいよね? んで、一瞬「そうか、startup.pl で全部 reuiqre すればいっ…

Perl の use と mod_perl、あと LLDN 感想ちょっと。

それとperlのuseってどういうものなのか解らないんだけど、FastCGIのようなプロセス常駐させている場合、rubyのrequire*2したものがプロセスで共有されてて次回の起動コストはかからないんだけど、それとは違うのかな? use するとこんないいことがあるんだ…

Lightweight Language Day

昨日はLightweight Language Day and Nightに行ってきた。夕方から用事があったので昼の部だけ。いろいろメモってきたのだけど、時間がないので簡単に。まず、地図をみたら新宿駅下車っぽかったので、新宿から四谷区民ホールまで歩いていったらえらい遠くて…

技術勉強会 podcast はじめました

はてなの技術勉強会も podcast してみよう、ということではてな勉強会というページを作りました。勉強会自体は今日が3回目なんですが(以前にもやってたけど途中でフェードアウトしてしまったらしい)、今回は僕が発表担当で、内容はここ最近この日記でもちょ…

みんなでつなげようブログの輪

BBWatchのブログの輪、今日は大向かいさんと安達くんの glucose コンビかあと思いながら何気なくみてみたら、誰だこれ!! テラワロスw...これは東工大の南野さんです。前回の写真と間違えたんでしょうね。記念にスクリーンショット。

Yahoo! Japan がグーグル型に

検索サイトのヤフー日本法人は人手を利用して登録したサイトを優先的に表示する方式をやめ、10月にも検索を完全自動化した「グーグル型」に切り替える。人手を利用する方式は創業以来、採用してきた。自動検索の精度が上がるにつれグーグルが閲覧数を伸ばし…

ドメインを取りました。

amazlet.com 消失未遂事件で久々にドメイン管理画面を触ったついでに、さっきドメインを取得しました。yai.to です。yai.to って何ってそりゃ nao.yai.to ですよ。何に使おうかな。フフ。

JavaScript で SQL - AjaSQL

All About で JavaScript のガイドも勤めている高橋さん が AjaSQL なる JavaScript (+PHP)のライブラリを公開しています。 AjaSQLは、JavaScriptからSQL文をAjax発行し、サーバー側のゲートウエイを経由して、データベース(MySQL,SQLite...)へ接続、結果セ…

靴を隠されました

靴を脱いで仕事をしていたら誰かに靴を隠されました。会社から帰れません。いじめだ!!

amazlet.com ドメイン切れ

危うく amazlet.com のドメインを失ってしまうところでした。というか実際には少しの間切れてしまって、さっき親切にトラックバックを送ってくださった方がいて、気付いてあわてて取得しなおしました。感謝感謝。もしかしたら少しの間この影響で繋がらなくな…

トラックバック技術仕様書の ?__mode=rss はなかったことに

なぜかトラックバック技術仕様書(の和訳)がはてなブックマークの注目にいまごろ挙がっている。ときどきこういう昔の文書が掘り起こされることがあって面白い。ところで、このブックマークのコメントにトラックバック一覧をRSSもどきなフィードで取得する ?__…

prototype.js でデザインパターン - Bridge

結城さんのデザパタMLでも紹介されてしまった手前、さぼるわけにもいくまい、ということで「機能の階層と実装の階層を分ける」 Bridge パターンです。使いどころはたくさんありそうでなさそうでありそうな(どっちだ)、個人的には結構好きなパターンです。プ…

変なコメント

ダイアリーのコードをいじってたら、こんなコメントが見つかった。 my @pingurl = qw( http://ping.cocolog-nifty.com/xmlrpc http://ping.myblog.jp http://www.blogpeople.net/servlet/weblogUpdates http://ping.bloggers.jp/rpc/ http://blog.goo.ne.jp/…

わかりやすいDB(ハンドリング)

あと...ハテナオヤさんが、わかりやすいDBなんて本を書いてくれたり、エントリーを書いてくれれば、問題なし(他力本願)。 Class::DBI 使いなさい! 終わり。

技術系の雑誌、書籍を書くこと

今日は技術評論社の方が取材に来てくれました。人生において、自分の話をひたすら1時間なり2時間なり聞いてもらえるということは、実はそんなになくって、こういう取材のときぐらい。よく考えてみるととても非日常的なことです。自分の話を聞いてもらえる、…

自分を見直すメモ

日々のスケジュール管理には Yahoo! カレンダーを使っていて、毎日リマインダを送ってくれるので便利です。このリマインダのメールにはリマインダ以外に「今日の作業」という項目があるのですが、その日のTODOは特にリストアップとかはしてません。せっかく…

prototype.js でデザインパターン - Abstract Factory

ようやく8つめ。まだ残り 15 あります。8つめは「関連する部品を組み合わせて製品を作る」Abstract Factory パターン。複数のオブジェクトを正しい組み合わせで生成されるようにしたい、といったときに使うパターンです。デザパタ本の題材は階層構造を持った…

prototype.js でデザインパターン - Singleton

次は「たった1つのインスタンス」Singleton パターンです。あるクラスがあって、そのクラスのインスタンスは実行アプリケーションのライフサイクルを通じて唯一に制限したい、何回生成しても同じインスタンスである、というものです。 var Main = Class.crea…

prototype.js でデザインパターン - Factory Method

お次は「インスタンス作成をサブクラスにまかせる」Factory Method パターン。これまた定番。 var Main = Class.create(); Main.prototype = { initialize : function() {}, main : function() { var factory = new IDCardFactory(); var cards = new Array(…

prototype.js でデザインパターン - Template Method

次は「具体的な処理をサブクラスにまかせる」Template Method パターン。定番ですね。 var Main = Class.create(); Main.prototype = { initialize : function () {}, main : function () { var d1 = new CharDisplay('H'); var d2 = new StringDisplay('Hel…

prototype.js でデザインパターン - Adapter

Iterator に続きまして、「一皮かぶせて再利用」な Adapter パターンです。クライアントは var Main = Class.create(); Main.prototype = { initialize : function() {}, main : function () { var p = new PrintBanner("Hello, World"); p.printWeak(); doc…

prototype.js でデザインパターン - Iterator

Ruby on Rails や Catalyst のプラグインなんかでは prototype.js という JavaScript のライブラリを使って、Ajax サポートを実現しています。prototype.js とフレームワークが必要な Ajax の JavaScript コードを吐き出してくれるので、Ruby プログラマや P…

prototype.js でデザインパターン - Builder

7つめは、「複雑なインスタンスを組み立てる」Builder パターンです。 var Main = Class.create(); Main.prototype = { initialize : function () {}, main : function () { var builder; if (arguments[0] == 'plain') builder = new TextBuilder(); else b…

prototype.js でデザインパターン - Prototype

続きまして「コピーしてインスタンスを作る」Prototype パターンです。デザパタ本では6章にあたります。 var Main = Class.create(); Main.prototype = { initialize : function () {}, main : function() { var manager = new Manager(); var upen = new Un…

Perl の開発環境

人力検索でPerlの開発環境はどんな感じ?という質問があがっていて、にわかに盛り上がって(?)いますね。僕も回答してみました。 一般的にPerl使ってる人はWindowsで開発する人が多いんですかね?サーバにログインして、ターミナル上で開発をする人って結構少…

グランディアIII

グランディアIII が昨日 Amazon.co.jp から届きました。久々にロールプレイングがしたいなあと思っていたところに大作発売ですよ、これをゲーマーとしてやらずにいられるだろうか、いやいられない(反語)ということで、軽く2、3時間ほどやってみましたが、楽…

BBWatch 連載 No.6 - The Wisdom of Crowds

最も優れた個人よりも、集団の意見を集約した集合知こそが正しい場合がある。なんとなくインターネットの匂いがしてきます。今回は“Wisdom of Crowds”を元に、インターネットの世界を考えてみたいと思います。 BroadBand Watch の連載の6回目です。今回は Wi…

自分が何歳ぐらいに思われているかを知る方法

おはようございます。今日はどうでもいい小技をひとつ。昨日コンビニで買い物をしてて思い出したのですが、コンビニのレジには、買い物客の推定年齢を入力するボタンがあります。19歳以下、20〜24歳、25〜29歳、30〜35歳...ってな塩梅で。レジの店員は、買い…

XML-Feed-0.06

Added $PREFERRED_PARSER variable to allow usage of compatible RSS parsers, like XML::RSS::LibXML. Thanks to Tatsuhiko Miyagawa for the patch. XML::RSS と XML::Atom のアダプタで、フィードの種類(RSS or Atom)やバージョンの違いなんかも吸収して…