InnerSource
Nas últimas décadas vimos o surgimento de uma revolução no mundo do software, o chamado “fenômeno do open source”. Sistemas operacionais, linguagens de programação, CMS, LMS, o alcance teve impacto em todas as áreas da sociedade. E esse impacto pode ser replicado dentro de nossas empresas!
Dentre alguns pontos que podemos citar como “disrupções” e valores adotados pelos projetos open source estão:
Comunicação
Como equipes distribuidas entre diversos países e fusos conseguem trabalhar juntas e gerar tanto valor? A resposta foi a criação de ferramentas como IRC, Slack, comunicações assíncronas através de ótima documentação e comentários em Pull Requests e fóruns.
Transparência
Todos podem acompanhar o trabalho dos projetos e são incentivados a contribuir com sugestões e correções. Não existem silos de informação ou permissões especiais para observar o andamento das alterações.
Colaboração
A colaboração é o centro de todo o processo de desenvolvimento em projetos open source. Pessoas e equipes com experiências diferentes podem contribuir com seu conhecimento e talento para resolver problemas e criar novas tecnologias numa velocidade nunca antes vista.
Comunidade
Ao poder colaborar, observar e ter seu trabalho observado é criado um senso de comunidade, de fazer parte de algo maior. É comum ver paixões serem criadas ao redor de projetos e comunidades com pessoas defendendo e melhorando seus produtos como se fossem seus.
Meritocracia
A meritocracia é uma das consequências do processo de colaboração e transparência. Com o tempo os contribuidores mais ativos acabam destacando-se e sendo reconhecidos por seus pares como autoridades em seus projetos. Isso gera um aumento de engajamento, o que alimenta todo o ciclo.
No coração de toda esta revolução estão ferramentas de gerenciamento de versões, em especial o git/Github/Gitlab, comunicação, integração contínua, revisão de código, testes, build, etc. O ambiente parece um pouco caótico mas é possível gerenciá-lo e os resultados são visíveis.
Mas como isso se relaciona com as empresas? Essa é uma pergunta que vem sendo respondida por grandes empresas como o Paypal, que vem implementando estes conceitos com grande sucesso, e também startups como o CompuFácil.
No CompuFácil, cliente e parceiro da Coderockr/Planrockr, implementamos desde o início conceitos como repositórios abertos para todas as pessoas da equipe, Pull Requests e pair review, TDD, integração contínua, automatização de builds e deploys, documentação rica e viva dentro de cada repositório, etc. Essas decisões foram importantes para criarmos um senso de comunidade e colaboração entre a equipe além de aumentar a qualidade da comunicação devido a algumas pessoas trabalharem remotamente.
E você? O que acha destas ideias? Você já vem implementando conceitos similares em sua empresa? Por favor contribua com suas opiniões, dúvidas e sugestões.