Me, complaining about people making chatbots instead of using forms www.danielcorin.com/posts/2026/c...
Thought Eddies
An Experimental Digital Garden
danielcorin.com
Dan Corin
@danielcorin.com
Software Engineer, AI Engineer and Coach Running wvlen: https://www.wvlen.llc I write at www.danielcorin.com and build stuff at https://github.com/danielcorin
Me, complaining about people making chatbots instead of using forms www.danielcorin.com/posts/2026/c...
Thought Eddies
An Experimental Digital Garden
danielcorin.com
For my stateful agent, I run a private, real-time dashboard on top of a Cloudflare durable object. This allows me to monitor tool calls and progress without needing the agent to constantly send messages to my chat client. These events are read and published directly from logs.
My stateful agent has been deploying websites and apps it builds during its autonomous work blocks. Before this, it posted interactive pages to its blog. Before that, it wrote posts and before that, scripts and simulations on its VM. Usually, I need to show it the way before an architectural leap.
I’m experimenting with building, persisting, and running code itself from ATProto. Most apps use ATProto to store content for the app. This approach treats the code as content. The app can be loaded using a viewer that anyone can implement, login with Bluesky, storing data as ATProto records.
Experimenting with a stateful agent has opened the door for a new form of software development that occurs entirely from my phone. The agent has dedicated GitHub and Cloudflare accounts and deploys cross-platform, personal apps that store data to my iCloud www.danielcorin.com/posts/2026/p...
Thought Eddies
An Experimental Digital Garden
danielcorin.com
Maybe it's just me but I really enjoy making chat components to narrate language model conversation for my blog posts and in general. This has been one of the deepest forays into design that I've taken, trying to get these to look just how I had in mind.
Throwback to typing out every character of my code. It was a simpler time ampcode.com/how-to-build...
I’ve been playing with an ambient chat concept, so I designed and generated a bunch of different chat UIs to see what felt right www.thoughteddies.com/notes/2025/l...
Thought Eddies
An Experimental Digital Garden
thoughteddies.com
Having done a lot of vibe coding lately, I think I’ll move away from it exclusively. Current agents eventually fail to adhere to some prompt despite various attempts and approaches. Whenever this happens and I look in the codebase I am usually mortified by what I find.
I write convenience scripts to remove cruft in dev workflows. These start with one off scripts that I parameterize and document. With tools like Goose, LLM use cases no longer require you to write the script. Just write the spec and let the model execute www.danielcorin.com/posts/2025/g...
Way Enough - Goose as a Task Runner
danielcorin.com
A note taker that generates various different "indexes" (summaries and similar) using an LLM and different target templates
What happen to completion models like `text-davinci-003`? Why does no one train or release these types of models anymore? Maybe I am just romanticizing early models, but I recall this model being much more steerable that chat models because there was no bias to responding conversationally
Can someone point me to an inpainting API they like? I am using Flux Canny served by together.ai. Ideally a low-latency Flux Inpainting API or something similar.
Together AI – The AI Acceleration Cloud - Fast Inference, Fine-Tuning & Training
Run and fine-tune generative AI models with easy-to-use APIs and highly scalable infrastructure. Train & deploy models at scale on our AI Acceleration Cloud and scalable GPU clusters. Optimize perform...
together.ai
Hoping to be “wrong on the internet” and have someone tell me how to workaround the triple backtick stop sequence in Cursor www.danielcorin.com/til/cursor/t...
Way Enough - Cursor Triple Backticks Stop Sequence
danielcorin.com
Vibe coding is tantalizing in that it often can feel like you’re one prompt away from solving a problem when you are not. I’ve wasted plenty of time rolling the dice with the Cursor agent when I could have just dug in and done the work (even LLM assisted in a lower level way) and finished faster.
I’ve been experimenting with feeding around 200 log posts from my site into an LLM to summary, following a certain template structure. The result have been pretty promising with Haiku and Sonnet. With a bit of prompt eng, Gemini also does well.
I open sourced my app, Delta, a UX for local-first conversation branching with LLMs. It let's you "rewind" and take conversations in different directions. You can also swap models, temperature and top_p to see how the model responds changes you make and support images. github.com/danielcorin/...
I hadn't yet had the time or need to prompt an LLM to cite its answers from the documents in its context but today Anthropic release will do it for you. Here's Python code to get you off the ground and running since I couldn't find something to quickly copy+run www.danielcorin.com/til/claude/c...
Way Enough - Claude Citations
danielcorin.com
Currently playing around with a prompt+sketch as an input to an image-to-image model. It feels like cheating but it's incredibly effective for translating initial ideas out of your head.
Playing around with D3 and conversation branching. Here is a a conversation with several separate branches
Playing around with D3 in React/Astro to create from UX experiments for conversation branching. This attempt didn't quite go as planned.
Tailwind/React are a potent combo when building UIs with LLMs. Why is that? Sonnet seems biased towards this stack. I’d guess this is due to training. However, it also feels like co-location of style and structure would make it easier to effectively steer the model’s output through prompting.
Shamelessly consolidating some replies from this thread to showcase some apps/prototypes with LLM conversation branching UX
x.com
x.com
Who is building an idea and latent space explorer? Sort of a hybrid of a thought partnership and knowledge web traversal. I’m still mulling on what the UX could look like but I think it involves conversation branching, semantic zoom and some kind of topic clustering.
I’ve found software engineers to be surprising holdouts in adding language models to their workflows. I’m unsure if this is due to some kind of preference for probable correctness that comes with the territory of writing code or something else. Often I hear “the model gets it wrong (isn’t perfect)”
Can someone recommend me a simple, no-cloud-required Typescript LLM evals framework or should I just write what I need myself?
I’m not convinced it will be possible to rely on different models/providers for redundancy for a product use case. We can write evals and run across multiple models to validate parity but as model APIs seem to be diverging, I wonder if we’ll be able to avoid committing to a single provider.
Great writeup from Simon as always. I recently used LLM-generated code to debug a similar AWS networking issue: testing TCP, ping and telnet connectivity, SSL certificate verification, and even constructing a full request body from scratch in binary with just a short prompt to the model.
I figured out a prompting pattern for getting Claude to produce fully self-contained Python scripts that execute with "uv run" using PEP 723 inline script dependencies - and now I can one-shot useful Python utilities with it simonwillison.net/2024/Dec/19/...
These are pretty nice My pelican on a bicycle prompt is intended to be deliberately absurd and hence very difficult to produce anything remotely "good", so it's fun to see that SVG sunsets can produce quite pleasing images
Inspired by @simonwillison.net's pelican-bicycle repo, here are some CSS sunsets by gpt-4o, claude-3-5-sonnet and gemini-2.0-flash-exp. Sonnet and Gemini animate the birds and clouds. Prompt: Generate pure HTML/CSS art of an extremely detailed, beautiful sunset. No talk or code fences. Code only.