O Discourse é construído sobre Rails e Ember, ótimas escolhas que contribuíram para o sucesso do Discourse. No entanto, a decisão foi tomada em 2012. Será que as escolhas seriam diferentes se o projeto tivesse sido iniciado em 2020? Gostaria de saber a opinião da equipe de desenvolvimento do Discourse sobre alternativas:
Frameworks ou linguagens mais rápidas, como Node ou Go, beneficiariam o caso de uso alvo?
Outros frameworks front-end mais leves (React/Vue) ou até mesmo a ausência de um framework front-end funcionariam melhor ou igualmente bem para o Discourse?
Não vejo muita utilidade em especulações como essa; é meio como perguntar: ‘E se as nuvens fossem feitas de algodão-doce delicioso e a chuva fosse limonada saborosa?’ ..
Dito isso, continuaremos aprimorando o Ember.js para mantê-lo dentro dos parâmetros de desempenho que exigimos; isso é o que mais me importa! Houve um monte de progresso nessa área também!
Gosto do fato de você estar compartilhando suas sugestões com a equipe de desenvolvimento do Discourse.
( Minha Opinião )
Trabalho com o Discourse há três anos (Rails e Ember.js) e também atuei em outros projetos construídos com Angular, React, etc. Trabalhei bastante também no Canvas LMS (Rails e React.js).
Acho que a velocidade e o desempenho do Discourse são muito superiores em comparação a outros grandes produtos, incluindo muitos de código aberto. O Discourse é muito rápido, extremamente suave e robusto. Os eventos em tempo real são a parte mágica do Discourse.
Hoje em dia, não importa tanto em qual linguagem de programação ele foi desenvolvido. O extraordinário é como foi desenvolvido de forma inteligente e como tudo está integrado. É a comunidade que trabalha dia e noite para torná-lo cada vez melhor.
Sempre é melhor opção melhorar e otimizar o que já temos.
Basta pensar:
Se o Discourse fosse um ser humano, o Ember.js seria o seu sangue. Mas, sim, você pode dizer que o Ember.js é um sangue do tipo “A+”, enquanto as outras linguagens seriam tipos similares, como B, O, AB, etc. A conclusão é que é melhor fornecer uma boa alimentação e uma vida saudável ao Discourse (considerado como um ser humano) para manter o sangue saudável em vez de trocar todo o sangue por um tipo novo, como B+. Isso não funcionaria.
Além disso, temos uma grande quantidade de plugins desenvolvidos em Ember.js para o Discourse; eles também deixariam de funcionar se mudássemos a linguagem, etc. (o Discourse é feito em Ember.js, afinal).
Por favor, compartilhe suas opiniões sobre o que está faltando, pois isso ajudará a equipe do Discourse a torná-lo ainda melhor.
Por favor, nos avise se você identificou algum critério antes de considerar uma linguagem diferente.
Obrigado @codinghorror@ashishprajapati por compartilhar as percepções. Minha pergunta não foi uma sugestão ou dúvida sobre as escolhas, mas sim uma curiosidade sobre quais prós e contras vocês veem nesta fase do projeto.
Compartilho plenamente a ideia de que a escolha do framework/língua importa muito menos do que a comunidade e a execução.