Hatena::Groupasakura

浅倉卓司@blog風味? このページをアンテナに追加 RSSフィード

Error : RSSが取得できませんでした。

2006-09-27(Wed)

Subversionの1.4はマジで速い。

| 16:07 |  Subversionの1.4はマジで速い。 - 浅倉卓司@blog風味? を含むブックマーク  Subversionの1.4はマジで速い。 - 浅倉卓司@blog風味? のブックマークコメント

 「バージョン上がってるよー」ってな話をMLで見かけて評判を調べてみたけど、特にめぼしい記事がない。

 しょうがないので突っ込んで試してみたところ、commitがめちゃくちゃ速くなってた*1。これはいいかも。


 リリースノートはこのへんにあります。

 日本語の解説はこのへんかなぁ。


追記

 MLに1.3から1.4への移行についての投稿がありました。


 クライアントのバージョンを上げるだけでもかなり快適になります(上記はクライアントのバージョンを上げただけです)。ファイル共有でSVNを使ってるとかだと問題あるけど。

 サーバ側のバージョンを上げるともっと快適になるんだろうなぁ……。

*1:updateは他の人が更新したのがまだないので分からない

トラックバック - http://asakura.g.hatena.ne.jp/asakura-t/20060927

2006-09-26(Tue)

@ITの連載「データベースエンジニアへの道」が最終回になっていた。

| 19:35 |  @ITの連載「データベースエンジニアへの道」が最終回になっていた。 - 浅倉卓司@blog風味? を含むブックマーク  @ITの連載「データベースエンジニアへの道」が最終回になっていた。 - 浅倉卓司@blog風味? のブックマークコメント

 そのうちきちんと読まないと~。

http://www.atmarkit.co.jp/fdb/index/subindex/db_enginer_subindex.html

 MySQLPostgreSQLの使い方の記事はあっても、データベースの考え方についての記事は滅多に見かけないので貴重です。

 特に専門的に学ばずに「とりあえずデータベース」って感じでRDBMSを使ってる人は一通り読むのがいいんじゃないかな。あるいは「マンガでわかるデータベース」あたりがお勧め。

トラックバック - http://asakura.g.hatena.ne.jp/asakura-t/20060926

2006-09-21(Thu)

RD-Style向けPlaggerプラグインってどこかに転がってませんかね。

| 10:53 |  RD-Style向けPlaggerプラグインってどこかに転がってませんかね。 - 浅倉卓司@blog風味? を含むブックマーク  RD-Style向けPlaggerプラグインってどこかに転がってませんかね。 - 浅倉卓司@blog風味? のブックマークコメント

 番組表の取得はどこかにありそうだなぁ。

 録画予約は機種ごとになってる必要がある気がするけど。


PHP用のClass::DBI(あるいはDBIx::Class)っぽいO/Rマッパはどれなんでしょう。

| 13:59 |  PHP用のClass::DBI(あるいはDBIx::Class)っぽいO/Rマッパはどれなんでしょう。 - 浅倉卓司@blog風味? を含むブックマーク  PHP用のClass::DBI(あるいはDBIx::Class)っぽいO/Rマッパはどれなんでしょう。 - 浅倉卓司@blog風味? のブックマークコメント

 おそらくDB_DataObjectかMDB2あたりなんだと思いますが*1

 自前のO/Rマッパを使い続けたほうがいいものか悩める……。

PHPのBestどころかBetterな書き方も分からないので*2、たぶん効率悪いだろうし)


追記

 MDB2ってClass::DBIじゃなくてDBIのように見える。SQLの生成にはQueryToolを使うんだと思うんで、そっちを使えばClass::DBIっぽく扱えるのかな?

 DB_DataObjectのほうはSQLの自動生成はあるけど、ちょっと違うように見える。少なくとも配列からWHERE句を作成してはくれないっぽい。

 むぅ。

*1:ドキュメントが激しく読みにくいため、それぞれ何ができて何ができないのかよー分からん。

*2:なにしろ三項演算子の正しい使い方が分からなかったくらいだからね!

トラックバック - http://asakura.g.hatena.ne.jp/asakura-t/20060921

2006-09-18(Mon)

同期型(リアルタイム)に未来はあるのかな?

| 17:13 |  同期型(リアルタイム)に未来はあるのかな? - 浅倉卓司@blog風味? を含むブックマーク  同期型(リアルタイム)に未来はあるのかな? - 浅倉卓司@blog風味? のブックマークコメント

 リアルタイムであることに魔力があることは知っているけど、でもそこに未来はないような気がしてます。

たとえば、私は、人力検索とかソーシャル・サーチの未来はリアルタイム性にかかっていると思っています。


例を挙げると、「今日デートなんだけど誰かサンフランシスコのうまい寿司屋でオススメない?」なんていう疑問を持ったユーザがLingrにやってきて、「san francisco」と「meal」で検索してチャットルームを見つけて、そこにいる人と会話を交わして答えを得る、というような使い方ができるようになればいいなぁと。それこそ「めしどこかたのむ」ですけど。そして、遠い未来にはその満足に対して何らかの見返りが回せるような仕組みができれば、これは面白いことになるぞ、と思うわけです。

Lingr(リンガー)をリリースしました

 ここでいう「リアルタイム」というのはおそらく「同期型」であることをさすと思うんだけど*1、同期型は「常に誰かがそこにいる」必要がある。しかも、おそらく1人2人ではなく、もっと沢山の人が。

 僕はそういう「同期型」のシステムには否定的に考えていて*2、未来は「非同期型」のシステムにあると思ってます。

 同期型のイヤな部分は、その時間を確実に拘束される点。ようやくテレビの視聴でタイムシフトが当たり前になってきたのに、いまさら時間に拘束されるのなんておかしいんじゃないか。少なくとも僕は「未来」というよりは「過去」に戻った気分になる。


 とはいえ、リアルタイムで同期していることで「盛り上がる」のは間違いなくて、だからこそ2chの(あるいはそこから派生した)実況掲示板やMMORPGが一部で熱狂的に支持されているのはよく分かる。だから盛り上がる必要のあるマツリの時なんかには同期型のシステムが必要だと思います。

 逆に普段は(時間拘束されないために)非同期型のシステムであるべきだと思うのです。

 江島さんがマツリを志向しているのなら同期型で間違いないと思うのだけれど、そうでないのなら同期型を選択したのは間違いなんじゃないのかな。

(食事の例は「普段」だし、パフォーマンスの公開の例は「マツリ」なので、どちらを志向しているのかちょっと分かりませんけれど)



 個人的には同期しているように見える非同期型システムがいいんじゃないの? っていうのを考えたことがあります。

 簡単に書くと、ユーザーとユーザーが直接やりとりをするんじゃなくて、代理人が仲介してくれる――代理人が回答できる範囲ならリアルタイムで回答されるし、回答できないならあとで連絡してくれるとか、まあそんな感じ。

 それが便利かと考えると今のところはそんな気はしませんが、普段の入力などから自動的にパターンを学習するシステムとかできると面白いかな~とか考えたりもします。

*1:だって、今のウェブは基本的に返答そのものはリアルタイムだから。

*2:同様の理由で既存のMMORPGは駄目だと思ってる。

2006-09-15(Fri)

Error.pmのバージョンが上がっててびっくりした。

| 16:19 |  Error.pmのバージョンが上がっててびっくりした。 - 浅倉卓司@blog風味? を含むブックマーク  Error.pmのバージョンが上がっててびっくりした。 - 浅倉卓司@blog風味? のブックマークコメント

 メンテナさんが変わったのですね。

 具体的に何が変わったのかはドキュメント読んでませんが。とりあえずError::Simpleが付くようになったのが素敵(笑)。


 そーいやPerl6の例外処理はどうなってるんでしたっけ。

 まるごとPerl!のPerl6特集でも触れられてなかったのが気になるところ。


Parrotがレジスタマシンなのは今のPerlがレジスタマシンだからだと思ってました。

| 01:41 |  Parrotがレジスタマシンなのは今のPerlがレジスタマシンだからだと思ってました。 - 浅倉卓司@blog風味? を含むブックマーク  Parrotがレジスタマシンなのは今のPerlがレジスタマシンだからだと思ってました。 - 浅倉卓司@blog風味? のブックマークコメント

 まるごとPerl!のParrotの記事に「Parrotは仮想マシンとしては珍しくレジスタマシンで」的なことが書かれてましたが、それは単に既存のPerlレジスタマシンだからだと思ってました。ソース読んでないから違うかもしれないけど。


 Perlのサブルーチンは

sub foo {
  my ($bar, $baz) = @_;

}

foo($hoge, $fuga);

――とか書きますが、@_は$hoge,$fugaそのものなので、これってレジスタ渡しじゃん、と*1。サブルーチンの呼び出しにレジスタ渡しを使うんだから仮想マシンはレジスタマシンになってるじゃろ、と思ったわけです。

 ……そーいや戻り値はどうしてるんだろ。ブロックの最後で評価されたものが戻り値になってるので、常に最後の演算結果を保存してるスクラッチパッドみたいなのがあって、それを参照してるのかな*2

*1:スタック渡しでもいいけど、その場合は引数が全部参照アドレスってことになるのでスタック渡しの旨味がないような気がする。

*2:でもソースを読んで確認したりはしない。

トラックバック - http://asakura.g.hatena.ne.jp/asakura-t/20060915

2006-09-13(Wed)

PHPの三項演算子って変じゃね?

| 19:29 |  PHPの三項演算子って変じゃね? - 浅倉卓司@blog風味? を含むブックマーク  PHPの三項演算子って変じゃね? - 浅倉卓司@blog風味? のブックマークコメント

 ふつーに

$per_page = ($per_page < 10)?        10
          : ($per_page > 50)?        50
          :                   $per_page
          ;

とか書いてたら、$per_pageが0の時に50が返ってきて死ぬかと思った。

 ふつーの言語の三項演算子*1って上記で正しく動くと思うんだけど、PHPみたいなの*2って他にあるんでしょーかね。


追記

 ちなみにPHPでは

$per_page =  $per_page < 10 ?        10
          :( $per_page > 50 ?        50
          :(                  $per_page
          ));

――と書くようにしています :p

*1:右結合のはず。

*2左結合だそうな

2004 | 01 | 02 | 03 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2005 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2006 | 01 | 02 | 03 | 04 | 05 | 06 | 08 | 09 | 10 | 11 | 12 |
2007 | 02 | 03 | 04 | 05 | 06 | 07 | 10 | 11 | 12 |
2008 | 02 | 03 | 04 | 06 | 09 | 10 | 11 | 12 |
2009 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 09 | 10 | 11 | 12 |
2010 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2011 | 01 | 02 | 03 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2012 | 02 | 03 | 04 | 05 | 07 | 08 | 10 | 11 | 12 |
2013 | 01 | 05 | 07 |
2014 | 01 | 02 |
2016 | 01 |
2017 | 01 | 05 |