02
A (estúpida) controvérsia Twitter
on May 02, 2008
Resolvi interromper um pouco minhas férias para opinar sobre esse assunto.
Ano passado, o Alex Payne criou muita controvérsia ao ter a estupidez de soltar um “Rails não escala para nós”. Causou alvoroço, as macacas de auditório de tecnologias concorrentes deram o chilique de sempre (aliás, nem sei porque se consideram ´concorrentes´, já que deveríamos estar todos no mesmo time). E no fim o Alex passou por newbie, quando menos de 24 horas depois mais de uma alternativa para o problema dele foi apresentado. Mas ficou aquele meme no ar de que Rails talvez não escale. É a típica estratégia de marketing para chamar atenção. Puro FUD. Típico de time que está perdendo.
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!





Puta merda este papo de novo, cara isso enche o saco, nunca vi gente tão ignorante. Geralmente quem faz isso só quer chamar a atenção. Pra mim chega, prefiro ficar longe desta galera que não soma nada, e diga-se de passagem é o que mais tem.
Parabéns pelos seus post fábio! sempre trazendo os temas mais quentes da internet :)
também li esse troço do twitter, e achei uma besteira… discussão idiota que não leva a nada, ao invés de contribuir com a comunidade, soh geram flamewars e comentários bestas..
Abraço
Akita, o Steve Gibson não vende um sistema de e-Commerce feito em assembly.
O SpinRite (do link que você deu) é uma ferramenta de recuperação de dados em discos rígidos. A escolha do assembly nesse contexto faz todo sentido.
Abraços
Tudo isso ocorreu pq eles não viram o seu video sobre deployment! rss Discussões assim sempre aparecem na web. Melhor nem esquentar a cabeça com indivíduos assim.
@leandro, pra ser sincero pode ser que ele não venda mesmo, mas ele tem sim um ecommerce que ele mesmo fez em assembly. Ouvi isso da propria boca dele. O SpinRite é o produto mais famoso mas ele tem varios outros, sempre em assembler. Eu ouço o podcast dele desde o 1.o episódio
Cara, independente do framework, eu imagino que o Twitter deva ser um dos piores tipos de aplicações, em termos de custo: as com centenas de pequenas operações de escrita por segundo.
Discordo quando tú dizes que qualquer coisa escala… Escalabilidade tem haver com com custo-benefício também. PHP, de fato, não precisa de tanto hardware como o JAVA para Web. Portanto, dependendo das configurações disponíveis algumas tecnologias tendem a ser piores mesmo. E isso tem mais haver com a plataforma em si do que com frameworks, porém os frameworks podem ter sua parcela de culpa, embora essa, em geral, seja bem pequena.(Pra frameworks “bons”) Quanto à mudança de plataforma do twitter, realmente acho muito auê pra uma coisa dessas… Parece que é mais pra chamar atenção mesmo.
Pior é o Chris Sawyer, que programou Roller Coaster Tycoon I em assembly http://en.wikipedia.org/wiki/RollerCoaster_Tycoon_(game). http://www.chrissawyer.com/faq3.htm
Diga-se de passagem, excelente jogo.