As melhores ferramentas para codificação em equipes
Shutterstock / REDPIXEL. PL
Ao trabalhar com uma equipe de programadores, qualquer coisa que possa ajudar o processo a funcionar sem problemas e no caminho certo vale muito tempo e dinheiro. Discutiremos algumas ferramentas diferentes que podem ajudar sua equipe a ficar mais organizada.
Solução Git hospedada (Gitlab, GitHub, etc.)
É claro que, se você estiver trabalhando com outras pessoas, precisará de alguma forma de controle de origem que todos possam acessar. Mas quando se trata de escolher o correto para sua equipe, há algumas opções a serem consideradas.
Primeiro, existe o GitHub, que é de longe o provedor Git mais comum. É ótimo e oferece vários recursos, mas se concentra mais na colaboração pública de código aberto, em vez de atender às necessidades de equipes privadas. O GitHub oferece repositórios privados ilimitados gratuitamente desde o ano passado, o que será adequado para a maioria dos projetos pequenos. Se você precisar hospedá-lo ou precisar de recursos empresariais, poderá pagar pelo GitHub Enterprise, que custa US $ 21 por usuário, por mês, com um mínimo de 10 usuários.
Se você quiser algo mais focado em equipes privadas, considere o GitLab. Além de ser uma solução Git hospedada com todos os recursos, também oferece inúmeras ferramentas para equipes que desejam adotar um fluxo de trabalho do DevOps. Os problemas do GitLab são um quadro Kanban básico, como o Jira, usado para rastrear problemas. O GitLab CI pode executar compilações e testes automatizados de maneira semelhante ao Jenkins, uma parte crucial de um pipeline de CI / CD.
Você também pode executar o Community Edition gratuito e de código aberto do GitLab em seus próprios servidores, em seu próprio domínio. Se você deseja pagar por mais recursos, a versão básica é de US $ 4 por usuário, por mês, com a versão padrão com preço semelhante ao GitHub, a US $ 19 por usuário, por mês.
Essas são as duas grandes, mas existem muitas outras soluções por aí. O BitBucket da Atlassian se integra muito bem ao Jira e Confluence, e o CodeCommit da AWS funciona sem problemas com sua solução CodePipeline CI / CD.
Acompanhamento de problemas (Jira)
O desenvolvimento de software é confuso e, sem orientação, pode ser muito difícil trabalhar juntos. Ter algum tipo de acompanhamento de problemas é uma necessidade para fazer qualquer coisa.
A solução mais popular e destacada para isso é o Jira da Atlassian Software. Jira é uma placa Kanban "basicamente" individual "questões" ” são representados por cartões em uma lista. Várias listas estão em um quadro, como Backlogged, In Progress e Done. Os cartões passam de uma lista para outra com base em onde estão no desenvolvimento. Os problemas podem ser comentados, vinculados a outros problemas, classificados em grandes blocos de recursos e atribuídos a outros membros da equipe. Você pode ler nosso guia para usá-lo aqui para saber mais.
Se você não quer pagar pelo Jira, os problemas do GitLab são uma alternativa gratuita, e o Trello é uma solução Kanban simples que não é apenas para o desenvolvimento de software.
CI / CD automatizado (Jenkins, CodePipeline)
Integração Contínua / Implantação Contínua (CI / CD) é o processo de liberação de novas atualizações de código com muita frequência, geralmente pelo menos uma vez por dia. É muito difícil acompanhar esse processo sem algum tipo de automação para lidar com as partes irritantes, como criar e testar novos lançamentos e enviar atualizações para seus servidores.
Jenkins é um servidor de automação, originalmente escrito para Java. Pode fazer muitas coisas, mas é comumente usado para automatizar compilações e testes. Com os plug-ins, ele pode ser estendido para automatizar a implantação em seus servidores.Se você estiver na AWS, poderá usar seu próprio pipeline de CI / CD, chamado CodePipeline. Isso automatiza todas as etapas do desenvolvimento, do controle de origem, à criação e teste e implantação de vários serviços da AWS, como EC2, ECS e até Lambda.
Compartilhamento de arquivos e documentos (G Drive e Confluence)
Esta é uma parte importante, mas muitas vezes esquecida, do kit de ferramentas de qualquer equipe, que você não quer depender de enviar e-mails a outras pessoas a cada documento. Em vez
Para muitas pessoas, o G Suite do Google (especificamente o Google Drive) funciona bem para isso. Se você não deseja pagar pelas contas de todos os membros da sua equipe, uma pasta do Google Drive compartilhada com seus e-mails pessoais funcionará bem. O Dropbox é outra solução, oferecendo também uma versão comercial para clientes pagantes.
Se você está procurando algo um pouco mais profissional, talvez queira procurar o Confluence, da Atlassian. Confluence é um local de trabalho colaborativo para trabalhar juntos em documentos, como o G Drive, mas para clientes corporativos. A melhor parte é que, como Jira, é grátis para até 10 usuários e, depois disso, custa US $ 5 por usuário, por mês.
Docker
O Docker é uma ferramenta para executar aplicativos dentro de contêineres, que empacota todas as dependências e códigos que seu aplicativo precisa para executar dentro de um único arquivo facilmente distribuível.
O benefício de executar seu aplicativo no Docker é que seu ambiente de desenvolvimento será exatamente o mesmo que o seu ambiente de produção e exatamente o mesmo que o ambiente de desenvolvimento de todos os outros, aliviando o problema dele. 8217; está quebrado na minha máquina!
O Docker também facilita as implantações. Como você não precisa se preocupar com o servidor em que é executado, é possível executar o Docker em qualquer coisa, incluindo serviços como o Elastic Container Service da AWS, que executa contêineres sem provisionar servidores. Se você precisar gerenciar toda uma frota de contêineres, ferramentas de orquestração como o Kubernetes também podem lidar com isso.
Não será para todos, pois requer ensinar a todos os seus desenvolvedores como realmente usar o Docker e pode definitivamente ficar complicado. Mas, os benefícios para a maioria das equipes superam muito a dor de cabeça inicial e é, no mínimo, algo a considerar. Você pode ler o nosso guia sobre como empacotar seu aplicativo com o Docker para começar.
Via: How to Geek
Nenhum comentário