The Rising Cost of Being an AI-Powered Developer

There’s a strange irony sitting at the center of modern software development. Personally, since Ruby on Rails came out, this is the moment in my career where I’ve felt the most productive and had the most fun. At the same time, I’ve never paid more for the privilege. I’ve been writing software professionally for almost 20 years. When I got started, the barrier to entry was remarkably low. My first tech stack was LAMP. To write PHP + MySQL you could get away with a fairly inexpensive computer, a text editor, and an internet connection. Everything else (the language, the framework, the database, the deployment tools) was both libre and gratis. ...

27 February 2026 · 5 min · Carlos Souza

Prompts, Rules, Tools, MCP e Skills: Decifrando a Sopa de Letrinhas dos Coding Agents

Se você está acompanhando a evolução dos agentes de código com IA, provavelmente já se deparou com uma sopa de letrinhas e conceitos que parecem ter sido inventados na semana passada: Prompts, Rules, Tools, MCP, Skills… A boa notícia é que esses conceitos não são tão complicados quanto parecem. A má notícia? Quase ninguém explica direito a diferença entre eles. Então nesse post eu vou te ajudar com isso. Começando pelo Básico: Prompts Prompts são as instruções em linguagem natural que você dá para o agente. É literalmente o que você quer que ele faça. ...

2 February 2026 · 8 min · Carlos Souza

Handling Gaps in Time-Series Data with PostgreSQL's generate_series() and Ecto

Introduction Consider a monitoring system for a weather station. A sensor in the field collects temperature readings every hour and reports them back to the system, but occasionally goes offline due to power outages or maintenance. When generating daily reports, the data shows gaps. Querying the readings table for a particular day returns only the hours when the sensor was operational. Asking users to figure out which hours are missing feels like poor UX. ...

26 January 2026 · 6 min · Carlos Souza

Agentes de IA Colaborativos: Um Case Study com CrewAI e Masumi Network

A Idopter Labs conquistou o terceiro lugar em uma hackathon de Agentes de Inteligência Artificial, desenvolvendo uma prova de conceito inovadora que conecta inteligência artificial à blockchain. O prêmio foi concedido pela Masumi Network, uma organização alemã que está criando uma rede financeira voltada para Agentes de IA. Colaboração entre Agentes Estudos recentes na área de IA apontam que o maior avanço nos sistemas de agentes inteligentes não vem apenas da evolução dos grandes modelos de linguagem (LLMs como GPT, Gemini e DeepSeek), mas da capacidade de fazer agentes trabalharem em equipe de forma colaborativa. Quando colaboram, eles conseguem chegar a soluções mais rápido e com muito mais qualidade do que quando atuam sozinhos. ...

26 May 2025 · 5 min · Carlos Souza

ElixirConf US 2023

Em setembro, Orlando voltou a ser palco da ElixirConf US após 7 anos desde sua última edição na cidade. Tive o privilégio de participar novamente desse encontro de três dias, repleto de palestras sobre variados temas relacionados ao ecossistema Elixir e BEAM, organizadas em três trilhas simultâneas. A qualidade das palestras foi tão alta que se tornou um desafio decidir qual assistir! A seguir, faço um resumo das que tive a oportunidade de acompanhar. ...

20 September 2023 · 7 min · Carlos Souza

The most simple way to interact with the Cardano blockchain using the command line

In this post we’ll learn one the most simple approaches to interacting with the Cardano blockchain using the command line. The command line is the lowest level for interacting with Cardano before using one of its programming language libraries. With the cardano command line, we can send commands directly to a cardano node using the cardano-cli on Linux, Mac or Windows. The Cardano node The Cardano node is the most important and fundamental element of the network. ...

16 July 2022 · 5 min · Carlos Souza

Dicas para conseguir um emprego na área de tecnologia

Esse artigo é um resumo da conversa que tive com meu amigo Zeca no episódio número 15 do Espresso Tech. Nesse episódio, demos 5 dicas para aqueles que desejam buscar um emprego na área de tecnologia 👊🏻 Essas dicas foram selecionadas baseadas na nossa experiência atuando na área de tecnologia há mais de 15 anos — tanto no papel de empregado em busca de novas oportunidades e novos projetos, quanto no papel de empregador avaliando candidatos e contratando novos membros para a nossa equipe na Idopter Labs. ...

15 June 2022 · 5 min · Carlos Souza

Selects dinâmicos com LiveView

A utilização de selects dinâmicos é uma excelente forma de filtrar uma listagem muito grande e tornar a navegação de uma aplicação mais amigável. Neste post iremos construir selects dinâmicos com Phoenix e LiveView. A aplicação de exemplo é uma simples página de listagem de guitarras. (O segundo select é preenchido dinamicamente, de acordo com o valor do primeiro) Uma guitarra pertence a uma marca, como Gibson ou Fender. Cada marca oferece algumas opções diferentes de modelo, como Les Paul e SG no caso da Gibson, ou Stratocaster e Telecaster no caso da Fender. ...

24 March 2022 · 4 min · Carlos Souza

A interação mais simples com a blockchain da Cardano via linha de comando

Neste post aprenderemos uma das formas mais simples de interação com a blockchain da Cardano através da cardano-cli no Mac OS. A comunicação com a blockchain da Cardano pela linha de comando é feita através de interações com um nó, ou “node”. Um nó é o elemento fundamental e mais importante da rede. A blockchain é uma rede de nós que comunicam-se entre si e executam diferentes papéis, como: 1- Execução do protocolo. ...

7 February 2022 · 5 min · Carlos Souza

Recuperando Arquivos deletados no AWS S3 através da CLI

Neste post iremos aprender como utilizar a AWS CLI para recuperar objetos deletados em um bucket S3. Ativação de Versionamento de Objetos A recuperação de objetos deletados é possível 🚨 apenas em buckets com versionamento habilitado 🚨. Por padrão, ao criarmos novos buckets, a funcionalidade de versionamento não é habilitada automaticamente. Para verificar se um bucket S3 possui versionamento, podemos executar o comando a seguir: aws s3api get-bucket-versioning --bucket guitar-store Neste exemplo, o comando irá retornar o status de versionamento do bucket guitar-store. Um retorno vazio significa que o versionamento não está habilitado. ...

18 December 2021 · 3 min · Carlos Souza