/Search

Postgres As A Search Engine

- Eric Zakariasson tl;dr: “While semantic search is trendy, good old lexical search is still the backbone. Semantic techniques can improve results, but they work best when added to a solid text-based search foundation. In this post, we’ll explore how to use Postgres to create a robust search engine.”

featured in #544


How Google Handles JavaScript Throughout The Indexing Process

tl;dr: “Understanding how search engines crawl, render, and index web pages is crucial for optimizing sites for search engines. Over the years, as search engines like Google change their processes, it’s tough to keep track of what works and doesn’t—especially with client-side JavaScript.” This post looks at how rendering has evolved and the real-world impact on modern web apps.

featured in #538


6 Hard Problems Scaling Vector Search

- Louis Brandy tl;dr: Vector search is increasingly used in applications implementing recommendations, image search and natural language processing. It can also be difficult to scale. Here are some questions to ask before you run into these problems.

featured in #518


I Accidentally Built A Meme Search Engine

- Harper Reed tl;dr: “I built a meme search engine using siglip / CLIP and vector encoding images. It was fun and I learned a lot. I have been building a lot of applied AI tools for a while. One of the components that always seemed the most magical has always been vector embeddings. Word2Vec and the like have straight blown my mind. It is like magic.” Harper describes his journey and shares the results. 

featured in #508


How Levels.fyi Built Scalable Search With PostgreSQL

- Tanishq Singh tl;dr: The post outlines how Levels.fyi built a scalable fuzzy search solution using PostgreSQL that handles over 10 million search queries per month with p99 query performance under 20ms, outlining the key steps. 

featured in #504


A Search Engine In 80 Lines Of Python

- Alex Molas tl;dr: “Ever heard of the “Small Website Discoverability Crisis”? The problem it’s basically that small websites, ones like this one, are impossible to be found using Google or any other search engine. My mission? Making those tiny websites great again. In this post I will walk you through the journey of buliding a search engine from scratch using Python. This implementation doesn’t pretend to be a production-ready search engine, just a usable toy example showing how a search engine works under the hood.”

featured in #487


The Largest Money-Printing UI Element Ever Made

- Jim Nelson tl;dr: "The largest source of money flowing into the world of programming languages comes from Google paying to be the default search engine... Google took in $283bn in revenue in one year. Of that, $49bn went towards “traffic acquisition costs” which includes Google paying other browsers for the preference of being the default search engine."

featured in #473


Building In-Video Search

tl;dr: "Suppose it’s Christmas, and you want to create a great instagram piece out all the best scenes across Netflix films of people shouting “Merry Christmas”! Or suppose it’s Anya Taylor Joy’s birthday, and you want to create a highlight reel of all her most iconic and dramatic shots. Creating these involves sifting through hundreds of thousands of movies and TV shows to find the right line of dialogue or the appropriate visual elements (objects, scenes, emotions, actions, etc.). We have built an internal system that allows someone to perform in-video search across the entire Netflix video catalog, and we’d like to share our experience in building this system."

featured in #464


Create An Advanced Search Engine With PostgreSQL

- Tudor Golubenco tl;dr: “The Postgres approach to full-text search offers building blocks that you can combine to create your own search engine. This is quite flexible but it also means it generally feels lower-level compared to search engines like Elasticsearch, Typesense, or Mellisearch.” The article covers: (1) The tsvector and tsquery data types. (2) The match operator @@ to check if a tsquery matches a tsvector. (3) Functions to rank each match (ts\_rank, ts\_rank\_cd). (4) The GIN index type, an inverted index to efficiently query tsvector.

featured in #430


Semantic Search In iMessage, iMessage Wrapped, And AI Conversations

- JonLuca DeCaro tl;dr: “I realized that iMessage just stores its database locally as a sqlite file, so I went about building an alternate UI for searching, and adding in a few features that I thought would be interesting. These include: (1) Semantic Search (2) Wrapped: stats about my life on iMessage (2) AI conversations with friends. And more.

featured in #406