見出し画像

(第6回)「プログラミングやりたくない!」〜下から目線のコーディング武者修行〜

「真っ黒画面」ことTerminal、自分はどこにハマったのか? これはおそらく

「やったことを省略せずに全部見せてくれるから」

じゃないかなーと。

HTMLとCSSの段階ではうっすらと感じ、JavaScriptでキョーレツに思ったのは、

「このプログラムが裏側で何をやっているのかわからない」

というモンダイ。

「JavaScriptはBrowser(Webページを見るためのアプリケーション)内で動作する」

というのは説明を聞いてわかってたんですが、じゃあ

「JavaScriptとBrowserの間でなにをやってるの?」

というのが気がかりだったみたいです。

よくよく考えたら、

原材料であるHTMLでは、「上の方に」CSSファイルへのリンクを貼って、「そっからCSSの中身を持ってきてね」と指定を出す。

で、入門書レベルだと、HTMLのずっと下の方にJavaScriptのコードを書いて、「HTMLとCSSをこんな風に加工してね」と指定してあげるーー

なーんで、HTML上ではCSSが「先」で、JavaScriptが「後」なんだろう?

煎じつめれば、こういう

理由はわからないが、なんかそうやっている

という書き方に納得してなかったみたい…

相当あとになって、Ilya Grigorikさんの名著 

“High Performance Browser Networking”(O’Reilly, 2013年)

を読み、やっと

それでCSSは先! JavaScriptは後なのか!

と納得できました。

*DOM(Document Object Mapping)という形式でBrowserがコードを読みとく際、「AとBが読み終わったら、はじめてCの手続きに進む」と決められてる由

*ブラウザが読み解く順番に合わせて、プラグラムも並べなきゃいけないのね、と

現代のBrowserは、どれも高度なアプリケーションなので、「中でなにをやってるか」は相当くわしくならないと読み解けない様子。

言われてみれば、音楽や動画の再生、ブラウザ上の通話、サービスからのNotificationも届くし、アレもコレも状態。

以前思い立ってFirefoxのむかーしのバージョンをダウンロード、コードの中身を確認してみようと思いましたが、その超膨大なファイル数にビックリ!

こりゃ目当てのファイルにたどり着くだけで100年かかるな…と、そっと「×」(Quit)を押したのでした…

じゃあ、それと「真っ黒画面」のTerminalはなにが違うの?というと

やったことをやったまんま見せてくれる

ので、

おかしいときは「ここがおかしいよ」と教えてくれる!

もちろん、JavaScriptさんもそうだとは思うんですが(^∇^)、そのためにええっとConsoleを開いて実行結果を見て… 文字が小さいなぁ、なんて。結果を見るのに何手間もかかってしまう。

一方の真っ黒画面さんは、書いたコードが通ると、

ザーッと実行結果がもれなく表示される!

これが快感で、病みつきになりました。

コーディング用のピコピコとしてUbuntuマシンを利用してますが、やはり命令文が通った時の快感は忘れられません。

あれで初めて

コンピュータって、実はこういうことをやってたのか

と分かった感触。

今までは「コンピュータに自分を合わせていた」けれども、真っ黒画面を使うと「コンピュータを自分で動かしている」実感があるというか。

そうしたピキーン!というハマった感じとともに、ニコやかなMardan先生についてNode.jsのコードを書いていくのですが、真っ黒画面でも結局

**なんなのこのピコピコ用語? **

という「専門用語+省略語」モンダイが再浮上…

結局、「正体不明の言葉」では丸暗記できない(しづらい)ので、これはまた独自の解決法を考えなくてはいけないーー

どんな用語が気になって、それをどんな方法で乗り越えたかについては、また次回に!

*気分転換に描いたパワプロの「ヤンスメガネ」こと「矢部くん」。特に意味はないっす( ´ ▽ ` )ノ

#プログラミング
#学習法

この記事が気に入ったらサポートをしてみませんか?