Simples deploy de aplicações Rails - quando isso será possível?

Em: 02/01/2008 Tags: PHP, Rails, Ruby Referencie do seu blog (Trackback)

O recente rant de Zed Shaw, o criador do Mongrel, está repercutindo muito pela comunidade Rails e Ruby. Zed conta como foi ignorado pelo Core Team do Rails e como foi desrespeitado por algumas empresas de software nos EUA e no Canadá. Ele também detona uma das principais consultorias Rails do mercado, a ThoughtWorks.

Um dos locais onde esse rant repercutiu foi no Ruby Inside. Em geral as pessoas têm dito que já viveram situações semelhantes àquelas que o Zed afirma ter vivido, mas dizem que isso não é nada de novo e que com outras comunidades (de outras linguagens e frameworks) isso não é diferente. Toda comunidade tem suas maçãs podres e devemos tentar nos afastar. Eu poderia destacar diversas passagens desse post, mas fico com uma que me pareceu a mais preocupante:

[…] Notice how it took me a few seconds to reply. This one single statement basically means that we all got duped. The main Rails application that DHH created required restarting ~400 times/day. That’s a production application that can’t stay up for more than 4 minutes on average.

Preciso dizer mais alguma coisa? Alguma coisa está muito errada. O DHH disse que sua aplicação não ficava mais de 4 minutos de pé em 2007.

Apenas para registrar, não concordo com a postura do Zed. Ele poderia ter dito tudo o que disse de outra forma, sem ser tão baixo com essas pessoas como ele afirma que elas o trataram.

Mas o que me levou a escrever este post foi o comentário, nesse mesmo post do Ruby Inside, de Peter Cooper, com o qual eu (sendo um programador PHP há alguns anos) concordo em gênero, número e grau. Ele diz:

One thing Zed’s rant also highlights is something I have mega issues over, and the reason I still use a lot of PHP code (such as WordPress) even though I can’t code PHP myself. It’s an absolute nightmare deploying Rails apps.

Alguém discorda? Aliás, alguém tem coragem de discordar? Isso não é uma opinião, é simplesmente um fato. Se você não tem a conta de root do servidor onde o deploy será feito é bem provável que você terá sérios problemas ao fazer deploy de sua aplicação Rails - e se você tiver a senha, então poderá encontrar diversos problemas relacionados a distribuição Linux desse servidor, pois nem todos rodam uma baseada em Debian (que, ao menos para mim, é a melhor opção hoje em dia para instalação e configuração de qualquer coisa relacionada a Ruby e Rails).

Mas o Paul Cooper continua:

I don’t get why some really clever so-and-so hasn’t come up with a mod_ruby that works in a somewhat similar fashion to mod_php. PHP as a language is no more “stable” than Ruby, but people perceive PHP as being more mature simply because you can upload a .php file and bam, it works. Not so with Ruby. You gotta know about daemons, proxying stuff around.. like.. WTF? If I didn’t have crap for brains, I’d probably start such a project, but I’m totally blown away that no-one is making moves in this direction already?

Preciso dizer mais alguma coisa? Todos falam mal do mod_ruby e parece que ninguém quer fazer nada a respeito, talvez porquê aproximaria o Ruby, ó perfeito Ruby, do tão odiado PHP. No fim das contas temos o mod_python, que até onde sei não tem grandes problemas, e o mod_php, que é simplesmente tão difundido entre os servidores Apache mundo afora que os programadores PHP, de fato, nunca precisaram pra pensar que o deploy de uma aplicação web poderia ser problemático.

Ao contrário do Paul Cooper, eu programo em PHP, e continuarei com ele enquanto o deploy de Ruby não for adequado. Mas eu sou otimista a esse respeito. Acho que o Ruby vai continuar crescendo, não apenas por conta do Rails, mas por todas as discussões que ele tem colocado na mesa (closures, bdd, dsl’s, metaprogramação etc.).

5 respostas para “Simples deploy de aplicações Rails - quando isso será possível?”

  1. Felipe disse:

    Muito bom Post Caio, já acompanho seu blog a algum tempo e só agora decidi sair do anonimato! abraços

  2. Caio Moritz disse:

    Valeu a força, Felipe! Espero que continue acompanhando os posts e continue comentando ;)

  3. Thânia Clair disse:

    Vamos esperar que a comunidade não seja ingênua o suficiente pra aceitar qualquer coisa que alguém de renome diga. Ele está muito certo em alguns pontos (dos que li), mas ele não precisa ser tão grosseiro, penso eu. Enfim..

  4. Raphael deAlmeida disse:

    Continuo também com PHP por causa da falta de maturidade do RoR. Apesar de ser uma linguagem/framework excelente, peca em alguns pontos que outras linguagens já resolveram (vide. mod_php), creio que seja questão de tempo até o RoR se consolidar.

  5. Caio Moritz disse:

    Que ele vai se consolidar, certamente vai, mas em que nível? Quero dizer, abaixo de PHP e Python, por exemplo? A comunidade Ruby parece acreditar que a melhoria de performance do próprio Ruby (com projetos como JRuby e outros) vai poder contribuir com a popularidade do Rails.

Escreva um comentário (utilize o formato Markdown)