Tomando decisões técnicas usando RFCs

No processo de desenvolvimento de software as equipes precisam tomar várias decisões importantes, desde linguagens de programação, arquiteturas, processos, ferramentas, etc. Conforme o projeto vai tornando-se maior, com o crescimento da equipe a tomada destas decisões começa a ficar cada vez mais complexa e importante. Além disso, como garantir que as decisões tomadas no começo do projeto fiquem documentadas para que as novas pessoas na equipe entendam os motivos e contextos que levaram o time a determinada conclusão?...

May 15, 2021 · Elton Minetto

Participação no Podcast Vida De Programador

O grande André Noel me convidou para participar de uma edição do seu podcast, o Vida de Programador. Conversamos sobre carreira, PHP, Go e outros assuntos relacionados. É sempre um prazer bater papo com o André porque é garantia de diversão e conteúdo de qualidade....

April 26, 2021 · Elton Minetto

Daily meeting centrada no trabalho e não nas pessoas

Se você trabalha com desenvolvimento de software provavelmente já participou de uma “daily meeting”, “daily scrum”, ou “stand-up meeting” (apesar deste nome ter perdido um pouco do sentido durante a pandemia, já que estamos todos sentados na frente dos nossos computadores). Uma das cerimônias mais comuns das metodologias ágeis como Scrum e Kanban, tradicionalmente ela acontece com as pessoas respondendo as perguntas: O que você fez ontem? O que você fará hoje?...

April 17, 2021 · Elton Minetto

Fazendo o controle de acesso de uma API usando Go e Casbin

Quando pensamos em segurança, um dos conceitos mais básicos é o dos 3As: Authentication, Authorization e Accounting (autenticação, autorização e contabilização). Sendo: Authentication: provê formas de identificar um usuário, geralmente usando um nome de usuário (username) e senha. Além disso, podemos usar soluções como oAuth e tokens JWT para tornar o processo mais seguro. Authorization: foco deste post, o processo de autorização determina o que um usuário tem permissão de acessar no sistema....

April 1, 2021 · Elton Minetto

Curso Desenvolvimento Web com Go

Finalmente tirei do papel um velho projeto pessoal, a criação de um curso sobre a linguagem Go. Usei como base o conteúdo de uma disciplina de 8 horas/aula que eu havia ministrado em algumas universidades e transformei em 11 pequenos vídeos. O conteúdo passa por uma breve introdução à linguagem Go e foca na construção de uma aplicação simples, uma API que gera conteúdos em JSON e em HTML. Com isso fui capaz de cobrir alguns tópicos importantes como arquitetura em camadas, testes, interfaces, módulos e outras pequenas dicas que espalhei pelos videos....

March 23, 2021 · Elton Minetto

Microsserviços em Go usando Go kit

Em um dos capítulos do livro Microservice Patterns: With examples in Java o autor cita o padrão “Microservice chassis”: Crie serviços em um framework ou coleção de frameworks que tratem de questões transversais como exception tracking, logging, health checks, configuração externalizada e rastreamento distribuído. Ele vai além e cita alguns exemplos de frameworks que implementam estes conceitos em Java e em Go: Gizmo Micro Go kit Depois de uma pesquisa escolhi o Go kit pois é um dos mais populares, está sendo atualizado em uma velocidade constante e gostei bastante da arquitetura que ele propôe....

February 6, 2021 · Elton Minetto

Dicas para devs: desafio técnico

Na última década ou mais, uma das tarefas mais importantes que eu tenho desempenhado é a contratação de pessoas para trabalharem como dev nos times que eu gerencio. Parte do processo de contratação geralmente é a análise de código de um desafio técnico e neste post vou citar algumas dicas que podem ser úteis para quem está avaliando ou sendo avaliado. As expectativas em relação ao código mudam bastante de acordo com o nível de senioridade da vaga....

December 18, 2020 · Elton Minetto

Os influencers devs

Quem me conhece sabe que eu sou meio avesso a polêmicas, mas recentemente comecei a refletir sobre o momento que a comunidade de desenvolvimento está passando. E algo vem me preocupando um pouco: a chegada da cultura dos influencers na comunidade. Neste momento você pode estar pensando duas coisas: Sempre existiram pessoas produzindo conteúdo para devs; Seu hipócrita, você mesmo produz conteúdo faz muito tempo :) Concordo. Sempre existiu, e espero que continue existindo, pessoas que produzem conteúdo relacionado ao desenvolvimento de software....

September 24, 2020 · Elton Minetto

Fim das newsletters de PHP e Go

Depois de anos gerenciando duas newsletters, sobre PHP e Go, hoje tomei a difícil decisão de finalizar o projeto. Na edição de despedida que mandei para os assinantes expliquei um pouco o contexto: Foram 300 edições (são 69 meses, ou mais de 5 anos) lendo e publicando notícias sobre PHP, a linguagem com que eu trabalhei por mais tempo. E por que estou finalizando este projeto de tanto sucesso? Acredito que alguns já estejam familiarizados com o termo “carreira em Y”....

August 10, 2020 · Elton Minetto

Go vs Elixir, primeiras impressões

Antes de tudo uma explicação: estou escrevendo este post baseado nas minhas impressões depois de aproximadamente um mês lendo bastante sobre Elixir, vendo linhas e linhas de código e finalizando algumas tarefas com a linguagem. Por isso já deixo aqui minhas desculpas por erros grosseiros que eu possa cometer quando estiver escrevendo sobre a linguagem. Porque escrever este post agora, com pouca experiência? São dois motivos: o primeiro é que uma das melhores formas de aprender é ensinar algo, então este post está me ajudando a fortalecer o pouco que já conheço....

August 5, 2020 · Elton Minetto