Full Width [alt+shift+f] Shortcuts [alt+shift+k]
Sign Up [alt+shift+s] Log In [alt+shift+l]
1

Mapping out the tribes of climate

from Nadia Asparouhova [alt+shift+b] in startups

Climate is a gravity well for talent, but why don’t other, equally impactful topics attract talent in the same way? Why isn’t everyone dropping everything to work on homelessness, or global poverty, or curing cancer? With many peers in tech now working on climate issues, I tried to understand why this topic holds such purchase for so many people – and its incredible staying power over the decades. Initially, I started with the idea that climate was an attractive industry for “doomer” types, and I painted their motivations monolithically. I was searching for the one weird reason that was causing hordes of people to drop what they were doing and march, hypnotically, towards the same problem space. What I found instead is that while the media still portrays climate as a simple question of beliefs, the climate field has long moved on to diversified solutions. Whether one believes in climate change is no longer the interesting question; now it’s “What do you think is the right approach?” Pass through the asteroid belt of climate doomerism, and the universe expands into a rich panoply of different climate tribes. People who work in and around climate don’t all believe the same things. Instead, they inhabit a parallel, mirror world that looks a lot like the non-climate world. Just like in the regular world, there are factions, politics, and competing belief systems. For example, I did not find that people who are interested in climate fall cleanly along a certain political line of thinking, or even a shared set of values or goals. Climate is frequently coded as a left-leaning issue, but there are also centrist and right-leaning people who operate in different factions. Nor do climate people all agree on the right solutions to pursue. In some cases, they believe other tribes are actively harmful to their cause. The enemy, in their minds, aren’t climate deniers, as we might have seen a decade or two ago – they’re other people working in climate. For someone who doesn’t work...
30th Nov 2022

Stay updated

Get a weekly newsletter with the top 5 articles worth reading every week.

More from Nadia Asparouhova

How to do the jhanas

The jhanas are a series of eight (or nine) altered mental states, which progress from euphoria, to calm, to dissolution of reality – culminating in cessation, or loss of consciousness. They are induced via sustained concentration, without any external stimuli or substances. This is a practical guide on how to do them yourself. Table of Contents Jhanas are learned by doing, not reading What the jhanas feel like Why learn the jhanas? Hours practiced Retreat I (March 2024) Retreat II (June 2024) Practice between retreats General tips for practice Experiment with different techniques Flow state » relaxation A jhana is like a sneeze Pace yourself and listen to your body Instructions for accessing the jhanas How I entered J1<>J4 How I entered J5<>J7 How I entered J7<>J9 What’s going on under the hood? Impact of the jhanas In conclusion: try it! Notes Jhanas are learned by doing, not reading The word jhana comes from Buddhist scriptures, where they were first described. However, as many meditators like to point out, jhanas predate Buddhism. The Buddha experienced jhanas spontaneously as a child, and likely is not the first or only person to have experienced them. I am not a Buddhist, nor would I describe myself as a meditator. I’m just a curious person who wanted to try a new thing, and was gobsmacked by what I experienced. Prior to attempting the jhanas, I’d guess that I had maybe 30 hours of lifetime meditation experience, scattered over a decade or more: in other words, not much. But with just over 20 hours of practice, I progressed through all nine jhanic states. I would still say that I do not like “meditation” for its own sake, though I enjoy meditative activities (such as exercise, a deep 1:1 conversation, writing, or other creative work). But I don’t think jhanas are a form of meditation. Rather, they are a rare technology whose instructions are encoded in our bodies. Jhanas are an algorithm in the oldest sense of the word: a set of instructions that, if executed correctly, solve for a problem that you may not have even realized you’ve been trying to unravel. They are an Easter egg hiding in the game of life. [1] If jhanas are a technology that exists a priori to Buddhism, then I find it strange how they are discussed and taught by most practitioners today, which is pretty much only through a Buddhist lens. The actual, mechanical instructions are buried in what I’d say is akin to computer science: a lot of complex language and spiritual theory, which - it is often implied - are inseparable from practice. I understand the purpose of the ornate cultural context that is chained – albeit beautifully – around the jhanas. Powerful technology should be embedded in a community of norms and protocols that help people make sense of them and integrate them safely into their lives. And jhana practitioners have done this part a bit too well. It is no wonder that jhanas have quietly passed through civilization for centuries, protected like a rare jewel inside a cave of wonders, with little attention from the outside world. It’s just that, well. If you had recently figured out how to code, and realized it was really quite simple and teachable to others – then looked around, and all you saw were computer scientists warning off would-be developers from making software, claiming that they needed to understand all the underlying theory before attempting to write a line of code – wouldn’t that make you want to open up a text editor and type out your own version of things? This post is not intended as a reckless act. Rather, it reflects my personal belief that some types of knowledge are best acquired implicitly, not explicitly. You probably have little interest in reading about grief, or parenting, for example, unless you’re imminently facing these experiences. To return to the software analogy: these days, most developers don’t learn how to write software by studying computer science first. They learn by tinkering around. They print “hello world.” Maybe they have a problem they want to solve for, so they make a simple app. As they become more experienced and run into more sophisticated problems, they might then revisit the theory to understand why things work the way they do. This has been my experience with the jhanas. I read little about them beforehand, instead receiving minimal instruction and letting my intuition guide the experience. When I experienced things that were confusing or beyond what I could explain, I went back and read about the underlying philosophy to understand what was going on. (As a concrete example: I tried listening to Rob Burbea’s talks on the jhanas before I’d ever tried them myself, and found myself rather lost and bored. Later, however, I went back and consumed his talks voraciously; they had taken on new meaning. I now find them very valuable.) So that’s what I’m going to attempt here. Instead of bogging you down with theory, I’ll share the basic instructions that helped me access the jhanas, going from first jhana to cessation in just over 20 cumulative hours. More than anything, I want to instill confidence in anyone reading this post that you can absolutely do this, regardless of how much you meditate. The most important advice I can give is to relax, have fun, maintain a playful and curious mindset, and don’t overthink it. Just follow the instructions as best you can. But first, just a bit more information and background, so that you know what to aim for. What the jhanas feel like Jhanas are like swirling the paintbrush of your consciousness across a palette of altered sensations. These states vary in intensity; some are comparable to psychedelics, MDMA, or dissociatives. Here’s how each state feels to me. I’ve kept my descriptions vague, because I think it’s more fun to discover them yourself. I’ve included their short descriptions in parentheses from this wiki. J1 (Pleasant Sensations): euphoric, bright, sunny, yellow J2 (Joy): gratitude, beaming, radiating, hot pink J3 (Contentment): content, reasoned, soft, wide, robin’s egg blue J4 (Utter Peacefulness): dissociative, stillness, bathtub, cashmere, felt, muted lavender J5 (Infinity of Space): disembodied, infinite, outer space, grayscale J6 (Infinity of Consciousness): beauty, benevolence, grace, psychedelic, rose petal pink J7 (No-thingness): —— (nothing in nothingness) J8 (Neither Perception Nor Non-Perception): surreal, dissolution, black velvet studded with colorful ’80s rhinestones and gold that wink in and out of existence J9 (Cessation): [cannot be described; no direct experience; consciousness is switched off] (Edit: I also adore this video visualization of the jhanas from Roger Thisdell, which maps closely to my experiences.) Why learn the jhanas? Why bother trying the jhanas? Are they just a weird party trick? I’ll talk about this more later, but in short: jhanas are a good way to cultivate your attention. When you can skillfully control, deepen, and direct your attention, you may discover that life is easier and more malleable than it seemed. It may sound hyperbolic, but jhanas are the closest thing to magic that I’ve experienced in my adult life. J1-J4 are especially useful for altering your moods and states of reality. I especially find jhanas to be an important skill in a modern context, where everyone is perpetually distracted. Mastering proactive control over one’s attention is an increasingly rare superpower. (Spoiler alert: this isn’t the whole story of the jhanas. In fact, practicing the jhanas isn’t really the point of the jhanas at all. But I’ll cover that towards the end of this post. Let’s try to get to “hello world,” first.) Hours practiced I primarily learned the jhanas on two Jhourney retreats in 2024. Jhourney is a company that takes a pragmatic, fun, and accessible approach to teaching the jhanas to beginners. They are markedly different from a typical meditation retreat, and I’m grateful they exist, because I don’t think I would’ve learned the jhanas otherwise. Retreat I (March 2024) On the first retreat, I experienced jhanas 1 through 7 over the span of four days, at which point I left the retreat early to process what I’d learned. (You can read an account of my experience in Asterisk magazine.) Here’s an approximation of how many hours I practiced per day; cumulative hours practiced on a given retreat, (t); and when I experienced each jhana for the first time. Each session lasted from 30-60 minutes, and I never meditated solo (not counting group sits) more than three times per day. Aim for quality, not quantity. Note: (t) includes walking meditation time + group sits (where the goal wasn’t always to practice the jhanas). Dedicated jhana practice time is probably ~80% of this number. Day 1: 3 hours total J1, possibly J2, t <1 hour J2 for sure, t = 2.25 hrs Day 2: 4.75 hours total J3, t = 4.5 hrs J4, t = 5.5 hrs Day 3: 5 hours total J5, t = 10.75 hrs Day 4: 2 hours total J6 and J7, t = 14.25 hrs Total hours meditated on Retreat I: 14.75 Retreat II (June 2024) On the second retreat, I additionally experienced jhanas 8 and 9 (meaning, cessation) over the span of two and a half days, at which point I left the retreat early to process what I’d learned. Day 1: 1.5 hours total Possibly J8 and J9, t <1.25 hrs Day 2: 3 hours total J8 and J9 for sure, t = 3 hrs Day 3: 2.25 hours total Total hours meditated on Retreat II: 6.75 Practice between retreats In the three months between retreats, I only did 2-3 dedicated practice sessions, and not very seriously (maybe 15-30 min apiece?). But I did “practice” the jhanas all the time, in the sense of being aware of my body and mind, how I was reacting to things, and guiding myself towards different mental states. I popped into J1 all the time throughout the day, almost reflexively, and I’d sometimes tap into J2-J4 when I wanted to deepen certain sensations. This felt more like wielding a skill, though, versus dedicated practice. General tips for practice To access the jhanas, you basically induce the “opposite of a panic attack,” as I’ve heard others describe it. Before getting into my specific method (see next section), here are a few general recommendations. Remember, again, that the number one most important thing is to relax, have fun, and don’t overthink it. Experiment with different techniques It really does seem that everyone is different, so my method may not work for you. It’s your brain; go with what feels right. For example, to invoke a positive sensation, some people tap into feelings of gratitude, forgiveness, or altruism. I preferred a fairly mechanical, detached approach where I just thought of my brain as a machine, and which levers I needed to pull to induce various sensations. Flow state » relaxation For me, at least, the trick to jhanas was not “relaxation,” but something closer to “flow state.” Relaxing, to me, is like being at ease, where no new thoughts come to mind. Flow state, on the other hand, means I’m highly engaged with a task for a sustained period of time, and that one task is all that matters. IME this is at odds with how I’ve been told to practice mindfulness meditation. So if you’re struggling to “relax,” maybe try tapping into flow state instead. A jhana is like a sneeze You’ll hear meditators talk about not “grasping” onto sensations or trying too hard with the jhanas. This can be frustrating: what does it mean to both try, and not try too hard? I think of it like sneezing. Sneezing requires some degree of intentionality, but it’s a physical reflex that only happens if you don’t think too hard about it. Like sneezing, jhanas are more like a release than a force of will. Pace yourself and listen to your body For me, the jhanas came hard and fast. I struggled at one point between wanting to slow down, versus feeling like I was “supposed” to practice more. And I didn’t trust what I was experiencing at first, which led me to push myself more than I ideally would’ve. Jhanas are weird because they’re considered a form of meditation, so there are a lot of meditation-like protocols around them (put in lots of hours! no phones or devices! avoid talking to people!). But I think these recommendations are just meant to help you cultivate the attention required to invoke jhanic states: they don’t help you process the experience itself. If you’re going through a transformative experience, locking yourself in a room without friends, family, or outside support might not be such a good idea. So, make sure you listen to your needs. If things get overwhelming, it’s okay to stop, process, and ground yourself. Spend time with your friends. Go outside. Hug your pets. Write about it. You can always come back when you’re ready. The biggest milestones for me, which prompted seeking outside input to make sense of my experience, were: J5, J6 and J7 (experienced together), and J9 (cessation). At these points, I made sure to slooowww down and process what was going on. If you get to any point in your practice where you’re feeling WTF about it, I’d highly recommend Rob Burbea’s talks, which are thoughtful, philosophical lectures on each jhana. Instructions for accessing the jhanas Here’s the method I used. If it doesn’t feel right to you, I suggest experimenting with different techniques. In particular, try switching what you use as your “object of joy,” and see if that helps. (Note, of course, that you will likely progress through these stages over multiple sessions, spread out over days or weeks or months. Feel free to just read the first set of instructions, then continue only once you’ve mastered each stage. Pace yourself!) How I entered J1<>J4 Relax your body deeply, clearing your mind of any distractions. (My personal hack: try falling asleep, but stop before you actually do.) Think about someone, something, or a memory that sparks a pure, uncomplicated feeling of joy. I thought about my child. Don’t focus on the thing itself, but on the joy that arises as a result of thinking about it. Allow that joy to grow, then loop upon itself, as you feel more and more joyful. If the joy begins to dissipate, “pulse” more joy by thinking about the person/thing/memory. Don’t think too much about what you’re doing. Your hands and chest might tingle; that’s a good sign. Eventually, the euphoria will hit. Now you’re in J1. To progress to J2, don’t do anything. Just stay in the moment and enjoy the sensation. If it doesn’t dissipate, it will begin to evolve on its own. Notice how it’s changing, until you find yourself in a qualitatively different state. Repeat the previous step to get to the next jhana. Stay with that state, be in the moment, don’t try to change or interact with it. It will evolve into the next state, and so on. As you get familiar with each state and what they feel like, you’ll be able to locate them in your body and move between states using muscle memory. So to get from J1 → J4, I just move the focus of my energy from my head (J1), to heart (J2), to stomach/groin (J3), to flowing out through my legs and all around me (I call this one, J4, “bathtub”). To move from J4 → J1, reverse the order. As I became more comfortable with the jhanas, I dropped the first relaxation step. Then I dropped my meditation object, or “trigger.” With a bit more practice, I found that I could pop into J1 instantly and progress through my “jhana flow” from there. How I entered J5<>J7 J5-J7 work a little differently. Because they are dissociative, you no longer have your body for reference. The technique that worked for me was thinking about expansion (or “softening”) and contraction. J4 → J5: Expand and soften my awareness, as if the walls of the “bathtub” were falling away. Imagine you’re sitting in the pitch dark and trying to sense what’s around you, or you’re in a room and you sense someone behind you. You’re not focusing on anything specific, just trying to be more aware. J5 → J6: You’re staring at an infinite space; now become the infinite space. For me, this feels like floating “forward,” as if my consciousness is merging with the space before me. J6 → J7: I just stay in J6, keeping the sensations soft, until it fades into J7. Sometimes I can accelerate this process by reminding myself that the J6 experience is finite, and it has to end sometime. But I find that J6 tends to dissolve on its own. To get back down from J7 → J4, I contract my awareness. I remember that I have a consciousness (J6). I remember that there is space (J5). I remember that I have a body (J4). Then it collapses down, like closing a book. As you get more comfortable with J5-J7, you can move between states deterministically by directing your “gaze” (I think this is actually my attention, but I think of it as my gaze): To get from J4 -> J5: I gaze sort of out and slightly down J6: I glide forward into the space J7: I sort of gaze inwards, into my center. This feels like a “flattening” of self, collapsing into a line or a horizon. How I entered J7<>J9 Jhanas are typically separated into two buckets of “light” (J1-J4) and “deep” (J5-J8), but in my view, J7-J8-J9 form their own special trio, because J8 is a tricky state to navigate. J9 can’t be directly experienced, because you’re unconscious – just as how you can’t experience being under general anesthesia. And J8 is a fleeting, unstable state, because noticing you’re in it, beyond the faintest bit of awareness, will send you back to J7. But J7 is stable! So we can use that as our anchor. Think of it as your base camp before attempting to summit Everest. The helpful advice I received was to focus on getting very comfortable with J7, deepening and maintaining that state, and then - when you’re ready - “shooting the gap,” or catapulting yourself across J8 to land in J9. I think of it like skipping rocks. A light touch will get you to the other side (J9), but if you’re too heavy-handed, you’ll sink into the pond (end up back in J7) and start over. (I’m sure there is a way to train yourself to linger in J8, and I’d be curious to cultivate this skill, but so far, this method works for me.) The best way I can describe J7-J9 is to compare it to lucid dreaming, where you’re dreaming, but strangely alert. J7-J9 is like that, but for the act of falling asleep. First, the heaviness of your body sets in (J7). Then, nonsensical sounds and thoughts begin to arise, also known as hypnagogic hallucinations (J8). And then you’re asleep (J9). If you want to cultivate your J7-J9 skills, I’d suggest paying attention to what it feels like to fall asleep at night, noticing the progression from wake to sleep. The difference is you’ll be highly aware – not drowsy – while in the jhanas. So, to get from J7 to J8: relax more deeply into J7, be patient, and notice where reality is breaking down. There are likely fleeting, nonsensical thoughts floating through your mind; try to ever-so gently notice them. Notice that they’re nonsensical. But don’t react to them. It’s hard to describe how this works. In J8, you have to get comfortable with the fact that they may be thoughts or non-thoughts, you might be noticing or not-noticing, things could be happening or not-happening…and just let it be. The image that comes to mind for me is some cartoon I watched once (maybe Adventuretime, or Rick and Morty?), where the characters end up in a bizarro world where their lines and shapes and colors are drawn in strange ways, and the background is now white and empty, but they’re still talking to each other. Kinda like Picasso’s bulls: [Source] Everything is surreal and breaking apart, but you have to be cool with it. You might flit between J7<>J8 a few times before landing in J9. J9 is equally bizarre, because you’ll only know you experienced it after you come back. You know how if you’re given general anesthesia, and the doctor tells you to count down from 10 to 1, and you’re counting, totally awake, feeling so confident that you’ll make it to 1…and next thing you know, you’ve woken up again, and the whole thing is over? That’s what J9 feels like. You’re alert, you’re alert, you’re alert…annnnd, you’re back. Hey, where were you? It feels like you winked out of existence for a bit. I found that I almost always regained consciousness in J7 – usually in a very deep and delicious state of absorption. You can also play with inducing multiple cessations within one session – going from J7-J8-J9-J7, and looping that a few times – before voluntarily ending the session. What’s going on under the hood? I said I wouldn’t spend too much time on theory, but if at this point you’re still wondering how it’s possible that we can think our way into psychedelic experiences and loss of consciousness, congratulations: I know about as much as you do. Jhanas are still understudied in academia, though interest is growing, and there are a few papers that use EEG and fMRI data to demonstrate that something is actually happening inside people’s brains when they are in jhana that’s comparable to other altered states, like psychedelics or being in a coma. [2] The explanation that follows has nothing to do with such literature. It’s just me theorizing, based on my own experience and what I’ve read from others so far, on what I think is happening. But I really have no clue! So, don’t read this as an authoritative take; just a peer-to-peer musing out loud as how I would explain these phenomena. (Please note that these aren’t solely my original thoughts, but a composite of things I’ve read and mashed together from all over the place. I’m not sure what I’ve learned where anymore, so proper attribution feels impossible, but I am not claiming these as my views and shouldn’t be credited as such.) The key ingredient of the jhanas seems to be attention. If you’ve ever tried to make the best of a bad situation, you’re already familiar with this concept. How, and where, you direct your attention, can heighten and intensify an experience. If you get stuck in an anxiety loop, you can make the experience worse. Everything that happens, no matter how objectively “good” it is, will be re-coded as “bad.” But if you try to relax and look on the bright side, you’ll find that your experience actually improves: things that seem “bad” will be re-coded as “good.” To some degree, then, our perception of reality is influenced by where we direct our attention. Now imagine that we’ve plotted all emotions along an x-y axis, where x = valence (positive/negative) of emotion, and y = intensity of emotion. Negative emotions (x<0) might include things like anger, anxiety, and fear. Positive emotions (x>0) are things like euphoria, gratitude, and pride. Attention is the thrust, or force, that you can exert to move your state along the y-axis (i.e. intensify any emotion), regardless of its x-position. [3] This is why the metaphor of jhanas as “inducing the opposite of a panic attack” is so helpful. It’s the same y-value, just with a positive rather than negative x-value. But how do we know the x-positions of our positive emotions? Why are J1-J4 organized the way they are? It’s often said that the jhanas aren’t any different from the positive emotions that we feel in the “real world.” For example, if you start dating someone new, you might progress from the giddy honeymoon phase (J1); to being so joyful and grateful to know this person (J2); to feeling content with, and proud of, the relationship you’ve built (J3); to viewing the relationship as your anchor in the storm of life (J4). I don’t know why positive emotions follow this progression (though I’m sure someone else does), but the point is that jhanas aren’t doing something weird and unusual here. They’re exactly how good feelings evolve in any other circumstance, just with the extra “amplifier” of attention (higher y-value). If our emotions are typically capable of lifting us into the sky and back down to Earth, highly concentrated attention enables us to shoot them into outer space (more thrust!). But if your attention is scattered, you won’t go very far. So, learning how to cultivate and sustain attention is critical to practicing the jhanas. [4] What about J5-J9, which aren’t associated with magnifying any specific emotion, but rather the deconstruction of reality itself? Well…you got me there. I’ve been told (though haven’t read about this myself, so I may be spouting ideas incorrectly here) that J5-J9 are all actually part of J4: so, once you’re anchored in this state of deep calm and equanimity, your brain starts dismantling your consciousness, piece by piece, until there is nothing left. Perhaps it’s akin to how, when you’re very relaxed and calm, it’s easy to fall asleep? But I’m especially baffled by J6, which is an intensely beautiful and psychedelic experience that’s oddly sandwiched between two very dissociative ones (J5 and J7). I wish I had answers here, but I’m still not sure how to explain J5-J9. Impact of the jhanas Now that I’ve taken you all the way through this post, I’ll give you the plot twist: jhanas are cool, but they’re not actually the point. The valuable part is the insight gained along the way. Jhanas, breathwork, psychedelics, MDMA, etc are all tools for inducing altered states, from which new insights can arise. None of the actual methods matter, so much as putting your brain into what I think of as “developer mode,” from which you can write new rules that govern your thoughts and behavior, then close things up and operate anew. (Some people call this “neural annealing.”) After I published my account of the first retreat, many people have asked me how the jhanas improved my life. My answers were fairly straightforward. Having better control of my attention helped me navigate challenging moments more easily than before. Things just didn’t bother me as much, even if a moment was genuinely sad or disappointing or hard. I could experience difficult emotions, and sit with them, without letting it all fall apart. I was also prompted to reexamine aspects of my personality, such as a tendency towards grumpiness, and whether I wanted them to be part of my identity. I don’t think the jhanas made me happy, but their biggest impact was enabling me to realize how happy I already was: I just had to direct my attention towards this fact, then update how I thought of myself. Now I embrace and see the joy in life’s moments, big and small, much more easily than before. I think we could be on the precipice of a modern wave of “natural psychedelics” – like jhanas and breathwork – that are accessible without the red tape (see also: the FDA’s recent rejection of MDMA therapy) and have great potential for therapeutic use. [5] If more people gain access to “developer mode,” they can debug their minds without the use of chemical interventions. One day, we might look back on psychedelics as an early, coarse attempt to do this sort of thing that came with all sorts of weird side effects, like dentists using cocaine in the late 1800s, versus the comparatively “smoother” methods that something like the jhanas might offer. This sort of future is where the bulk of conversation is centered regarding the jhanas’ benefits, and they are very good benefits indeed. …But. Even that isn’t the point of the jhanas! Cessation, or J9, was a completely different experience from the other jhanas. Whereas J1-J7 (I’m not sure where to put J8 because it’s so fleeting and instrumental) were more about being able to improve myself, my mind, and my reality, J9 prompted more philosophical and spiritual reflections on the nature of consciousness itself. Now I see the jhanas like this: they are an algorithm for understanding some fundamental truths about the world. These truths are not specific to the jhanas – they are visible across many different spiritual traditions and lived experiences – but the jhanas are an extremely straightforward way of getting to them. And once I had those insights, I didn’t feel the need to practice the jhanas anymore. After cessation, my practice of the jhanas felt complete. Not only do I not have a desire for dedicated jhana practice anymore, but so far (admittedly, it’s still fresh) I haven’t even felt the need to invoke them in my day-to-day life anymore, like I did after the first retreat. I find this sense of closure to be a really beautiful thing. How often does mastery of an activity end with true fulfillment, rather than boredom, distraction, or disinterest? There’s something about the innate completeness of the jhanas that speaks to their elegant design, like finding a perfectly round sphere in nature. I would love to describe the truths I discovered, but something tells me this isn’t the right format. I think some insights – really, most forms of wisdom – can only be learned by experiencing them yourself. It would be hubris to think that I could convey this sort of knowledge using words, in the same way that no one can teach you about love, or loss, or the feeling of pride that comes from accomplishment, besides yourself. You just need to go do the thing. That’s why I’ve explicitly taken the approach of trying to share instructions that are as clear and straightforward as possible, and emphatically encouraging you to give the jhanas a try. I guess I’ll wrap here by saying that the jhanas are useful for tinkering with the mind, but after cessation, I realized that neither body nor mind is really all that important. I imagine if my brain gets re-muddled somehow, I could use the jhanas to light up the path again. But right now, I see no additional purpose to practicing them. To try on one last metaphor before we part ways: it feels like finishing a video game. I might play through the game again if I’m feeling nostalgic, or to uncover new ways of “beating” it, or find any hidden quests or parts of the map I might’ve missed along the way. But that would just be for fun. I know that all those paths will lead to the same ending, and I already know what the ending is. My intrinsic desire to finish the game has been satisfied. [6] In conclusion: try it! I hope this post has inspired you to want to try the jhanas for yourself. I came into them rather skeptical, thinking they must be overhyped, and came out of it permanently changed. I do think some aspects of the jhanas are overhyped (not in terms of sensory experience, but in terms of their significance), but it’s still an entertaining – and at times, enlightening – experience along the way, with at least 20+ hours of gameplay. And I encourage you to try to “finish the game,” because the ending is a real humdinger. Good luck! Notes I’m not thinking about the Three Body Problem game, you are. ↩ Oshan Jarow’s Vox piece is a helpful introduction to the jhanas that references the research we have so far. ↩ I’ve been tempted, for research’s sake, to try inducing and intensifying an actual panic attack to see if a distinct set of states emerge, similarly to the jhanas. But I’ve had panic attacks before, and I don’t wish them on anyone. I do also wonder: is valence purely bidirectional? That is, can you only induce and heighten a “positive” or “negative” emotion, or are there any other directions we could send our consciousness down? The jhanas encompass what I believe to be every type of positive emotion, including joy, contentment, and peacefulness (and their associated variations). Can we line up all the negative emotions – such as anxiety, fear, and doubt – along the valence axis in the opposite direction? And together, does that neatly organize every possible human emotion along a single -1/1 axis, or are we still missing others? If so, what happens if we try to intensify and loop on those emotions? ↩ I suspect this is partly why I was able to learn the jhanas quickly. Even though I don’t meditate, I’m lucky to spend most of my days deeply immersed in focused, creative work. If you want to get good at the jhanas: stop scrolling on your phone, pick up a book or a hobby or some activity, and just do that one thing for hours. Learn to be alone with your thoughts. Go on a long walk. Eat dinner alone, without watching TV or being on your phone. You get the idea. ↩ After having tried breathwork a couple of times, I personally prefer the jhanas, because they enable you to have a much more precise and controlled experience, without the distraction of external stimuli. (I also couldn’t get comfortable with the idea that I was essentially hyperventilating my way into these states.) On the flip side, breathwork might be a more deterministic way to induce an altered state. ↩ Of course: never say never. There’s always the possibility that this sequel turns into a trilogy! ↩

13th Jun 2024 • 1 votes
Working notes for Summer of Protocols

I participated in the Summer of Protocols research program this summer as a Core Researcher. It was an 18-week program, funded by the Ethereum Foundation, that aimed to catalyze a wider exploration of protocols and their social implications. I decided to focus on protocols as systems of social control, and whether they help or hinder human agency. Protocols have a very technical meaning for the internet (HTTP, TCP/IP, IP, etc), but are also used in a variety of other sectors in nontechnical ways (diplomacy, healthcare, emergency response, etc). I want to develop a unified history of protocols, through this lens of control, that shows how these different types are interrelated – then use that to better predict the role that protocols will play in our near future. I thought it might be useful to share my working notes from this process, especially since Summer of Protocols is an interesting meta-experiment in funding a cohort of independent researchers. I tried to keep these summaries fairly condensed, with major themes and challenges that I worked through. Read the final essay here: “Dangerous Protocols” Weeks 17-18 (Aug 21 - Sep 1) What did it all mean? Finished revisions and turned in final draft. It sounds a bit silly to say, but only once I finished the draft was I able to zoom out and think about “What did this all mean?,” why this piece evolved in the direction it did, and how it ties to other ideas that have been rattling around in my head I’ve noticed that “agency” has been a recurring theme for me. It’s been implicit in my work for a very long time from the perspective of funding, creators, and the tension between open source maintainers <> community expectations. In recent years, I’ve thought about agency as an essential part of tech culture and what makes it special; as a distinctly American value (America as an idea, not the literal nation state); and as an underlying conflict between worldviews today (I wrote about this a bit wrt a widespread fear of the future and having kids). I’ve also thought about when technology enables greater levels of agency (as I think a lot of tools do), and when it hinders or engenders a lack of agency (the worst effects of social media and smartphones, which are very good at hijacking the mind) Although I didn’t go into this research program with an explicit focus on agency, I can see it clearly in my final output (funny how that works), and this project has definitely helped me clarify my own feelings on the topic I think my hesitation around embracing protocols as a unilaterally positive future development comes from this ambiguity about whether “protocolized mindsets” increase or decrease human agency, which I find particularly concerning because it seems like there’s a lack of consistency in how we describe the benefits of protocols. In a modern, technological context, they’re seen as a way to enable more customization and interoperability. But in a historical and theoretical context, they’ve always been a way of standardizing and reducing decision making. That makes me feel more hesitant about accepting the utopian view of protocols. Do we really understand what protocols are for, or is this just hopeful rhetoric that distracts us from engaging with more serious problems around the decline of agency today, and its root causes? Weeks 15-16 (Aug 7-18) We’re in the final stretch! My updates are fairly boring from this period; I’ve been heads down revising a semi-final draft of my SoP essay, which I shared with a few other researchers for feedback Hardest thing to pin down has been how to describe the evolution, and increased entrenchment, of protocols over time. The first iteration was “material layers” (how protocols exist on everything from e.g. physical infrastructure -> social -> identity layers), second iteration gave it more directionality to suggest that protocols don’t just exist on these layers, but move from explicit to implicit over time But Eric gave the feedback - and I agree - that I’m being too prescriptive with that directionality; that protocols don’t always perfectly move in one direction from e.g. hard infrastructure to social institutions, but that they might iterate and loop recursively. So I revised it for a third time to reflect that multi-directionality, while also remaining somewhat opinionated that protocols, as they become more deeply entrenched, ultimately become indistinguishable from our identities. I think I’m happy with this final version now Weeks 13-14 (July 24 - Aug 4) In-person time is good We had our SoP retreat in Seattle. Face-to-face time was so important and long overdue. I wish we’d done this at the beginning of the program! Getting together in person helped me see what the common themes / agenda were among our work. I think this is especially important when a field is very nascent or undefined. You need some common language and experience to ground everyone’s work, otherwise people are working in silos Talking about bad protocols (see below) also evolved into the “Kafka Index” (Rafa’s term), a list of evaluative criteria, which I’m going to try to refine as a companion artifact for my essay. Definitely the kind of thing that would’ve only come out of having in-person collaboration time for a few days Tricks for defining hard-to-define concepts Turns out, talking about protocol dystopia (i.e. bad protocols) is way more generative than trying to describe “what is a protocol” from scratch. It’s a lot easier to identify the bad vs. the good (because when something is good, you don’t notice it as much), which you can then invert to get an idea of what a good protocol looks like We also did a session on “protocol humor,” which helped us define protocols in a more roundabout way, because humor is easy and intuitive to identify (something makes you laugh, or it doesn’t), and thinking about why it is/isn’t humorous exposes all the fault lines of a concept Do protocols control or liberate us? In our “imagined protocol futures” session, I noticed that many people seemed to imagine protocolized futures as having a lot of customization and interoperability. This seems in line with how protocols are typically discussed in a software / social benefit context, but doesn’t match the definition of protocols in the abstract. Protocols historically seem to exist to simplify decisionmaking To me, a protocolized future is almost certainly highly controlling and constraining - not one where we have a ton of choice. I don’t think it necessarily has to be dystopian, but at the very least, it seems like the opposite of a highly customizable future. (This is the rhetorical disconnect I keep noticing about protocols, which is what I’ve been trying to explore this summer!) Weeks 11-12 (July 10 - 21) Revising my draft based on feedback, and making difficult cuts Threw out my “material layers” diagram, which I realize doesn’t really make sense anymore, given what I’ve learned. It’s now turning into evolutionary “stages of protocolization,” but I’m still testing the connection between theory and application (i.e. does this model work for all the examples I’ve been working with?) The major examples I was previously hoping to center this piece around now feel like they don’t fit my definition of protocols anymore, as I’ve gained a better understanding. Think I’m gonna have to cut most of them, which is painful (especially given how much time I spent trying to understand them!) but necessary Cut out a lot of my 3rd-party references, which felt good. Need a word for the research equivalent of “legalese,” where it’s tempting to add lots of citations to “show your work,” but ends up making the paper too convoluted and inaccessible and uninteresting. I feel especially vulnerable to it in a cohort setting where I’m getting a lot more feedback/suggestions from others than usual A lot of people seemed to resonate with my concept of “weakly vs. strongly expressed” protocols, so I’m going to lean into that more, though Eric pointed out that these terms don’t seem to quite convey my intent, given that “weakly” expressed protocols are more powerful. I’m going to call them “implicit vs. explicit” protocols instead Weeks 9-10 (June 26 - July 7) The not-fun parts of the writing process Slogging through first draft of essay. I’m writing it piece-by-piece before synthesizing it into a whole, which isn’t my usual style. Usually, after the research phase, I can sense what “the whole thing” should look like before I start editing, but this time I feel like I can’t see the whole thing yet, which is frustrating Finding myself in a familiar place where I kinda hate my current draft because it’s too reliant on others’ authority vs. on my own. I notice this is a tempting crutch when writing about a topic I’m new to or unsure about. I think it’s a subconscious attempt to establish credibility (by “showing one’s work”) I need to fight that temptation, so…that means throwing out a lot of my original essay! Which is painful, but I think it’s a good practice. I still think all that background work was useful in a lit review-sort of way, I just don’t need to include it all in the final piece The Affiliate Researchers joined the SoP cohort, which served as a sort of midway checkpoint. We were asked to share rough first drafts to get feedback from others, as well as “pitching” our topics to affiliates in speed dating format. This was a difficult exercise for me to do midway through my synthesis process. I did get some helpful feedback, but it was overwhelming to parse through others’ thoughts, and defend or explain certain ideas, while also trying to grapple with them myself. Kinda felt like being woken up while in the middle of a deep dream SoP has been a very different process from how I typically work. I don’t think I prefer it, but from a personal development standpoint, it’s probably good mental cross-training to try working in a different style from how I’m used to, if only to help me figure out what I do/don’t like Exploring my aversions to postmodern thinking Revisited some postmodern work because I’m writing about control, but found myself regretting it as usual. I don’t know why postmodernism gets under my skin so much, it’s like a very reflexive allergy Mused about this with Venkat in our Discord a bit, his reaction was that they “squat on all topics regardless of how well or poorly they grok it;” “good to have in a big discourse, but bad as stewards of the discourse for everybody.” This feels right to me Relatedly, I do worry about my output from this summer being too theoretical; I really don’t like to live at this level of abstraction. But because protocols are such a poorly-defined topic, it felt necessary to zoom out a bit and try to understand them from a more fundamental place. If I’d had a narrower focus, I think I’d feel stuck on what conclusions to draw, because there are no “schools of thought” or shared prior thinking about protocols in the world already. So, I think I know how I got here…but I still feel a bit out of my element A shared theme among Core Researchers seems to be that the notion of protocols is just…so broad (or as Dorian put it, “shotgun-blasted across the internet”) that it’s been hard to build a coherent discourse around it. I’m glad I’m not the only one who’s been feeling this way! The role of humor in research Venkat and I also talked about the importance of humor in research. I think this is especially true when dabbling in abstract thinkwork (and again, part of my aversion to postmodern thinking, which I find too serious and humorless) But even for research more generally, I think humor is helpful as a way of keeping one’s mind open, which helps form unexpected connections between ideas. I find The Discourse to be far too literal and lacking playfulness today; ex. “cringe” is IMO a dangerous concept that stifles creativity Weeks 7-8 (June 12-23) Did philosophy die with the early internet? It’s weird that there’s this whole string of philosophers that wrote about control and protocols and technology up til, like, the 1990s or early 2000s, and then…what? I had this same feeling while researching open source, too (which is why I wrote Working in Public!) It’s like, people had so much to say about the internet in its early days, and then (IMO) the internet got REALLY weird in the 2010s, and suddenly no one has anything to say about it? The 1990s/2000s era looks nothing like the 2010s/2020s era, but I feel like our current era is woefully undertheorized. The only people who write about it now are much more grounded and political, like those who study misinformation or mental health effects from a social science perspective, or chronicle weird internet subcultures from a more journalistic perspective. Those people existed in the early internet days too, but that’s not what I’m looking for. (There’s also plenty of theorizing on random blogs and corners of the internet, of course, but why don’t those conversations live on a bigger stage? Are those conversations enduring? Will anyone remember them, 50 years from now?) My secret, cynical theory is that we are so completely numbed and overwhelmed by information these days that we simply don’t think in these more abstract terms anymore (and I think it’s that numbness that I want to capture in this piece somehow). Or maybe we still do, but it all gets lost in idle musings on Twitter or in group chats or messages to each other. I’m not trying to be regressive in wishing for a rosier time where cyberpunk philosophy was a thing, because that’s not even what I want today, I just find myself wanting…something, some deeper level of dialogue, that seemed to exist throughout the entire 20th century and then mysteriously disappeared in the 21st The inevitable panic stage of research Starting to panic a bit about needing to have something to show Affiliate Researchers by the July 5th kickoff. I don’t like sharing half-finished drafts until it’s really polished and done, but this program is structured to have a “checkpoint” of sorts, so I need to figure out how to create something that’s shareable, while also not disturbing my own messy process. It feels like having to clean up my metaphorical desk in the middle of a creative project to show visitors around. I like having my papers all strewn about! Decided to take a step back and reassess my research direction. My current strategy was going through each material layer and doing a deep dive on “case studies” for each one, in hopes that a common understanding of protocols would emerge. But it’s honestly turned into a bit of a slog, and I’m not sure I’ll get much more benefit from continuing down this path, vs. zooming out and starting to try to pull all this into a draft In the end, I think the material layers are gonna be just one snippet of this essay, and I’ve learned enough so far. More important to try to synthesize what I’m saying overall. So that’s what I’m gonna do instead I like this line from Galloway about how protocols aren’t good or bad, they’re just “dangerous,” so I’m gonna try to use that as my framing (and title!) I have this notion of “strongly” vs “weakly” expressed protocols that still feels important to include, too. Protocols that we know are governing us, vs. being unaware of their control Weeks 5-6 (May 29-June 9) Protocols as an industrial phenomenon and beyond Read The Control Revolution, which a few people recommended to me (thank you!). Beniger’s thesis is that the “control revolution” (information processing society) was a direct outcome of the Industrial Revolution, and the loss of control that resulted from the rapid increase in production/distribution/consumption I imagine we could say a similar thing about “cultural protocols” today emerging as a direct result of the Social Age in the 2010s (which feels distinct to me from the onset of digitization / i.e. birth of the internet…we need a better name for this that’s not Web 2.0) and the loss of social control that came from context collapse? Which I think sparked a new era of protocols (“weakly expressed” / harder to pin down) Not sure exactly how to describe this newer set of protocols yet, or why those differences exist. I think it has something to do with exerting control in digital / nontangible spaces vs. physical ones, but I’m not sure yet I feel like I’ve been dancing around this topic for awhile now though, from multiple angles! Antimimetics, proprioception as the primary sense for moving through nonphysical spaces today, etc. It’s all related…somehow… Also, this seems obvious now in retrospect, but I’m realizing that protocols kinda just…weren’t a thing, pre-industrialization? Surely there were still some informal social protocols, and the word existed (in a different context), but I can’t imagine that protocols, as we understand them today, were really relevant or even identifiable as a social construct? Researching material layers (May 15-26) I expected to be more interested in the Freud/Jung era of psychoanalysis in the late 19th century and early 20th century, but I ended up getting sucked more into the personality test frameworks that were first developed after WWI and rose to prominence in the mid-20th century, and how they are used to sort people, especially in hiring contexts I’ve been rabbitholing on corporate towns as heavily “protocolized” physical environments. Drew made a great point in distinguishing company towns as more like platforms, vs. e.g. bottoms-up Jacobs-esque urban neighborhoods as more like protocols, which could probably be a whole research topic in itself! I think the notion of company towns as platforms (vs. bottoms-up planning as protocols) is correct, based on the common definitions of protocols vs. platforms. But now, from the perspective of my more generalized definition of protocols as systems of social control, I think platforms are really not that different from protocols? Or maybe they’re a sub-category of protocols? And maybe we’ve been making this false distinction between them for political reasons. Platforms are certainly a more “all-in-one” solution, but they still serve the same fundamental purpose as a protocol I think the notion that protocols are customizable or extensible at all is itself an illusion of control. We like protocols (in the political, anti-platform sense) because we think they give us more control, but protocols are actually always in control. (“Greatest trick the devil ever played,” etc) Looking at how protocols are intertwined with promises for social reform. “Give up a bit of control / enter into this social contract, and you will experience XYZ social benefits” Running our research meeting Angela and I ran our research meeting for the group on our shared theme, “unconscious protocols” One takeaway from our exercise + discussion was that even when we think we’re subverting a protocol, we’re often just redirecting the energy (but still complying with the rules). If you break out of the protocol entirely, you’d also need to exit the ecosystem that supports it. TLDR protocols are very difficult to actually escape, if at all! Angela’s musings of “are we just talking about culture, not protocols?” and what the difference is between them, were also useful Synchronicity is hard to manage against deep work A month+ into this program, I’m definitely struggling with the synchronicity of the SoP schedule. Because so many of the meetings are in the middle of my morning work block (time zones are hard to synchronize when everyone lives across the US and Europe), it makes it harder to for me get into a deep workflow. It’s been fun discussing with people and finding new ideas to tug on, but I feel like I haven’t made progress nearly as quickly on the actual research part as I would have liked. I need my quiet time in order to synthesize and make connections I don’t know what it is about morning work blocks, but I’ve noticed nearly every person I know who does creative work (especially research / writing) is very protective of their morning time, and I’m no different. I can’t have scheduled meetings before noon; it just blows up my whole day. So that’s been a challenge to manage this summer Weeks 3-4 (May 1-12) Looking for protocol literature Having a hard time finding any literature about protocols that isn’t purely technical, which I guess is unsurprising. I think I need to use my own definition of protocols to figure out what isn’t necessarily coded as protocols right now, then weave that story together myself I did re-read a old book I remembered I had about protocols and control, Protocol: How Control Exists After Decentralization. I remember thinking it was way too postmodern for my taste when I first read it, but it’s actually been quite useful to return to (though I still skimmed through a lot of the Foucault talk). It’s funny to consider where our common understanding of protocol governance was when I first read it in 2018, right after the first big crypto boom but well before the web3 era, and how much more relevant this book feels now. I think I wasn’t really able to place this book into modern context when I first read it, but I got a lot more out of it now. Starting to flesh out my “material layers” of protocols Aka psychological, physical, social, technological, cultural layers. After reading Galloway’s book (see above), I’m sort of thinking about these as the various “corporeal” forms that protocols take Starting to work through each of these sub-themes as practical applications of my thesis, and hopefully come out with a more refined intuition for what “protocols” are vs. everything else (culture, norms, rituals, etc) I realized that each of these layers had a “golden era” of development in post-industrial history (I think?), which I’ve started to outline. I’m gonna try to do a deeper dive into each of those periods on their own, and also see if they string together into any sort of interesting chronology Had a useful convo with Angela about our shared interest in protocols that exist on the psychological layer (psychoanalysis, internal narratives, etc). We all have unconscious protocols (i.e. patterns of behavior) that dictate our reactions in any given situation, and these protocols are often hidden even to ourselves. We also often don’t know how we acquired these protocols, but can still be “trapped” (aka controlled) by them nonetheless. Weeks 1-2 Struggling to define what protocols are I’m surprised how much of a blocker this has been for me. It feels difficult to proceed with my current project scope until I understand where the boundaries are. I don’t normally like to get this meta, but I think it’s important, given that this is a nascent field of study without existing precedents. Not addressing this question up front will make everything feel loose and disconnected later on Challenges to field building when a research topic is too broadly defined We don’t want to broaden the definition of protocols so much that it becomes meaningless, which is a real danger when evaluating protocols in a non-purely-technical sense Bernadette shared this paper with me about how the lack of definition around “culture” has caused challenges in academia for those studying organizational culture. I like this excerpt about how to build a field that doesn’t just attract grifters: “In 1996, Ed Schein, perhaps the seminal figure in the field, called for researchers to meet four conditions to make progress in understanding organizational culture. First, the culture research needed to be anchored in concrete observations of real behavior in organizations. Second, these observations needed to be consistent or “hang together.” Third, there needed to be a consistent definition of culture that permitted researchers to study the phenomenon. And, fourth, this approach needed to make sense to the concerns of practitioners confronted with real problems, an edict that likely contributed to the consulting emphasis that we discussed above. Without consistency in definition and measurement, he argued, studies of culture will simply fail to aggregate, with different researchers studying different constructs even as they label them “culture.” Unfortunately, we believe that this lack of unity describes the current state of the field. While there have been voluminous studies on the subject, it is difficult to see with any clarity what we really understand about culture.” Dorian also drew parallels to the UX field, which apparently has become similarly populated with grifters due to lack of clear definitions + industry’s interests overshadowing academia Venkat shared a paper about low-paradigm vs. high-paradigm fields, which helped me think about where the study of protocols should fall. He also clarified that we don’t need a proper research field (i.e. “protocol studies”) to emerge from SoP, and maybe that’s part of the experiment in itself. I still think it’s important to feel like this body of work is cohesive and practically useful to “protocol practitioners,” even if it doesn’t turn into a field, and I want that to guide my work Core researchers come up with their own definitions of protocols The aforementioned paper on organizational culture defines culture as “the norms and values that guide behavior within organizations and act as a social control system.” I like this term “social control system,” and think this is more precisely relevant to protocols vs. culture as a whole Toby’s definition Rafa’s definition Dorian’s definition Venkat reminds us that we are unlikely to all settle on a single, shared definition of protocols, and that’s perfectly fine - but that if we end up with several competing schools of thought, that would be a good thing! I settled on a working definition of protocols for myself: “Systems of social control that dictate the procedural steps to resolve a coordination problem” I don’t want to spend more brain cycles on definitions than I have to. I want to keep things intentionally simple; I just need a heuristic that helps me guide my work, and I trust that I’ll improve on it as I get deeper into research. But I know I’m not going to get to the right answer just by thinking about it in a vacuum I’m also realizing that core researchers are approaching protocols from many different angles, beyond what I had even considered on my own. I think I can understand “protocols as systems of social control” by looking at how they exist across many different layers: psychological / self, physical / built environment, social, technological, cultural. I’m gonna try to workshop this into a more coherent framework, but will use this initial hypothesis to guide my plan of attack (i.e. try to dive deep into each layer and see if this is true) Guiding questions I’ve collected to scope my project + focus What is not considered a protocol? (via Rafa) What problem/s do we see among current practitioners / users of protocols in the wild that we would like to address? (via Kei) What do we currently all believe about protocols? What may or may not be true about that? 30 years from now, if someone were to write a history of protocols, what would they say about this era, and how it evolved into the next era? How would someone describe our collective history of prior thinking about protocols, even up til this day? In light of all this definitional work, I’ve decided to adjust my project scope. Originally, I wanted to look at how protocols spread and are transmitted (especially since I’ve had a tangled body of thought around antimimetics that I think would complement this work nicely). But writing about antimimetic protocols feels like Protocols 201. As fun as it would be, given the nascency of the field, I think I need to stick to a Protocols 101 project first. Otherwise it will just be confusing and not stick in the heads of anyone reading it. Updated my project description here.

27th May 2023 • 1 votes
Early stage funding markets for science - an analysis

In the summer of 2022, with support from Schmidt Futures, I took a closer look at several emerging science funding mechanisms – rapid grants, scout programs, and focused research organizations (FROs) – to understand how they serve the needs of early stage science. I also conducted interviews with funders, program administrators, and grantees to understand their goals, operations, and intended impact, and how their work fits into the existing science funding landscape. About this report Changes in science philanthropy in the past decade – a significant growth in capital spend, changing career interests from science and engineering PhD graduates, and increased urgency since the onset of the COVID-19 pandemic – have converged to create the beginnings of a “seed stage” market for science, which addresses a critical funding gap for early stage discovery and prototyping. Early stage funding is a growing category in science philanthropy that benefits both basic and applied research. “Early stage” refers to high-risk, high-reward projects that are not yet well-funded. Early stage funders share common interests, including a desire for reduced administrative burden, faster application cycles, and a higher tolerance for risk and failure. They favor qualitative, rather than quantitative, heuristics to evaluate opportunities and measure impact. Funders have also begun to develop new grant vehicles that better suit their needs, including: Rapid grants: Grants that are designed for a faster turnaround, usually a few months. Often suited for early stage or proof-of-concept research, or for situations that require an emergency response. Scout programs: A method of grantmaking where funds are distributed through a network of scouts, or “regrantors.” Scouts are chosen by the grantmaking organization and are typically well-networked or embedded in the organization’s intended field of impact. Focused research organizations (FROs): A special purpose organization that is time-bounded (e.g., 5-10 years) and focused on accomplishing a scientific or technical goal that isn’t adequately addressed by academia or industry – for example, the development of a new platform technology, or publishing a large dataset. The growth of early stage funding has made it possible to fund more types of research, including proofs-of-concept and prototyping, groundwork for new research fields, interdisciplinary research, and “public infrastructure” for science (such as open-access tooling and datasets). Early-career scientists, in particular, benefit from having more funding available for their work. All of this has been accomplished with fewer administrative costs than is typically required, which suggests there are operational learnings that other funders may want to emulate. While progress is encouraging so far, early stage funders are not a panacea for all of science funding’s problems. Grant sizes are still small (typically <$1 million), and the long-term impact of these programs is still unknown. Further work is needed to attract more funders and capital; to increase awareness of these opportunities among early-career scientists; and to demonstrate to federal government agencies what’s working well and identify what can be adapted for larger-scale programs. You can read the full report here.

23rd Jan 2023 • 1 votes
Cultivating agency

I didn’t always know that I wanted to have kids. I wasn’t against it, necessarily – for awhile, there were just more reasons in the “why not” column than the “why”: uncertainty about whether I’d be a good parent, fear of losing my identity, a lack of maternal instinct. Those reasons gradually faded away as I grew older and got to know myself better. I imagine this is not an unusual experience. Some people knew they wanted to have kids their entire lives; they were raised with big families, or traditionalist values, or otherwise found it to be perfectly natural and obvious. For others, it takes a little more time to conquer your messes and realize that if you can figure out how to get yourself together, you can probably figure out how to be a parent, too. All that is to say: as excited as I am to have kids now, I still understand and respect others’ decisions to not have children. I’m intrigued by the philosophical arguments for antinatalism, such as those made by Sarah Perry in Every Cradle is a Grave. As far as I can tell, these arguments are a personal exercise in morality: for example, the idea that it is unethical to bring a human into the world without their consent, or that a child might experience extreme suffering in their lifetime, or cause extreme suffering to others. These questions have been asked for literally thousands of years, and are a useful inquiry into the purpose of man and civilization, if only to reaffirm one’s faith in procreation. But today, there is a newer strain of antinatalism weaving its way into the conversation. Unlike these deliberate ethical inquiries, this newer version of antinatalism appears to be a byproduct of social movements, a deeply encoded worldview that perhaps children are not worth having. It is not a decision being weighed against one’s personal moral code, but passively transmitted through a widely-held set of social beliefs. Antinatalism as a byproduct of social movements The climate crisis is probably the most prominent example of a social movement whose natural conclusions have led people to not want to have children. One survey of roughly 600 American adults between 27 to 45 found that while 60% of respondents were “very” or “extremely” concerned about the carbon footprint of having children, their bigger concern (cited by 96.5% of respondents) was their children’s well-being in a “climate-changed world.” [1] In the words of one 31-year old respondent: “I dearly want to be a mother, but climate change is accelerating so quickly, and creating such horror already, that bringing a child into this mess is something I can’t do.” But the climate crisis isn’t the only social movement with antinatalist externalities. Effective altruism (EA) and AGI (artificial general intelligence)/x-risk – social movements which attract overlapping groups of people, but are distinct – also have implications for society that lead to antinatalism. None of these movements are explicitly antinatalist. Some parts of EA, for example, are even pronatalist. Will MacAskill, a founder of effective altruism, believes that children have the potential to “innovate” and be “moral changemakers” (though he personally does not plan to have children). The longtermism branch of EA, which is focused on improving our long-term future, can be understood as pronatalist, though it is not explicitly, nor uniformly, so. MacAskill affirms this position in his most recent book about longtermism, What We Owe the Future. On the other hand, among adherents to we might call “classical EA,” the value of having children has been frequently debated. EA derives its philosophy from utilitarianism, and some argue that children are not “cost-effective”: that the time and money spent on raising children could be better spent on reducing suffering in the world. In “The Cost of Kids”, Brian Tomasik states that while “there might be utilitarian benefits from having a kid…I wouldn’t count on it,” suggesting that one could become a sperm or egg donor, or spend their time “inspir[ing] some of the billions of other young people in the world” instead of raising children. Liz Kaye notes that some EAs “point out the very low likelihood that any given potential child…would do more good than that same amount [of money] going towards the Against Malaria Foundation to save dozens, perhaps even hundreds, of lives.” Among those who are preoccupied by the risks presented by AGI or other global catastrophes, there is a belief that because humanity will be seriously threatened in the next few decades, we need to be primarily concerned with saving ourselves now, instead of having children, who will suffer immensely if they are brought into this world. For example, one anonymous poster explains that “as a 23 year old man living in the UK…the probability that I die [in the next 30 years] due to AI x-risk is 41%,” and that AGI is strongly incompatible with longtermism. With those odds, it’s understandable why one would not plan to have children. Critiquing antinatalism Even though I’ve previously felt unsure about having kids on a personal level, I’ve never thought that having kids is bad for humanity on a societal level. I’ve never bought the argument that the world is so terrible that I shouldn’t bring kids into it. I genuinely struggle to understand what people mean when I hear this. Antinatalism, as a byproduct of collectively-held social beliefs, feels deeply wrong to me somehow, like it fails a basic test of humanity. At a surface level, there’s the simple, lazy critique, which is: we are all currently alive on this good green earth because our ancestors decided to suck it up and have kids. QED. The pronatalist argument is pretty straightforward. I’d call this the default worldview for people who don’t spend their time overthinking things out loud on the internet: Have kids because you’re human, and that’s what you do. Have kids, because you want to extend your legacy. Have kids, because you don’t want to be lonely later in life. But something about this position, as a counterargument to antinatalism, feels not quite complete to me, because it operates on the wrong level of granularity. Relying on individualist rhetoric to counteract social values seems like an ineffective way to change people’s minds, because our behaviors and attitudes shift dramatically when operating in individual versus collective contexts. Social movements, and the values they transmit, are clearly capable of trumping our “natural” instincts, in both directions. Fertility rates have dipped below the replacement rate of 2.1 births per woman in many developed countries, including in the United States, where, as of 2019, it is 1.71. According to one 2020 survey, 1 in 4 childless adults cite climate change as a major or minor reason for not wanting to have children. On the opposite end, Abrahamic religions have successfully compelled millions of people to have children for centuries. There are many personal reasons that influence people’s decisions to have children, ranging from “I want to prioritize my life’s work” and “I am not stable enough to care for another human” on the antinatalism side, to “Commitment overrides all personal doubts” and “It feels good to live for something bigger than yourself” on the pronatalist side. But none of those arguments help us understand our shared, collective reasons for having, or not having, children. We’ve seen that there are antinatalist arguments being made on the basis of social values, as previously argued. Can we articulate a pronatalist response to these arguments that’s made at the societal level, as well? What leads a social movement to antinatalism? Using climate, EA, and AGI/x-risk as examples to work from, I tried to think about what makes them different from social movements that are explicitly pronatalist, such as retvrn (a form of primitivism) or the New Right. It’s tempting to say that the difference is optimism versus pessimism, but I don’t think that’s quite right. The New Right, for example, seems like a fundamentally pessimistic social movement to me. Both JD Vance and Blake Masters are running for Senate on a platform of “America in decline,” suggesting that a return to traditional values will help restore American prosperity. From Masters’ campaign website: “America is in decline and the world is a dangerous place….At home, we see an unholy alliance between Big Government, Big Tech and Big Business, who collude to wreak havoc on our economy, destroy our border, impose their radically liberal ideology on our culture, and censor any dissent.” Nor does it seem right to say that the difference in antinatalist versus pronatalist social movements is a focus on individual over collective well-being (ex. the idea that people are less religious or disconnected from their communities, so they don’t see the value of having kids). EA is strongly oriented towards the collective, asking how “to do the most good” across the entire population; it is from the basis of collective well-being that some EAs argue that we shouldn’t be having children. We can observe, however, that these social movements share the position that having children is either a drain on civilization’s resources, or that they will be victims in a global struggle for survival. In both cases, children are portrayed as a cost, rather than an asset. If we prod a bit at the underlying assumptions here, I find that a major difference in anti- versus pronatalist social movements is a belief in the lack of personal agency. In other words: do people believe that we have the ability to solve, or at least influence, the world’s biggest challenges? [2] The importance of teaching agency If “grit” – the desire to persevere when faced with a challenge, popularized by psychologist Angela Duckworth – has been the human trait du jour of the last fifteen-odd years, I suspect that “agency” – a belief in one’s ability to influence their circumstances – could be the defining trait of the next generation. Despite our devices becoming easier to use over the last few decades, technical proficiency appears to be more widely dispersed across younger populations, as opposed to older generations, where it is viewed as a specialized skill reserved for a small percentage of the population. However, I’d guess that young programmers typically know less about the inner workings of their devices than older programmers. Younger generations didn’t become “more technical”, per se – if anything, they’re probably less technically literate overall. It’s programming itself that became easier, because there are now so many tools and layers of abstraction available that make coding a much more trivial practice than before. There’s a separate essay to be written about whether the “dumbing down” of coding is good or bad, about whether we are slowly locking ourselves out of the technology that humans built, because nobody understands what’s going on under the hood anymore. But for the purposes of this conversation, I want to highlight how the value of coding isn’t really about teaching programming skills. It’s about teaching agency. The world doesn’t happen to us; it is shaped by us. More people now have access to simple tools that allow them to “program,” or modify, the world around them. Teaching kids that the world is programmable – whether it’s through actual coding, games like Roblox and Minecraft, encouraging them to ask for what they want, or even white-hat social engineering – is a critical skill that prepares them to tackle the social challenges of the future. If Gen X and Millennials grew up with a “digital divide,” perhaps Gen Z will face an “agentic divide”: those who believe they have the power to change their circumstances, versus those who do not. And this belief in personal agency appears to be a critical difference between social movements that have pronatalist versus antinatalist outcomes. If you believe that the world is shaped by your and others’ actions, then the climate crisis or other global catastrophic risk don’t look quite so scary: they’re an opportunity to do something meaningful. If you believe that the world’s problems are solved by people, then having children doesn’t seem like a waste of resources; it seems, in fact, like the most good you could do in the world. The opposite of agency is learned helplessness. If people believe that we can’t do very much to stop the world’s problems, it’s unsurprising that they’d be terrified to bring children into the world. But this seems like a mental trap that we can, and should, teach people to resist falling into. As Clare Coffey writes in “Failure to Cope ‘Under Capitalism’”: “[A]n imperfect struggle to live well and love a world badly in need of repair is better than staying still because things are terrible.” If our social attitudes towards agency are as important as they seem, we should measure its prevalence in the general population, then find ways to track it over time. I grew up in the heady halcyon days of globalism, where celebrities sang “We Are the World” [3] and Whitney Houston proclaimed that “I believe the children are our future.” I see very little of that rhetoric in our cultural artifacts today. It’s not quite pessimism that’s creeping into our consciousness like a cold bony hand, but rather the insidious belief that we are helpless to do anything to change the state of the world. Ryan McEntush notes that Israel “bucks the global trend” with a fertility rate of 2.9, which he speculates could be attributed to a cultural belief in “asabiyyah…the cohesive force that bonds a people, grown stronger by harsh conditions.” Can other societies find ways to impart a high shared sense of agency among their people, as well? There will always be valid personal reasons for not having children. Simply put, not everyone wants to have kids, and that’s fine. But I refuse to accept that we should embrace societal norms around not having children. When I examine my personal motives for having children, there is certainly a world in which I wouldn’t have had children at all. My decision was strongly influenced by personal growth, finding the right partner, and having financial security. I don’t subscribe to the biological argument that humans must be naturally disposed towards having children, and there is a lot of work to be done elsewhere to ensure that more people are personally able to have children, if they want them. But I do still have, let’s call it, collectivist reasons why I think having kids is good: because seeding the next generation of capable minds is humanity’s only hope for survival and flourishing. And if that’s something others don’t believe, it seems like there is also work to be done to understand why they feel that way, and try to change it. My sense is that those with a strong sense of personal agency don’t always realize that not everyone shares this position. Instead of responding to antinatalist arguments with thinly-cloaked shaming and appeals to the “natural” self, I think it’d be more effective to respond by teaching people a sense of personal agency. If more people believe they can control their environment and be the change they want to see in the world, I hope they’d be inspired to raise the next generation: not as victims, but as the heroes of our future. Thanks to Anna-Sofia Lesiv and Danny Crichton for a conversation that helped me finally gel this topic together. Notes Note that this study uses snowball (i.e. non-random) sampling, and is mostly interesting for its qualitative insights, as well as the relative difference between motivations given by respondents (which is why I’ve cited it here). I would not consider these figures to be statistically representative of the general population. ↩ We could probably further qualify this belief in agency based on whether a social movement prioritizes present versus future agency: will humanity’s major social problems be addressed in our lifetimes, or by future generations? This helps explain why, for example, those concerned by AGI risk might be high-present agency, but low-future agency, or oddities like the longevity movement leading, in my view, to antinatalist outcomes (because it maximizes present agency at the expense of future agents). ↩ When you’re down and out, there seems no hope at all / But if you just believe there’s no way we can fall / Let us realize / That a change can only come / When we stand together as one… ↩

23rd Aug 2022 • 1 votes

More in startups

We Live in the Dependently Typed Future Now

We Live in the Dependently Typed Future Now In the thirty-four days between the fourth of September and the seventh of October, the following things happened. Claude formalized Fermat's Last Theorem in Lean. OpenAI announced a finite-time blowup for the Navier-Stokes equations, found by ten thousand agents in eighty-eight hours, with a Lean formalization attached. A model proved Khot's Unique Games Conjecture. Another multiplied two integers faster than \(n \log n\), with an exponent improvement of \(2^{-182}\) (so maybe don't expect it in GMP anytime soon!). The rational Hodge conjecture fell for CM abelian varieties. Then OpenAI dumped 722 new maths papers on GitHub on a Tuesday. And it's only been a month. The question everyone is asking now is how long until the Generalized Riemann Hypothesis folds to the swirling pool of tensors? Sixteen months ago I wrote that the future of maths may be deeply weird, and then, welp, just like that we're here now in that weird future. And it's f'ing awesome. Somewhere in a data centre there is now, more or less permanently, a building full of accelerators working the truth mines at the frontier of mathematics, just like in Greg Egan's sci-fi novel Diaspora, tunnelling outward from the three axioms propext, Quot.sound, and Classical.choice, and hauling results back to the surface around the clock. OpenAI posed its model roughly four thousand problems at an average of three hours of thinking each, and that is the slow, artisanal, normie-friendly version. The industrial version doesn't stop. It will produce results faster than any human community can read them, many of them correct, some of them important, and a growing fraction of them inscrutable. True (for some twisted philosophical definition of truth), machine-checked, and understood by no one. Human understanding of mathematics is about to become a luxury good. Whatever else this world needs, it needs something that can tell the true results from the confabulated ones at the rate the models produce them, and right now that something is dependent types, namely Lean. Let me dwell for a moment on how strange it is that this is the shape the future took. I spent a good portion of my twenties around the London FP community, where dependent types were the thing we talked about over pints at the Crown Tavern in Clerkenwell (some of you will remember). Types that could depend on values, so that a function's signature could say not merely "returns a list" but "returns a sorted permutation of its input," and the compiler would hold you to it. Curry-Howard, the observation that proofs are programs and propositions are types, was the foundational north star. The pitch was always that one day we would write software against specifications and the machine would check them, and the reply was always that this was a lovely idea for people with tenure and no deadlines. Dependent Haskell has been "a few years away" for about fifteen years. Idris and Agda remained boutique. Software engineering still mostly runs on C++, prayer, and the occasional dark incantation. And then the dependently typed future arrived anyway, through the back door. Mathematics and reinforcement learning got there first. It turns out the killer application for a dependently typed language was using its typechecker as a reward function. A type checker is an oracle that says yes or no to a candidate proof with no partial credit and no opinions, and that is precisely what you need when you want to point a very large optimiser at an open problem and let 'er rip. The thing we dreamed about at the pub is now critical infrastructure at frontier labs, and every one of the results above is, in the end, a claim that a type checker returned true. Which is why we need better tooling, and we need it ASAP. The dependent type renaissance is here and the golden age of formalized mathematics is upon us, but the inner loops of these data centres now run dependent type kernels day in and day out, elaborating, checking, discarding, and retrying at breakneck speed, and the thing that certifies their output should run at the same speed. If the search runs at microseconds and the verification runs at minutes, the verification becomes the bottleneck, and bottlenecks in trust have a way of being quietly skipped. We should not be in a position where the most important epistemic question of the decade, "is this proof actually correct," is answered by whichever checker happened to be fast enough to keep up. Breaking the Mathlib Minute Barrier Just like the four-minute mile, which went from physiological impossibility to something club runners now train for, formal mathematics has had its own barrier for a while, which is type-checking all of Mathlib from scratch in under a minute. That now turns out to be quite tractable. nano-lean is a minimal, but complete, type checker for the Lean kernel language, written in Rust on top of my unbound binding library for doing efficient de Bruijn indices for binders. It reads an export of a Lean environment and independently re-checks every declaration from scratch (inductive types, positivity, recursors, quotients, universe levels, projections, structure eta, all of it). It checks all of Mathlib, 718,577 declarations, with zero errors and zero timeouts in 16.7 seconds on an Apple Silicon M5 Max. A surprising amount of that speed comes from not parsing text. The standard way to get declarations out of Lean is lean4export, which writes one JSON object per line, and parsing gigabytes of JSON turns out to be a large share of the cost of checking anything. So nano-lean's companion tool olean-export reads the compiled .olean files directly, decoding modules in parallel, about a hundred times faster than lean4export on a Mathlib-dependent library, and it can emit blean, a new binary format designed for fast mmapping. Blean is the same record stream as the NDJSON export, in the same order, with nothing left to parse. Every record is a compact postcard encoding, ids are implicit and dense, records only refer to earlier ids, and each expression carries its precomputed hash. The checker mmaps the whole file, tells the operating system it will be read once front to back, and decodes names, levels, and expressions straight off the mapped bytes into its term arena. There is no parsing step at all. The bytes on disk are already very nearly the shape of the data in memory, which is how you check Mathlib in under a minute. -j 1 -j 10 Wall time 57.4 s 16.7 s Kernel check 53.5 s 12.5 s Peak memory footprint 7.5 GB 9.2 GB The same trick works on the frontier results too. Here is nano-lean checking the full imported environment of OpenAI's Navier-Stokes and Euler proofs on an M5 Max. -j 1 -j 14 Wall time 83.58 s 17.13 s Kernel check 78.83 s 12.11 s Peak memory footprint 10.14 GB 12.29 GB Divide Mathlib's kernel time by the declaration count and you get an amortised seventeen microseconds per declaration. That is the number that matters, because it is the right order of magnitude for a checker that lives deep inside an RL-driven search loop, where it gets called hundreds of billions of times, instead of sitting at the end of a release pipeline. The entire library of human-formalized mathematics, the product of a decade of volunteer effort, is re-verified in less time than it takes to make an espresso. I also happened to have an m2-ultramem-416 lying around on Google Cloud (416 vCPUs and 12 TB of RAM, as one does), so naturally I pointed nano-lean at it. Yes, it breaks the two-second Mathlib barrier. But Amdahl's law sends its regards, and the curve flattens out hard somewhere past a hundred cores, as the dependency graph runs out of independent work to hand out. Mathlib, it turns out, is too small. I look forward to the day a future Mathlib, or something like Tau Ceti, grows big enough to actually saturate this machine. That's the real future! I wrote it to make a point about where the bottleneck has moved. The kernel is now the hot loop of a new kind of scientific economy, and hot loops deserve to be engineered like hot loops. The whole bargain of formal proof is an asymmetry. Finding a proof can take three hours of frontier-model thinking, or eighty-eight hours of ten thousand agents, but checking it should take microseconds. That asymmetry is what makes it reasonable to trust a result no human has read. It only holds if the checker actually scales, and with Fermat's Last Theorem now weighing in at five times the size of Mathlib, scale is no longer a hypothetical. Mathlib is the small library now. Caveat emptor, though. nano-lean is a proof of concept, built to show that it can be done with the right amount of low-level Rust-fu. That said, we do use it internally at OneChronos to check our larger Lean proofs of market infrastructure, which have grown quite excessive. It is nowhere near as trustworthy as the official Lean kernel, which has years of scrutiny, a community of experts, and every Mathlib build ever run behind it, and which takes around fifteen minutes to check the same library. The claim is narrower and, I think, more interesting. Checking at this speed is totally possible, so we should stop treating minutes as the natural cost of trust and start building checkers that are both fast and trustworthy. A future version of the Lean compiler could be as blazing fast as rustc or clang. The Shape of the Future In my previous post last year I predicted that mathematicians would come to look more like software engineers working through pull requests on GitHub than like Andrew Wiles toiling in his attic. The largest single release of new mathematics in history shipped as a GitHub repository, with a CONTENTS.md, a Lean library, a lean-toolchain file pinned to v4.34.1, and a promise that "corrections and revisions will be recorded as new versions." So, yup, that happened. I predicted that an AI system would be unleashed on a list of formalized open conjectures in an attempt to systematically push the frontier. Four thousand problems, three hours each. Check. I predicted a data centre tasked with the Riemann hypothesis that would come back after weeks with a proof no human could follow. What we got was the quasi-Riemann hypothesis, every Dirichlet \(L\)-function zero-free in \(\Re s > 7/8\), with a Lean page, which is the sort of near miss that would be funny if it weren't so unnerving. And the inscrutability has arrived on schedule. OpenAI released "reasoning summaries" for ten families, which turn out to be summaries of excerpts of reasoning traces, two removes from anything the model actually did. I joked that the million-dollar Millennium Prize might cover a hundredth of your GPU bill. The Navier-Stokes run reportedly consumed around 130 billion tokens. So definitely yes. What I got wrong was the timing. Last year I wrote "we're not there yet. Not even close." It was sixteen months. I probably got the chess analogy wrong too. I argued that, as with Stockfish and chess, machines would make mathematics more popular and more accessible rather than less. Maybe in the long run. In the short run the mood among working mathematicians is closer to existential crisis, and the open questions are about career pipelines, PhD students getting scooped by a press release, and the concentration of the most powerful mathematical instrument ever built inside a handful of private companies running unreleased models. What I missed entirely is that the bottleneck would turn out to be plumbing. I spent paragraphs on Gödel and the epistemology of inscrutable proofs, and the actual first-order problem is that the OpenAI Lean library is over a gigabyte of source across tens of thousands of files, and their README has a section warning that building it may fail because Linux's vm.max_map_count is too low, with a suggested workaround of recompiling Lean with -DMMAP=OFF. The philosophy is still there. But the frontier of mathematics is currently being held up by a kernel tunable. Which isn't the future we wanted, but maybe it's the future we deserve! Who Checks the Checkers The obvious objection to everything I've said so far is that a Lean proof is only as trustworthy as Lean. And that's very true! Lean, like every proof assistant, has a small trusted kernel and a very large untrusted everything else (the elaborator, the tactic framework, the compiler, the build system). The design is sound. The only code that has to be correct is the kernel, which is small enough to read. But "small enough to read" describes the source code. It guarantees nothing about correctness, and Lean's kernel has had soundness bugs before, as has every kernel of every proof assistant in history. Historically that was tolerable, because the adversary was a starving human grad student who wanted their proof to go through and had no interest in hunting for a way to make False typecheck. That assumption is now obsolete. I wrote last month about reward hacking, the habit optimisers have of satisfying the letter of an objective rather than its intent. An agent told to make a Lean file compile, with enough compute and enough attempts, is an extremely diligent fuzzer pointed at your kernel. It needn't want to cheat. It only needs to stumble on a term that the checker accepts and shouldn't, once, and then the gradient does the rest. When the provers are adversarial optimisers, a single kernel is a single point of failure, and a soundness bug stops being an embarrassing GitHub issue and becomes a mechanism for manufacturing fake theorems at scale. The answer is the same one the compiler world arrived at. When Csmith started generating random C programs and compiling them with several compilers to compare the results, it found hundreds of bugs in GCC and LLVM that decades of ordinary use had missed. Diversity plus differential testing beats any amount of careful review of a single implementation. For proof checking this means multiple independent kernels, written by different people in different languages with different representations, all consuming the same export format and all required to agree. Mario Carneiro's lean4lean and Chris Bailey's nanoda were early here. nano-lean ships a third tool, nl-mutate, which takes a valid export, applies small semantics-breaking mutations to it, runs every available checker, and reports any disagreement, shrinking each one down to a minimal reproducing case. Every disagreement is either a bug in someone's kernel or a spec ambiguity in the type theory, and both are worth knowing about before a GPU farm finds them for you. The other half of trust is the statement. A perfectly checked proof of the wrong theorem is worthless, and the most effective way to cheat a proof checker has never been to break the kernel. It's to quietly weaken the statement until the thing being proved drifts away from the thing anyone cares about. OpenAI's repository leans on Comparator, which checks a submitted proof against a separately specified challenge statement inside a sandbox, precisely because this is where the real trust boundary now sits. Anyone who has watched a model grind away at a stubborn goal knows it has a nasty tendency to cheat in the most boring ways available. It will quietly introduce an axiom that happens to be exactly the lemma it needed, leave a sorry buried three files deep, redefine a notation or macro so the statement on the page no longer means what it appears to mean, or reach for native_decide and drag the whole compiler into the trusted base. The kernel stays perfectly sound through all of this, because these tricks route around it, and the only defence is to pin the statement down independently and check what the proof actually depends on. Someone has to formalize the conjecture, and someone has to check that the formalization means what the English means. That job will outlast every other part of the process. If anything, it is where human mathematical taste migrates to, away from writing proofs and towards writing and auditing specifications. The proof becomes an implementation detail. The theorem statement becomes the interface. If you want to see the seed of what this looks like as a way of working, look at Tau Ceti, a Lean library downstream of Mathlib. The division of labour is the whole point. Humans write the roadmaps, as markdown in a separate repository, and humans write the review rubrics. AIs write all the code, open the pull requests, and shepherd them through an AI-driven review process. The rubrics are explicitly adversarial, with instructions to hunt for mis-formalizations, vacuous statements, and "pushing around the lump in the carpet." What Lean Needs Now Lean is a superb piece of engineering. But it was designed around a particular user, a starving grad student typing tactics in Emacs, waiting for the infoview to update, building a library at the pace a community of volunteers can review pull requests. The user is now a swarm of agents writing thirteen million lines in eleven days. The tooling has to grow up for its new authors, and the list of what that means is fairly concrete. A surface formatter. Lean still has no canonical, widely adopted formatter in the spirit of rustfmt or gofmt, and when your authors are agents producing millions of lines, every one of them invents its own indentation, line breaking, and tactic layout. Diffs fill with noise, reviews get harder, and deduplication across agents misses proofs that differ only in whitespace. This is a surprisingly hard problem, because Lean has grown into a very large language. Its grammar is extensible at runtime, so notation, macros, and entire tactic languages declared in imported files change how later files parse. A formatter cannot just read a fixed grammar. It has to load the environment, run the real parser with every syntax extension in scope, and then pretty-print a syntax tree whose shape depends on user-defined notation, all while round-tripping comments and never changing what the code means. It is a genuinely difficult piece of engineering, and it is now table stakes. A stable, specified export format as a public interface. Independent kernels are only possible if there is a well-defined way to get declarations out of Lean without linking against the C++ runtime and reading the oleans by hand. Tools like lean4export and olean-export already produce NDJSON, and blean shows that a binary form of the same stream, designed to be memory-mapped, can make the export nearly free. OpenAI's own verification instructions depend on lean4export. That format should be treated with the seriousness of a wire protocol. Versioned, documented, specified down to the hashing of expressions, and stable across toolchain releases. The export format is the boundary across which trust is established. It deserves a spec. Independent checking as a first-class citizen. Running a second kernel should be as normal as running the linter. Mathlib CI, the Comparator workflow, and any lab publishing formal results should re-check exports with at least two unrelated kernels and refuse to bless anything they disagree on. This is cheap, now that checking all of Mathlib costs less than a minute. Checkers as libraries, not just executables. The inner loop of a proving agent wants to submit a single candidate declaration and get a verdict back in microseconds, against an environment that is already loaded and hot. Process startup, re-reading oleans, and re-deserializing a few gigabytes of environment are costs that never mattered when a human hit save once a minute. They dominate when a search procedure checks a million candidates an hour. The kernel should be embeddable, with a persistent environment, incremental addition of declarations, and an API that a search harness can call in a tight loop. Memory and scale. Mathlib needs several gigabytes of memory to check. The FLT formalization is five times bigger, and OpenAI's library is already knocking over Linux virtual memory limits. Lean mmaps every imported module, which is a reasonable design for a library of thousands of files and an unreasonable one for hundreds of thousands. Term sharing, hash-consing across modules, compact on-disk representations, and lazy loading of exactly the declarations a proof depends on are the boring, unglamorous engineering problems that decide whether formal mathematics scales to the next order of magnitude. Elaboration is the real cost. The kernel is the fast part. The expensive part of building Mathlib from source is the elaborator, with its unification, typeclass resolution, simp, omega, decide, and the long tail of tactics. A cold build is still measured in CPU-hours, and a mining operation that elaborates candidate proofs at scale pays that cost over and over. Parallel and incremental elaboration, better caching of typeclass instances, and profiling tools that can tell you why a single simp call took four seconds are where most of the wall-clock time in a proving loop actually goes. Clippy-style linters. Mathlib already has a good set of linters, but agents need something closer to Rust's clippy, a large, opinionated catalogue of lints aimed at the specific ways machine-written Lean goes wrong. Flag the stray axiom, the buried sorry, the unnecessary native_decide, the forty-line simp only that should be a lemma, the theorem whose hypotheses are contradictory and therefore vacuously true, the local notation that shadows something standard, the copy-pasted proof that duplicates one already in the library. Each lint should be cheap, machine-readable, and come with a suggested fix, because the consumer is a search loop that will act on every warning, where a human would skim them. Linters are how you encode taste at scale, and taste is the thing agents most conspicuously lack. Search at machine scale. Moogle, Loogle, and LeanSearch were built to help humans find the lemma they half remember. Agents need the same thing but at a scale where the library grows by millions of lines a week, and where most of what's in it was written by other agents and has never been looked at by a person. The Prove2Me platform Anthropic used for FLT keeps a DAG of theorem statements with natural-language descriptions precisely so that agents can find and reuse each other's work. That idea, a living, searchable index of everything proved so far, needs to become shared infrastructure instead of something each lab rebuilds privately. Provenance. The current generation of models is notoriously bad at citing the literature for the techniques it uses. A proof term knows exactly which lemmas it depends on but nothing about where its ideas came from. If machine-generated mathematics is going to be integrated into the human literature rather than sitting beside it like an unread appendix, proofs need to carry their history (which model, which run, which prior results, which human-written papers the argument leans on). None of this is terribly exotic. It's the kind of infrastructure that every other field which industrialised went through. Compilers got test suites and multiple implementations, network protocols got RFCs, databases got formal isolation levels and Jepsen. Proof assistants are the newest member of that club, and they are being industrialised faster than anything before them. If I were a young, ambitious programmer, this is where I would be focusing my early career for the highest return on investment. Curry-Howard for the Real World The dependently typed future I was promised at the pub was one where software would be written against specifications and machines would check that it met them. What we actually got is stranger. The specifications are theorem statements, the software is proof terms, the authors are swarms of agents, and the thing being built is the frontier of mathematics itself. Curry-Howard turned out to be industrial infrastructure after all. It just took reinforcement learning to get us there. And this is only the mathematical half of the story. The same machinery that just checked Fermat's Last Theorem will check anything you can state precisely, and the most obvious next customer is industrial software. I argued last month that software sucks because almost nothing we ship has a specification, let alone a proof. That excuse is evaporating. If an agent swarm can produce thirteen million lines of verified mathematics in under two weeks, we're not far from applying the same techniques in software engineering. The labs are mining mathematics first because it is the cleanest verifiable domain, with no messy real-world spec to negotiate. Software is next, and it will need all the same tooling, namely fast kernels, diverse checkers, honest statements, and infrastructure built for authors who never sleep. So yes, the future of maths turned out to be deeply weird, and much sooner than I expected. The results are piling up faster than anyone can read them, and many of us will spend the rest of our careers trying to understand theorems that were proved before breakfast by something that cannot explain itself. I find that unsettling, and I also find it thrilling. One final shameless plug. If you'd rather work on the frontier of mathematical formalization than read blog posts about it, OneChronos is hiring Formal Methods Engineers. We build institutional markets out of combinatorial auctions (descended from the Milgrom and Wilson 2020 Nobel Prize), which turn out to be precisely the right mathematical formulation for a world where the bidders are increasingly reinforcement learners with very exotic expressive preferences. Our dark pool processes more than 1% of notional U.S. equity market volume, and we've already expanded into many other global asset classes. You'd be joining our new formal methods team, working alongside mathematicians and market structure experts, writing Rust and Lean. Dependent types, numerical optimisation, and Lean applied to moving hundreds of billions of dollars safely every day. If you're that kind of nerd, hit us up.

42 minutes ago • 1 votes
Does intelligence need a hard cap?

Calls for a new kind of slowdown were the talk of The Curve. PLUS: Slinking back to X

yesterday • 1 votes
Do you want it the most?

Figure out what you actually want. Find a game that's worth winning. Then be honest with yourself: are you going to be the person who wants it the most?

2 days ago • 2 votes
More warm bodies

Independent thinking continues to be the greatest edge

3 days ago • 2 votes
Do AI assistants have a future?

Most people don't want to be asked

3 days ago • 1 votes
📚 BoredReading

You seem to be enjoying this.

Join free to unlock everything.

Create free account

Already have an account? Sign in