AI Spec-Driven Development com Kiro e outras IDEs agênticas
Descubra como AI Spec-Driven Development resolve Context Drift e melhora qualidade do desenvolvimento com IA usando Kiro e IDEs agênticas
Explore todos os artigos sobre desenvolvimento de software, arquitetura e melhores práticas.
Descubra como AI Spec-Driven Development resolve Context Drift e melhora qualidade do desenvolvimento com IA usando Kiro e IDEs agênticas
Por que Vibe Coding é incrível, mas não é suficiente para desenvolver software de qualidade profissional?
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#.
Descubra como visualizar o trabalho de centenas de pessoas usando centenas de repositórios Git usando a ferramenta Gource.
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.
Neste artigo, apresento o ForeverFactory, biblioteca de código aberto de minha autoria focada em facilitar a criação de objetos para testes.
Neste artigo, exploro em detalhes como adicionar suporte ao Source Link em uma biblioteca publicada no NuGet.
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.
Quer saber uma forma simples de criar um gerador de microserviços? Neste artigo eu mostro como usar a ferramenta Replicante para isso.
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.
Neste artigo, mostro como criar um cluster Kubernetes para desenvolvimento local usando as feramentas Kind e ctlptl.
Neste artigo, apresento em detalhes o Replicante, um processador de templates de projetos de software totalmente agnóstico de tecnologia.
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!
Aprenda a visualizar o desenvolvimento de um projeto de software usando a ferramenta Gource e o seu sistema de controle de versão favorito.
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.
Pattern matching em C#? Neste post exploramos como este recurso de programação funcional pode melhorar nossos programas em C# 8.0.
Aprenda a implementar Health Checks com as extensões do ASP.NET Core 3.0. Muito útil para configurar liveness probes do Kubernetes!
Descubra como rodar testes de integração de forma rápida e fácil Docker usando o sistema de arquivos tmpfs.
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.
Neste artigo exploramos boas práticas e alguns antipatterns que podem atormentar a implementação de test data builders em C#. Confira!
O setup dos seus testes é chato e repetitivo? Facilite sua vida usando Test Data Builders! Neste artigo mostramos como funcionam e simplificam seus testes.