<feed xmlns="http://www.w3.org/2005/Atom"> <id>https://amalrik.github.io/</id><title>CoffeeDuty</title><subtitle>My minimal experiment on technical writing.</subtitle> <updated>2026-04-14T01:28:30+00:00</updated> <author> <name>Amalrik Maia</name> <uri>https://amalrik.github.io/</uri> </author><link rel="self" type="application/atom+xml" href="https://amalrik.github.io/pt/feed.xml"/><link rel="alternate" type="text/html" hreflang="en" href="https://amalrik.github.io/"/> <generator uri="https://jekyllrb.com/" version="4.4.1">Jekyll</generator> <rights> © 2026 Amalrik Maia </rights> <icon>/assets/img/favicons/favicon.ico</icon> <logo>/assets/img/favicons/favicon-96x96.png</logo> <entry><title>Why Ruby blocks are misunderstood</title><link href="https://amalrik.github.io/pt/posts/ruby-yield/" rel="alternate" type="text/html" title="Why Ruby blocks are misunderstood" /><published>2026-04-11T10:00:00+00:00</published> <updated>2026-04-14T01:27:34+00:00</updated> <id>https://amalrik.github.io/posts/ruby-yield/</id> <content type="text/html" src="https://amalrik.github.io/posts/ruby-yield/" /> <author> <name>Amalrik Maia</name> </author> <category term="ruby" /> <category term="fundamentals" /> <summary>yield, honestly, is a word that translates poorly to other languages. The closest translation I could think in my native language (Portuguese) was “Ceder” (to yield) or “Desistir” (to give up), which doesn’t convey the concept well. Throughout my career, I’ve had the opportunity to work with programmers of different seniority levels, and I’ve been surprised how often Ruby blocks aren’t used pro...</summary> </entry> <entry><title>Por que blocos em Ruby são mal compreendidos?</title><link href="https://amalrik.github.io/pt/posts/ruby-yield-pt/" rel="alternate" type="text/html" title="Por que blocos em Ruby são mal compreendidos?" /><published>2026-04-11T10:00:00+00:00</published> <updated>2026-04-14T01:27:34+00:00</updated> <id>https://amalrik.github.io/posts/ruby-yield-pt/</id> <content type="text/html" src="https://amalrik.github.io/posts/ruby-yield-pt/" /> <author> <name>Amalrik Maia</name> </author> <category term="ruby" /> <category term="fundamentos" /> <summary>yield convenhamos é uma palavra que traduz de forma pobre para outras linguas. A tradução mais proxima que eu consegui pensar foi “ceder” o que não passa uma ideia boa do conceito. Na minha carreira eu ja tive oportunidade de trabalhar com programadores de diferentes niveis de senioridade e algo que me impressionou foi que o uso de blocos em ruby nem sempre é aplicado em todo o seu potencial. E...</summary> </entry> <entry><title>Having the cake and eating it too: Introduction to delegated types in rails</title><link href="https://amalrik.github.io/pt/posts/having-the-cake-and-eating-it-too/" rel="alternate" type="text/html" title="Having the cake and eating it too: Introduction to delegated types in rails" /><published>2026-04-07T13:40:00+00:00</published> <updated>2026-04-11T20:03:59+00:00</updated> <id>https://amalrik.github.io/posts/having-the-cake-and-eating-it-too/</id> <content type="text/html" src="https://amalrik.github.io/posts/having-the-cake-and-eating-it-too/" /> <author> <name>Amalrik Maia</name> </author> <category term="ruby" /> <category term="refactoring" /> <category term="design-patterns" /> <summary>lang: en Imagine you work for Connection CRM a vital tool for your sales and support team. Your boss asks you to develop an easy way to visualize different events in a single screen. The event types involve PurchaseActivities, CommentActivities and many more. # db/migrate/..._create_accounts.rb create_table :accounts do |t| t.string :name t.timestamps end # db/migrate/..._create_comment_...</summary> </entry> <entry><title>Stacked branches: why your AI agent code reviews will improve dramatically</title><link href="https://amalrik.github.io/pt/posts/stacked-branches-ai-agents/" rel="alternate" type="text/html" title="Stacked branches: why your AI agent code reviews will improve dramatically" /><published>2026-03-31T13:00:00+00:00</published> <updated>2026-04-11T20:03:59+00:00</updated> <id>https://amalrik.github.io/posts/stacked-branches-ai-agents/</id> <content type="text/html" src="https://amalrik.github.io/posts/stacked-branches-ai-agents/" /> <author> <name>Amalrik Maia</name> </author> <category term="git" /> <category term="workflow" /> <category term="ai" /> <summary>lang: en You’ve just finished explaining a feature to your AI coding assistant. After a few minutes of typing, it proudly announces: “Done! I’ve made changes to 12 files across 4 different subsystems.” You open the pull request and your heart sinks. 847 lines changed. A mix of bug fixes, refactoring, and the actual feature you asked for—all lumped together in a single massive PR. This scenar...</summary> </entry> <entry><title>RubyGems, Bundler, and Docker: The Complete Guide to Private Gem Authentication</title><link href="https://amalrik.github.io/pt/posts/rubygems-bundler-docker/" rel="alternate" type="text/html" title="RubyGems, Bundler, and Docker: The Complete Guide to Private Gem Authentication" /><published>2025-11-21T00:00:00+00:00</published> <updated>2026-04-11T20:03:59+00:00</updated> <id>https://amalrik.github.io/posts/rubygems-bundler-docker/</id> <content type="text/html" src="https://amalrik.github.io/posts/rubygems-bundler-docker/" /> <author> <name>Amalrik Maia</name> </author> <category term="ruby" /> <category term="docker" /> <category term="devops" /> <category term="bundler" /> <summary>lang: en Have you ever faced a situation where bundle install runs perfectly in CI or inside a Docker container, but fails miserably on your local machine with a Bad username or password error? I recently encountered this exact scenario while configuring a private repository (JFrog/Artifactory). I learned some valuable lessons about how Ruby manages configurations and realized that to have a ...</summary> </entry> </feed>
