Контекст: Turbo — это как htmx, т.е. с идеей передачи html между бэкендом и фронтендом и управлением состоянием на бэкенде, но от создателя Basecamp (сервиса менеджмента проектов), HEY (email-сервиса) и фреймворка Ruby on Rails. — прим. перевод. По общему мнению, TypeScript стал большим успехом для Microsoft. Я видел множество сияющих от радости людей, напичкавших JavaScript типами, которые могут быть проверены компилятором. Но я никогда не был его поклонником. Ни через пять минут размышлений, ни через пять лет. Поэтому я с большим удовольствием могу сообщить, что мы отказываемся от TypeScript в следующем большом выпуске Turbo 8. Дело в том, что на самом деле мне очень нравится JavaScript. Я бы даже сказал, что это мой второй любимый язык после Ruby. Да, с большим отрывом, но всё же второй. Хотя так было не всегда. Но после того, как в JavaScript появились полноценные классы, а также все остальные улучшения после ES6, писать на нём стало по-настоящему приятно. Я по-прежнему не считаю, что JavaScript хорошо подходит для большинства задач в серверной части «уравнения» веб-приложений, но вполне уважаю и ценю то, что другие считают по-другому. На мой взгляд, это просто наше счастье, что сейчас у нас есть такой способный JavaScript, который браузеры могут интерпретировать без всякой необходимости в компиляторе. Для меня TypeScript только мешает этому. Не только потому, что он требует явного шага компиляции, но и потому, что он загрязняет код гимнастикой с типами, которая добавляет мне мало радости при разработке, а зачастую и много огорчений. То, что должно быть просто, становится сложно, а то, что сложно, становится any. Нет, спасибо! Однако это не призыв переубедить кого-либо в чём-либо. Как я уже говорил в статье «Типы и образы мышления в программировании», очень немногие программисты обычно заинтересованы в том, чтобы их мнение о типизации изменилось. Большинство программистов в самом начале своей карьеры обнаруживают, что их либо сильно тянет к типизации, либо не очень, а затем проводят остаток карьеры, рационализируя "правильный выбор" для себя и других. В этом и состоит магия дихотомии JavaScript и TypeScript, и надо отдать должное разработчикам TypeScript за то, что они поняли: JavaScript не уйдёт, поэтому полная совместимость должна быть заложена с самого начала. То, что в Turbo 8 отказались от TypeScript, не означает, что вы не можете писать на нём свой клиентский код или использовать любую другую библиотеку, в которой он используется. Мы можем смешивать и сочетать, и это замечательно. Это также необходимо. Потому что в отличие от таких языков, как Ruby, которые являются языками по выбору, когда речь идёт о серверной части, JavaScript — это язык необходимости (если не учитывать WebAssembly, прим. перевод.), когда речь идёт о клиентской части. Хотя вы можете компилировать его используя различные диалекты (TypeScript, Elm, ClojureScript, ReScript, и т.д., прим. перевод.), вам всё равно придётся признать тот факт, что выполнение кода в браузере означает выполнение JavaScript. Поэтому возможность писать на нём, не прибегая к дополнительным инструментам и не используя сильную типизацию, является благословением в сложившихся обстоятельствах. Что же, прощай, TypeScript. Пусть ты принесешь много строгости и удовлетворения своему племени, позволяя остальным наслаждаться JavaScript в том славном духе, в котором он был изначально задуман: Свободным от сильной (строгой) типизации. Можно о типизации думать разное, но хотя бы файлики .d.ts с описанием типов, или же аннотации JSDoc можно было бы внедрить — чтобы облегчить ношу пользователей библиотеки и, тем более, контрибьюторов в неё. А уж зачем было выкидывать Prettier (инструмент для авто-форматирования), непонятно :) В дополнение к переводу написал пост. Подписывайтесь там и тут, если ещё не. Впереди много полезного контента: как переводов, так и самостоятельных статей.  …я знаю как его найти, этот ответ, и я его найду.