JavaScript ファーストインプレッション

ソーシャルボタンを表示する JavaScript - Life like a clown で初めて JavaScript でコードを書いたので,JavaScript について(半分くらい愚痴か).見当違いな部分もあるでしょうが,それはそれで.

まず,私は,ユーザとしては JavaScript は嫌いです.これは Ajax と言う言葉が流行って JavaScript が見直された 2005 年頃以降でも変わりませんでした.ちょっとマウスのポイントが当たっただけなのに Amazon 情報やら何やらがいきなりポップアップされるページ,いつまで経ってもくるくる回っているだけで何も表示されないページ,「続きを読む」をクリックしてもくるくる回った挙句「おや.何かエラーが発生しましたよ」と言うエラーを頻出させるページ,etc.何度も「いいから素直にページ遷移しろよ!」と言う憤りを経験しました.

JavaScript を見直させるきっかけを作った要因の一つである Google ですら,下記のようなものを作ってしまう所を見ながら,私の(ユーザとしての) JavaScript への嫌悪感は日々高まるばかりでした.

ただ,ページを作成する側から見ると確かに JavaScript は便利だと感じる部分があります.上記のソーシャルボタンでもそうですが,ヘッダ,フッタのように全てのページで同じ情報を表示させる必要がある場合は,その部分を JavaScript 辺りで一つのファイルで纏めてしまえば,共通の情報を修正した際の作業が楽になるなぁとか.この辺りの共通化は,例えば http://www7.ocn.ne.jp/~clown/old/database/status/st_name.xml のように,10年前は(個人的には)XML/XSL で対応していたのですが,これはこれで面倒な部分も多々あり流行りませんでした.

結局,この辺の問題は JavaScript 云々よりも,様々な便利なライブラリが公開されている事もあり,JavaScript を使うと自分が実現したいと妄想している事が割とすんなり実現できてしまうため,

  1. それを使用した結果,どういう事が発生するか(特に,Ajax などの方法で追加的な通信を行って何かを表示する場合)について深く考えずに乱用してしまう.
  2. JavaScript の事をまったく分かってない人でも,取りあえずサンプルをコピペして使ってしまう.その結果,何か表示的にまずい事が起こっても修正方法が分からないので放置してしまう.

辺りが原因なのだろうと言う気がしています.

しかし平均的に考えて、何の変哲もない個人ブログにJavascriptは必要ないものだ。素人がつくったタイマーは、いつもユーザーを憂鬱にする。素人がつくったAjaxサイトは、だいたいの場合IEFirefox以外を排除するもっともらしい理由を得るためにAjaxを使う(Dellが自社サイト上で「Netscape4.6以上で閲覧せよ」と警告することによって、やる気のなさを主張するようなものだ)。

我々が自分のブラウザ上でページを表示するとき、Javascriptによる意外な効果などまったく期待していない。UIにおいては最速こそ正義、というmala氏の言葉を引用するまでもなく、不必要に重いサイトはそれだけで忌避するに足る理由となる。流行を追って常識を忘れるのは愚かとしか言いようがない。

そろそろまたJavascriptオフの時代が来た

手元におもちゃを与えられてしまうと,(それを上手く自分で制御できないと分かっていても)どうしても使ってしまいたくなります.そのページをユーザが(頻繁に)見たた時にどう感じるかについては深く考えないまま「こんな事できたらカッコイイのではないか」みたいな思いつきに駆られて・・・.企業の Web ページの TOP などでよく見かける無駄な FLASH ページに近い状況とも言えます.

javascriptがrubyを駆逐する のような記事がありましたが,ブラウザが JavaScript 対応に力を入れているうちは,ページを作成する側としては JavaScript はどうしても無視できない存在になるだろうと思います.そんな訳で,上記に書いてきた愚痴と同じ轍を踏まないように,ある程度は JavaScript の事も理解しておかないとなぁと思いました.