けいたん初勝利2007年04月19日 11時07分35秒

めでたう。カノー、ないすばっくとすwwww

HTML方面雑記2007年04月19日 14時11分19秒

Web デザイン方面って、相変わらず活発なのね。とか意味も無く思った。いや、最先端で仕様切ってる連中が活発だとは微塵にも思わないわけだけれども。

技術的関心への興奮ってのは、自分が果たそうと思っていた目的が果たせる可能性、それも見通しに近いかなり確実性の高い可能性を見つけたときに沸き起こるものだと、個人的には思う。あるいは新たな目的を思いつくきっかけを与えてくれるような技術にも興奮するね。それが例え、VFW (Video for Windows ... Windows 上で AVI ファイルを扱うための SDK 。Web の話なのに Web とはまったく関係ないですね ^_^;) みたいな古臭い、枯れきった技術であったとしても、「あ、こんなのあるんだ。こいつは使えそう。」って思えた瞬間ってのは、ものすごくコーフンする。そういうもんだと思う。

イマドキの HTML に対して、徳保さんもおいらもちっともコーフンできないのは、ある程度致し方無いことだと思う。僕らにとって、HTML は新しい何らかの目的をかなえてくれるための技術ではなくなってしまった。どちらかといえば、すでにそこにあって、日常使われていて、現在進行形で最低限の目的というか要件を満たしてくれる、それなりに現実的な解としての「ツール」に過ぎない。それは、普段当たり前のように何も意識せず、テレビや、洗濯機や、冷蔵庫や、電車などなどを使っている人が、それらに対して抱く感情と同じだ。近代的な電化製品や乗り物などに限らず、たとえば普段着ている衣服や、紙やボールペン、家を支える鉄骨なんかでもいいし、道路を塗り固めるアスファルトどころか、そもそも「道」という概念そのものであってもかまわない。これらが無い世界なんて考えられないけれども、だからといってたいていの人は、これらのすでに便利に使われているものに対して、何らかの創造的な関心を抱くことは少ないのではないかと思う。

もちろん、普通よりも幾分か、これらのうちのどれかに対して強い関心を抱く人がいるのと同じように、HTML に対して強い関心を抱く人がいるのは、社会的に見てもとてもよいことではある。そういう人が、その道筋の延長で、より良い方法論やロジックや素材を生み出し、社会へと貢献することになるのだろう。さらにはそうして作られてゆく道具の、より良い活用のしかたを生み出すことにも価値がある。

しかし中には、何らかの目的のために技術を伸ばし、あるいは活用しようと考えるのとは逆に、ただ、技術的にリッチになることや、あるいは技術を使用する際に心がける自らの心情に、より適合するような技術的提案に対して、むやみに興奮してみせる技術者もどきが多くいることも、確かであるように思う(人はそのような人種のことを、「おたく」などと呼んだりする。)。それはそれで悪いことではないんだが、一方で、目的が見えない人間との会話や行動は、時として、身震いするような気持ち悪さや怖さを覚えることがある。何をしでかすか分からないし、何を評価して欲しいのかも分からないし、何が気に入らないのかも分からないし。

なんでこんなことを書くのかというと、そこにはおいらを戸惑わせる類の質問が書かれていたからだ。もちろんそれは表現としては単なる一例に過ぎないのだが、

4. W3CとWHATWG、どちらに期待してますか?

それでもこの質問はおいらにとってはまだまだ親切なほうである。ていうか、この質問だったらおいらも回答できる。「どっちにも特に何も期待していないし、WHATWG なんて今初めて見た単語です。なんすかそれ?」ってな具合に。

ソフトウェア方面の技術に明るい企業にそっち方面での採用を期待して面談に応じると、決まって出てくるのが、これをさらにぼやかしたような類の質問だ。曰く、

「今、最も未来を感じる、という意味で注目されている技術があれば、教えてください。」

というもの。知らんよ、そんなの。技術は未来のためにあるんじゃない、今、やりたいことを、やらなきゃならないことを実現するために、作ったり、作られたりするものなんじゃないのか? と。もちろん、概要は明るみにされているものの、正確な仕様が切られていなかったり、実装中だったりする技術もある。そういうものに対して、おおむねどっち方面でアンテナを張っているのか、という部分を知りたい、というのは実は分かる。分かるのだが、実際のところ、将来使えるようになるであろうけれども、今はまだ使えないよ (あるいは正式リリースはまだずっと先だよ) というような技術に期待しろといわれても、できる事は妄想を膨らませることぐらいで、今、作りたいものを作ることに関連付けて期待できるような物事ではない。そしておいらは、今、作っているもののことで頭がいっぱいで、それより先のことにまで頭が回らんのである。

今、ひたすら技術を漁って、その技術の素晴らしさに一喜一憂するばかりの諸君。漁ってるばっかりじゃなくて、何か作ってみては? と常々思う。何か作り始めて、それに没頭するようになってしまったら、きっともう、新しい技術どころの話ではなくなるんではないかな? おいらは技術を追うことの楽しみよりも、作ることの楽しみのほうが何倍も上だと思ってる。

まぁ、まともに公開できているものがほとんどないおいらが今こうして言ってみても、じぇんじぇん説得力無いのですが。。。

んで、HTML である。タイトルのとおり、上記でリンクした一連の記事を見ていて、おいら自身知らんかった事柄や思ったことなどを雑記というかメモするのがこのエントリーの目的である。前置き長すぎ>ヲレwwwwww

使っているツールについて

Dreamweaver がどういうものなのかをおいらは知らない。Web デザイナじゃないしね>ヲレ。知っていると仕事上有利だったりするようで、そっち方面の仕事で必須スキルに Dreamweaver を入れている会社も少なくない。兄貴はスクール通ってたから使えるはずだよな、確か。

で、おいらはへてむるクリエイタ~なんてものを使ってたりするわけなんだけれども (Perl も Javascript もこいつで書いてるw)、そうか誰もおらんか。。。TeraPad はちょっとしたテキスト作業に使うことが多い。Firebug はおいらも愛用している。

驚いたのは HTML-lint の利用者が多いことと、それに対して Rusica さんも予想通りとしていること。おいらも HTML 4.01 が主流になりつつあったころに、strict な文書構造に慣れるために Another HTML-lint を利用していたことはあったけれども、慣れてきたらもうすっかり使わなくなってしまった。HTML の文書構造に慣れることができない人がそれだけ多いということなのか、あるいは儀礼的に HTML-lint を通すことがアタリマエになっちゃっているだけなのか。lint 通して 100 点じゃないと安心できない病? イマドキ lint マークを嬉しがってサイトに貼っつける人ってのも珍しいものだと思っていたんだが。。。

DTD っつか規格について

徳保さんと同意見で、普段は大抵 HTML 4.01 strict を使ってる。XHTML も 1.0 ならわかるけど 1.1 はよー知らんという有様。つか、Math-ML とか SVG とか使うにはそれ用の DTD 使わないとあかんのね。XHTML 1.1 にすでに含まれているもんだと思ってた (←無知すぎw)。

この辺についても、必要になれば押さえてみようかなぐらいの姿勢だからなぁ。。。いずれ CMS は作りたいし (どういうものかはひみちゅ)、そうなれば XHTML 1.1 もある程度はさらってみる必要も出てくるとは思うけど。

それから、ISO-HTML は知らんかった。Rusica さんもお気に入りのようだったので、とりあえず日本語で解説してるサイトをぐぐってみたんだけれども、

ISO/IEC が定めた規格だってのは分かったんだが、HTML 4.01 などとの相違点とか、肝心なところがよーわからんかった。何ができて、何ができなくて、どういう部分にメリットがあるのかが簡潔に記された文書はないのか? つか、特に後者のサイトは文体とか雰囲気とかがどうにも好きになれん。

まぁ、知りたきゃ自分で本を買え (あるいは仕様を読め)、ってことなんだろうけんども。。。

WHATWG ってなんぞや?

これもぐぐってみた。このトップページもなんだか、微妙に人を寄せ付け難い雰囲気を醸し出しているな。つか、なんで spec がそんな下の方にあるんだよ。みんなが見たいのってそれなんじゃないの?

まぁ、いきなり Web Applications 1.0 の仕様を読み下すのも気が滅入るので、日本語で概要を解説してくれている IBM の記事にざっと目を通してみた。

なるほど、カレンダーやアドレス帳がフォームのコントロールとして追加されるのはいいね。DOM イベントのサーバーとの連携も、都度 XMLHttpRequest オブジェクト生成してうんぬんかんぬん、っていう手間を考えれば、その辺いろいろと楽できるのは助かる (何らかの脆弱性につながる可能性が無いかどうかは若干心配だけど、とりあえずその辺は仕様をちゃんと読んでから考えてみることにしようかな)。Web Forms 2.0 で提供される細かい機能も、現状 JavaScript でアドホックに実装していてそのまま定番化しちゃったものがほとんどで、こういうのが JavaScript 抜きで扱えるってのは良いことだと思う。

Canvas は、もうこれは完全に JavaScript プログラマーのための仕様だね。HTML にせよ SVG にせよ、描画を更新するにはタグを切り貼りするようなプログラミングになっていたのが、デバイスコンテキストとして扱えるようになり、普通にメソッドを、座標値などを引数に渡して呼び出すことで、描画ができるってわけだ。タグ操作じゃない分オーバーヘッドもある程度緩和されるだろうし、結果的に描画速度がそれなりに高いようであれば、これは Java アプレットを駆逐する存在ぐらいにはなると思う。Java はますますサーバーサイドへと引っ込んでいくことになるわけだ。もっともこの恩恵は、一部のプログラマーと Web サイト利用者にもたらされるものであって、HTML を書くだけの一般的なサイト管理者や Web デザイナーが喜んで使うものなのかどうかは微妙。。。少なくとも徳保さんが喜んで使う機能ではないなw。

Firefox ではすでに実装されているようだから、暇があったら遊んでみるかも>Canvas (こんな風に書いて、実際に「試して」みた試しがない。理由はすでに書いた通り。。。)。さすがにこれでぼえぼえ~を作り直そうとは思わんけどw

id case 問題について

へー。ていうか、拙作 annopop.js もこの問題にやさしくないなぁ (^_^; 。まぁいいか、動いてるし。w