Why I finally tried OpenClaw (and how I'm making it safe)
I avoided running agents with real access for a year. The unlock wasn't better models or tighter sandboxes. It was giving the agent its own identity.
Recent content on Rida Al Barazi
I avoided running agents with real access for a year. The unlock wasn't better models or tighter sandboxes. It was giving the agent its own identity.
Building multi-channel AI agents means dealing with APIs that silently fail. Slack returned 200 OK while dropping my Work Objects. Here's what went wrong and the pattern that emerged.
Set up automated Kamal deployments with 1Password secrets management. The same .kamal/secrets file works for manual deploys and GitHub Actions CI/CD.
Two quick fixes for cryptic APT hash mismatches and missing moby packages when building devcontainers on Debian Trixie.
Give your coding agent a browser and a markdown script. With Playwright MCP, the agent can verify its own work end-to-end—no human clicking required.
Step-by-step guide to rendering OpenAI ChatKit MCP tool results as rich UI widgets in a Ruby on Rails app using server-side hydration and SSE streaming.
The difference between good and bad AI coding sessions isn't the model. It's what you give the agent before it starts.
AI-native apps aren't about having AI features. They're about control transfer: how control flows between user and agent as work progresses from intent to output.
The MCP spec expects oauth at connect time, before you know what tools you need. Here's the chicken-and-egg problem I hit and the workaround I landed on.
What I learned from 12 months of coding with AI agents—and why I built isolated dev environments to make them actually useful.
A deep dive into implementing preview environments for pull requests using Kamal deployment, PostgreSQL schema isolation, and GitHub Actions automation.
A deep dive into implementing Model Context Protocol (MCP) servers in a Rails application, covering remote HTTP, native Ruby, and Docker subprocess approaches.
This week's learning log covers HumanLayer's 12-Factor Agent patterns, layered prompt injection defenses, and the architecture behind production-ready voice interfaces.
A story about how I figured out my running shoes with the help of AI after struggling with knee pain and bad advice.
I used to write to learn, to reflect. That’s how I entered the world of Ruby and Ruby on Rails. In my early days, blogging was both my thinking tool and my amplifier. I’d write about what I was learning—Rails conventions, design patterns, developer tools—and through that process, I’d find clarity. I also built connections. People read, commented, shared, and sometimes offered opportunities. That’s…