Notes

by Matt Stubbs

doctext

28 July 2025

doctext is an toolkit for converting PDF files to markdown. It does the job of an OCR tool but uses vision language models to extract the data.

A 3 billion parameter model, Nanonets-OCR-s, is provided but it also works with other multi-modal language models.

Configuring jujutsu

12 June 2025

Collection of useful tips from akshay for configuring jujutsu. I particularly like the tug alias, which advances a bookmark on the current branch to one behind the current working copy revision.

tug = ["bookmark", "move", "--from", "heads(::@- & bookmarks())", "--to", "@-"];

AI is the beginning of an answer

26 May 2025

A common concern I hear from people when I mention how much I use generative AI is “But how can you trust the answer?” Well, I don’t.

I use AI to research and answer questions, but the response I get is a starting point for solving my task. I might ask ChatGPT to take a list of my son’s football games and create events I can import into iCal, or research a three month forecast for the rainfall in my local area.

I can import the events into iCal but I’ll scan down the list to make sure it appears correct against the official list. This takes a bit longer, and if I’m going to check them why not enter each one myself? If I did, I’d check it anyway. I can make mistakes, too, particularly entering a list of similar, repetitive data into a calendar.

For a research task I’ll take a look a the cited sources in the response. Do they look credible and current? I’ll click to read a couple of them to get a better understanding of the response and understand the viewpoint for the sources.

The previous way I’d do this was a Google (or, now, Kagi) search. Even though Google increasingly includes answers with the search results, I generally expected I’d need to click a couple of results and read a few to find my answer.

Using an AI assistant takes this step further, but I consider the response to be the beginning of an answer, rather than the conclusion.

All notes →