12 ポイント 投稿者 mastotron 2023-09-08 | 7件のコメント | WhatsAppで共有

Ruby on RailsやBasecampで知られる37signalsの共同創業者兼CTOであるDaniel Heinemeier Hanssonが、現在開発中のTurbo WebフレームワークでTypeScriptのサポートを削除すると明らかにしました。

主な理由として、型宣言がコードを汚染し、型を宣言してTSコンパイラが介在する一連のプロセスが楽しくなかった点を挙げています。

TypeScriptからJavaScriptへ移行したことは前例のない出来事であり、プログラマーコミュニティで大きな波紋を呼んでいます。

37signalsの製品である一方、外部からの貢献も受け付けるオープンソースプロジェクトであるにもかかわらず、外部コントリビューターとの十分なコミュニケーションなしにTypeScriptを削除するPRが提出され、2時間で電撃的にマージされた点も議論を呼んでいます。

7件のコメント

 
jgbossassa 2023-09-13

JavaScriptはprototypeベースの言語だから、その哲学を無視して、発展していくTypeScriptを排除しようとしているのではないかと……
https://medium.com/@limsungmook/…

 
bus710 2023-09-09

昨日に続いて、また少し煽り気味の投稿が上がってきましたね。
https://world.hey.com/dhh/…

 
sixmen 2023-09-08

誰なのか知らなかったのですが、RoRを作った人だと聞いて、TypeScriptを嫌っていても不思議ではないなとは思いました。
RoRを深く見たわけではありませんが、Open Class の概念を考えると、型とは相性がよくないと思うんですよね。

TypeScriptがメインの個人的な経験として、Java(Kotlin)でいちいち型クラスを作っていくのがものすごくもどかしかったのですが、あの人にとってはTypeScriptもそうだったのかな、くらいの感想です。

それでも、この一連の流れはどうしても納得できませんね

 
kuroneko 2023-09-08

うーん……PRが2件あるのを見ると、オープンソースプロジェクトとは言い難いレベルの決定ですね。
リポジトリの所有者が議論もなく決定し、既存のリポジトリで行われていたPR手順を無視してそのままマージしてしまったので……

あまり見栄えのいいものではありませんね。

十分な説得のプロセスがあったならともかく、オープンソースプロジェクトとしての信頼性を捨てる行為だと思います。
Turboの型に依存している他のプロジェクトの立場からすると、アップデートしたら一夜にしてすべての型が壊れてしまう問題が発生するわけですから。

 
joyfui 2023-09-08

https://devclass.com/2023/05/…
最近、SvelteがTypeScriptからJavaScript(+JSDoc)に移行したことがありましたね。

 
mastotron 2023-09-08

SvelteはJSDocの型チェック機能を使っていますが、それはTSに依存しているものなので、型安全性そのものを放棄したわけではありません。しかも型定義も提供していますし。TurboのようにJSDocもd.tsもなく、全部ゴミ箱に放り込んだのとは状況が違うように思います。

 
joyfui 2023-09-08

ああ、そうですね。ちょうどあのPRのリンクを見ても、関連する言及が多かったです。