Recent posts

Evaluating OCR on the Community Memory Corpus

The Community Memory corpus consists of approximately 5,500 scanned printouts of bulletin board-style posts made by Berkeley residents in the 1980s. Since residents posted messages through publicly accessible terminals, the postings reflect a potentially distinct and broader population than other computer-facilitated networks of the time (e.g. Usenet, The WELL). In advance of a potential project to translate the scans into an indexed, machine-readable form, we evaluate the optical character recognition (OCR) performance and economy of five models (Document AI, Gemini 3.7 and 3.8, Mistral OCR, and Qwen3) on a sample of the corpus. We find that current generation general purpose LLMs perform better than specialized OCR engines and while Qwen3 and Gemini 3.7 have similar price/performance ratios, Gemini 3.8 is surprisingly a degradation to Gemini 3.7. We conclude that research tasks using the OCR output will need to be robust to at least four character errors per line or one word error per line.

Read more

Collisions, Combinatorics, and Markov Analysis: `The Balance` Game Design

The Balance is a cooperative card game published by New Venture Games. The objective of the game is to set the top card on eight piles to the same value before the players run out of cards. Players do not know the contents of the other player’s hands and are restricted from communicating on the goal, so part of the challenge of the game is intuiting a shared goal.

Read more

Number of bags of a given length with exactly d distinct elements

We develop a formula for counting the number of bags of length \(l\) containing \(d\) distinct elements drawn from \(t\) objects. The formula involves multiplication of combinations without replacement and combinations with replacement. We present alternative forms of the formula and a generator in Python. Our motivation was computing probabilities of various types of card hands, such as how many hands of size 5 contain exactly two suites.

Read more

Inventing ELIZA (Review)

This year is the 60th anniversary of Joseph Weizenbaum’s article “ELIZA—A Computer Program For the Study of Natural Language Communication Between Man and Machine”. ELIZA was a natural language “engine” for running scripts of various conversational personas. The DOCTOR script became the paradigmatic example of a chatbot and ELIZA was re-implemented many times. A team of eight multidisciplinary scholars (“Team ELIZA”) have written an expansive historical study of the creation of ELIZA, how it was designed and implemented, its impact, and latter development of chatbots to the present day.

Read more