虚木零児の仮説置き場

虚木零児が他人の行動に仮説を立てるブログ

心まで老害になるな

虚木零児です。

前回の続き……というか、それを踏まえての持論。

rageutsurogi.hatenablog.com

大筋としては「日本社会のITスキルが低いのだとすれば、25年も前のカビ生えた実績をいつまでも有難がってるヤツの所為だぞ」という話をしながら、思い出話をしたものです。あと阿部寛がかっこいいという話もした。

なお、読み返していて気付いたのですが、阿部寛はFrame*1タグは使っていないので、時代遅れの老兵どもとは違います。前回の記事ではそのへん曖昧なので、勘違いしている人がいるかも知れませんが、その点ははっきりさせておきます。この調子で非推奨タグもなくして、より格好良くなってほしい。そうなると、僕なんぞ直視できなくなってしまうかもな。

――そういう話をしたいのではなく、今回のお話は理論と手続きについてです。

理論を覚えている人と手続きを覚えているヤツがいる

僕のいう手続きは以下でいうところの1の意味に近くて、物事を行うのに必要な手順。手はずのことを言いたくて使っています。

dictionary.goo.ne.jp

でも、実際の世の中って手はず通りにやってればきれいに終わることばかりじゃなくて、当初想定と状況が変わっちゃって応じた判断が必要になったり、最悪対応策を考えたりする必要があるじゃないですか。そういう場合に頼りになるのが論理的思考であるとか、それが積み重なってできた理論だと思っています。

dictionary.goo.ne.jp

すべてを網羅するマニュアルなんてものは、そのオペレーションの中で発生するトラブルをカバーしていて、それに対する対処方法が確率されている――ぐらいの状況でしか起こり得ない。特に対人対応なんかを考えた場合、マニュアルどおりに行かないことも少なくない。世の中には想像を絶するアホや、運のない奴がいて、悲惨なことが起きるものなんですよ。

逆に理論が確立されていれば手順を起こすのは容易い。手順の根底にある理論がわかっていれば、手順書の一部を読み替えて自分のやりたいことにチューンするのも、そこまで難しい話じゃない。行動の意味がわかれば、今回は不要な部分がわかるし、必要な手順を差し込む場所も理解できる。

その理解は本当に正しいのか

で、何が言いたいかと言えば、前回ネタにしたITスキルって理論ですか? それとも手続きですか? っていう。正直、どれも手続きの話に見えるんですよね。

  • 君たちはリモートサーバにファイルをFTPでアップロードできる?
  • 君たちはHTMLというものを書いたことがある?
  • その、HTMLの中にCGIを設置したことがある?

うーん……デジタルネイティブならそっくり同じことを出来ないまでも、似たようなことは出来そうな気がするけどな。まあいいか。

FTP

FTP(File Transfer Protocol)自体はサーバ間でファイル転送を行うためのプロトコル。ただ、Unixコマンドにそのままズバリでファイル転送を行うコマンドがあるし、FFFTPってのが大昔から有名なのでそれのことを指しているのだと思います。逆に言えば、彼らの言うFTPプロトコルという可能性は限りなく低いんじゃないかな。

さて、前回もネタにした通り、ファイルの転送なんて「どこから」「どこへ」「何を」がわかれば十分な訳です。どこからの指定方法、どこへの指定方法、ファイルの指定方法は細かく見れば違うでしょうけども、理屈がわかればやりたいことは同じ、別にそのソフトがちゃんとFTPに基づいて転送さえしてくれれば何を使おうが一緒です。

厳密に言えば目的はリモート側のディレクトリにファイルを置くことなので、手段としてもプロトコルとしてもFTPである必要はありません。ナウなヤングの読者は(もうちょっとセキュアなプロトコルを使うべきでは……?)と思っているかも知れませんが、それは至って正しい。

まあ、我々みたいなアップデートのできていない老人の思い出話に出てくるワードが時代遅れなことは大目に見てください。なかったんですよ、セキュアなものが。いや、多分あったんだけど、パンピーには普及していなかったとかなんでしょうけども。

HTML

もちろん、HTML(HyperText Markup Language)も似たような話ですね。WEBページでの利用が有名ですけども、実際はそれぞれのコンテンツの意味や体裁何かをタグで挟んで管理するもので、ブラウザで開くとそれに基づいて表示される。前回、最近はゲームやアプリもHTMLを使っているものが多いですね。

当初は意味を表すタグとデザインを表現するタグの両方が混在していたんですが、途中からHTMLで意味づけを、デザインはCSSCascading Style Sheets)で行うべきって方向に修正をされ、タグは随時、非推奨とか廃止になっています。

僕がフォロワーの耳にタコができるほど言っている「Tableタグで配置を調整しようとするな」「Fontタグを使うな」「Frameやめろ」なんかはインターネット黎明期を過ぎたあたりから言われ続けている鉄板文句になります。CSSを使え!

CGI

最後のCGI(Common Gateway Interface)に至ってはWebサーバ上でユーザープログラムを作動させる仕組みの話ですが、ここではそれを利用した各種プログラムのことをCGIと呼んでいますね。多分、当時の流行だと訪問者カウンタとかをCGIって言ってました。細かいこと気にする人はムズムズしてくるんじゃねえかな。

正直、この辺りは真面目に触ったことなんかないので「説明文を読んで設置した」ってあやふやなことを言われてもわかんねえな。ってなモンだったんですが、何個か現存しているサイトを見たら「プログラムファイル」をおいて「ページから呼び出す」記述を入れるだけ。おそらく彼らが説明文と言っていたのは、サーバーによっては呼び出し設定を個別でいれる必要があったり、プログラムファイルは実行権限をつける必要があるよ、っていう話でした。

冷静に考えると、そうなるでしょうね。という感じ。

世の中には手続きが溢れてる

個人的に大きく分けて二種類の人間がいると思ってるんですよ。1つは長い手順を一字一句間違えずに覚えるタイプ。もう1つは全体の手続きは覚えてないけど、やりたいことの論理だけ覚えてて手続きに変換してやるタイプ。

僕の肌感覚で言うと「昔はHTMLで個人サイトを作って~」って話をするのは原則的に前者の傾向が強い。人間は機械じゃないんで、きれいにどちらかに挙動が分かれるということはないんですけど、あんまり理論の話をしない。

前者傾向の強い人は手順が確立されていて変わらないものが得意になります。ところが、強すぎると手順を表面的に覚えているので、取った行動の結果が理解できないので、イレギュラー対応に弱い。

逆に後者傾向の強い人間は論理から手順を起こす時間の分だけ時間がかかるけれども、結果、新しい状況から再度別の手順を構築するだけなので、イレギュラーへの対応もそれほど変わらない。根底にある理論がしっかりしていればね。

結局、知識がつくまでは後者のような動きはできないワケで、特にHTMLみたいな表現系は誰もが最初は人真似から入るだろうし、FTPのコマンドやCGIの呼び出しが間違っているとコンピュータは機能しません。作るだけで精一杯、動かすだけでやっと、慣れていない初学者に前者傾向が強いのは当たり前の事です。

初学者は。

別に初学者のまま、成長しないつもりならいいですよ。一生涯「言われた通りにやったのに、うまくいきませんでした」って平気で言い続けるなら。これって独り立ちはできていないワケじゃないですか。本当に何も知らない状況がママとお手々繋いでお買い物だとすると、手順書通りにやれますというのは「お使いメモを片手にお買い物」でしかない。お店から「ママ、人参が売り切れなんだ」って電話するしかないんじゃ、まだまだ半人前扱いするでしょうに。

これをスキルって言えちゃうのが本当に不思議で仕方ない。技能か? それが。

なるほど、触ったことのあるアプリや言語、環境の首をぶら下げて地位を誇示する人を見かけたのかも知れませんが、あれは自分で戦地を切り開ける戦士がやるから意味があるんですよ。彼らはこの武器であれば、分解して整備・修理と一通りできますよ。という意味で言っているのであって「ここ引けば弾が出るんでしょ? 知ってます」という話をしているのではありません。

彼らは数ある武器の中から目的に応じて必要なモノを選択できて、最高のソリューションをお届けできるんですよ。

翻ってあなたのやりたいこと、それは本当にそれはHTMLページを作って、WEBサーバーに置かないと実現出来ないことなんですか。別にサービス事業者を変えてやっていけるなら、別にそれに越したことはないですし、そうやって苦難を乗り越えてる彼らが我々よりもITスキルが低いと思い込むのは、持ってる説明書の数を誇る気持ちの所為なんじゃないですか。

そんな老害仕草してていいんですか。

おまけ

ここで正直な話をしておくと、キーワードに反応して定型文をぶつける僕の行動が論理的かと言われると別にそんなことはないし、ただのBot行動なので手続きだろという指摘は至極当然だと思っています。正しい。

*1:廃止