This website uses cookies

Read our Privacy policy and Terms of use for more information.

The heat returns quickly here in Texas, and now that it's March, winter is officially over. Spring might already be over as well. It is 85 degrees Fahrenheit today (about 29 degrees Celsius), and in a sign that summer is back, lizards have emerged from hiding and can be seen scurrying around the yard. They vanished sometime in December when the cold came, and now, right on schedule, they are back.

Meanwhile, I've been keeping myself busy. I finished editing the last of the SQL for Python developers series, so that is set to be released with a new article weekly. Right now, we are going through the basics of the various SQL clauses that shape query results. I'm eagerly awaiting the publication of some of the more advanced topics that I will cover later on. It's the kind of series that I wish I had when I was first starting out.

As that series is winding down, I've been digging deeper into local AI. I am putting together various projects using it and comparing the results of various models to each other and the offerings of providers like Anthropic and Google. The local models do hallucinate more than their cloud counterparts, and they can be stubborn about following instructions. But every so often one of them surprises you with a genuinely good insight, and that's the part that keeps me building.

This week on the blog

This week in my SQL for Python developers series, I published a post about aggregating data with SQL. The thing that still impresses me about GROUP BY is how effortlessly it collapses millions of rows into a handful of clean summaries. All that work happens on the database server, and what comes back is exactly what you need. It's one of those SQL concepts that feels like a superpower once it clicks.

What I'm learning

This has been an interesting week. I've been (vibe) coding small tools that use local AI. I've been torn on the whole code-it-yourself vs. let AI write the code. In this case, I've made myself comfortable with vibe coding them for three reasons:

  1. These are small utility tools that make my workflows easier

  2. The interesting part is not the code itself, but finding use cases for local AI

  3. I don't want to get bogged down in the details of writing a bunch of projects because I'll never move forward

Of course, it helps that Claude Code with Sonnet 4.6 is pretty amazing. It's writing tests and following my code style guidelines.

I guess I've learned that I can be comfortable and even enjoy directing Claude on how to code small projects.

This is not what I expected to learn this week. :)

It rained today in San Antonio as I finished this up. That isn't something that has happened much in the last 7 or 8 months, and so I appreciate the water. The thunder rumbles outside, and the season continues to change from hot to stormy and soon hot again.

Change is constant in the tech space as well. A year ago I wouldn't consider letting AI write code for me beyond autocomplete of a line. Now, one of the links in this very issue points to Moltbook, a platform where AI agents have their own social presence and interact with each other in public. I'm not sure whether that's exciting or unsettling, but I don't think I can look away.

Whatever changes you are seeing in your life, I hope that they are positive.

-- Jamal

That's it for this week. If this was useful, the best thing you can do is share it with someone who would get something out of it.

Find me on LinkedIn · Bluesky · X · Mastodon

Not subscribed yet? Fix that here: jamalhansen.beehiiv.com

Keep Reading