Efefuando testes de benchmark Em Go

Efetuando testes de benchmarking em Go
Como saber se aquela função ou lib é mais performática ou não?
Teste de Benchmark em programação é o ato de comparar de forma eficiente a performance entre algoritmos, de forma a escolher qual abordagem a seguir em determinados cenários. Podemos aplicar também na hora de decidir quais bibliotecas externas ou frameworks e a se usar, além de avaliarmos se alguma refatoração vai trazer maléfico para nosso código. A linguagem Go já tem por padrão ferramentas para esses tipos de testes, tornando a experiência mais amigável e sem a necessidade de ferramentas externas.
Read more →

Instalação do Portainer

Tela inicial do Portainer com os containers existentes
Tela inicial do Portainer com os containers existentes
Portainer é uma aplicação Open Source para gerenciamento do Docker em máquinas locais ou servidores. Através de sua interface gráfica é possível visualizar e editar seus Containers, Imagens, Volumes e etc. E sua instalação é muito fácil pois o mesmo é distribuído como uma imagem Docker. Basta executar os seguintes passos: Criar um volume para persistir as suas configurações: docker volume create portainer_data Rodar o comando para o docker criar o container e passar alguns parâmetros de configurações iniciais: docker run -d -p 9000:9000 --name=portainer --restart=always -v /var/run/docker.
Read more →

Você sabe o que significa ‘Disagree and Commit’ ?

Várias pessoas no trabalho escuntando o que uma está falando
Vamos tentar por esse caminho?
Na semana passada, em 3 situações pude ouvir e ver ser praticada a técnica de ‘Disagree and Commit’ durante algumas decisões técnicas e de rumo do produto/negócio. Essa incidência me chamou atenção pela recorrência e pelo fato de já termos tornado isso normal dentro da Trybe e do nosso time. Pensando num contexto de um time pequeno (até 3 pessoas), as tomadas de decisões normalmente são mais fáceis devido às vezes a proximidade maior das pessoas e até a abertura para comunicação e explicacão das ideias.
Read more →

Tutorial com driver oficial para de Go para MongoDB

Logo do Golang + MongoDB
Logo do Golang + MongoDB
Após anos usando drivers feitos pela comunidade como mgo e globalsign/mgo, ano passado a MongoDB anunciou que estava construindo a sua própria solução. No último março foi lançada a versão 1.0.0. Então vamos ver como efetuar operações simples utilizando o driver oficial. Para início, você precisa obter o driver usando o comando go get: go get -u go.mongodb.org/mongo-driver/mongo Assumindo que a instalação do seu MongoDB está usando a configuração padrão, o seu código de conexão deverá ser assim:
Read more →

Criando e disponibilizando uma aplicação no Homebrew, usando o GoReleaser

Logo do goreleaser
Logo do goreleaser
O homebrew é um dos principais Gerenciadores de pacotes para macOS, que através da linha de comando te permite instalar centenas de aplicativos de forma fácil e prática. Além disso possui ferramentas para sempre atualizá-lo quando necessário. Por ser um projeto Open Source, ele te possibilita a criar sua própria Formula e assim disponibilizar suas aplicações e utilitários. Vou mostrar a seguir como fazer utilizando o GoReleaser. No meu dia a dia, volta e meia eu preciso gerar uma chave UUID válida e normalmente recorria para algum site que a gerasse para mim, como por exemplo esse aqui.
Read more →