No meu post anterior sobre IA e desenvolvimento de software, algumas pessoas entenderam minha posição como se eu estivesse negando as melhorias reais que a IA traz. Esse não era bem o ponto.
Eu uso IA na maioria dos meus projetos pessoais hoje, e uso porque… bem, funciona. Ela melhora velocidade, me ajuda a explorar código, deixa implementações mais rápidas e diminui o custo de transformar ideias em algo que roda.
Post rápido:
Por alguma razão, o meu post sobre eleição de lider em spring boot continua sendo um dos mais acessados nesse blog.
Contudo, aquela solução parece não ser mais válida, visto que usava Jedis, que não está mais disponível nas últimas versões do spring.
Então, para cobrir esse cenário para quem tiver essa necessidade específica, eu desenvolvi um pequeno starter que usa locks de tabelas para disponibilizar um mecanismo simples de eleição de líder.
Esse post vai ser só uma reclamação sem solução real, mas vale como registro próprio da percepção do nosso tempo. Esteja avisado.
Em outubro/2025, a principal área da AWS ficou offline por conta de um problema de DNS no DynamoDB. Em novembro/2025, a Cloudflare ficou fora devido a um problema de mudança de comportamento de query e um código sem proteção suficiente. Em ambos os casos, “a internet”, essa entidade metafísica, sofreu com muitos serviços ficando offline ou inoperáveis.
Se você passa algum tempo acompanhando discussões entre desenvolvedores hoje em dia, é impossível evitar o tema do desenvolvimento assistido por IA. Desde ferramentas de geração de código até Copilots completos que prometem construir aplicações inteiras, a narrativa geralmente é algo assim:
“As pessoas vão apenas descrever o sistema e a IA vai construir tudo. Não vai mais precisar aprender a programar”
Como quase sempre acontece, a realidade tem um pouco mais de nuance.
Tenho acompanhado poucos canais no youtube, mas um que sempre que eu vejo eu fico satisfeito é o do Renato Augusto.
Recentemente vi o vídeo sobre o encurtador de URLs que ele fez. Num geral, não tem como discutir que a solução dele é provavelmente a melhor possível dadas as premissas do problema:
Requisitos Funcionais: Encurtamento de URL: dado um URL longo -> retornar URL muito mais curto Redirecionamento de URL: dado um URL mais curto -> redirecionar para o URL original Requisitos não funcionais: O sistema deve suportar 100 milhões de URLs geradas por dia O tamanho da URL encurtada deve ser o mais curto possível Somente números (0-9) e caracteres (az, AZ) são permitidos na URL Para cada 1 operação de gravação no banco de dados, haverão 10 operações de leitura O comprimento médio das URLs armazenadas é de 100 bytes URLs devem ser armazenadas pelo período mínimo de 10 anos O sistema deve operar em modo de alta disponibilidade (24/7) Estimativas Operações de gravação: 100 milhões de URLs por dia = 100.