Como aprender mais sobre o back-end do Discourse?

Pesquisei e encontrei muitas coisas antigas porque o Discourse foi muito atualizado. Gostei de ler o trabalho que levou ao seu sucesso.

Não sou um desenvolvedor, mas paguei a muitos “desenvolvedores” que trabalham 1/10 do que eu consigo (claro, não no Discourse). Então, estou aqui tentando aprender mais :slight_smile:
Principalmente porque nasci em um país sem tanta disciplina, responsabilidade ou motivação para fazer as coisas e o fazer está em mim desde que me lembro da minha vida.
Uso computadores desde o DOS e usei os primeiros PCs com Windows 3.1. Então, provavelmente estou com muitas pessoas por aí que começaram jogando e depois se envolveram em suas próprias comunidades e/ou negócios relacionados à tecnologia.
Consigo ler linhas básicas de código, fui muito bom em lógica na escola, mas não tenho mais formação e sei que isso não é suficiente.
Instalei nossa instância do Discourse, além de alguns aplicativos, no Linux porque estou no Linux há mais de 10 anos.
Sempre me senti em casa com o terminal e o back-end. CSS me dá dor de cabeça, então estou deixando isso para os artistas (!)
Freelancers aleatórios são piores do que quebrar coisas sozinho e 2/5 mil para resolver coisas específicas em uma lista de 10/15 tarefas são muito caros para mim até o escalonamento ou alguns anos para minhas finanças.
Sou ENFJ e uma espécie de engenheiro de rua, se os engenheiros de verdade aqui não me banirem por sacrilégio ou trolling com essas palavras :joy::folded_hands:

O ponto

É possível para alguém com meu histórico de TI muito pequeno, aprender Rails, usar a API e os aplicativos de back-end onde o Discourse é construído?
Você usa Sidekiq e sabe como pesquisar, modificar e excluir todas as coisas do Rails, e eu realmente quero o mesmo.

EDIT: Por favor, não me entenda mal. Não estou perguntando como ser um desenvolvedor, mas entendendo mais para melhorar meu trabalho com eles.
Saber o básico para orientar desenvolvedores sem experiência no back-end do Discourse (o que é muito comum hoje em dia) é obrigatório para mim e desejo aprender.
Obrigado por ler!

5 curtidas

Pode valer a pena começar com o plugin Data Explorer. Se você conseguir construir consultas no banco de dados, interativamente, para obter resultados interessantes, começará a ter uma ideia. Você poderia então executar essas consultas no console do Rails ou (talvez) usando a API. Mas, nesse ponto, você estaria à minha frente!

Para mim, acho que entender o modelo de dados, por meio das tabelas do banco de dados, seria o primeiro passo. Mas talvez haja um guia de API que seja uma maneira mais fácil de começar.

(Não acho que você precise entender a pilha de tecnologia que roda dentro do contêiner Docker, para seus propósitos.)

4 curtidas

Você pode consultar os tópicos Desenvolvendo Plugins do Discourse - Parte 1 - Crie um plugin básico. Há bastante coisa que você pode fazer sem um entendimento sólido de rails. Você precisará dominar o javascript para fazer qualquer coisa no front-end, no entanto. Para mim, isso tem sido muito mais difícil do que ruby ou rails.

4 curtidas

Antes de desenvolver componentes de tema e plugins para o Discourse, eu nunca tinha escrito uma única linha de código CSS, não tinha experiência em desenvolvimento front-end Javascript e estava exposto ao Ruby pela primeira vez na minha vida. Formação em educação de TI? Eu ainda estava esperando minha carta de aceitação da faculdade naquela época. Então, acho que tudo é possível.

Minha experiência é que, como Administrador de fórum, entendo a maioria das funções fornecidas pelo Discourse para um administrador comum e, em seguida, começo tentando alterar os componentes de tema oficiais do Discourse - isso é realmente doloroso no início. Mas depois de algumas centenas de console.log, logo entendi o propósito de cada função da api. O próximo passo é entender o que é armazenado e o que é feito nas diferentes pastas no código-fonte do Discourse. Bem, não posso dizer o quanto entendo até agora, mas é o suficiente para eu desenvolver plugins para o meu fórum.

7 curtidas