I am a programmer and researcher based in New York City. I am the author of the book Language and the Rise of the Algorithm (U. of Chicago Press, November 2022), a wide-ranging study of the history of algorithmic thinking from the sixteenth century to the present. I have developed software for natural language processing and published peer-reviewed research on such topics as eighteenth-century mathematics, computational research methods, AI-generated poetry, and expressions of emotion on social media. I have a PhD in English from the Graduate Center, City University of New York and have taught at Hunter College and Pennsylvania State University. I currently work in applied machine learning. My name is pronounced as in “Bookbinder”; I use he/him pronouns.
One of my current projects is PromptArray, a system for designing input text for large language models. Using a special syntax that combines Boolean logic with natural language, PromptArray allows you to combine multiple prompts using operators such as and, or, and not, a practice that can greatly improve the performance of language models on certain tasks and enable the development of new ways of controlling computers using something midway between computer code and plain English.
My book Language and the Rise of the Algorithm offers a tour of the intellectual developments that produced the modern idea of the algorithm, from Renaissance algebra to recent advances in machine learning. It focuses on four visions of universal computation: G. W. Leibniz’s calculus ratiocinator, first conceived in the 1660s; a universal algebra scheme Nicolas de Condorcet designed during the French Revolution; George Boole’s nineteenth-century logic system; and the early programming language ALGOL. These episodes show that the concept of algorithm is implicated in a long history of attempts to separate technical knowledge from the languages people speak day to day. Machine learning, in its increasing dependence on words, erodes this boundary, giving a renewed urgency to centuries-old questions about how computation relates to language.
My other projects include the Distance Machine, a web-based visualization of historical language change. I’ve also made some fun things like a poetry generator that can create rhymed verse, a depoeticizer that makes texts more banal, and a JavaScript-based simulation of an algorithmic poetry generator from 1677. My largest creative-critical project is A Hundred Visions and Revisions, a program that uses a neural language model to rewrite a poem to be about a different topic.
There is a longer list of my digital projects here; you can also view a list of my major publications or my full CV.
Opinions expressed on this web site are my own and not those of my employer.