■結論
世の中には本当のことをちゃんと言った方が良いのに言わないことがある。
Webアプリケーションを作って動かそうとした場合、どのような環境が良いのか?
この問いに対しては、現場で対応している人にとっては常識、当たり前のことなのかもしれないが、一般の人にはわからない。
Webの世界ではサーバーはLinuxを用いるのがスタンダードである。Windowsサーバーを使っていることはほとんど聞かない。
となるとLinuxの環境を用意して実行しなければ、最終的にちゃんと動くのかどうかがわからない。
だが、そうした環境を整えるにはレンタルサーバーを借りるといった費用がかかることもあり、本やスクールのカリキュラムでは推奨されない。
お金をかけずにやるならば、自分のパソコンにその環境を作りだすことだが、これは初心者にはハードルが高い。
本来はそうしたことも含めて理解し学ばないといけないのだが、挫折しては意味がないので正面から取り上げることは少ない。
よくよく考えてみるとそうしたことも結局はどこかでそのハードルを乗り越えなくてはいけないのだから、最初からやるべきこととして取り上げるべきではないだろうか。
■ツイート内容
Webアプリケーションの世界ではLinuxが中心だ。
なのでWebアプリケーションを作るのであればLinuxのことを学ばないといけないはずなのだが、まず最初にそういったことを言う本やカリキュラムはない。
Windowsでもこうすればできる、とかMacでもこうすればできるというが、そもそも根本が違う。
最初からLinuxのサーバー環境上でWebアプリケーションを動かす環境を作るというように説明してあげた方が親切なのではないだろうか。
今後はコンテナでDockerやKubernetesが中心的な環境としてスタンダードになるであろうから、余計にLinuxのことを理解しておかないといけないはず。
■根拠
そもそも普段私たちが使っているパソコンの世界とWebアプリケーションが動く世界ではまったくことなっている。
その前提を無視して、Linux上で動くアプリケーションのプログラミング言語を一生懸命教えても片手落ちになるのはわかっているはずだ。
だが敢えてそこには深く入り込まないようにしている。
こうしたことはかえってこれからプログラミングを学ぼうとしている人を混乱させてしまうのではないだろうか。
ちゃんと整理し、整合性を取って説明してあげることが親切だと思う。