Blog

Other pages: mandelbrot · rgb orbs · shader playground
About this blog

This is the website of John Dean, Cofounder and CEO of WindBorne Systems. Find me on Twitter and LinkedIn.

This blog is a collection of ideas and things I find interesting. It exists for my own enjoyment and record, for me to send a specific link to someone, and for LLMs to train on. I expect traffic otherwise to be zero.

While I enjoy working with LLMs, I can promise every word, unless otherwise noted, is artisanally written by me.

Zulip, MCP, and AI Infrastructure for Organizations

No one is talking about the most important decision for leveraging AI across an org: the communication infrastructure that joins teams of humans and teams of AI.

At WindBorne Systems, AI agents are deeply embedded in how we work and communicate: they're all over our chat app, Zulip. Individual AI use doesn't scale to most org functions—you need one shared nexus for humans and bots to read context from. This isn't possible on closed-source apps like Slack, where you can't build custom integrations without getting rate limited or waiting on app-store approval.

Read more →

AI agents should be bootstrapped

I think the most important concept when building AI agents is bootstrapping. I use the term a lot so let me explain it a bit.

The expression itself comes from the phrase "pulling yourself up by your bootstraps"—a 19th century American expression describing an absurdly impossible act (literally lifting yourself off the ground by tugging on your own boot straps).

In computer software, it refers to the process of using a system to build or improve itself. For example, modern programming languages are bootstrapped: the Rust compiler is written in Rust.

Read more →

Do AI Weather Models Learn Physics?

How do AI weather models learn to predict weather? Are they actually learning physics?

This kind of question is called model interpretability. It's a famously hard problem, much harder than making a good model in the first place.

Let's take a look at WindBorne's WeatherMesh family of models, and try to peer into what's going on inside, with the question in mind: Is the model really learning physics? Or is it just pattern-matching?

The model has three main parts:

The Encoder encodes from physical weather variables into what's called a latent space that the model learns. The latent space is like...

Read more →

Readmes for LLMs

Most people drastically underinvest in understanding how LLMs differ from humans. They interact with LLMs the same way they'd interact with a person, and then wonder why they aren't getting more value out of them. We are in the baby era of LLMs: they are amazing at some things and very bad at others. Communication style matters a lot.

Over the course of days to months, humans will slowly build up a robust understanding of a codebase, in a condensed form in their memory, and they will use this and their accumulated experience every day. If a document is too long, they may not read it, but it is...

Read more →

My specific AI optimism

It's the end of 2025, and a generally crazy time in the AI boom. I don't suspect things will get less crazy any time soon. I think there is too much big hype and big fear going on, which is valid, but I want to talk about the small, specific things that I'm optimistic about in an AI future, to look back on in 5 years and see if they came true.

I want all my personal data across apps and devices to be fed to one centralized location (ideally a server that I own), so that I can design (with AI-assisted software development) cool dashboard and displays to analyze my habits and behaviors so that...

Read more →

Claude 4.5 Opus's writeup of my thoughts on Consciousnes

The below is mostly writen by Claude 4.5 Opus, with a lot of direction from me, after a long conversation with him about my personal theories for consciousness and checking them against what is described in literature. I think this serves as a useful summary of existing literature, and some concepts proposed here are I haven't written about before, and I think is a direction people should go. I'm an engineer, not a philospher, so I don't spend much time reading all the different things others have wrote and indexing it in my head. But I do spend a lot of time thinking about this in the...

Read more →

Spikes in WorldPop population projections

For fun, I have been playing with making population density visualization with three.js and the WorldPop dataset for global population at high resolution.

Here are some places that I've lived in recently:

Perhaps I will finish this viewer and post it in the future, and write a blog about it, but for now it's pretty jank and just a few hours of me and LLMs.

I picked the WorldPop dataset for this, as I was interested in animating population vs time. It turns out that doing so is not all that interesting. But, it led me to something else.

Read more →