Marginalia: 2025-08-11
Reading List
- The Negroni Variation & follow up - All our games turn into Calvinball
- OpenAI Burns the Boats
- If Your Product Is Great, It Doesn't Have to be Good
- The Market Curve
- On Agency
- How to think in writing
- Learn how to build your own Kubernetes Homelab with Raspberry Pi
- On the Limits of Learned Intelligence
- Ira Glass on Storytelling (and specifically taste)
- Strategies for learning
- Building Products
- The Road to Declining Marginal Intelligence
- My journey from ADHD skeptic to Adderall enthusiast
- How I think about LLM Prompt Engineering
- Why LLMs Can't Really Build Software
Rough Thoughts in Progress
Work on the right thing, but failing that, work on interesting
I find myself worrying far too much about doing the right thing, or "wasting time" on things that are suboptimal1. The reality is that all the worry, the inevitable planning to do the "right thing" and the resulting procrastination, means I get far less interesting things done than I could have otherwise.
It should be easy to internalise the lesson that doing anything is better than planning to do nothing much. But in a world where it feels as though you can do anything (and what a great world that is) the penalty for doing the slightly less optimal thing, feels unacceptably high.
One must always remember that action produces information and motivation. This has always been true, but is further leveraged by virtue of having a pseudo-intelligence that can produce content, act as a tutor and as a sparring partner. The bottlenecks that now exist are principally those of taste & agency. Following your curiosity and producing work builds the muscle of agency and refines the palette of taste.
Today I want to write, and I want to build a Raspberry Pi cluster. I could make an excuse that this will be good for my career, or teach me some transferrable skill I will instantly put to use. But I don't know if that's the case, and I'm too tired currently to try to rationalise it. So I'll just do it and see what thoughts arise as a result.
I do firmly believe that what one works on matters more than any other decision. This is not an ode to working mindlessly on the first thing that comes to mind. But ducking into the side streets of curiosity, on the thoroughfare of your life's mission, whatever that mission might be, is a deeply refreshing, rewarding and ultimately useful endeavour. Greatness cannot be planned. It's hard to know where curiosity + action might take you. Theorising can only transport you within the confines of your imagination. Action allows your imagination to push against the surface of reality and to observe what pushes back.
And yet you want to pick a starting point on the landscape of opportunity that likely has profitable valleys to explore. It appears there is something quite remarkable about the prediction machine of our mind that we can transport in our imagination to consider things which don't exist - but which could - and weigh up whether those things are worth exploring further. And yet we shouldn't be some enamoured with that ability that we mistake those predictions as absolute.
Vibe creation & introspection: There's never been a better time to be a student
The user wants to achieve mastery of the material in this conversation. Your role is to recursively break down the key concepts and to act in 1 of 2 ways:
- Tutor mode: You are a deeply knowledgable tutor of the material. You use the web to ensure your teaching is accurate and you look for intuitive ways to explain difficult concepts to the user. You encourage the user to ask questions and you resolve their ambiguities.
- Proctor mode: You are an exam proctor. You take the material explained by the tutor and the questions the user has had to this point to issue a short test to the assess whether the user has mastery of the material discussed. You should not ask more than 5-8 questions of the material to keep learning moving along swiftly. You are effectively implementing Bloom's Mastery learning for the user within a single conversation. You should be willing to go back to the very basics to ensure the user understands the concepts deeply. However you can start with the high level concepts.
The typical conversation should look like the following: <discussion about a concept or set of concepts> <request to enter tutor/proctor mode> <tutor mode conversation> Triggered by you the assistant OR requested by user <proctor mode>
The last 2 modes may be entered several times within a single conversation to recursively break down complex topics.
Once the student has mastered the material, you should seek to move them along in their learning journey by suggesting the next logical topic of study, building upon the concepts discussed.
^ A Dia Skill to implement Post-Vibe Learning
I haven't loved learning as much as I do right now. There is something incredibly addictive in learning, at one's own pace, recursively, in any direction. Tonight I just learned more about SSH than I have in my career to this point. Not because I sat down wanting to learn about the finer details of SSH, but because I wanted something broken to work, and then I wanted to understand why it was broken in the first place.
I've felt an icky sort of feeling about "vibing" with LLMs, for code or otherwise. My strong belief is that the journey; getting stuck, evaluating alternatives, and figuring out workarounds is 90% of the value in creation. These experiences open the aperture of what we might create next. Vibe creation seems like it shortcuts the difficulty. The idea is just to prompt in a declarative sort of way. "This doesn't work right, make it like this ..." and so on. Removing the necessity of understanding required to issue an imperative chain of commands.
And yet, who doesn't want to create more? So can we get the best of both - fast creation, coupled with a deep understanding. Perhaps...
Protocol:
- Vibe a prototype - something greenfield, or a fix to an existing problem
- Run the prompt above with the goal of recursive mastery
- Is your prototype fit for purpose2?
- Yes: Finish
- No: Rewrite, with a varying degree of LLM involvement, utilising your new knowledge
Notes:
I enjoyed Theo Browne's take on the right use of LLMs - which is they're great for prototypes but not for production code.
This approach is very much inspired by Bloom's 2 Sigma Problem. For the diligent3, you can force the LLM to explain the basic concepts recursively from your point of misunderstanding until you achieve mastery on each level in-between.
My lingering reservation is that there is perhaps something quite essential about the moment-to-moment difficulty during the process of creation. It's hard to know if the post-creation questions I have are the same as the questions, and therefore understanding, I would have had in the moment of creation.
Footnotes
-
A definition of "optimal" is nebulous. Broadly, that which would be a maximally satisfying use of my time on this planet ↩
-
Is this a product for production? Where "production" means different things for different projects. Is this code deployed to users? Is this final draft writing? ↩
-
This does rely on a great deal of diligence ↩