March 19, 2007

Ajax な Web Chat 作った

Ajax な Web Chat を作ってみました。

http://jugyo.org/chat/
chat.png

誰でも使えるような、極力シンプルなチャットを作ろうと思いました。
僕の母親でも簡単に使えるのが理想です。

ちなみに、ちまたで話題の Commet とかいう技術は全く使ってません。
一定時間ごとに画面の一部を再描画しているだけです。

これを作る為に prototype.jsscript.aculo.us をちょこっと使ってみたんですけど、めちゃくちゃ便利っすね。

追記:
残念ながら Firefox 以外のブラウザでは正常に動作しません。
IE と Safari では動きませんでした。
Firefox だと Firebugs があるからいいんですが、IE と Safari はどうやってデバッグすればいいんだろ。

追記:
Safari での Javascript のデバッグ方法がわかりました。
ターミナルで以下のコマンドを実行して Safari を起動すると、メニューバーに「Debug」メニューが出てきます。

defaults write com.apple.Safari IncludeDebugMenu 1

「Debug」メニューから「Show JavaScript Console」を選択すると、エラーの箇所とかを教えてくれる便利なコンソールが出てきます。

参考: Safari Developer FAQ

追記:
Safari でも動作するようになりました。

細かい変更点として、ユーザー名を入力できるようにしてみました。
入力しなくても発言できますが。

RSSを出力するようにもしました。

あと、IPアドレスを元に「色のアイコン」を付けるようにしてみました。
これにより視認性が高まります。

chat2.png

例えば、「220.148.160.20」というIPアドレスの場合、ここから2種類の色——rgb(220, 148, 160) と rgb(148, 160, 20)——を作ります。
それらを元にスタイルシートを使ってアイコンっぽいものを表示しています。

我ながら、なかなかのアイデアだと思います。

そのうちソースを公開するつもりです。

追記:
わーい、arton さんからリンクされた、わーい。
L’eclat des jours(2007-03-20)

追記:
ソースを公開します。

ソース: chat20070323.zip

ライセンスのこととかよくわからないんですけど、パクっていいです。
そんなたいしたプログラムじゃないですけどね。

March 16, 2007

読書: 考える脳 考えるコンピューター

家の本棚を眺めてたらこんな本を見つけた。

考える脳 考えるコンピューター 考える脳 考えるコンピューター
ジェフ・ホーキンス サンドラ・ブレイクスリー 伊藤 文英

ランダムハウス講談社 2005-03-24
売り上げランキング : 41972

Amazonで詳しく見る by G-Tools

だいぶ前にアマゾンで買ったけど読んでなかった。
あまり面白くないんじゃないか、と勝手に決めて読まないことにしてしまっていた。
でもその判断は間違ってた。
これ相当面白いっす。

著者のジェフ・ホーキンスは、Palm ComputingとHandspringの創始者。

ジェフ・ホーキンス - Wikipedia

サイエンティフィック・アメリカンの脳特集号を読んで以来、 つねに脳がどのようなしくみで働くのかを勉強することに興味を持ち続けた。 当初は雇用されていたIntelで、脳についての新しい部門を立ち上げようと 試みたものの却下される。またMITAI研に入ろうと試みるも失敗。 けっきょくコンピュータ産業で成功を模索することにし、 その成功をもって本当にやりたい脳の研究の支えとしよう、と決断した 。

とのこと。
すごい。
自分のやりたいことに向かって突き進んでる。
こういう人はほんと尊敬に値する。
ある種の憧れみたいなものを感じる。

で、本書の内容なんだけど、人工知能についてかなり筋の良い考え方をしている気がする。
ま、僕がこんなこと言うのもおこがましい話ですが。

「まえがき」にこんなことが書いてある。

わたしはこの理論と知能の研究方法を説明するために、よく「真の知能」という言葉を使い、「人工知能」と区別している。人工知能の研究者は、知能というものや理解することの本質をあきらかにしないで、コンピューターが人間のように振る舞うプログラムを書いてきた。知能を備えた機械にもっとも重要な要素、つまり、「知能」を忘れているのだ。知能を備えた機械をつくろうとする前に、まず脳がどのように考えるのかの解明が必要であり、そこには「人工」の要素は何もない。真の知能を理解したあとに、ようやくそれを備えた機械の作り方を考えられる。

僕も同じように考えてる。
まず、知能とは何なのかを理解する必要があると。

とりあえずプログラム書いてそれっぽく動いてるからオッケー、なんていうのではダメなんですよ。
プログラムを組む時には、アルゴリズムをちゃんと理解して作らないといけない。
人工知能を作る時もそれと同じことが言えると思うんです。
(例えが悪いか)

ていうか、ただ単に僕は知能というものの本質を理解したいと思ってる。

まだ1/3くらいしか読んでない。
また後で書く。

追記:

【コラム】シリコンバレー101 第216回 Palmの父が提唱する”考えるコンピューティング” (MYCOMジャーナル)
“Palmの生みの親”として知られるJeff Hawkins氏が2005年に設立した会社Numentaがインテリジェントコンピューティングのソフトウエアプラットフォームをリリースした。パターン認識やマシーンラーニングなど、コンピュータが苦手とする問題を解決してくれる。考えるコンピューティングを実現するという。

おお、これは!

追記:
続きを書きました。

March 15, 2007

デジカメ故障

デジカメが故障しました。
メモリーカードを読み取れなくなってしまいました。
修理に12,000円かかるそうです。

↓これなんですけど。

FUJIFILM FinePix Z2 シルバー 500万画素 FUJIFILM FinePix Z2 シルバー 500万画素

富士フイルム 2005-11-12
売り上げランキング : 14600

Amazonで詳しく見る by G-Tools

これを機に買い替えたいなぁ、とか思ってます。
非常に使いやすく、かつ、そこそこ奇麗に撮影できるのでとても気に入ってたんですけどね。
機械音痴の妻でも普通に使えてましたし。
レンズカバーを開くとすぐに撮影できる状態になるっていうのが、ユーザーインターフェイスとしてとても良い。
デジカメでやりたいことって、基本的に「撮影」と「プレビュー」であって、それらがわかりやすい操作でできることが重要だと思います。
そういう点で、とてもよくできたデジカメでした。

買い替えるとしたら今のところ↓これが欲しいです。

FUJIFILM FinePix (ファインピックス) F40 シルバー FX-F40FDS FUJIFILM FinePix (ファインピックス) F40 シルバー FX-F40FDS

富士フイルム 2007-02-24
売り上げランキング : 586

Amazonで詳しく見る by G-Tools

デジカメはなぜか富士フイルムのが好きなんですよねぇ。
ていうか、アマゾンだと結構安い。
36,300円(税込)。

ちなみにヨドバシだと44,800円(税込)する。
富士フイルム FinePix F40fd:ヨドバシ・ドット・コム

価格.comでの最安値が31,500円。
FinePix F40fd の最安価格31,500円〜 【価格.com】

いろんなデジカメを眺めてて思ったんだけど、最近どれもデザインが似てきてる気がする。
その中でも異彩を放っているのがこれら。

Nikon デジタルカメラ COOLPIX S10 COOLPIXS10 Nikon デジタルカメラ COOLPIX S10 COOLPIXS10

ニコン 2006-09-15
売り上げランキング : 9317

Amazonで詳しく見る by G-Tools

↑僕はこういうの好きなんだけど、レンズの向きが変わるのが気持ち悪いと思う人もいるみたい。

デジタルムービーカメラ「Xacti」(ネイビー) DMX-CG6(L) デジタルムービーカメラ「Xacti」(ネイビー) DMX-CG6(L)

三洋電機 2006-11-17
売り上げランキング : 14888

Amazonで詳しく見る by G-Tools

↑「デジタルムービーカメラ」とのこと。

Kodak デュアルレンズデジタルカメラ EasyShare V705-B (ブラック) Kodak デュアルレンズデジタルカメラ EasyShare V705-B (ブラック)

コダック 2006-12-14
売り上げランキング : 8009

Amazonで詳しく見る by G-Tools

↑用途別にレンズが2個ついてる。
なかなかの発想。

March 11, 2007

Portal

Portal というゲームを発見。
↓これ。

口ではうまく説明できない種類のゲームです。

March 8, 2007

読書: パチンコの経済学

今この本を読み中(p.88)。

パチンコの経済学 パチンコの経済学
佐藤 仁

東洋経済新報社 2007-03-02
売り上げランキング : 742

Amazonで詳しく見る by G-Tools

パチコン業界がどういう構造で、今どういった問題を抱えているのか、というようなことがわかりやすく説明されています。

パチンコ業界は総売上が約30兆円らしい。
でも、約1万5000店あるうちの半分近くが営業赤字らしい。

アメリカ人から見ると、パチンコはギャンブルとしてかなり特殊なものらしい。
アメリカ人曰く、「釘調整は犯罪行為だ」とのこと。
「行き過ぎたリーチ演出とその繰り返しは、ギャンブル依存症の温床となる」という意見も。

パチンコの歴史がなかなか興味深い。
なぜ名古屋がパチンコ発祥の地なのか、とか。

ちなみに僕はパチンコとかパチスロとかやりません。
ギャンブルそのものには興味はなくて、それにのめり込んでしまう人間の心理のほうに興味がありますね。

ギャンブルにのめり込んでしまう人っていうのは、人生がうまくいくかいかないかは運次第だと思ってたりするんじゃないかなぁ。
そういう人達は、いつか自分にも運がまわってくに違いないとか思ってそう。
ギャンブルには運と不運が凝縮されていて、良いときと悪いときのサイクルが速い。
だから、自分に運がまわってくるのをただひたすら待ち続けるタイプの人に最適なんだと思う。
「ほら来た。ようやく俺にもツキがまわってきたな。」というようなノリなんじゃないかな。
こういう人生観で生きてると、運がいい時期がデフォルトだと勘違いしちゃったりとかして、運が悪い時期にとことんへこまされそうなんだよなぁ。

やっぱりね、努力すれば必ず報われるとは思わないけど、努力しないことにはまず報われないですよ、人生。

話それた。

March 7, 2007

ロボットにブログを書かせる

ひらめいた。

ロボットにブログを書かせる、ってどうでしょう?

ロボットは毎日膨大な量のブログをクローリングして情報の収集と解析を行います。
その情報をもとにしてブログを書かせるのです。
いかにもロボットらしく、感情を込めず淡々と事実を書き綴っていくというようなのが良いかもしれません。

「○○さんのブログが炎上中です。現在、千件以上のコメントが寄せられており、90%がネガティブな内容となっています。炎上にいたった経緯は…」
「今週は Java の人気が 3% ダウン。Ruby の人気は 5% アップとなっています。…」

みたいな。

Googleニュースのブログ版みないな感じのものを作っても面白いかも。
はてなブックマークとは一線を画すようなね。
すでに似たようなのありそうだな。

しかし mixi 等の SNS のデータを取り込めないってのがアレだなぁ。
あそこにはいろんな情報が詰まっているはず。

使う人にとってはユーザーインターフェイスが全て

最近、仕事が単調になってきた。
一時期よりも落ち着いてきたっていうのもあるけど、なんていうか、慣れちゃったんだろうね、環境に。
力を抜いて仕事をこなす方法を身につけてしまった。
惰性ね。
仕事は楽になったが、頭を使うことが少なくなってるので良くない。

単発でプログラムの調査依頼が舞い込んでくる。
JavaScript で入力文字のチェックを行ってるんだけど、いわゆるバリデーションってやつね、その仕様が記されたドキュメントが無いらしい。
なので、ソースを追ってどういうバリデーションをしているのかを突き止める必要があった。
ま、それはそれでいいんだけど、なんだか怪しい仕様がいくつかある。
つじつまを合わせるためだけの設計としか思えないものとか。
これ実際ユーザーが使ったら絶対おかしいと思うでしょ、とか言いたくなるようなものとか。
とりあえず必要な機能を実装するので精一杯で、ユーザーにとっての使いやすさとかにはあまり意識がいかなかったんだと思う。

(以下、想像ベース)

ユーザーが一番意識するのはユーザーインターフェイスだと思う。
ユーザーインターフェイスを頼りにしてしかシステムをイメージできないだろうから。
ユーザーはプログラムなんて知らないしね。

で、プログラマが一番意識しないのがユーザーインターフェイスだと思う。
プログラマはシステムの中身を知ってて、主にそっちの方に興味がるから。
中身を知ってるとシステムがどう動くのかだいたいイメージできてしまうので、それを操作するためのユーザーインターフェイスなんてなんでも良いと思ってしまうのかも。

ユーザーインターフェイスは重要だと思います。
使う人にとってはユーザーインターフェイスが全てなので。

(もうちょっとうまくまとめて文章書かないとだめだなぁ)