初心者こそXHTMLを

XHTMLというと、昔はどちらかと言うと上級者向けという印象を持っていたのだけれど、実は初めてHTMLに触れる人こそがXHTMLに相応しいのではないかと最近感じる様になった。幾つかのWeb支援サイトがそうであるように、入門コースはXHTMLで教えるべきだ。
HTMLは難しい。何故ならばルーズな書式が許されるからである。絵の心得の無い人に真っ白なキャンバスを手渡して放り出すように、制限に余裕を持たせる事は時に当惑と混乱を与える。つまりは中途半端に省略が出来るため、又は省略を強制されるために難しくなる。
「このタグは省略が許されないけど、これはOK。これは終了タグを書いては駄目」と教える事がいかに不毛な事だろうか。あるいは、「英数字は括らなくても良い。 "-" や ":" は括らなくても構わないけど "+" や ";" は駄目」というルールの理由を説明するのはいかに難解だろうか。
「開始タグと終了タグは必ず対で用いる。ただし内容を持たない空要素は特殊な省略形で書ける」と説明した方が余程単純で教えやすい。「全てのタグ名・属性名は小文字で書き、属性値は全て引用符で括る」と説明した方が、余程混乱は少ない。
初心者がぶつかる「壁」の原因の一つとして「例外」がある。もし全ての英単語の過去形が "ed" を付けるだけだとしたら、1日で過去形の授業は終了するだろう。実際多くの例外があるために、中学生はより多くの時間を割いて不規則動詞を獲得しなければならない。同様に全てのタグの書式を暗記するようになる為には、多くの時間が必要だろう。それは複数の固有属性を持つ要素ほどより一層獲得に手間がかかる。
全てが統一されたフォーマットであれば、習得はとても簡単だ。新しいものが次々と現れたとしても、「型」にはめる事で素直に取り入れる事が出来る。XHTML 1.xはそういう意味ではHTML 4.01より優れている。そしてXHTML 2.0はそれ以上だ。XHTML2は殆どの属性を共通属性として、出来うる限り固有属性を少なくしている。そして視覚的効果の高いものを減らし、あくまで論理的な概念のみしか表現しない。プレゼンテーションは、CSSでやればいい。CSSという一つの枠に当てはめる事で、補助的な視覚的効果すら特別な事とは思わなくなる。
実際、構造と見出しと段落とハイパーリンクで充分だ。それを一通り取得した後に、リストや強調を一つずつ「型」を通しながら覚えていけば良い。何も難しい事は無い。おそらく基本は1日で学習できるだろう。
問題はCSSを登場させるタイミングである。全く別の文法をいきなり持ちこむのは混乱を招く。だからと言ってずっと後回しにするならば、学習者は痺れを切らすに違いない。彼らはWeb研究者になりたいのではない。Webで何かを表現したいだけなのだ。あまりそれが遅いのならば、不確かな情報源から物理マークアップという答えを導き出すだろう。
『XHTML1.0 + CSS1』 ― 現状では、これが恐らく入門としての最善の選択に違いない。
これらの事を考慮した上で、私はHTML入門講座を大幅に書きなおすことにした。つまりはルールばかりを羅列して、さっぱりその理由を解説していない事に気付いたのだ。はじめに教えるのは最小限のルールのみに留め、もっと積極的な入門講座が作れるように努力したいと思う。