最近どうもモチベーションがあがらないので、趣向を変えてNode.jsを書いてみた。

せっかくの三連休はやはりいつもどおりコードを書いている。 前回は前回でコードを書いていたのだが、デプロイをできないコードを延々書くのはそれはそれで大変だった。 デプロイを目的にすることを考えると、Node.jsは至って単純でよい。 ただのindex.jsから始めて、最後にExpressでインターフェースを作ればそれなりのコードになっている。

デプロイもKamalを使えば簡単だ。 以前はDocker Swarmを使っていたが、Rails以外でも個人規模のプロジェクトであればKamalで十分だと思う。

気づけばあっという間に時間が経っていた。私が求めていたのはこういう感覚である。 プログラミングはそのコードに集中できるときが最も幸せに感じられる。 別の言語になかなか着手できないのはこういったフローを感じられるまでにしばらく時間を要するからだろう。

ただJavaScriptにせよTypeScriptにせよ、簡単なのはいいことなのだが問題は秩序がなさすぎる。

コールバックを追えば処理は理解できるが、コールバックありきなのでRailsのようにクラスを定義するのにしばしばノイズが発生する。 最も理解しやすいのはRailsではデータベースの初期化のタイミングをあまり意識する必要はないようにデザインされている。 使用するORMに依存するかもしれないが、Sequelizeなどのようなものはデータベースの初期化をするタイミングを意識しないと正しくコードが動かない。

ESModuleやPythonではimportで必要なモジュールを明示できるのは理解しやすい一方、若干冗長にも感じてしまう。 そのため単一のインターフェースならばこれでよいのだが、やはり複数ならばRailsに歩があると感じる。 単純なCRUDのMVCを作るのであればやはりRailsが最も簡単だと感じる。