Хех, добро пожаловать в Ruby. Я тоже работал в Java в некоторые прошлые годы, и я действительно любил Java в то время.
Теперь неправильно думать, что в Ruby отсутствует проверка типов. Он имеет как минимум столько же проверок типов, что и Java, просто типы могут изменяться, и поэтому проверки выполняются во время выполнения.
Плюс ко всему, вся эта шаблонная декларация об уничтожении на старых языках раздражает. Проверенное на практике приложение, которое не закончено вовремя, чтобы быть полезным, никому не приносит пользы. Программа с проверкой типов, слишком многословная для чтения, может устареть.
И если тип не проверяется при первом запуске вашей программы Ruby, он вполне может быть покрыт вашими тестами.
Но если вы не протестируете его, вы не поймете, работает ли он так или иначе, поэтому абстрактное знание того, что типы вызова метода соответствуют, не будет столь же полезным, как вы можете себе представить.
В любом случае Ruby хорошо себя зарекомендовал на этом этапе как язык. Будучи реальной платформой, у RoR есть некоторые проблемы с производительностью, как в скорости, так и в использовании памяти, но я не знаю ни одного проекта, жалующегося на динамическую типизацию и желающего, чтобы они ломали голову над получением RSI с некоторым старым многословным языком.