2022-04-07

れ: node.js呪い

https://d.potato4d.me/entry/20220405-nodejs/

話題になっているけど、本来人類必要なのはクロスプラットフォームな実行環境であってNodeじゃない。

TS流行ったのはJSがクソだから。BabelしなきゃいけないのもJSトランスパイルしなきゃいけないからであって、必要なのはJVMCLRのような言語実行環境

Reactが流行ったのはshadow domだけど、必要なのはDOMじゃなくてちゃんとした「アプリ」開発用のイベントモデルレイアウトマネージャ含むGUI環境

フロント界隈の流行廃りって本質的改善ってよりもほかの良い技術いかブラウザ/Electron等JSエンジンという限られた環境に持ち込んで幸せになるかがメインに見えるので地獄に見える。

アプリ」書くのになんでドキュメント記述用のHTMLに今ものっかってんだよと。

MavenやらGemsができて依存管理楽になったとか、RailsがでたときのようなCoCいねとか開発の考え方を変えるフレームワーク、 rspec/Cucumberがでてテスト最高とか、c10kも怖くない非同期I/Oとか、好きな言語が使えるJVM/CLRそもサーバーならrustでもgoでも好きなものが動くとかとか本来の開発を楽にするという意味ブレークスルーってあんまりみられない気がしている。なんでフロント界隈の新技術ってあんまりわくわくしない。

逆にちゃんとしたクロスプラットフォーム実行環境ブラウザしかないということなんだけど、ブラウザなかなか進化しないし RIAApple 様が切り捨てるからなぁ。

ということですべてはブラウザが悪い。JavaScript 以外がちゃんと動くクロスプラットフォームGUI環境必要。でもプリインでモバイルでも動いてOSから独立して協調して作られていて、Webという既存の大量の資源アクセスやすものは現時点で実質ブラウザ一択。つまりWASM に期待。次にHTMLであるべき文書はともかくSPAなんてもう「アプリ」なんだからHTML手書き文化もうやめてネイティブアプリ並みの GUI 作成環境復権しよう。

するとクライアントでも好きな言語が使える。そして同じ言語がいいとサーバサイドで Node.js を使う必要もなくなりへっぽこプログラマが Node のイベントモデル理解せずに使うこともなくなる。

そしてそれらができたときに Node というか JS/HTML呪いから解放され人類平和が訪れるのだ。君はその後も Node.js を使っても良いし使わなくてもいい。

ま、私はそんなもの作れないのでありものでがんばりますがね。

記事への反応(ブックマークコメント)

ログイン ユーザー登録
ようこそ ゲスト さん