Talvez por causa do surgimento de novos frameworks e linguagens, atualmente você não ouça muito mais esse tipo de comentário, mas se esteve na área por algum tempo certamente já ouvi falar que Rails é um framework cheio de “mágicas” e que isso é algo ruim.
Culpado! Eu mesmo já cheguei a reclamar e fazer inúmeras piadas sobre isso. A princípio, toda essa mágica pode parecer muito ruim para qualquer ser mortal como você e eu, mas não se deixe enganar, a mágica só existe para aqueles que não tentam compreende-la ou, melhor ainda, dominá-la.
Eu gostaria de desfazer essa fama e te mostrar que Rails, assim como qualquer outro framework, não passa de código (Ruby nesse caso).
Façamos o seguinte, navegue até o repositório do Rails. Gaste alguns minutos para desbravar os inúmeros diretórios e arquivos, ler os comentários, e a documentação. Se você for um verdadeiro nerd, vai preferir navegar pelos arquivos no seu editor predileto (vim) com bundle open.
Certamente, você encontrou um monte código Ruby, parabéns!
Dependendo do seu conhecimento de Ruby, banco de dados e outras coisas mais, pode ser que, a princípio, tudo pareça muito confuso ou até "mágico", mas confie em mim, tudo que você encontrou é apenas código.
Entender que Rails, assim como qualquer outro framework, é apenas código Ruby, é um dos primeiros passos para crescer como desenvolvedor, pois a partir do momento que você entende que não existe mágica e tudo se trata apenas de código, você se torna capaz de “fazer mágica também”.