# \[MENSAL\] Preciso de mentoria

**URL:** https://meta.discourse.org/t/paid-mentorship-needed/136199
**Category:** Marketplace
**Created:** [16 Dezembro , 2019 11:13 UTC](https://meta.discourse.org/t/paid-mentorship-needed/136199 "2019-12-16T11:13:32Z")
**Posts on this page:** 9
**Page:** 1

<div class="post-metadata">

### Author: ![ramjke](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/ramjke/32/150397_2.png) [@ramjke](https://meta.discourse.org/u/ramjke)
#### Post date: [16 Dezembro , 2019 11:13 UTC](https://meta.discourse.org/t/paid-mentorship-needed/136199/1 "2019-12-16T11:13:32Z")

</div>

Olá, meu nome é Alexander. Recentemente, instalei o Discourse via WSL e comecei a estudá-lo.  
Duas semanas depois, descobri um grande problema: o Discourse não possui bons guias de desenvolvimento de plugins, apenas alguns artigos. Parece que todo o aprendizado se resume a ler código que se acumulou ao longo do tempo.  
Estudo todos os dias e, a cada dia, tenho muitas dúvidas. Gostaria de encontrar um mentor que possa responder a essas perguntas e me ajudar a aprender o Discourse.  
Claro, estou disposto a pagar por esse serviço valioso. Falo inglês, russo e tailandês. Ficarei muito feliz em receber suas sugestões.

---

<div class="post-metadata">

### Author: ![merefield](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/merefield/32/176214_2.png) [@merefield](https://meta.discourse.org/u/merefield)
#### Post date: [16 Dezembro , 2019 11:21 UTC](https://meta.discourse.org/t/paid-mentorship-needed/136199/2 "2019-12-16T11:21:45Z")

</div>

Dê uma olhada em [Pavilion](https://thepavilion.io/t/how-to-join-pavilion/1605)

Por enquanto, veja também:

> [@How can I make my own Discourse plugins?](https://meta.discourse.org/t/how-can-i-make-my-own-discourse-plugins/90032/2?u=merefield):
>
> I’ve only just started but here’s my ‘starter for 10’ to get you going: Read: [these](https://meta.discourse.org/t/beginners-guide-to-creating-discourse-plugins-part-1/30515)[this](https://meta.discourse.org/t/how-to-start-building-stuff-for-discourse-if-youre-newbie-like-myself/45954) Try and read the code on the simplest, [but popular plugins](https://meta.discourse.org/c/plugin/l/top/yearly) and see if you can understand what they are doing (this is not always easy, especially with the complexity of dealing with multiple files and the sometimes brutal functional brevity of javasctipt, but persevere) You need to learn: Lots of Javascript (look no further than @mpj’s [Fun Fun Function excellent & fun (!) videos](https://www.youtube.com/channel/UCO1cgjhGzsSYb1rsB4bFe4Q) (thanks man!)) Lots of …

---

<div class="post-metadata">

### Author: ![osioke](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/osioke/32/238946_2.png) [@osioke](https://meta.discourse.org/u/osioke)
#### Post date: [16 Dezembro , 2019 11:28 UTC](https://meta.discourse.org/t/paid-mentorship-needed/136199/3 "2019-12-16T11:28:17Z")

</div>

> [@ramjke](#):
>
> O Discourse não possui bons guias de desenvolvimento de plugins, apenas alguns artigos.

Você já viu esta série de guias para iniciantes sobre desenvolvimento de plugins?

> [@Developing Discourse Plugins - Part 1 - Create a basic plugin](https://meta.discourse.org/t/beginners-guide-to-creating-discourse-plugins-part-1/30515):
>
> Building a plugin in Discourse can be really simple, once you learn a couple of quirks. The goal of this post is to create a skeleton plugin and introduce you to the basics. Your development environment Make sure you have a development environment of Discourse running on your computer. I recommend you use [the appropriate setup guide](https://meta.discourse.org/tag/dev-install) and come back when you’re done. plugin.rbtada Use [GitHub - discourse/discourse-plugin-skeleton: Template for Discourse plugins](https://github.com/discourse/discourse-plugin-skeleton) to create a complete discourse p…

É uma série de 7 partes escrita exatamente para o seu cenário específico. Uma lista completa dos guias está no final de cada um deles.

---

<div class="post-metadata">

### Author: ![ramjke](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/ramjke/32/150397_2.png) [@ramjke](https://meta.discourse.org/u/ramjke)
#### Post date: [16 Dezembro , 2019 11:40 UTC](https://meta.discourse.org/t/paid-mentorship-needed/136199/4 "2019-12-16T11:40:46Z")

</div>

Sim, li tudo. E ainda tenho dúvidas.  
Infelizmente, este guia não aborda a interceptação (hooking) em arquivos .rb.

Por exemplo, usuários às vezes gostam de fazer upload de PUPs (programas potencialmente indesejados), então quero proteger meu domínio principal de ser banido pelo Google e por antivírus.  
Por exemplo, preciso substituir links de download compilados no meu plugin:  
“[https://discourse.example.com/uploads/short-url/...exe](https://discourse.example.com/uploads/short-url/...exe)” =\> “[https://download.proxy.com/uploads/short-url/....exe](https://download.proxy.com/uploads/short-url/....exe)”.  
O que devo fazer? Acredito que preciso primeiro encontrar algum método? Mas qual? **Como** encontrar **o que preciso**? Como fazer o hook no plugin? Devo substituir ou estender o método? Como fazer ambos? E muito mais.

---

<div class="post-metadata">

### Author: ![merefield](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/merefield/32/176214_2.png) [@merefield](https://meta.discourse.org/u/merefield)
#### Post date: [16 Dezembro , 2019 11:43 UTC](https://meta.discourse.org/t/paid-mentorship-needed/136199/5 "2019-12-16T11:43:44Z")

</div>

Algo que aprendi ao estudar música Jazz:

A melhor maneira de descobrir como as coisas são feitas é examinar exemplos existentes.

Tive o privilégio de ter uma aula com um dos meus ídolos. Ele me disse para ouvir realmente os discos, pois tudo estava lá!

No caso dos plugins do Discourse, procure um caso de uso funcional idêntico em um plugin existente bem escrito ou no próprio código-fonte do Discourse e siga os mesmos padrões; desenvolvo plugins há mais de 2 anos e ainda faço isso.

---

<div class="post-metadata">

### Author: ![ramjke](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/ramjke/32/150397_2.png) [@ramjke](https://meta.discourse.org/u/ramjke)
#### Post date: [16 Dezembro , 2019 11:48 UTC](https://meta.discourse.org/t/paid-mentorship-needed/136199/6 "2019-12-16T11:48:33Z")

</div>

Obrigado pelo conselho.

---

<div class="post-metadata">

### Author: ![merefield](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/merefield/32/176214_2.png) [@merefield](https://meta.discourse.org/u/merefield)
#### Post date: [16 Dezembro , 2019 12:05 UTC](https://meta.discourse.org/t/paid-mentorship-needed/136199/7 "2019-12-16T12:05:05Z")

</div>

@ramjke Mais uma coisa: caso não esteja claro no link que forneci, oferecemos mentoria gratuita se você se tornar membro da nossa comunidade e contribuir para nossos plugins de código aberto. Normalmente, isso se daria por meio do desenvolvimento de um PR (por exemplo, para adicionar um recurso ou corrigir um bug irritante) em um de nossos plugins, e nós o orientaríamos a melhorá-lo até que estivesse pronto para produção. Foi em grande parte assim que aprendi: contribuindo de verdade para funcionalidades úteis do mundo real. PRs são um mecanismo perfeito para um fluxo de trabalho de aprendizado. Isso nos ajuda a manter esses plugins populares e, ao mesmo tempo, oferece uma experiência de aprendizado incrível. Já existe uma grande fila de recursos nos quais você poderia estar trabalhando :).

---

<div class="post-metadata">

### Author: ![ramjke](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/ramjke/32/150397_2.png) [@ramjke](https://meta.discourse.org/u/ramjke)
#### Post date: [16 Dezembro , 2019 14:10 UTC](https://meta.discourse.org/t/paid-mentorship-needed/136199/8 "2019-12-16T14:10:29Z")

</div>

Obrigado. Vou dar uma olhada.

---

<div class="post-metadata">

### Author: ![system](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/system/32/443519_2.png) [@system](https://meta.discourse.org/u/system)
#### Post date: [15 Janeiro , 2020 14:21 UTC](https://meta.discourse.org/t/paid-mentorship-needed/136199/9 "2020-01-15T14:21:46Z")

</div>

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.
