Hi, I'm Jamal Hansen

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

Latest Articles

WHERE: Filtering Your Data

We have come a long way in the past couple of months, working through the core SQL keywords. So far, we can SELECT columns, specify FROM where our data lives, and ORDER BY to sort results. That is …...

March 2, 2026 · 5 min · Jamal Hansen
A tool box with some socket wrenches in it

I Vibe Coded a Local AI-Powered Promo Generator

Every Monday, I publish a blog post. Then I write five slightly different versions of “hey, I wrote a thing” for LinkedIn, Twitter, Bluesky, and Mastodon. Each platform has different character limits, …...

February 28, 2026 · 6 min · Jamal Hansen
A spoonful of letters with alphabet soup

ORDER BY: Sorting Your Results

We now have a firm grasp on how to use SELECT: Choosing Your Columns and FROM: Where Your Data Lives to tell the database where to find data and how to format the columns when it returns it. With this …...

February 23, 2026 · 3 min · Jamal Hansen

SELECT: Choosing Your Columns

You have written SELECT * many times by now. It works, but it’s a bit like asking for everything in the fridge when you just want milk. This week, we will look at the SELECT clause and see that it …...

February 16, 2026 · 4 min · Jamal Hansen

FROM: Where Your Data Lives

We have come a long way over the last five posts, but we are just getting started. So far, we have explored concepts that will help us along our journey, but haven’t talked a whole lot about SQL …...

February 9, 2026 · 3 min · Jamal Hansen