Will LLMs worsen link rot?

Link rot is bad enough already, probably going to get worse if “sources” are added automatically. Example Conversation “Comparing Animal Strengths in Relation to Humans” linked to “Influence of the Hohenwarte reservoir on tilt and strain observations at Moxa” “Human vs. Animal Physical Capabilities” was a 404 on oxford academic. Since it’s prone to hallucinating …

Generate app implementation details with ChatGPT

Conversation My first question was far too general, so got me some generic unhelpful answers. Asking for 20 ideas (inspired by Brainstorming section from this talk) and  including specifics got better specific answers. Conversation helps refine requirements. In this case I wanted to think of some different possible interfaces, and maybe technology suggestions for a …

Mixxx MIDI Mapping with ChatGPT Code Interpreter

Conversation Some success, still in progress. Lazy attempt to get a 2 deck controller to control 4 decks in Mixxx, like this example. Fun part about halfway through where it just started hammering through errors trying to debug itself. I think the uploaded file had expired by then (I had also switched computers). But “Show …

The right way to disable CSS animations

Sometimes I want a way to disable all CSS animations on a page. This is useful for end-to-end testing, automatic screenshots, or reducing motion sickness risk. This recent CSS Tricks post suggests disabling animations & transitions while resizing, to reduce needless browser work. This is an excellent idea! Here is the usual way of disabling …

CSS snippet for better mobile screenshots

A useful tip when adding screenshots to posts or talks is to put them “inside” a device. This gives the screenshot some context. Even though this screenshot already contains Android top & bottom bars, with the added outline it’s immediately obvious it’s from a phone. To add the outline to images I use a simple …

Intercept requests with puppeteer

useful to mock backend responses when you don’t want to have to donate RAM to minikube when developing locally // from https://github.com/GoogleChrome/puppeteer/blob/master/docs/api.md#pagesetrequestinterceptionvalue const puppeteer = require(‘puppeteer’); (async function main() { try { const browser = await puppeteer.launch({ headless: false }); const [page] = await browser.pages(); await page.setRequestInterception(true); page.on(‘request’, (interceptedRequest) => { if (interceptedRequest.url().includes(‘additional_metrics.json’) { interceptedRequest.respond({ …