Hoje pela manhã eu li o TechCrunch anunciar que ouviu de algumas “fontes” – acho muita frescura isso de “fontes anônimas” em casos tão ignóbeis – que o Twitter iria “trocar” sua infraestrutura em Rails por outra coisa, novamente, porque Rails não escala. A mídia marrom adora controvérsias, claro.
Mais uma vez, as macacas de auditório ficaram alvoraçadas, deram chilique, o de sempre. Poucas horas depois o Evan Williams twitou que isso não existe. Demorou algumas horas para o TechCrunch se retratar, mas em vez disso eles apenas disseram algo do tipo: “bom, acabamos de saber que isso não é verdade, mas nunca se sabe, pode ser que eles voltem atrás e aí eu estarei certo.” Duh.
Enfim, total perda de tempo – como toda controvérsia como essa – que só serviu para demonstrar algumas coisas óbvias. Primeiro, a equipe do Twitter me parece incompetente. Parece que eles tem mais gente pensando em marketing do que em tecnologia, e nenhum pensando comercialmente (já que até agora eu não imagino como eles pretendem capitalizar em cima de algo que não dá retorno nenhum como o Twitter). Toda vez que eles falam, é com o único intuito de atrair muita atenção para si mesmos a despeito de todo o resto. Também não tem respeito pela comunidade que os suporta, e cospem no prato que comem. Nada disso indica pessoas que devam ter credibilidade, por mais infeliz que isso seja.
Segunda coisa óbvia: escalabilidade é um mito. Qualquer coisa escala. O problema não é “se escala”, mas “como escala”. A maioria dos problemas de escalabilidade sequer tem a ver com o framework em si. Banco de dados não escalar não é problema se a aplicação é feita em C ou em Python. Esse tipo de discussão é muito estúpida, e mais idiota ainda aquele que responde com a típica resposta newbie: “troca pra Django que escala” ou “troca pra J2EE que escala” ou qualquer variação como essa.
John Udell já falou sobre isso em 2004, que foi a época quando o Friendster trocou de J2EE para PHP, conseguiram mais “performance”. Recomendo ler o artigo do Udell para ver como as pessoas tem memória curta e se esquecem da História.
Se você ainda é do tipo que leva esse tipo de chilique em consideração, é melhor que deixe Rails de uma vez. Procure Assembler, garanto que terá muito mais performance. Acha isso radical? Steve Gibson, da GRC vende um e-Commerce inteiro escrito por ele mesmo em Assembler. E se você não for do calibre de um Steve Gibson, cut the crap and get lost!