TypeScript Origins: The Documentaryを観た

TypeScript Origins: The DocumentaryはTypeScriptの誕生に関わった関係者たちへのインタビューで構成されたドキュメンタリー動画。

www.youtube.com

製作元はOfferZenというアムステルダムの求人プラットームの会社で、以前にはSvelte OriginsLaravel Originsも公開している。

本作ではReact.js: The Documentaryの次世代フロントエンドフレームワーク開発競争と時期を同じくして起っていたAltJS戦争の中でどうTypeScriptが現在の地位を獲得していったのかに迫る。

laiso.hatenablog.com

私はTypeScriptについては片手間業務プログラマーという感じで全然詳しくないんですけど、TypeScript Originsのゆりかご からRemove TypeScriptの墓場まで(!)何かと当ブログでは縁がありますね。

laiso.hatenablog.com

あらすじ

動画はSteve Lucco、Luke Hoban(現PulumiCTO)へのインタビューからはじまる。ふたりはChakra Javascriptエンジンの開発者で*1、当時コードネームStradaと呼ばれていたTypeScriptプロジェクトはマイクロソフトの戦略的にはブラウザエンジン高速化→OfficeやVisual Studioなどの自社製品のブラウザアプリケーション化→より大規模で複雑なソースコードを管理できるようにする、という流れをくんで始まったものだという事実が明かされる。

この時点でなんか天才言語設計者のAnders HejlsbergがグッとガッツポーズしたらJavaScriptが改善したんでしょ、ぐらいの浅い理解だった自分には興味深かった。

Anders Hejlsbergが出てくるのはプロジェクトの方向性が言語設計の具体的になった次のフェーズで、先ずはC#など別の言語からトランスパイルするのか(CoffeeScript, Haxe, Script#, GWT)、別の言語とエンジンごと置き換えるのか(Dart)、様々な方法がある中で互換性を維持しつつJavaScriptそのものを改善するというアイデアを進めることにしたようだ(動画ではFlowの話も出てくr)。

舞台はこの後、Java界で著名なErich Gammaが出てきてVS Codeの初期開発を語ったり、当時OSS文化のなかったマイクロソフト内でAmanda Silverらがどう立ち回ってデベロッパーリレーションを確立したのか、GoogleのAngular開発者との連携、TC39との次期JavaScript仕様の標準化、などの話に入る(続きは本編をご覧ください)

(ハリウッド映画のようにカットインするAnders Hejlsberg)

感想

途中Anders HejlsbergがV8 JavaScriptエンジン開発者Lars Bak*2と「JavaScriptを直すべきか置き換えるべきか」という議論をしたという話が出てくる。

Larsは置き換えるという考えでDartVMをブラウザに乗せるべき開発を推進したが、結果は皆さんもご存じのとうり。

ただしDartはFlutterの中核として華麗にクロスプラットフォーム構築言語としてリバイバルしたので*3Dart側から見たドキュメンタリーもあったら面白そうだなぁと感じた。

それにしても2010年代はスマホブームに注目していて気付かなかったけど巨大資本主導によるOSSプロジェクトがどんどん躍進していったのですね—— と昨今のドキュメンタリー動画たちを観ていて思った。

*1:The Inner Workings of the Chakra Javascript Engine • Steve Lucco • GOTO 2012: https://www.youtube.com/watch?v=ouSoyWj_lSI

*2:Want to be a Better Programmer? • Lars Bak & Kasper Lund https://www.youtube.com/watch?v=P8ltWIqDPzo

*3:一度は挫折したDart言語が最近モバイル開発で右肩上がりに https://news.mynavi.jp/techplus/article/programinglanguageoftheworld-33/