Discourse уже безопасен с точки зрения памяти. Ruby — язык с безопасной памятью; все языки с автоматическим управлением памятью (сборкой мусора) таковы. Главное отличие от Rust в этом аспекте — момент выполнения проверок безопасности: Rust выполняет их на этапе компиляции, а Ruby — во время выполнения.
Rust решает лишь несколько классов ошибок, в основном тех, что вызваны отсутствием сборки мусора в C++. Безусловно, круто, что они нашли способ сделать это, сохранив теоретически возможные преимущества производительности при использовании указателей, но это никоим образом не предотвращает те виды ошибок, с которыми сталкивается пользователь. Например, если я использую < вместо <= и в результате получаю ошибку off-by-one, Rust меня не спасёт. Если я забуду вывести сообщение об успехе после завершения действия, Rust тоже не поможет.
Что на самом деле предотвращает ошибки, так это подход разработки, основанный на тестировании (TDD), который Discourse уже использует. Очень мало проектов, которые можно развернуть напрямую из ветки master и ожидать их стабильности, но Discourse — один из них.
«Современные платформы» появляются повсюду, используя JavaScript как для бэкенда, так и для фронтенда. Ruby занимает второе место после Rust по популярности (между ними находится Kotlin), так что в данный момент это отнюдь не редкий язык. Конечно, через 10 лет ситуация может измениться, но даже переписывание на Rust станет техническим долгом уже через 10 лет.
Трудно передать, насколько наивным является это утверждение, именно поэтому все смеются над этой идеей. Я наблюдаю, как мои разработчики рефакторят код уже 3 года, и только сейчас они готовы начать перенос с wxWidgets/ShuttleGUI на Qt/QML — что, для контекста, является миграцией с C++ на C++, просто с другим инструментарием пользовательского интерфейса. Просто трудно трансформировать код, одновременно гарантируя, что поведение останется идентичным. 12–16 дней — это, вероятно, время, которое потребуется только на планирование, прежде чем кто-либо приступит к работе.