Durante o mês de Outubro está acontecendo o evento Learn Live GitHub Foundations, uma série de lives com o objetivo de ensinar de graça sobre o GitHub e te auxiliar a conquistar sua certificação.
O evento contará com 4 aulas ao vivo acompanhado com uma trilha de estudos visando justamente te preparar para a certificação GitHub Foundations.
A Developer Advocate Cynthia Zanoni, a organizadora do evento, explicou de forma bem detalhada sobre como será essa série de eventos que estará ocorrendo entre os dias 01 a 22 de Outubro.
Para saber mais sobre a série recomendo a leitura do artigo Conquiste a Certificação GitHub Foundations
Visão Geral das Próximas Lives
A Cynthia Zanoni, durante o evento, explicou que as lives serão divididas em 4 episódios, sendo eles:
- Primeiro Episódio: Desenvolvimento de projetos colaborativos no GitHub.
- Segundo Episódio: Uso do GitHub Actions para automação de pipelines, deploys e testes.
- Terceiro Episódio: Segurança em projetos no GitHub utilizando o GitHub Advanced Security.
- Quarto Episódio: Certificação GitHub Copilot, com dicas práticas para aproveitar ao máximo essa ferramenta.
E se quiser saber mais sobre as próximas lives, a Cynthia Zanoni informou o que vem por aí:
Mas, hoje o foco será para falar sobre a primeira live que ocorreu no dia 01 de Outubro, a qual foi ministrada pelo Daniel Reis, que é Developer Advocate na ScyllaDB e Microsoft MVP e Sthefany Sther que é Software Developer na Carcará e Partner na Live Streamer na Twitch.
Vamos agora revisar os pontos altos abordados durante a live, incluindo boas práticas de versionamento, como colaborar de maneira eficaz repositórios open source e o uso de funcionalidades do GitHub, como issues e pull requests.
Introdução ao GitHub e ao Desenvolvimento Colaborativo
Antes de mais nada, se você perdeu a live, não se preocupe, pois a mesma está disponível no canal do YouTube da Microsoft Reactor e poderá ser assistida agora mesmo:
O que é o GitHub?
Bom, para quem está começando, o GitHub é uma plataforma essencial para versionamento de código e desenvolvimento colaborativo. Durante a live, Daniel e Sthefany falaram sobre como o GitHub é uma ferramenta poderosa para desenvolvedores, e como é importante entender como usá-lo de forma eficaz. Também falaram sobre como criar e manter repositórios, entender a estrutura de pastas, e, principalmente, como fazer contribuições valiosas para projetos que você admira.
Objetivos de Aprendizado
Durante a live, foram definidos alguns objetivos de aprendizado, que incluíram os principais tópicos explorados durante a sessão. Vejamos agora os principais pontos abordados!
Overview: Funcionalidades de um Repositório
Nesta seção, foi abordado o propósito de um repositório no GitHub, explicando suas funcionalidades principais e como utilizá-las de forma eficiente em projetos colaborativos. Foram apresentados elementos básicos de um repositório, como o código principal, os issues, pull requests, e outras áreas essenciais. Essas funcionalidades permitem gerenciar e organizar o desenvolvimento de um projeto de maneira mais estruturada e colaborativa.
Segurança e Licenciamento
Outro ponto abordado foi a importância de definir uma licença para o seu projeto, como MIT
ou GPL
, que definem como o código pode ser usado por terceiros.
Também foi discutido sobre o arquivo SECURITY.md
, que orienta como reportar falhas de segurança de maneira responsável, garantindo que vulnerabilidades sejam tratadas corretamente sem expor o projeto desnecessariamente.
Vejamos alguns arquivos importantes que foram abordados durante a live:
-
Criação de Repositórios: Começamos criando um repositório do zero no GitHub, onde foi mostrado como adicionar um arquivo
README.md
. Este arquivo é a base de qualquer projeto bem documentado, descrevendo o que ele faz, as tecnologias utilizadas, como instalar, e outras informações importantes para quem deseja contribuir. -
Código de Conduta: A Sthefany falou sobre a importância de ter um código de conduta em projetos open source, que estabelece as normas de comportamento dentro do projeto, garantindo que todos os colaboradores tenham um ambiente saudável e produtivo.
- LICENSE (licença): Daniel falou sobre a importância de escolher uma licença para o seu projeto, que define como o código pode ser utilizado por outras pessoas. Existem várias licenças disponíveis, como a MIT, Apache, GPL, entre outras, e é importante escolher a que melhor se adequa às suas necessidades.
Outro ponto abordado foi a importância de definir uma licença para o seu projeto, como MIT ou GPL, que definem como o código pode ser usado por terceiros. Também foi discutido sobre o arquivo SECURITY.md, que orienta como reportar falhas de segurança de maneira responsável, garantindo que vulnerabilidades sejam tratadas corretamente sem expor o projeto desnecessariamente.
Logo após explicar sobre a importância de cada um desses arquivos, Daniel e Sthefany fizeram uma demonstração prática de como criar um repositório no GitHub, adicionando um arquivo README.md
, CODE_OF_CONDUCT.md
, LICENSE
e SECURITY.md
entre outros arquivos.
Branches: Um Universo Dentro de Outro
O que seria um branch? Durante a live, Daniel e Sthefany explicaram que um branch é uma ramificação do projeto principal, onde você pode trabalhar em novas funcionalidades, correções de bugs, ou qualquer outra alteração sem interferir no código principal. Isso permite que você desenvolva novas funcionalidades de forma isolada, testando e validando antes de integrar ao projeto principal.
E, novamente, foi feita uma demonstração prática de como criar um branch no GitHub, fazer alterações, e criar um pull request para integrar as mudanças ao projeto principal.
Issues: Organize suas Ideias
O que são issues? Durante a live, Daniel e Sthefany explicaram que issues são uma forma de organizar e gerenciar tarefas, bugs, e outras atividades em um projeto. Elas permitem que você crie, atribua, e acompanhe o progresso de tarefas de forma colaborativa, mantendo todos os envolvidos informados sobre o que está acontecendo no projeto.
Os issues foram destacados como uma ferramenta para organizar ideias, relatar problemas e discutir novas funcionalidades. Durante a live, enfatizou-se a importância de documentar bem cada issue, detalhando o contexto e os passos para reproduzir o problema. Além disso, foram demonstradas as boas práticas de uso das labels
para categorizar os issues, como:
- bug: para problemas de código
- documentação: para melhorias na documentação
- good first issue (para iniciantes): para tarefas mais simples e acessíveis a novos colaboradores
Ao criar as labels ajuda a organizar e priorizar as tarefas, facilitando a colaboração e o desenvolvimento do projeto.
E, claro, foi feita uma demonstração prática de como criar issues no GitHub, atribuir a colaboradores, e acompanhar o progresso das tarefas.
Pull Requests: Contribua com o Código
O que são pull requests? Durante a live, Daniel e Sthefany explicaram que pull requests são uma forma de propor mudanças em um projeto, permitindo que você contribua com código, correções, ou qualquer outra alteração. Eles são a base para a colaboração em projetos open source, permitindo que desenvolvedores proponham mudanças e que estas sejam revisadas antes de serem integradas ao projeto principal.
Os pull requests são a base para a colaboração em um projeto GitHub. Eles permitem que desenvolvedores proponham mudanças e que estas sejam revisadas antes de serem mescladas no branch principal.
Destacou-se como o feedback deve ser dado de forma construtiva, oferecendo sugestões detalhadas e evitando críticas pessoais. Diferentes tipos de status de pull requests, como "aberto", "rascunho", e "fechado", também foram apresentados.
Daniel reis demonstrou como criar um pull request e enfatizou a importância das revisões de código (code reviews).
Boas Práticas de Versionamento
Durante a live, Stephany compartilhou experiências pessoais que ilustraram a importância do versionamento e das revisões de código. Ela mencionou como um erro ao não testar adequadamente uma modificação resultou na queda de um e-commerce por seis minutos. Isso destacou a necessidade de se seguir um processo rigoroso de revisão de código e testes antes de fazer qualquer merge para a branch principal.
Markdown: A Linguagem de Marcação Simples
Durante a live, Daniel e Sthefany explicaram como o Markdown é uma linguagem de marcação simples e eficaz para criar documentos, como o README.md
. Eles demonstraram como usar o Markdown para adicionar formatação, links, imagens, e outros elementos ao arquivo README.md
, tornando-o mais atraente e informativo para os colaboradores.
O Markdown é uma ferramenta poderosa para documentar projetos, e é essencial para quem deseja contribuir para projetos open source.
Próximos Passos
A série Learn Live está apenas começando, e esse primeiro episódio nos deu uma visão prática de como colaborar de maneira eficaz no GitHub.
É essencial para qualquer desenvolvedor, iniciante ou experiente, entender como contribuir para projetos open source, como manter um repositório organizado, e como garantir a qualidade do código através de boas práticas de versionamento e revisão.
No próximo episódio, vamos explorar o GitHub Actions, que é uma poderosa ferramenta para automatizar processos de desenvolvimento, desde testes automatizados até deploys contínuos. Não perca essa oportunidade de levar suas habilidades de colaboração e automação para o próximo nível.
Se você deseja aprender mais, não deixa de conferir os conteúdos relacionados a série de vídeos do Learn Live em: https://aka.ms/learn/github
Certificação GitHub Foundations
Se você é estudante, vale lembrar que o GitHub Student Developer Pack oferece acesso gratuito à certificação GitHub Foundations e ao GitHub Copilot, além de outros benefícios. Essa é uma excelente oportunidade para expandir seus conhecimentos e enriquecer seu currículo.
Lembrando que, todo o material está disponível no Microsoft Learn, uma plataforma onde você pode aprender de forma gratuita sobre diversos temas, incluindo GitHub, Azure, e muito mais. Aproveite essa oportunidade para aprimorar suas habilidades e se preparar para o mercado de trabalho.
Conclusão
Esperamos que tenha gostado do resumo do primeiro episódio de Learn Live GitHub Foundations. Fique ligado para os próximos episódios, onde vamos explorar mais a fundo as funcionalidades do GitHub e como você pode se tornar um colaborador ativo em projetos open source.
E, se você tiver alguma dúvida ou sugestão, não hesite em compartilhar nos comentários. Estamos aqui para te ajudar a conquistar suas metas de aprendizado e desenvolvimento profissional.
Até a próxima live! 😎