Neste artigo mostro como usar a biblioteca testcontainers para configurar dependências externas dos testes como bancos de dados e brokers de mensagem, de forma simples e confiável
Code Coverage é uma métrica útil? Vale a pena buscar 100% de cobertura? Alta cobertura de código garante qualidade? Neste artigo exploro essas e outras questões.
Neste post, apresento o projeto de atualização do livro BASIC Computer Games para novas linguagens de programação, falo sobre como participar, e compartilho um pouco da minha experiência portando o jogo Life para C#.
Neste artigo, apresento uma forma intuitiva de decidir onde declarar cada variável local de um método, que também é fácil de ensinar para quem está aprendendo clean code.
Quais tipos de testes devemos evitar em microserviços, e quais devemos adotar? Este artigo explora essa questão super importante para um projeto saudável.
Qual é o jeito mais prático de depurar o código de um pacote NuGet? Neste artigo, mostro como utilizar o Source Link para criar uma experiência de depuração sólida e prática.
Neste artigo, mostro como usar o MinVer para versionar os assemblies de projetos .NET. Para ilustrar, apresento como estruturei o fluxo de publicação da minha biblioteca open-source ForeverFactory com versionamento baseado no MinVer.
Neste artigo, compartilho a estratégia que meu time utilizou para nivelar rapidamente um time diverso e bastante novato em tecnologia para trabalhar com uma tech stack moderna e complexa, com resultados surpreendentes
Neste artigo, apresento um overview de como a ferramenta Tilt pode acelerar o loop de desenvolvimento de apps com Kubernetes usando um cluster K8s local.
Aprenda como criar um app de linha de comando com o Gluegun, e entenda como usei a ferramenta para criar o Replicante, meu mais novo projeto open-source.
Neste artigo, falo sobre como o hábito de usar caderno e caneta de forma estratégica tem me ajudado a pensar profundamente sobre os temas importantes na minha vida, e suportar mudanças planejadas.
Neste artigo, apresento brevemente a ferramenta yUML e como usá-la em conjunto com scripts Python para gerar um diagrama de caso de uso com base na estrutura de uma aplicação.
Neste artigo, apresento uma forma de aplicar o conceito de Arquitetura Gritante nas nossas aplicações usando o MediatR, de modo a ressaltar o valor de negócio.
Neste artigo, apresento o funcionamento da biblioteca MediatR, e também formas como ela pode ajudar a estruturar nossas aplicações mais voltadas ao negócio.
Descubra o que é pair programming, e como aplicar uma das melhores técnicas para desenvolver soluções com mais qualidade e eficiência! Como um plus, você também vai aprender a usar o pareamento ping-pong para treinar e ensidar TDD.
Nesta resenha eu falo sobre como o livro Apprenticeship Patterns é um baú de tesouros repleto de sabedoria sobre a carreira de desenvolvedor; um guia para quem está no começo e no meio da sua jornada.
Você já imaginou como seria implementar um sistema de busca totalmente off-line, sem servidor nenhum? Neste artigo eu mostro como implementei esse sistema para o meu blog usando Hugo e Lunr.js!
Já ouviu falar em Arquitetura Gritante? Neste artigo exploramos o que torna gritante a arquitetura de uma aplicação, e como isso pode beneficiar um projeto de software.
Aprenda a usar testes de mutação para avaliar a qualidade de uma suíte de testes. Neste artigo, mostro como usar o Stryker para melhorar os testes de aplicações C#.
Aprenda a agilizar o worflow de publicação do seu blog feito com Hugo usando entrega contínua (continuous delivery) com GitHub Actions para atualizar automaticamente a página no GitHub Pages.
O setup dos seus testes é chato e repetitivo? Facilite sua vida usando Test Data Builders! Neste artigo mostramos como funcionam e simplificam seus testes.