Archive for November, 2006

JavaScript ライブラリ比較

Monday, November 27th, 2006

たまたま同じ時期に似たような比較記事(比較表)を目にしたので、勝手にリンク。

ウェブ制作の黎明期?から JavaScript に苦しめられてる自分としては、優れた汎用的なライブラリが比較するほどそろっていることにまず感動。記事内容的にも、観点はちょっと違うけれど、どちらもおもしろい内容になっている。

以下思いつきだけど自分なりのライブラリ選出基準。

  1. ブラウザごとの差異を吸収する
  2. コーディングパターンを強制しない
  3. ファイルサイズは重くて可、実行スピードが重いのは不可

1. は当然、ブラウザごとの差異を吸収することで、ライブラリ利用者に差異を意識させず、機能の実装に集中させる。そうやってブラウザごとの調整を他人任せにできる状態にさせることが大事だと思う。

2. については、実装機能によっては利用ライブラリが複数になることもありうるが、ライブラリ導入によりコーディングパターンが大きく変わってしまうのは、利用者にとっては負担になると思われる。jquery のコードはおもしろいくらいに JavaScript らしくないパターンだけど、それを取り入れるには相当勇気がいるような気がする。

3. のファイルサイズについては JavaScript のライブラリが 100kb を超えようが 500kb を超えようが、ページを飾る 1mb 超の flash に比べれば軽いわけで、世間が言うほどライブラリのファイルサイズは大きな問題にはならないと思う。それよりなにより実行スピード。これがすごく重要。当然、サーバサイドとは異なり実行環境のマシンスペックはばらつきがあるし、機能強化の一方で、ライブラリによっては単一の機能にものすごいステップ数のコードを挟み込んだりして、まだまだ改善の余地があるような気がする。というか単に重要視してないだけかもしれないけど、たとえば dojo とかこれを使っているところがあるのかと思っちゃうほど、重かったりする。

Debian GNU/Linux C/C++ 開発環境構築メモ

Sunday, November 26th, 2006

インタープリタ型言語での開発が大半の自分にとってC/C++ での開発など片手で数えられるほどの経験しかないし、普段使ってる Debian にも開発環境など入ってないし、ということで、開発環境を整備するだけでも予想外に時間がかかってしまったので、カンタンにメモ。

開発ツールとライブラリヘッダをインストール

# apt-get install gcc g++ make automake1.9 libc6-dev

既存バイナリパッケージに使われているソースコードを取得するには続けて以下を行う。

ソースコード取得に dpkg-source が必要になるのでそれが含まれたパッケージをインストール

# apt-get install dpkg-dev

/etc/apt/sources.list に以下のような deb-src を設定しておく

deb-src http://ftp.jp.debian.org/debian/ stable main

取得したいソースコードを以下形式で apt-get で指定する

apt-get source <package-name>

参考資料
Debian リファレンス

Longhorn Concept

Saturday, November 11th, 2006

vista_2003.jpg

もうひとつ Microsoft の話題。YouTube に 2003 年時点での Windows Vista(コード名 Longhorn )のコンセプトムービーがあがっている。

機能的にはともかく、UI 的には多少改善される印象の Vista だけど、このムービーはその上をいっている。文書ファイル、音楽ファイル、写真ファイル...といったファイル種別に関係なく、ほぼ同様の UI を提供していて、ユーザーは種別を意識することなく、単一のツールを使えばいいようになっている。現在はそれぞれ専用のアプリケーションで使い分けてるけど、結果、ユーザーがアプリケーションごとに操作方法を覚えないといけないし、ファイル種別が違うだけで別のアプリケーションを立ち上げないといけない。

動きも軽快で面白い動きをしてるし、2003 年のマシンでこのスピードなら、いまであれば大丈夫そうな感じがするだけに、残念。

Photolynth

Saturday, November 11th, 2006

photolynth.jpg

Microsoft がワシントン大学と共同で開発を進めている Photolynth が興味深い。機能的には、何枚ものデジタル写真画像をもとに、3D の世界を作り出す...というものなのだけど、自分的には、その機能を実現させるための UI に興味を持った。

本来 2D しか表現できない写真をどのように 3D 化するか、というところで、ワイヤーフレーム的に構築された 3D の世界の中で、どこを写真の被写体としているか、がすごく自然に表されているように思う。情報の可視化の好例。