Information Retrieval
Tuning the search implementation for optimal performance
December 1, 2025 | ~1800 words | 9 min read
Let's (finally) make some broad changes to the tool library's search configuration.
We'll add some components and tune some parameters, then choose the combination that yields the best results.
Quantifying the problem
November 16, 2025 | ~1400 words | 7 min read
Subjective analysis can only take us so far.
Let's attempt to quantify search performance so we can measure whether our solutions are working.
In this post, I describe methodology to infer the relevant items for each query and the quality of search results.
Quick wins
September 2, 2025 | ~1600 words | 8 min read
Now that we've identified some common problems, let's make the first steps toward solving them.
First we'll focus on small, simple changes that will have an immediate impact.
Identifying the problem(s)
June 26, 2025 | ~1800 words | 9 min read
An overview of the Chicago Tool Library's web app and common problems with its search functionality.
Not talking solutions yet, just seeing what types of problems exist.
Plus, some constraints and limitations of a volunteer project with a shoestring budget.
I couldn't pass up an opportunity for some Streamlit swag!
August 3, 2023 | ~800 words | 4 min read
Streamlit is hosting a hackathon to show off their new connections functionality. I built a simple app implementing semantic search to explore public datasets in the city of Chicago's Socrata open data platform.