Somos uma experiente equipe de desenvolvimento de Ruby on Rails. Alguns de nós desenvolvemos Ruby há anos e sabemos disso como a palma da mão. É por isso que é preciso muita coragem para admitir que Ruby não está no seu melhor agora.
O idioma era muito popular em 2013-2015, mas depois diminuiu. Isso é especialmente perceptível quando comparamos as estatísticas de Ruby e Ruby on Rails para 2020 com o progresso feito por outras ferramentas. Stack Overflow fez uma comparação bastante trivial da dinâmica de crescimento de Ruby e Node.js com base no número de perguntas feitas. Sim, este não é o indicador mais objetivo, mas você entendeu ...

Os usuários de Ruby caíram, mas isso é o suficiente para anunciar a morte de Ruby? Na verdade não. Se você viu artigos como "Ruby está morto" ou "Ruby é irrelevante", prepare-se - em algum momento, todas as linguagens foram declaradas mortas. Veja o Node.js - o tempo de execução está passando por bons momentos - e ainda assim as pessoas estão correndo para anunciar sua morte.

Visões precipitadas do desaparecimento da ferramenta são incrivelmente comuns entre os desenvolvedores de software. Já vimos muitos instrumentos declarados mortos, embora isso não fosse nem remotamente verdadeiro. Todos os desenvolvedores experientes sabem que histórias de linguagens e estruturas que estão morrendo são populares.
Ruby e Ruby on Rails estão mortos em 2020?
Obviamente não há fumaça sem fogo. Ruby não é de forma alguma perfeito: os desenvolvedores receberam vários motivos para considerar a mudança para outras ferramentas. Vamos dar uma olhada nas críticas mais comuns de Ruby e Ruby on Rails e ver se tem mérito.
1. "Consumo caótico de recursos do processador." Ruby e Ruby on Rails são conhecidos por terem alta utilização de CPU do nada. Os desenvolvedores iniciam seus processos típicos, abrem monitores de atividades e descobrem que o uso da CPU é de 50% ou até 100%. Via de regra, essas mudanças ocorrem sem motivo aparente - os desenvolvedores não entendem o que fizeram de errado e precisam interromper o processo.
Nosso comentário: Ruby não está indo bem com a utilização da CPU. Normalmente, para reduzir o consumo, basta editar os arquivos de configuração e desabilitar processos desnecessários de varredura em segundo plano. O problema geralmente é a qualidade do código; nossa única reclamação é a dificuldade em encontrar esses problemas.

2. "A digitação dinâmica não é um sinal de bom código." A tipagem dinâmica em Ruby não foi testada adequadamente. Os desenvolvedores podem cometer erros, criar códigos ilegíveis e não estar cientes disso. Algumas pessoas pensam que os repositórios de código Ruby são um ímã para dívidas de tecnologia.

Nosso comentário: Em Ruby, as variáveis são dinâmicas: uma variável pode se referir a valores diferentes e você pode alterá-la a qualquer momento. Isso é o que torna o Ruby uma das linguagens mais rápidas para escrever código, então não é uma desvantagem. Ruby também tem um ótimo coletor de lixo que detecta automaticamente problemas técnicos e não requer configuração manual. Projetos de sucesso bem dimensionados usando Ruby são a prova de que Ruby pode ser muito organizado.
3. "Não há curva de crescimento." Não é que Ruby tenha ficado terrível, é apenas que outras linguagens se tornaram muito mais poderosas. JavaScript dá saltos incríveis de qualidade a cada ano, enquanto Ruby cresce de forma constante, mas lenta. Rails costumava ser uma clara vantagem competitiva, mas agora todas as linguagens têm frameworks semelhantes a Rails.
Nosso comentário: É verdade que Ruby on Rails inspirou Node.js, JS, Python e muitos outros frameworks. Em termos de atualizações, aqueles que usam Ruby o tempo todo notaram melhorias significativas na velocidade e qualidade do código. Ruby on Rails em 2020 é tão rápido quanto frameworks JS - temos um artigo explicando isso com mais detalhes.
Ruby e Ruby on Rails são essenciais para muitos projetos
Ruby não é uma linguagem mainstream, mas é uma das mais eficientes. As pessoas não aprendem por diversão - elas o fazem pelo trabalho. Ele é usado pelo Airbnb, Hulu, GitHub e muitas outras plataformas importantes agora. Aqui estão algumas estatísticas adicionais sobre sites baseados em Ruby e seu tráfego.

O ecossistema Ruby on Rails 2020 inclui uma das comunidades mais populares no GitHub com mais de 3.500 colaboradores. Para se ter uma ideia, Django, um dos frameworks Python mais populares, tem apenas 1.500. Portanto, uma comparação de Ruby on Rails e Django em 2020 mostra que RoR realmente funciona bem.
O desenvolvimento Ruby é rápido e eficiente
No Syndicode, usamos Ruby por muitos motivos. Primeiro, a velocidade de escrever projetos em Ruby leva de 30 a 40% menos tempo do que em outras linguagens. Isso ocorre porque você precisa de 3 a 4 vezes menos linhas de código do que em Java ou Python. O código é leve e melhora o desempenho.
Anteriormente, Ruby tinha a reputação de ser lento, mas isso pode ser resolvido com boas práticas de codificação. Concordamos totalmente com o guia postado pelo Shopify - é fácil escrever código Ruby rápido se você souber como.

Benefícios do desenvolvimento Ruby para proprietários de produtos
Velocidade de codificação, menos linhas e ótimas estruturas parecem uma vantagem de desenvolvimento. E quanto à qualidade do produto e aos benefícios de desempenho? Em nossa experiência, Ruby tem muito a oferecer às empresas.
Tempo rápido de lançamento no mercado. Ruby on Rails é a nossa escolha para o desenvolvimento MVP porque é a única ferramenta que nos permite alcançar codificação em alta velocidade sem sacrificar a qualidade.
Flexibilidade. Como o código Ruby é tão rápido e fácil de editar, criar e publicar atualizações é uma tarefa fácil. Os desenvolvedores podem lançar novos recursos rapidamente, introduzir inovações no mercado e se adaptar às necessidades do usuário.
Popularidade do Ruby on Rails em 2020: O ecossistema da plataforma Ruby on Rails supera facilmente a maioria dos ambientes de desenvolvimento de backend, incluindo ferramentas Node e Python.
Muitas ferramentas e bibliotecas gratuitas. Existe um vasto ecossistema de gemas e repositórios Ruby e Ruby on Rails: fragmentos de código reutilizáveis que podem ser integrados em qualquer projeto.
Econômico: com Ruby, você precisa pagar 2 a 3 vezes menos pelo desenvolvimento. Isso ocorre porque a sintaxe da linguagem permite que você escreva rapidamente. Ainda assim, muitos recursos podem ser implementados com código gerado pela comunidade e pronto para uso.
Plataforma cruzada: o código escrito em Ruby funciona bem em dispositivos e sistemas operacionais, e em navegadores. Todos os nossos sites, SaaS e marketplaces movidos por Ruby funcionam perfeitamente em um ambiente de plataforma cruzada.
Segurança: Ruby e Ruby on Rails são ideais para aplicativos sensíveis a dados (plataformas financeiras, mercados, soluções de saúde, etc.). Ruby e RoR seguem o ciclo de vida de desenvolvimento seguro: os desenvolvedores priorizam ferramentas de segurança, ferramentas de monitoramento em tempo real e aderem a altos padrões de segurança.
5 principais áreas para desenvolvimento de Ruby
Quase não existem aspectos de desenvolvimento web que Ruby não cobre. No entanto, com base em nossa experiência, identificamos 5 tipos principais de projetos em que o uso de Ruby em vez de outras linguagens de uso geral "faz a diferença".
Plataformas de negociação

Ruby é usado por: Airbnb, Hulu, Amazon
Marketplaces são enormes plataformas da web que conectam compradores e vendedores, permitem transações financeiras, transações e compras. Eles trabalham com grandes quantidades de dados, exigem altos padrões de segurança e são demorados para serem desenvolvidos.
Usamos Ruby on Rails para todos os nossos projetos no mercado, incluindo os muito bem-sucedidos Clean Agents e HotelCloud. Isso nos permite reduzir o tempo de desenvolvimento, melhorar a qualidade e lançar atualizações rapidamente.
Software as a Service

SaaS que usa Ruby: Basecamp, Dribble
Software-as-a-Service é uma plataforma que fornece serviços continuamente em uma base de assinatura regular. Dois critérios para construir um SaaS de sucesso são velocidade e segurança. Afinal, os provedores de SaaS têm uma responsabilidade de longo prazo pelo sucesso de seus clientes. Confiabilidade, bom desempenho, segurança e atualizações rápidas são essenciais. É por isso que Ruby on Rails é a melhor escolha para desenvolvimento SaaS.
Escalabilidade: o SaaS está crescendo rapidamente - as empresas estão crescendo a uma taxa de 50-60% ao ano. A base de código deve se adaptar às novas necessidades e suportar altas cargas. Ruby e RoR permitem que você mude rapidamente a funcionalidade e adapte os serviços aos novos requisitos.
Eficácia de custos: Ruby on Rails tem um dos ecossistemas mais significativos para o desenvolvimento web. Uma grande comunidade GitHub, joias de alta qualidade e bibliotecas prontas para uso contribuem para uma infraestrutura robusta.
Escolhemos Ruby on Rails para InstaLinks, um SaaS que gera links inteligentes acessíveis de desktop e móvel. RoR também atende aos requisitos de projetos maiores, como CRM - dê uma olhada em nosso caso com UkrVit.
MVP

Empresas que usaram Ruby para MVPs como Twitter, Shopify, GitHub, Basecamp
Ruby e Ruby on Rails são escolhas óbvias para o desenvolvimento de MVP. Os MVPs precisam ser desenvolvidos rapidamente - os proprietários dos produtos desejam distribuí-los aos usuários, demonstrar serviço atencioso aos investidores e expandir seu alcance.
Fácil de construir: até mesmo uma pequena equipe de Ruby on Rails e Ruby pode criar um grande MVP;
Facilidade de aprendizado: Desenvolvedores internos podem rapidamente se juntar ao nosso projeto mais tarde porque aprender Ruby on Rails leva pouco tempo devido à sua sintaxe simples.
Aqui está um exemplo de MVP construído por nossos desenvolvedores da web usando Ruby on Rails. HelloCare é o mercado de saúde, onde segurança e confiabilidade têm sido nossas principais prioridades. Ruby on Rails nos permite alcançar esses objetivos ambiciosos enquanto mantemos o tempo de lançamento no mercado e os custos de fabricação baixos.
Aplicativos multiplataforma com Ruby on Rails

Aplicativos de plataforma cruzada desenvolvidos com Ruby: Basecamp, GitHub Um
aplicativo móvel deve ser capaz de alavancar APIs de dispositivo, enviar notificações push e se adaptar às características de hardware e sistema operacional. Uma boa ferramenta de back-end para um aplicativo móvel deve enviar alertas, anúncios, sincronização de dados. Usamos Ruby e Ruby on Rails para configurar o back-end do banco de dados, servidor da web e servidor de aplicativos.
Embora usemos Ruby principalmente para projetos da web, frequentemente nos referimos a essa linguagem para ferramentas de plataforma cruzada. Foi exatamente o que fizemos com o Kindercare, um aplicativo que automatiza o gerenciamento e a organização do atendimento diurno e pré-escolar. Usamos Ruby e Ruby on Rails para desenvolver versões móveis e web da plataforma e o aplicativo recebeu excelentes respostas e altas classificações em todo o mundo.
Serviços inovadores com o desenvolvimento de IoT e IA
Ruby on Rails é frequentemente visto como uma ferramenta acessível para projetos simples, mas na verdade é muito mais do que isso. Adoramos usar Ruby e Ruby on Rails para produtos ambiciosos que usam IA, IoT, aprendizado de máquina etc.
A linguagem é poderosa o suficiente para acomodar inovações complexas e sua sintaxe simples economiza muito esforço de desenvolvimento.
Ruby Gems oferece muitos códigos prontos para uso para inovação em IA e IoT.
conclusões
Ruby nunca morre. Tanto as estatísticas quanto as experiências dos desenvolvedores Syndicode apontam para a mesma coisa: Ruby é uma linguagem prática ideal para resolver problemas específicos de negócios. Pode não oferecer nenhuma abordagem específica fora da caixa, tornando-o menos interessante para comunidades como Stack Overflow, mas funciona.
O futuro do Ruby on Rails é ainda mais otimista - ao contrário, está florescendo. Ainda é uma das plataformas de desenvolvimento da web mais populares, e até mesmo estruturas semelhantes a RoR ainda não alcançaram o original. Ruby e Rails são ferramentas rápidas e eficientes para construir soluções web e móveis - e a vantagem não vai a lugar nenhum.
Se você está planejando construir um mercado, SaaS ou qualquer plataforma web com uma versão móvel, Ruby é provavelmente a escolha certa para o seu projeto. Você saberá com certeza quando falar com os desenvolvedores sobre isso, então não hesite em nos contatar.