Technical deep dives into SQL, Python, and AI development. I document what I learn building with data and language models.
Join Python developers learning SQL — new tutorial every Monday
Technical deep dives into SQL, Python, and AI development. I document what I learn building with data and language models.
Join Python developers learning SQL — new tutorial every Monday
Learn SQL fundamentals using DuckDB and Python. A practical series for Python developers who want to level up their data skills.
What happens when you build real AI tools with AI writing the code? Chaos mostly, but also hard-won lessons about what small models can and can't do.
My honest, unfiltered experience studying for and taking the AWS Certified Data Engineer – Associate exam. The wins, the setbacks, and everything I learned …

So far in this series we have covered all the core SQL clauses: SELECT, FROM, WHERE, GROUP BY, HAVING, and ORDER BY. We can do quite a bit with those tools, but we have been working with a single …...

As I admitted before in posts 1 and 2 I vibe-coded and lived to tell. This post answers the question I kept avoiding. Why run any of this locally when cloud models are flatly better at the task? The …...

I have now written, tested, and debugged a content discovery agent. It monitors RSS feeds, searches social media, scores articles for relevance, and delivers curated reading recommendations directly …...

When I first encountered HAVING, I thought, “Why do we need this? It’s just like WHERE.” Then I tried filtering on COUNT() and hit a strange error. That’s when it clicked: HAVING filters after …...

Previously, I reported that I vibe-coded a tool that reads a blog post I’ve written and generates platform-specific promo copy using a local Ollama model. I chose local models because I’m curious …...