In my last article, I mentioned that my SAST tool uses regex-based pattern matching instead of AST parsing, and that this was a deliberate tradeoff. A few people asked me to go deeper on that decision — because on the surface, it sounds like I took a shortcut. I didn't. Or rather — I did, but it was an informed shortcut, and there's a meaningful difference. Let me explain what AST parsing actually
All Algorithms implemented in Python
AutoGPT is the vision of accessible AI for everyone, to use and to build on. Our mission is to provide the tools, so that you can focus on what matters.
You don’t notice the problem right away. Everything runs smoothly in MySQL… until a new report shows up. Then queries slow down, dashboards lag, and you start realizing you’re stretching the database beyond what it’s good at. That’s usually when BigQuery enters the picture. So the real question becomes: How do you actually move data between them without turning it into a side project? Let’s w
The Challenge: Beyond the "Lift and Shift" Fatigue The real fear isn’t migration itself—it’s operational fragmentation: different tools, different processes, and different failure modes between the data center and the cloud. After deep-diving into the Nutanix ecosystem, I realized that the goal shouldn't be just moving VMs, but achieving operational symmetry. This is where Nutanix Cloud Clusters
First Release of LDL 0.1 — A Small Library with a Big Soul. One API for 30 Years of Computer History Hello, developers! I'm excited to announce the first public release of the LDL library. LDL (Little Directmedia Layer) is more than just a cross-platform library — it's a bridge between different eras of software development. It lets you write code that runs just as well on Windows 95 as it do
Python has optional type annotations - also called "type hints". Like this: def entry_to_dict(entry: Entry) -> dict: return { 'title': entry.title, 'num_likes': entry.num_likes, 'url': entry.url, } The annotations here being "Entry" as the type for the "entry" argument, and "dict" as the return type. In fact, there are at least 3 ways type annotations can be us
Book: AI Agents Pocket Guide: Patterns for Building Autonomous Systems with LLMs Also by me: Thinking in Go (2-book series) — Complete Guide to Go Programming + Hexagonal Architecture in Go My project: Hermes IDE | GitHub — an IDE for developers who ship with Claude Code and other AI coding tools Me: xgabriel.com | GitHub A support agent answers "no, your order shipped on time" with full