Ray Peat Rodeo
Marcus Whybrow

Announcing Ray Peat Rodeo

By Marcus Whybrow, Apr 17, 2024.

Hi, Marcus here.

Welcome to Ray Peat Rodeo. Ray Peat Rodeo is a web app to read, search, and discover the public works of Ray Peat. It’s an open-source codebase of interviews + a custom program that reads these interviews to automatically make a website, this website.

Ray Peat has spoken widely on nutrition, but also biology, physics, science, art, philosophy, religion, history, and politics. I discovered Ray whilst rambling through critiques of the Carnivore Diet I was, then, enjoying. I’d picked up a strange book by a Mr Danny Roddy called Hair Like A Fox. Who was this Ray Peat he kept referring to?

Cut to several months later, and for my own purposes I had transcribed an interview of Ray’s I found myself revisiting. I used a plain text format called Markdown which requires no special program to open.

I began developing shorthands that would eventually become Ray Peat Rodeo: “wait, who is that Ray just mentioned? Which scientific paper did he mean?” These are the questions I had. Ray Peat Rodeo is a way to answer those questions once and for all, for everyone to read. To achieve this I’ve hit upon a few ways to augment an interview:

Timestamps — First and foremost, it’s useful to have links to the time in the audio or video interview for key questions and answers. For this one may use the humble square bracket surrounding a time, e.g. [18:32].

Mentions — Next, Ray mentions a lot of things. A lot! Using double square brackets (like a wiki-link), to be distinct from timestamps one can mark names, e.g. [[Blake, William]].

Notes — To distingish clarifying notes one uses curly brackets, e.g. {PUFA stands for Polyunsaturated Fatty Acids}.

Issues — When one can’t make sense of something one can refer to a GitHub issue ID within curly brackets, e.g. {#12}. GitHub issues are a way of tracking, discussing and resolving issues with a coding project.

With these features, we get something like this:



RP: Ray Peat

I: Interviewer


RP: [18:32] There was an Australian study {#12} around that time.

I: And who is [[Blake, William]]?

At the top you’ll notice another convention I landed upon. I define a little database of whose speaking. Each speaker has a short key (such as “RP”) that can be used to mark sentences throughough the interview. And each key has a partnered value (such as “Ray Peat”) that let’s readers know who “RP” is.

I think that looks pretty nice, but the real beauty is this: now we’ve standardised the format for timestamps, mentions, notes, issues, and speakers, a computer program can understand what everything in this file means. And that’s the second leg upon which Ray Peat Rodeo stands, it converts that markdown interview into a web page, like this:

Ray Peat

18:32 There was an Australian #12 Which Australian study is Ray referring to? study around that time.


And who is William Blake?

Try hovering over (or taping on, if on a phone/tablet) the mention of “William Blake.” A popup appears. It summarises every other mention of “William Blake” in every other known interview. In this demo you can’t click through, but on a real page, you can jump about between interviews this way, or see an index of every time Ray’s mentioned ol’ Blake.

This is the essential nurturing marriage: human readable, non proprietory, portable, plain text, markdown files that will survive forever; partnered with custom code that automatically derives a website from those simple files, enabling higher-order features.

I see Ray Peat Rodeo as something that needs to exist, and for free, just like Ray spoke for free. Equally, everyone has bills, and I have ideas for optional paid extras for those who wish to support this kind of thing: maybe a nice PDF or eBook containing the whole thing for offline reading, something tangential like that.

My main focus is getting as many interviews into the system as possible, to that end I’m using artificial intelligence to quickly get a large quantity of low-quality transcriptions, with a view to improving them over time.

Thanks for your interest in the project, you can support me on GitHub Sponsors.


More from the blog