Skip to content

Latest commit

 

History

History
31 lines (16 loc) · 4.12 KB

Motivation.md

File metadata and controls

31 lines (16 loc) · 4.12 KB

モチベーション

Netscape CommunicationsとMicrosoftが泥まみれの小競り合いの果てにDOMの全コントロールを開放してしまったとき、あなたたちはその意味をもっと真剣に考えるべきだった。

Webアプリケーションのソースコードはいまだに純然たるカオスである。それは、前述の彼らが産み落とした母なるブラウザの途方もない包容力の証左でもある。

しかし、したり顔のWebデザイナーが開発現場に足を踏み入れ、たった数行のコードで爽やかに画面を崩壊させていくのにはもう我慢がならない。思うにHTML/CSSというマークアップ言語自体の表現力はとうに限界を迎えているのだ。

誤解のないようにしておきたいが、私はデザイナーを心底リスペクトしている。彼らの成果物がなければ私のコードに価値を感じていただける顧客などいなくなってしまうに違いない。だからこそ、彼らからはその成果物の本質=デザインそのものをいただきたいのだ。開発現場にご足労いただく必要など全くないのである。

そして我々プログラマの手元にはJavaScriptがある。いまやこの言語でコントロールできないWebリソースなど存在しない。JavaScriptだけを挟んで、デザイナーととともに、顧客と未来の話をしよう。

クライアントフレームワークについて

我々プログラマにも責任がある。デザイナーを開発現場に招き入れ、これからの時代あなた方の仕事はコーディングでもあるのだとうそぶきながらPCとエディタを渡して、スペシャルティコーヒーを飲みに出かけてしまったのだから。

一服が終わるとそこにはキメラが横たわっていた。React, Angular, Sass...。彼らはあろうことかマークアップ言語の方をいたずらに拡張し、ある意味で宣言型言語として完成の域にあったその純粋性をかなぐり捨てて、覚えたての制御構文を組み込めるように変えていった。

もうプログラマの助力は必要ない。Webデザイナーの力だけで顧客の未来を切り開くことができるというわけだ。そうですか、わかりました。とだけ言い残して至高のスペシャルティコーヒーを探しにルワンダに旅立とうとしていたとき、キメラが暴れ始める。

ぶよぶよにのび切ったコード、トランスパイラが吐き出すひどい味付けのスパゲッティ。我々は開発現場に呼び戻される。

AltJSについて

確かにJavaScriptに時折加齢臭を感じるのは否めない。だからGitHubに燦然と煌めくAltJSプロジェクトたちの取組みは理解できるし、他プラットフォームの既存言語を移植していく作業の執拗さにも心底頭が下がる。

しかし結局、ブラウザに展開されるのはあなたの書いた理想世界の仮想言語などではなく、Pure JavaScriptなのだ。それに、私が特に我慢ならないのは、それが自らの手によって書かれたコードではなく、トランスパイラによってぐちゃぐちゃに蹂躙されたコードであるということだ。

純粋関数型言語の純血性に憧れる気持ちはわかる。それらはベッドルームでイデアリスティックなアルゴリズムをこねくり回すのには適しているのだが、顧客から要求されるコードというのは大抵の場合けたたましいI/Oを伴うコードである。苦し紛れにわずかばかりのコードをイデアに献上したところで、品質への寄与など高が知れているとは思わないか。

静的型付け、純粋関数、それらは単に自分や仲間の思考を縛り上げているだけのようにしか見えないが、一方で圏論からのフィードバックは非常に興味深い。ただしその高みへはPure JavaScriptだけでも這い上がることはできると思うのだが。