While building EstateSync, I created many tables of varying complexity and length, but they still shared a lot of common patterns. Maintaining a consistent UI became increasingly challenging as I was using Tailwind, and I noticed that view code was being duplicated. That’s when I decided to explore ViewComponent and Phlex. While Phlex seemed interesting and promising, for my particular use case I preferred the simplicity of combining .erb files with ViewComponents.
…When working on multiple local projects, each running on different ports, it becomes inconvenient to remember port numbers and manually update /etc/hosts
for every new project.
Our goal was to make development feel like production — where each project is accessed via its own domain — while keeping the setup flexible, simple, and easy to maintain.
Every production-grade Rails project should proactively address security and code quality. The Ruby ecosystem offers a rich collection of gems that help you do just that - catching bugs early, enforcing best practices, and protecting your users and data.
…As a senior software engineer primarily working in Ruby but with experience across Go, Node.js, and Python, I’m always evaluating tools and frameworks that promise to make our systems smarter, faster, or more adaptive. Recently, two acronyms from the world of LLMs and AI infrastructure have been gaining traction in mainstream development: RAG (Retrieval-Augmented Generation) and MCP (Model Control Plane). Both offer powerful abstractions that can benefit modern software architectures far beyond machine learning labs.
…While working on a Rails app recently, I stumbled across a frustrating bug that only appeared in the test environment. Everything worked perfectly in the development console. Models loaded fine. Associations were intact. My concern methods behaved exactly as expected. But then my test suite started throwing mysterious NoMethodError
s—complaining that an ActiveRecord model was missing associations it clearly had.
Alberto Fortin’s recent post on dialing back LLM usage resonated with me. Like many developers, I’ve found AI to be both a productivity godsend and a source of friction. It can feel like magic — until it quietly leads you down the wrong path.
…