Desenvolvimento

5 jan, 2018

Aqui está uma nova maneira de aprender ferramentas e conceitos de codificação

Publicidade

Como desenvolvedor, aprendo constantemente novos conceitos e ferramentas.

Esse processo de aprendizagem geralmente começa quando eu estou codificando e fico preso.

Eu faço uma pesquisa rápida no Google e geralmente acabo em uma página do Stack Overflow que se parece com isto:

Uma paródia do Stack Overflow.

Então, no almoço, ouço todos os meus amigos falando sobre algo chamado programação funcional.

“Hmmm…”, eu penso comigo mesmo. “Eu apenas aprendi programação orientada a objetos, e estou um pouco envergonhado de perguntar o que é programação funcional”.

Então volto para o meu laptop. “O que é programação funcional?”, pergunto ao Google.

E o Google me diz para ler um artigo da Wikipedia que se parece com isto:

A página da Wikipedia para programação funcional.

Uau – são muitas palavras importantes, links para artigos e notas de rodapé. Entscheidungsproblem? Isso é mesmo inglês?

Eu só queria uma explicação “boa o suficiente” sobre o que é programação funcional.

Apresentando o Guia freeCodeCamp – boas explicações para pessoas ocupadas como você.

Uma captura de tela do Guia freeCodeCamp.

Esse desejo de explicações “boas o suficiente” nos inspirou a construir o Guia freeCodeCamp.

O guia é uma referência pesquisável que visa cobrir todos os conceitos relacionados ao desenvolvimento de software.

Os artigos são simples o suficiente para nativos do inglês compreenderem. Eles são curtos o suficiente para as pessoas ocupadas lerem enquanto tomam um gole de café.

Um artigo do guia sobre o comando Git Clone.

Atualmente, o Guia freeCodeCamp possui aproximadamente 3.000 artigos. Cerca de metade deles são “stubs” – tópicos que sabemos que são importantes, mas sobre os quais ainda não tivemos tempo para escrever.

Esses artigos cobrem tópicos que não fazem parte dos certificados de desenvolvimento web freeCodeCamp, como SQL:

Captura de tela do artigo do Guia freeCodeCamp sobre o comando ALTER TABLE do SQL.

E Python:

Captura de tela do artigo do Guia freeCodeCamp sobre as 8 operações de comparação do Python.

Para o nosso motor de pesquisa, estamos usando a poderosa ferramenta open source Elasticsearch. Ela não faz apenas essa busca nos artigos do Guia FreeCodeCamp, mas também busca:

  • Centenas de desafios interativos de codificação do freeCodeCamp
  • Centenas de vídeos gratuitos do YouTube do freeCodeCamp
  • E, em breve, milhares de artigos no freeCodeCamp Medium
Uma busca por “jQuery children” revela artigos, desafios de codificação e vídeos que explicam o conceitoUma busca por “jQuery children” revela artigos, desafios de codificação e vídeos que explicam o conceito.

Todo esse projeto é totalmente gratuito e open source. Então, se você está procurando uma maneira fácil de começar a colaborar com o open source, esta é a oportunidade!

Como colaborar com o código aberto – direto no seu navegador – melhorando o Guia freeCodeCamp.

Você pode colaborar com o Guia freeCodeCamp diretamente em seu navegador no GitHub. Você também pode fazer isso sem passar pelo processo usual de clonagem do repositório GitHub para o seu computador local, instalar pacotes e explorar a base de códigos.

Em vez disso, você só precisa escolher um tópico em que esteja interessado – talvez você tenha descoberto um novo conceito de design, por exemplo – e escrever sobre ele.

Atualmente, existem milhares de tópicos e subtópicos. A maioria deles são “stubs” no estilo Wikipedia com nada mais do que um nome. Você pode fazer alguma pesquisa e ajudar a elaborar esses stubs.

Aqui está um gif curto que mostra como você pode fazer isso:

Um Gif mostrando como fazer uma colaboração open source para um artigo, diretamente em seu navegador.

Os passos são:

  1. Explore as pastas do guia e escolha um tópico sobre o qual você deseja escrever.
  2. Abra o arquivo index.md dessa pasta clicando duas vezes nele.
  3. Clique no símbolo da caneta no canto superior direito para editá-lo.
  4. Faça suas alterações nela. Você pode incorporar imagens, YouTube, CodePen, REPL.it – o que você precisa para ajudar a ensinar um conceito.
  5. Role para baixo e descreva suas alterações na mensagem de commit.
  6. Certifique-se de que o botão “Create a new branch for this commit and start a pull request” esteja selecionado.
  7. Clique em “Commit Changes”.
  8. Na próxima página, clique em “Create Pull Request”.

Vamos executar alguns testes para garantir que suas alterações não quebrem nada. Então, um dos nossos mantenedores irá dar-lhe feedback sobre o seu artigo. Quando tudo parecer ok, mesclaremos seu pull request.

Sua colaboração será automaticamente implementada no Guia freeCodeCamp, onde milhões de pessoas podem lê-la e referenciá-la.

Colaborar com nossos artigos do guia é uma boa maneira de facilitar a colaboração para o open source. Você também pode participar da nossa sala de bate-papo Contributor para falar com outros colaboradores e fazer perguntas.

Como construímos o Guia freeCodeCamp

Ao longo dos últimos meses, usamos uma variedade de ferramentas para criar esse aplicativo rápido e de uma única página:

  • React e Redux
  • Gatsby.js : uma ferramenta para criar sites estáticos rápidos
  • Elasticsearch: o padrão ouro para pesquisa de texto completo
  • Netlify: uma ferramenta de hospedagem de site estático de alto desempenho

As seguintes pessoas foram fundamentais para o desenvolvimento do Guia freeCodeCamp até agora:

O Guia freeCodeCamp é um trabalho em progresso. Se você notar algum erro, ou vir as maneiras como ele pode ser melhorado, abra uma issue no GitHub e nós examinaremos isso.

Se você quiser apoiar o Guia freeCodeCamp e outros esforços open source que a comunidade freeCodeCamp está construindo, você pode apoiar nossa organização sem fins lucrativos com uma doação mensal.

Divirta-se explorando o Guia freeCodeCamp!

***

Quincy Larson faz parte do time de colunistas internacionais do iMasters. A tradução do artigo é feita pela Redação iMasters, com autorização do autor, e você pode acompanhar o artigo em inglês no link: https://medium.freecodecamp.org/heres-a-new-way-to-learn-coding-tools-and-concepts-right-when-you-need-them-ee82d15c576d