# albertoarena.it > A blog by Alberto Arena, Senior Software Engineer, on Laravel, AI-assisted engineering, and web development. Alberto Arena is a Senior Software Engineer based in Sicily, Italy, with a background in PHP/Laravel, Shopify and headless commerce, and AI-assisted engineering. More at https://albertoarena.it/pages/about/. ## Cheat sheets - [Cheat sheets](https://albertoarena.it/cheatsheets/): Dense, printable reference sheets for the tools and patterns Alberto uses. - [Spatie Laravel Event Sourcing Cheat Sheet](https://albertoarena.it/cheatsheets/spatie-event-sourcing/): A dense, printable reference for spatie/laravel-event-sourcing: aggregates, projectors, reactors, artisan commands, testing, and the gotchas people hit first. ## Posts - [Context Engineering: The Discipline That Keeps AI From Writing Slop](https://albertoarena.it/posts/context-engineering-not-slop/): AI slop isn't usually a bad model, it's bad context. Here's the discipline that prevents it, the failure modes behind it, and three checks you can actually run to enforce it. - [My coding agent kept inventing columns](https://albertoarena.it/posts/my-coding-agent-kept-inventing-columns/): Laravel Truss 1.8 turns your schema export into grounding context for a coding agent: annotations, focused and compact exports, and an optional read-only MCP server. - [Claude Code Auto Mode: What Still Needs a Human](https://albertoarena.it/posts/claude-code-auto-mode-still-needs-a-human/): Anthropic says auto mode catches 89% of dangerous commands against 13.6% for human reviewers, and still calls it not risk-free. The config, hooks, and review habits that keep it honest. - [I built a Laravel event-sourcing generator, then the AI version](https://albertoarena.it/posts/generator-vs-ai-skill/): I built a deterministic Laravel event-sourcing generator, then a Claude Code skill that does the same job through a design conversation. Which one wins? Wrong question. - [I gave my schema viewer your app's colours](https://albertoarena.it/posts/gave-my-schema-viewer-your-app-colours/): Laravel Truss 1.6 adds theming to match the app it's embedded in, and truss:export to generate deterministic schema files your CI can gate on. - [We Became Editors-in-Chief, and Nobody Trained Us](https://albertoarena.it/posts/we-became-editors-in-chief/): Agentic development didn't make us prompt engineers. It made reviewing the job, and nobody built tooling yet for the real bottleneck: how long a human can stay sharp. - [The schema doctor is in](https://albertoarena.it/posts/the-schema-doctor-is-in/): Laravel Truss 1.5 adds truss:doctor: a deterministic, structure-only review of your database schema, thirteen rules deep, that can fail your CI build. - [CLAUDE.md is RAM, skills are not disk](https://albertoarena.it/posts/claude-md-skills-are-not-disk/): Skills look like the disk tier of the CLAUDE.md memory model. They are not. Here is the four-tier model that actually fits: RAM, path-scoped rules, skills, and disk. - [There's no artisan schema:show, so I built one](https://albertoarena.it/posts/introducing-truss/): A live, zoomable ER diagram of your Laravel app's actual database schema, safe to run in production. Structure only, never data. - [Claude Code Routines: A Third Way Beyond /goal and /loop](https://albertoarena.it/posts/claude-code-routines-vs-goal-loop/): Anthropic added routines to Claude Code: cloud-hosted automations triggered by a schedule, an API call, or a GitHub event. How they differ from /goal and /loop, and when to reach for each. - [Claude's Working Memory Is Smaller Than You Think](https://albertoarena.it/posts/claudes-working-memory-is-smaller-than-you-think/): Anthropic's J-space research shows Claude's internal reasoning workspace is small. Here's what that changes about how I sequence prompts when building a feature. - [Beyond the Bastion: Secure Artisan Command Execution with AWS Systems Manager](https://albertoarena.it/posts/beyond-the-bastion-aws-ssm-laravel-artisan/): When IT blocks SSH for compliance, your manual Artisan operations go dark. Here is how AWS Systems Manager Run Command replaces the bastion host with an IAM-authenticated, CloudTrail-audited alternative, and the engineering decisions behind building a reusable toolkit around it. - [10,000 downloads](https://albertoarena.it/posts/laravel-event-sourcing-generator-10k/): laravel-event-sourcing-generator just crossed 10,000 downloads on Packagist. A short look back at how it started and where things have gone since. - [CLAUDE.md is RAM, not disk](https://albertoarena.it/posts/claude-md-is-ram-not-disk/): A simple memory model for structuring docs in a Claude Code project, plus a Laravel starter repo you can copy. - [What if every Filament write went through an aggregate?](https://albertoarena.it/posts/introducing-filament-event-sourcing/): A Filament plugin that routes every create, edit, and delete through your domain aggregates, without giving up the admin panel you already love. - [Your README Deserves Real Numbers](https://albertoarena.it/posts/traffic-badge-github-action/): traffic-badge is a GitHub Action that pulls live view and clone counts from the official GitHub API and pins them as SVG badges directly in your README. No third-party servers, no guesses. - [Stop Typing, Keep Going](https://albertoarena.it/posts/goal-command-claude-code/): Claude Code and Codex now have a /goal command that turns your coding agent into an autonomous loop. Here's when it helps and when it doesn't. - [Deploying Laravel to Netsons with GitHub Actions](https://albertoarena.it/posts/laravel-netsons-deploy/): I built a Laravel package to deploy to Netsons shared hosting via GitHub Actions, supporting both FTP and git clone strategies. - [Your .env files are lying to you](https://albertoarena.it/posts/introducing-envaudit/): Environment files drift out of sync silently. envaudit catches what you miss. - [Event sourcing with a little help from AI](https://albertoarena.it/posts/ai-laravel-event-sourcing/): A Claude Code skill that designs and generates event-sourced Laravel domains, one conversation at a time. - [When Your AI Writes Confident Nonsense](https://albertoarena.it/posts/ai-hallucination-in-coding-agents/): AI coding agents are powerful, but they hallucinate. Here are practical tips to spot it before it reaches production. - [Introducing Codemetry](https://albertoarena.it/posts/introducing-codemetry/): A Git repository analysis tool that converts version control history into quality metrics. - [Moving from Gatsby to Astro](https://albertoarena.it/posts/moving-from-gatsby-to-astro/): I migrated my blog from Gatsby to Astro. Here's why. - [Create a domain using Spatie event sourcing](https://albertoarena.it/posts/domain-using-spatie-event-sourcing/): A Laravel command that generates a domain using Spatie event sourcing. - [My React Calculator](https://albertoarena.it/posts/my-react-calculator/): A React learning exercise: building a React Calculator. - [Finally, I moved to Gatsby](https://albertoarena.it/posts/finally-i-moved-to-gatsby/): I moved my blog to Gatsby, a React-based open source framework. - [I'm back!](https://albertoarena.it/posts/i-am-back/): My personal blog is back. - [Is it really an integer?](https://albertoarena.it/posts/is-it-really-an-integer/): How to check if a variable is really an integer or a float in Javascript, and some considerations on data types. - [I moved to Jekyll](https://albertoarena.it/posts/i-moved-to-jekyll/): Four reasons for which I decided to move my blog from WordPress to Jekyll. - [A simple Javascript Getter/Setter](https://albertoarena.it/posts/a-simple-javascript-gettersetter/): How to implement a simple Javascript getter/setter than can be used with different libraries and frameworks. - [Installing Store Kit in Titanium Studio](https://albertoarena.it/posts/installing-store-kit-in-titanium-studio/): A brief tutorial about how to install Store Kit module in Titanium Studio with gitTio. - [Special effects in CSS3](https://albertoarena.it/posts/special-effects-in-css3/): Some interesting effects that can be implemented in pure CSS3. - [Sharing your house? Factory method pattern can help you](https://albertoarena.it/posts/sharing-your-house-factory-method-pattern-can-help-you/): An implementation of the Factory method pattern while maintaining a web-application developed in PHP and Zend Framework 1.