Como funciona a Mentoria de IaC em projetos de Software Livre
February 8, 2021 portugues devops ansible mentoria
O que é IaC?
IaC é a sigla para Infrastructure as Code (Infraestrutura como Código) que é o processo de manipular a infraestrutura através de código.
Nesse processo você deve criar um arquivo de definição, um código mesmo, e esse arquivo será lido por um software que executa as ações baseada no que foi escrito neste código.
No código IaC você declara o que deseja que seja aplicado na infraestrutura e o software IaC é responsável por executar todos os comandos necessários para que a infra saia do estado atual e seja modificada para ficar da forma como foi declarado no arquivo IaC.
Sim, Gomex, mas que papo é esse de mentoria em IaC?
Eu tenho percebido que uma galera está interessada em aprender mais sobre Infrastructure as Code (IaC) e não tinha oportunidade de uma experiência mais prática, com apoio de outras pessoas.
Essa experiência é aquela que a maioria dos empregos requer para contratar uma pessoa, mas poucas empresas oferecem oportunidade para quem não tem nenhuma. É uma conta que não bate, mas vamos deixar o debate sobre essa incoerência pra depois.
A mentoria acontece dentro de projetos de software livre, pois entendo que essa colaboração com um projeto maior seja muito potente e tenha um grande poder de transformação para quem está colaborando. Mais ainda, essa proposta fortalece a comunidade técnica. A pessoa deixa de ser apenas consumidora e passa a também ser produtora, ajudando a roda da comunidade a continuar a girar.
Como funciona?
Eu decidi iniciar um projeto de mentoria que esteja conectado com um projeto de software livre, que possua demanda suficiente de IaC para que as pessoas da mentoria possam ter oportunidade de passar pelo fluxo completo de uma entrega desse tipo. Um outro ponto importante para a escolha do projeto de software livre é seu impacto social, ou seja, sempre que possível escolherei projetos que tenham esse viés.
Como projeto de Software Livre atual escolhi o Dados Abertos de Feira, que tem como objetivo oferecer transparência e dados abertos do município de Feira de Santana (BA).
Esse projeto tem bastante demanda de IaC, pois ele está saindo do Heroku para a Absam, que é um provedor local na cidade de Feira de Santana.
Depois de escolher o projeto, passamos a entender a demanda em relação a IaC e, colaborando com as pessoas que estão na mentoria, entregaremos as demandas seguindo as melhores práticas do mercado.
O foco do processo de mentoria é o aprendizado das pessoas que estão sendo mentoradas, porém a entrega do produto para o projeto de software é muito importante também. Ou seja, não temos como esperar muito para que cada tarefa seja entregue. Não há cobrança, afinal é trabalho voluntário de ambos os lados, mas não poderemos bloquear a tarefa por tempo indeterminado para uma pessoa em específico.
O modelo principal da mentoria é a colaboração, seja com seu mentor (eu nesse caso), ou com as outras pessoas que participam da mentoria também, pois todos sempre tem algo a acrescentar e ajudar. Sempre lembrando que no ato de ajudar outra pessoa, sempre aprendemos também.
A conversa acontece no chat do projeto de software livre em questão. No momento estamos no Discord do projeto Dados Abertos de Feira, colaborando com atividades de IaC para o app mariaquiteria.
Como posso participar?
Você tem interesse em desenvolver/aprender suas habilidades de IaC? Tem tempo para estudar (ler e praticar) sobre o assunto? Tem disposição para interagir com as pessoas nos chats e participar das reuniões?
Se todas as respostas foram sim, basta entrar no servidor do discord do atual projeto: https://discord.gg/Vsua55ZxMp
Quando já estiver no servidor discord do Mentoria de IaC, entra no canal #geral e se apresenta.
O que eu preciso saber previamente para começar?
Conhecimento básico em Linux, com uso de linha de comando, assim como conhecimento básico em rede de computadores.
Não precisa saber ansible ou qualquer outra ferramenta de IaC, mas prepare-se para aprender pois usaremos elas no projeto. A ideia é que você mesmo faça as tarefas, mas sempre com apoio e revisão de outras pessoas.
Para quem não sabe nada de ansible ou qualquer outra ferramenta de IaC, sempre é criado um grupo à parte pra aprender do zero mesmo, a partir de algum material como referência para aprender, ou seja, se você não sabe nada, pode chegar, mas se prepare pois a ideia é que isso se resolva logo.
Eu sou mulher, LGBT, negro ou tenho deficiência. Esse grupo é inclusivo pra mim?
A resposta rápida é sim, mas isso é um processo em constante construção/desconstrução e para tal eu preciso muito da sua ajuda, para me dar feedbacks para que o espaço seja realmente inclusivo e não seja apenas um interesse escrito.
O projeto atual possui um código de conduta, e não atuaremos com projetos que não tem um claro código de conduta.
Conclusão
Esse é um processo em desenvolvimento, por conta disso precisamos de todo feedback e colaboração de todas as pessoas para torná-lo cada vez melhor.
O objetivo principal dessa iniciativa é nos apoiarmos enquanto pessoas que trabalham com TI, pois no momento sinistro que vivemos no Brasil o que nos resta é apoio mútuo.
Agradecimentos
Obrigado a minha companheira que revisou esse texto.
Obrigado a somatorio que sempre revisa tudo que escrevo.
Obrigado também a lista de pessoas abaixo que também revisaram o texto: