ビルドツールに対する違和感、結構持たれていた

それまで Qiita なんかを見るだけで過ごしていた自分が、今年 Gulp の勉強を始めようという時、Grunt ってのはどうもオワコンになりつつあるらしいな、ということで Gulp を選んだのだけど、最近は「npm run で大体やれるし package.json に書いておけばいいじゃん」な流れがあるっぽい。

確かに、Gulp や Grunt といったビルドツールは流行り廃りが早い割に、個々の学習コストが高いのだ。コマンドラインで browserify を呼ぶ時は幾つかのオプション指定でよかったものが、やれ vinyl-source-stream かませろだの plumber で失敗時の制御しろだの、watch は別に書かないといけないとか、なんだかめんどくさいのだ。大枠は同じ作りであるにしろ、プロジェクト毎に書き換えが必要な部分も出てきて管理が面倒臭い。

こういうフロントエンド開発のためのツールに初めて触れていたので、「面倒臭いけどこれがベターなものなのかなぁ」と思ってある程度勉強していたのだけど、いかんせん面倒臭い。

…という思いはどうやら世間的にも持たれているようで、「make と何が違うの」とか「シェルスクリプトでおk」とか言われていて、最終的に「npm run で全部動かせばいいじゃん」感もある。

フロントエンド覚えること多すぎ問題

以下の記事あたり。

気になった言葉を引用。意図的に前後の文脈無視。

  • フロントエンドは複雑化してると思ってるし、それは「目的の複雑化に対して必要なもの」だったと思っている
  • 採用例これだけ増えてて、用途に向かないって理由で採用しないのはわかるけど、知見ないから使えないですね〜って理由で落とす人みるとあ〜ってなる
  • フロントエンドを名乗るエンジニアの平均的な技術力が低いことは僕も認めるところではあるんだけど、これはJSが元々「サーバーサイドもしくはデザイナが片手間にやる」時代の変遷から仕方なくて
  • プログラミングが好きではない職業エンジニアが増えている
  • 英語の能力が高ければ、英語の文献や一次資料に触れる機会が増え、そこで得た知識を模倣することで、プログラミングにおける問題解決の再生産能力を高めることができる
  • 変化は良いかもしれないが無駄が多すぎる

何の設定も要らないビルドツールが夢なのは理解しているけど、

Web制作のフロントエンド界隈では、「考えている暇があるなら、四の五の言わずにやっちまえ!」方式みたいです。

この気が強すぎて、自分としては「もっと理屈や思想・哲学から入って欲しい…」と思ってしまう。

なんだか退化しているように思えるんですが、過去のビルドツールの使いにくさから考えると、「何も考えない」という割り切りも理解はできます。

gulpのウォッチは、やっぱり「知性を持たない」方法ですね。

各々が欲しいように書けばいいっていう自由度は魅力がある一方、車輪の再発明に近いことがあちこちで行われている感覚に違和感がある。

できることなら学習コストが低くて決まりきったことは書かなくてよくなる方法を取りたいじゃないの。