みみずのブログ

趣味プログラミング、思考実験など…。

趣味プログラミング htmlとか初めてやってた時の違和感を思い出す

何年かまえに初めてhtml,cssなどを触った。
これが初めてのプログラミングだった。(html,cssはプログラミングとはいわないか…。)

勉強するうちにそれらがなんとなくはわかったが、「何か」が納得できなった。 そして、厄介なことにその「何か」をうまく言語化できなかった。

久しぶりに、それらを触った。すると、その違和感がなんとなくわかった。 その違和感はどうやら、構造化という側面から来ているらしい。
しかも、それは2種類ある。

  • 1 構造化の正当性
  • 2 構造化の先行

1 構造化の正当性

まずは、構造化の正当性について。こちらはまだ単純。ごく単純な例をだす。
htmlはh1やh2などの見出しタグによって文章が階層化される。

その階層化っていうシステムって本当に認識されやすいの?その理由は?という疑問。

見出しの場合はまだわかるが、marginやpaddingという概念,システムはイマイチピン来ない。

わかりやすいからその概念があるのではなく、その概念があるから「わかりやすい」ことになっている気がしてくる。
まあ、それはそれで真理なんやけど。

そこが違和感。

そこから先をまた掘り下げていきたい。 自分個人の「感覚」の問題であるのだろうか。 ぐぐっても簡単にはでてこないけれど、まあなんか納得できそうな答えがどこかにあるような気もする。

・歴史的、進化論的(認識されやすいものが淘汰されて残った) ・生物学的(人間の生物としての側面から)

という答え方なのかな。

2 構造化の先行

2つ目は、構造化の先行である。 これも見出しタグを例にする。

種類 例文
普通の文章 これは見出しです。
html方式 <h1>これは見出しです。</h1>

というような書き方になる。

注目すべきはhtmlの場合、時系列的に<h1>というタグを記載したのち、「これは見出しです。」と書く。 (物理的な時間問より、頭の中における処理の順番において)

つまり、内容を書く前に、すでに抽象化された形式が書かれるということである。
よって、頭の中で構造化、認識してのち、記載するという行動がある。

しかし、この方法ではなにか取りこぼしがありそうだというのが違和感である。

例えば、おもむろに鉛筆で紙を黒く塗るとき、それは認識よりも行動が先行している。
おもむろに塗られた黒い面があって、そこから認識がはじまるのである。

今では普通にそうやってプログラミングしているし、だいたい構造化されてるものなんてそんなもんだ、ということもわかるが改めて考えてみると腑に落ちない…。

まあ、でもこっちはプログラムに一般的な問題だし、なんか解決の方向性がちょっとわかりづらい。 ちょっとまた、かみ砕いてみよう。

今後

1、2つめの問いについてどんな答え方があるのかの分析。
特に二つ目。

今日はここまで。おしまい。 2017/1/16