A field of outlined movie record cards, with a chain of three orange cards linked by orange lines running down the middle, next to the text "cMovie - Week 6 - What should I watch tonight?"

What should I watch tonight? Build a RAG movie assistant with Python and Cassandra

A search returns a list of titles and leaves you to work out why they fit. Build a FastAPI endpoint that finds the right movies with a filtered ANN OF query, then has Gemini explain the picks using only those movies.

29 October 2026 · 19 min · Erick Ramirez
A field of outlined movie record cards, with a chain of four orange cards linked by orange lines inside two crossing orange frames, next to the text "cMovie - Week 5 - Vibe search, plus a WHERE clause"

Why pure vector search returns the wrong movies: filtered ANN with SAI in Cassandra

A vector search ranks by meaning and can’t know what else you meant. Add ordinary SAI filters to the same ANN OF query, see which columns qualify, and learn what a narrow filter does to your LIMIT.

20 October 2026 · 13 min · Erick Ramirez
A field of outlined movie record cards, with an orange phrase strip at the upper left linked by orange lines to a chain of four larger cards with orange text lines, next to the text "cMovie - Week 4 - Search by vibe, not by title"

Vibe search, not keywords: build semantic search with Python and Cassandra

Embed the reader’s question with Gemini at request time, then ask Cassandra for the nearest movie plots with ORDER BY … ANN OF. One FastAPI endpoint, one prepared statement and two gotchas.

13 October 2026 · 13 min · Erick Ramirez
A field of outlined movie record cards, with an orange dot and ring at the upper left linked by orange lines to a chain of four larger cards with orange text lines, next to the text "cMovie - Week 3 - Search by what a plot means"

Skip the separate vector database: vector search in the same Cassandra table as your data

Store what each movie plot means as a vector column next to the movie itself, index it with SAI, and search by meaning with ORDER BY … ANN OF in plain CQL.

6 October 2026 · 16 min · Erick Ramirez
A field of outlined movie record cards, four larger cards linked by orange lines with a matching orange word segment, next to the text "cMovie - Week 2 - One FastAPI endpoint, five filters"

Not every search needs Elasticsearch: build a Python FastAPI filter and keyword search on Cassandra

SAI matches whole values, not fragments. Split titles and cast names into words at load time, index the words, and serve fragment search for 1,000 real movies from a small Python FastAPI app.

29 September 2026 · 14 min · Erick Ramirez
A dense field of flat tiles thinning toward the left, with three ranked results picked out in orange, next to the text "A 10-week series - Search by what happens, not the title"

Build an AI movie recommender Python and TypeScript app on Cassandra

Ten weekly posts that build one AI movie app, cMovie, from scratch on Apache Cassandra 5.0 - SAI filtering, vector search and a RAG assistant, one working part at a time.

22 September 2026 · 6 min · Erick Ramirez
A field of grey, crossed-out column tiles thinning into connected orange tiles, next to the text "cMovie - Week 1 - Stop typing ALLOW FILTERING"

Query any column, not just the primary key: a SQL developer's guide to Cassandra SAI

Cassandra only answers queries on the primary key until you index the other columns. See how Storage Attached Indexes lift that restriction, using 1,000 real films.

22 September 2026 · 11 min · Erick Ramirez
Cover image

Talk to your database with Bob, the AI builder

Connect Bob IDE to Astra DB via MCP and create collections, insert records, and run bulk updates through plain English, zero code required.

12 June 2026 · 5 min · Erick Ramirez
Cover image

Talk to your DB with no code, just Claude

Connect Claude to your DB via MCP and watch it create collections, insert records, and run bulk updates through plain English, zero code required.

11 June 2026 · 5 min · Erick Ramirez
Cover image

From Words to Vectors: A Beginner's Guide to Vector Search and AI Databases

New to embeddings, LLMs, and vector databases? Start from first principles and end up understanding how modern AI systems search for meaning, not just keywords — with a working Python example.

3 June 2026 · 9 min · Erick Ramirez