Alone in a Car

https://rettig.substack.com/p/alone-in-a-car

Charging during an unexpected snowstorm in Flagstaff, AZ. Seriously? Snow in Arizona? Come on! Snow was just one of the many obstacles I encountered on this epic trip. Photo by the author.

Subscribe now

Last week I finished a cross-country road trip. It was the third time I’ve driven across the United States. It’s a big country and it takes a long time to cross by car, even driving fast and driving many hours per day. Most of my friends and family think I’m crazy for making these trips but I’ve always enjoyed them and found them to be a very unique opportunity to see and do things I wouldn’t otherwise. They also give me a rare opportunity to spend some quiet time alone and think, something I almost never get to do these days.

Like anything that requires a real investment of time these trips have their ups and downs. There are moments of unexpected joy, moments of excitement, and also scary, frustrating, exhausting moments. Like running a marathon, towards the end of each trip I questioned my decision and told myself I’d never do it again, but sure enough I’ve done it again twice so far and now, a few days after the third trip, I almost feel ready to do it again.

Here are some of the reasons why.

Thing #1: Man-Machine Symbiosis 🚗

I spend a heck of a lot of time working with machines. Most of these machines are computers of course but I’ve always been attracted to machines of all kinds. I was the sort of kid who took apart and then tried, often unsuccessfully, to put back together any machine he could get his hands on: not only computers but also clocks, radios, toaster ovens, you name it.

Once in a long while, when I work with a particular machine for a long enough time and when I start to both understand and trust it, I begin to develop a strange sort of affection for it. I can count on one hand the number of times this has happened. I felt this way about my first Mac laptop, a first-generation Macbook Air, around 12 years ago because it got me through grad school and because it was also the machine I used to start—and code—my first startup. I took it everywhere with me and, yes, even slept with it from time to time. I may have felt this way about a mobile phone once or twice. And I probably felt this way about my first gaming computer back in high school.

I was vaguely aware that it’s possible to feel this way about a larger machine. I’ve seen the way old pilots get to know their aircraft after a while—the most famous fictional example of this is probably Han Solo and the Millennium Falcon. And I’ve met soldiers that felt this way about a helicopter, a tank, or even a gun—which, yes, they also slept with—because it kept them alive in very stressful, dangerous situations.

In my case it happened with a car. Which is especially interesting because I never fell in love with a car before. I’ve owned a few but mostly didn’t drive during the 22 years between high school and the present, during which I’ve almost entirely lived in big cities where I didn’t need one. When I did own or rent a car it was purely utilitarian and transactional: get in, get somewhere, get out, thank you very much.

But there’s something different about a solo cross-country roadtrip. That car was literally my only companion for dozens of hours and thousands of miles. I sort of lived out of it. Yes, I slept and showered in hotels and at friends’ houses, but I spent more hours in the car: mostly driving, but also reading and listening to podcasts and audiobooks, working, eating, sleeping, taking calls, working out, etc. I laughed and I cried in that car. I entrusted it with all of my belongings. I’m aware that there are many people who are forced to live in their car. While I don’t think that would be terribly pleasant and I doubt many would do it by choice, I didn’t mind it for a few days.

Over the course of such a long trip I became intimately familiar with every quirk of the car’s behavior. I learned exactly how long it needed to charge, even when the car’s own estimate was wrong. I learned how this varied depending on the temperature and weather. I learned how the performance would change depending on the conditions and the battery. I learned how to get the climate control just right at different times of day. I learned what happened if I left the car for an hour, or a day, or a week. I learned how to keep all of the screens, windows, and mirrors clean. I learned the location of every scratch on the body. I learned how much following distance I need on the highway, and when I should pass and when I shouldn’t. I figured out how to adjust all of the settings on the driver seat to get it just right. I got to the point where, backing up or squeezing into tight spaces, I almost felt like the car was an extension of my own body: I barely needed to check the sensors or camera because I could just feel where the car ended. And I discovered little features and gimmicks that I hadn’t been aware of even after driving the car for nearly a decade.

What’s more, I encountered some quite extreme weather on the trip—which I suppose I deserve for attempting it in the middle of winter. The first few days the weather was bitter cold, well below freezing. The car kept me warm and cozy. I drove through some intense rain storms, at night, on unfamiliar roads, in fog and in the mountains. It was white-knuckle driving but the car performed admirably and I felt safe the entire time. I ran into an unexpected blizzard a day or two before the end of the trip when I gained altitude and the car handled well and kept me safe even in treacherous, snowy highway conditions with extremely limited visibility.

Finally, the last day of the trip was the scariest and most challenging—the final boss, so to speak. In the span of one day I drove through a blizzard into a desert, got stuck for over three hours on a remote highway that was closed due to a terrible accident, and finally had to navigate one final intense rainstorm and flooded highways. I slowed down where necessary but always kept moving forward through all of these conditions, and always felt totally in control, even when hitting a flooded road at nearly 70 mph. This is testament to the vastness and diversity of climate in this great country, to the incredible technology present in modern vehicles, and to my own car keeping me safe and sound.

On the last day of the trip I was so stressed out and exhausted—I spent 14 hours on the road (kids, don’t try this at home)—that I found myself talking to the car. I rubbed her dashboard a few times and said things like, “Let’s go home” and “We’re going to be fine.” I called her by name. And as I’ve continued to drive her around town the past few days after the trip I’ve noticed that I feel more in control and more comfortable behind the wheel than I did before, and more than I ever thought possible. Driving has become totally effortless, even more than before.

I’ve never felt this way with any vehicle or any machine before. I think I finally understand the way Han felt about the Falcon. He knew how to push her and how much she could take. He knew her limits and he could coax her into doing things that no other pilot could. She was his companion after a fashion.

We were thinking about selling this car since it’s nearly 10 years old and probably time to upgrade. But I don’t think I can sell her anymore. I think I’ll drive her until she falls apart, and maybe then some.

I don’t know whether or not it’s strange to form a bond with a car, but as a technologist and product designer I think there are some important lessons here. We should all strive to design and build machines that people can fall in love with, that they never want to sell or give away and that, if you took away, they’d be very unhappy. We should design and build products and machines that people can form real connections with! It’s not an aspect of product design I ever seriously thought about before. And it’s more possible today than ever before.

Thing #2: The Power of Home 🏡

Before starting a family the idea of home didn’t mean terribly much to me. It was a place to shower, to sleep, and to eat the occasional meal. I generally tried to spend as little time at home as possible because I felt that time at home was time wasted—time that could’ve been better spent exploring, socializing, exercising, working, or doing something else productive. I never equated home with productivity and I never invested much in my home. Home always felt transient. To put things in perspective, over a span of about ten years, from undergrad to my first few years of work to grad school and startup life, I moved 17 times.

And then I decided to try the nomad life. For three or four years I traveled between half and full time. I moved around constantly, never staying in one place longer than about three weeks. I visited and spent time in dozens of countries, had great experiences, and built relationships with amazing people. I don’t regret any of this and I’m glad I got it out of my system. It took a pandemic, marriage, homeownership, and the birth of my first child to slow down and to start investing in home.

Since then I’ve made a complete about-face. I still love travel, I know I always will, but I love being at home way more and I now realize how unproductive I am on the road and how productive I am at home. It used to be the case that every time I came back from a trip, no matter how far, how long, or how stressful, I’d start hankering to depart again within days of coming home. That doesn’t happen anymore. The urge is still there but it’s muted and dominated by the comforts and joys of home, from being in control of my schedule, to making a proper coffee in the morning, to having my own workspace to, of course, the joy of spending time with family and with my son in particular.

I spent about two weeks on the road on this recent road trip. That counts as a long trip for me these days. It was a fun, rewarding trip. There were adventures and learning and reconnecting with old friends. There were new experiences in new places. There was plenty of much-needed alone time and reflection time. I don’t regret a single moment of the trip. But by the end of the trip I was very ready to be home.

One of our great failings as humans is our inability to appreciate what’s right in front of us, no matter how rare or special. I’m guilty of this and I know it. I’ve always appreciated the dichotomy of the two modes I live in: home mode and away mode. The grass is always greener on the other side. When I’m home, I recall and romanticize the adventure of being on the road and miss it greatly. When I’m on the road, I miss home terribly. And the first few days back from a trip are so sweet because I feel like I’m seeing home with fresh eyes and newfound appreciation. This time was no exception.

On the last night of the trip—the very stressful night I described above, after fourteen hours on the road—when I finally saw the lights of the city, I cried. I felt an incredible sense of accomplishment, having safely and efficiently driven thousands of miles and achieved my goal. I felt gratitude for making it back safely. I felt total exhaustion and surrender. I felt a little sadness and ennui that another epic trip was coming to an end. Most of all I felt the joy and relief of being home. When I actually got home, quite late at night, I wanted to kneel down and kiss the ground.

I feel this way at the end of every trip but for some reason this time it was more acute. I think it’s because the trip was so long and so exhausting, especially towards the end. I felt so blessed to have a home and a family to come back to. This feeling persisted for days, and I still feel it now more than a week later. Coming home felt almost surreal given how far I traveled and how far away home felt for days.

What’s interesting about this experience is that I actually often travel much further from home. I realized that there’s something about the magical speed of airplanes vs. the long, slow grind of driving thousands of miles to get home. There’s something about approaching slowly from a distance, 100 miles and an hour or two at a time, seeing the landscape gradually transform, but not quite being home until you are. Something about being on the road makes you feel further from home than you really are; something about the sameness of airports makes you feel closer to home than you really are.

I’ve never appreciated coming home more and I intend to meditate on this feeling and reflect on it every day, reminding myself every day on the road how wonderful it will feel to be home, and reminding myself every day at home how lucky I am to be there.

There’s some rare magic in home. Never take home for granted.

Thing #3: Know Thyself 💡

Something important happens when we spend time alone. We can’t fully understand ourselves and the world around us, or really anything at all for that matter, without ample alone time for contemplation and reflection.

Having said this, I get vanishingly little time to myself on a day to day basis. I consider this a blessing and I’d rather have too little alone time than too much of it, but one of my main motivations for taking such a long road trip was a desire to have some time to myself. In the event I had no shortage of time alone. Time alone is not a panacea and it doesn’t solve all the ills in the world but it is necessary for a healthy, functional mind. And on this trip it allowed me to discover a few things about myself, something that doesn’t happen terribly often at my age.

One thing I realized is how little I need to be comfortable, happy, and fulfilled. My day to day life is quite full, not just with people and tasks but with things: objects, devices, gizmos and gadgets, books, content, software, paraphernalia, clothing. It feels like there’s stuff everywhere. I don’t have one outfit, I have dozens. I don’t have one pair of shoes, I have at least a dozen. I have seven or eight computers at home that I use from time to time for different purposes (I know this is a bit extreme but it’s both my profession and my guilty pleasure). I have bags and boxes and sacks for storing and moving all of the stuff around. I have things I only use once a year, and things I’ve only used once ever but can’t bring myself to discard. (At least I have only one car!)

I’ve always known, I think, that I don’t need 80-90% of this stuff, mainly because if you hid it I’d probably never notice that it was gone. And I travel without much stuff, which is also a good exercise. I can travel more or less indefinitely with just a backpack and, assuming I packed intelligently and am not covering too many seasons or crazy activities, never feel like I’m missing anything. It’s really remarkable to me that I can fit everything I need for days or weeks into one tiny bag, while the stuff cluttering up my home and my life takes up literally hundreds of square feet.

In any case, the road trip was a good reminder of how little I actually need to feel comfortable and for life to be more or less complete.

Another thing I realized is how goal-oriented I am. Other than alone time to think, my two other big goals for the road trip were to stay on top of work and, well, to drive. Driving turns out to be an extremely quantitative, linear, mindless, structured task that’s easy to measure and for which it’s easy to track progress. I found that I’d spend more time than I probably should every day reviewing the previous day’s route and planning the next day’s, optimizing details like where I’d stop for lunch and to charge the car. This ate away at the time I planned to get “real” work done.

I realized something important about myself: I can’t help but do these “easy” tasks first, and it’s only once they’re out of the way that I can focus on harder work. Planning and executing a long road trip is sort of the perfect trap for me because it checks so many boxes: I like operations, I like linear, quantitative, structured tasks, I like travel and adventure, and I needed to plan each day’s route anyway. This realization will be helpful in planning how to allocate my time more efficiently.

Finally, my biggest realization is that I’m capable of a lot more than I thought, but I also have a lot of work to do on overcoming anxiety and achieving some degree of control over my emotions. I wrote about discovering what I’m capable of before in the context of running my first marathon and it’s an idea I’ve been fascinated with ever since: that even things that feel completely impossible can begin to feel possible and even probable with enough gradual practice.

On this trip I set out planning to be on the road about four hours per day. That felt like my sweet spot, the amount of driving I could do comfortably and without stress. I upped that to six and then, keen to get home, to eventually eight to ten (including stops for charging). I did three or four eight to ten hour days on the road. On top of this, as mentioned above, I ended up driving through some pretty gnarly conditions which made things more stressful and exhausting. If you had asked me before the trip whether I could safely drive ten hours in a day I would’ve laughed at you. The most I’d ever done before was about six, and that was really pushing it.

In the event it was like anything else: incremental. I built up to it. And while I was totally exhausted at the end of eight or ten hours of driving, taking lots of short breaks helped, and I always got a good night’s sleep and was totally ready to keep driving in the morning. So far so good.

But on the final day, as mentioned above, I was on the road for 14 hours. I had planned eight or nine hours but a bunch of things happened, including getting stuck when a major highway closed. This was an intensely stressful, challenging experience. It may not sound so terrible, but coming as it did at the end of a trip, late in the day when I was already exhausted from travel and dying to be home, I found it to be an extraordinary test. Three hours is a very long time to sit alone in a car. Towards the end I genuinely began to worry that I was going to be there all night. The internet wasn’t working on my phone so I couldn’t find out what was going on. There was no information on the radio either. I think it was the uncertainty that really bothered me.

I tried and mostly failed to sleep. I tried and mostly failed to meditate. I think of myself as a pretty calm person who can relax himself in just about any situation, but I failed pretty terribly on this occasion. It was extremely eye-opening. And it was such a strange, unfortunate situation—a “one in a million” sort of event. In all my life I’ve never experienced anything like it before and never even heard of it happening to anyone else.

The fact that it came right at the very end of an extremely long trip when I was almost home makes me want to say something like, “God was testing me.” I thought about that fact as I continued to wait. I reminded myself that it could’ve been worse. I was in my own car. I was only a few hours away from home. I had water and food, and I was warm, and would have made it through the night if I had been forced to. It wasn’t snowing or bitter cold outside. I reminded myself of all of these things. But my doubts and anxiety continued to bother me until, suddenly, things started moving again, and I eventually, finally made it home a few hours later.

It was a powerful experience and one I’ll not soon forget. Sometimes we need to go through these extreme, stressful situations to better understand who we are, what matters the most to us, what our limitations are, and the ways in which we still need to improve. I’m capable of many things, and of more than I think I am, but I’m still a long way from enlightenment. It’s good to be reminded of this from time to time.

My Personal Stack

https://rettig.substack.com/p/my-personal-stack

Good bread belongs high on anyone’s personal stack, if you ask me. Photo by freestocks on Unsplash

Subscribe now

I’m taking a short break from recent topics to write about something a little more personal. I want to share an idea that struck me recently as a helpful framework for planning and prioritizing one’s personal life. I call it my “personal stack” and it has to do with the set of beliefs, practices, and behaviors that make me who I am, and how I prioritize and conceptualize them.

As technologists we talk a lot about the concept of a “stack.” The most famous of these is the OSI communication stack, but every application and all infrastructure also has a stack. The basic idea is that there’s a layered “stack” of technologies that, piled one on top of another, enable the amazing applications and user experiences that we’ve come to expect today through abstraction and encapsulation. For instance, an app running on your iPhone relies on the iOS operating system, SDKs that allow it to read and write data and send and receive information over the Internet, OS networking libraries to transmit them using TCP/IP, WiFi, Ethernet, 5G, and similar transmission protocols to encode and decode low level data and to transmit and receive it over the Internet, the operating system, databases, and applications running on the server that the app is talking to, encryption libraries for privacy and security, and much else besides. All of this is quite literally the tip of the iceberg of technologies that come into play every time you open an application or send a message, which shows how large and how powerful this stack of technologies has become.

I think this notion of a stack could helpfully be applied to things other than technology. As a technologist, when studying an application one of the first questions we ask is, “What stack is it built on?” as a way of understanding how it works, what it does, and how we might rebuild or improve upon it. Comparing architectures and stack choices with other technologists is hugely educational—there’s at least one website dedicated to this. Our personal stack is just as big, complex, and powerful as any technology stack. We should seek to understand and compare the architecture of our personal lives in similar fashion. It’s good to know that there are other, functional alternatives.

This my attempt to apply the notion of the stack to my personal life. Here are the three most important layers that make up my “personal stack,” i.e., the stack powering my personal life, from bottom to top, from most foundational and concrete to most dynamic.

Thing #1: The Every Day 🧱

Let’s start at the bottom. The best visual for this “stack” is actually a pyramid, a bit like the infamous food pyramid. Another helpful visual is Stewart Brand’s pace layers. The idea here is that the things at the bottom of the stack are the most important and change the least often. They’re also the foundation upon which everything else is built.

For me, the bottom contains the things I do continually, every day, without hesitation. They’re thoughts and behaviors that are so fundamental to who I am that they’re pre-programmed, so to speak. They’re things I’ve pre-decided and pre-committed to. They’re things I don’t reevaluate more than once a year at maximum during my annual review process, and even then they very rarely tend to change. The only form of sudden change is an epiphany—that’s sort of the definition of an epiphany—but I can count on one hand the number of times this has happened in my life.

There are of course sub-layers within each layer. At the very bottom is probably some base layer of underlying assumptions and beliefs and it would be interesting to examine these too, but they tend to be subconscious and are only revealed under great stress, deep meditation, or hypnosis so for the purposes of this analysis I’m going to leave them out.

Above those subconscious assumptions and beliefs are abstract values and beliefs that are clear to me and that I express freely. These form the foundation of the base layer. I’ve spent quite a bit of time reflecting on my values and core beliefs. I find it a valuable exercise and I encourage you to do the same. I won’t list all of them here but for context they include things like: Freedom is paramount and we’re all entitled to freedom, autonomy, and personal sovereignty. Excellence. Curiosity. Compassion. And Buddhist principles like anicca, anattā, and duḥkha. These values, principles, and beliefs are all so core to who I am that I can’t imagine myself without them and I can’t imagine ever changing, replacing, or expunging them.

And above this are concrete commitments and promises. Family, personal health and fitness, hard work and personal development are some that come to mind. These are things I work on every single day regardless of the circumstances. I wrote about how I promised myself that I’d run every day last year; for the past two years I’ve made a promise to myself that I’d write every day (this falls under personal development). I’ve committed to these practices regardless of the circumstances and regardless of how I feel on a given day. These everyday behaviors lie at the top of the base layer. Overall health, fitness, and wellbeing is a bit of a gray area and it probably falls somewhere between layer one and layer two since I don’t always eat what I should, I don’t always sleep as much as I should, and this year I haven’t been working out every day—other things including family, career, and travel sometimes come first.

Thing #2: The Priorities 🏹

The second layer is the largest layer for me. The base layer is larger in the sense that it’s more foundational and more important, but there are definitely more things—more beliefs and behaviors—in the second layer. Generally the second layer consists of all of the things in my life that are important but not foundational, i.e., all the important stuff that I didn’t list above and that I don’t manage to achieve every day. It includes important things that aren’t as pre-programmed, pre-committed, or pre-decided, i.e., I still have to prioritize them alongside everything else in the big pile of tasks and priorities each given day or week.

Priorities change more often than foundational stuff like core values and beliefs but they don’t change as often as things in the third category. Old priorities for me include reading more, getting enough sleep, seeking adventure, maintaining existing friendships and forming new ones, completing work-related or professional tasks, exploring professional areas adjacent to my professional focus, meditation and mindfulness. New priorities include things like a well-rounded exercise regime, working out every day, building strength and balance, and a better diet. These are all things that are important and that I’m serious about investing time and energy into, but they’re also things that sometimes give way to one another and/or to more foundational things. After all, unlike the first layer, I can’t do every one of these things every day.

I do an annual review every year, as mentioned above, and priorities are one of the main things I look to set for the new year as part of this process. I think a good rule of thumb is that foundational items should evolve and change on the order of once per decade (i.e., a very small number of times in your life, or a very gradual shift as you age and mature), priorities should change on the order of once a year, and everything that changes more often than that belongs in the next category.

Another way to think about priorities is as a manifestation of the foundational, core values and beliefs. The values and beliefs themselves don’t change but the strategy for enacting or achieving them does change over time and depending on the circumstances. These strategies are the priorities. As a couple of examples, getting enough sleep is a concrete priority because health and wellbeing is one of my core values. Seeking adventure is a priority because freedom, adventure, and open-mindedness are core values. Each priority could be traced back to one or more foundational values or beliefs.

Thing #3: The Aspirational 🎯

I generally have a long list of things I’m working on, much longer than would fit into the first two buckets. The largest number of these are aspirational goals: a sort of catch-all bucket for new ideas, experiments, personal projects, and generally things I’m trying out that haven’t quite stuck yet or for which I haven’t yet found a rhythm. These may be things that are extremely important to me but they’re still novel. It takes time—months to years—for new practices and behaviors to become routine habits and move down the stack, so to speak. In the same vein, nearly all priorities and foundational items start as mere aspirations, the only exceptions being “permanent” things like family and core values. I’m happy when I manage to make time for aspirational practices but I don’t get too upset when I fail to do so.

Aspirations are practices that I’m trying to get into the habit of doing regularly. A good example right now is strength training (derived from the priority mentioned above). After intending to for a long time I finally began working on it early last year. (This item moved down from the fourth layer of the stack: things I intend to do but haven’t gotten to yet!) Whereas I promised myself I’d run every day last year—since that was a foundational priority last year—I only promised myself that I’d do my best with strength training. While I aspire to do strength training pretty often, ideally every second day, very often something else comes up or it just doesn’t feel convenient. This is a key differentiator of aspirational items: they tend to be the first things that get dropped when it’s inconvenient or when I’m short on time (which has been most of the time lately).

This is okay. New practices need to start somewhere and an aspirational practice that I do once in a while is a good place to start. I can plan or try to optimize the use of my time and energy and its division among tasks and buckets but I find that an organic sorting and filtering process is usually more effective. I naturally find myself drawn to certain tasks and practices more than others, and over time the ones I enjoy more, or the ones that are more beneficial, naturally work their way down the stack. I’ve already organically decided to invest more in strength training this year than last year, and if all goes well I hope to reliably do it a few times each week. It took 15-20 years of running before I took it to the next level last year so it’s fine if this practice also takes a while to establish.

This stack idea isn’t fully developed but I hope you find it as useful as I do. I find visualizing my priorities and practices in this form of a three-layered stack to be very helpful as I plan how to use my time. In fact the same strategy works for optimizing any situation where you have a lot of candidates and a small number of slots to fill! A good example is dining. I have my go-to restaurants, dishes, and snacks, i.e., the bottom layer, things I’m happy to eat every day. There are places and things I like and seek out regularly. And I have another pile of things I’m always experimenting with—new dishes, new restaurants—because that’s both the only way to find what’s optimal and also the only way to adjust to changing tastes and priorities and to explore new offerings. In a sense it’s yet another manifestation of the classic explore vs. exploit dilemma. The stack helps you approach this dilemma in a thoughtful, structured way.

My favorite thing about the stack idea is that it doesn’t require too much thinking or planning. In my experience trying to plan or optimize too much is a recipe for disaster. Practices, behaviors, and principles tend to naturally arrange themselves in buckets or layers and it can be helpful to acknowledge this and go with the grain when planning. It’s also good to be thoughtful and intentional about which items you intend to move down the stack over time, and about what needs to give way for this to happen!

Your personal stack, top to bottom, your bundle of beliefs, practices, priorities, and behaviors, quite literally defines you. If you want to improve who you are, you could do worse than beginning by writing down your stack.

New Web: A Product Roadmap

https://rettig.substack.com/p/new-web-a-product-roadmap

The path forward isn’t straightforward, obvious, or singular, but there are a few places we might reasonably want to start. Photo by Amit Jain on Unsplash

Subscribe now

Last week I described three ways of thinking about the problem we’re trying to solve in improving the web and the content ecosystem, and three ways we might go about trying to solve the problems I laid out previously. With those potential visions in mind, this week I want to take a slightly more structured approach. How might we go about developing a product, platform, and protocol to improve the web? It’s a big, ambitious project and it’s important to approach in the right order.

This is how I’d start.

Note that this while this process refers specifically to the app and protocol we’re contemplating, it’s fairly general and would probably apply to many different kinds of apps.

Thing #1: Overlay Web App 📚

The right place to start working on the problem is with a barebones, proof of concept app that lets the user store and read content. The first version doesn’t need to do a whole lot more than this. This can and should be build initially as a web app.

You may wonder, why build an app using the existing web stack when the whole point of this project is to fix the web? You’d have a point, and a web app clearly can’t address everything that’s wrong with the web, but it’s still the best place to start. The reason is that the simplest possible thing both to build and to use is a web app.

Web apps are very familiar to users and they work across a huge variety of devices. They typically don’t require downloading or installing anything and they’re really easy to share (just send a URL). They’re relatively cheap and straightforward to develop, at least compared to native apps. Web apps also have the advantage that they can integrate quite easily into the existing web ecosystem and they natively speak the language of the web: APIs for reading and exchanging data, data formats like JSON, etc. Web apps are multi-platform by default and using tools like Electron it’s also feasible to migrate a web app to a native app when the time comes.

The purpose of this app would be to archive and present content in a fashion that optimizes for readability: in “snapshot” format (as described last week), devoid of paywalls, ads, and distractions. A true, barebones version of the app would simply allow a user to add a piece of content, to browse the content they’ve stored, to read that content, and to share it in the same format with others. In this respect it would look something like the web version of Pocket and Readwise, two apps I mentioned last week. Of course it would have some key differences: it would be open source, you could host and run it yourself, and over the long run it would be developed, operated, maintained, and governed by a protocol and something like an open source foundation.

It’s critical that using the app be as frictionless as possible since we don’t want to get between the user and their content—the whole point of this app and experience is to remove such obstacles. Onboarding should be possible simply by clicking on a link shared by a friend. A new user should immediately see suggested content, ideally things stored or shared by their friends and by people like them. They should be able to easily follow other content creators and curators that they like. In addition to content shared by friends and people the user follows, they should also be able to easily bring content in via two other means.

The first is sharing any content they come across on the web or in an app. This should be as simple as pasting a URL into the app, which would immediately cause the app to fetch the content, store it, and make it accessible and searchable not only to the user who fetched the content but to all users of the app. (There are easier ways to add content than copying and pasting URLs, but they require installing apps as described below.)

The second is importing content from existing apps and subscriptions. This step is critical as it massively reduces friction and makes onboarding painless. It allows the user to instantly bring over content from other places where they’ve already stored it, such as the apps I mentioned above, using their APIs. It would be great if the app could also access content shared on other social media platforms that the user uses.

This MVP offers both a compelling single player mode, where a user has a calm, distraction-free environment for consuming content they’ve curated for themselves, and also a compelling multiplayer mode, where a user can follow others, see the content they’ve curated, and share content with others.

Thing #2: Browser Extension 🔖

With a basic web app in place the logical next step is a browser extension. A browser extension is a web app, but it’s a web app on steroids with a few superpowers. The most important of these is the ability to control the browser on the user’s behalf. For our purposes this means reading what the user’s reading, which might not sound like a superpower but it’s actually quite a powerful idea. When the user activates an extension it becomes aware not only of the URL of the page or content in question but of the content itself. It can then take a snapshot of the content as described above. In a web app the user can only add content by pasting a URL or pasting content directly. By contrast, only an extension can effectively see what the user sees. Importantly this includes a localized version of a page, the full version of an article behind a paywall, or an article that isn’t public.

Another important difference is that an extension gives an application more permanence on a user’s system and, as a result, causes it to be more front of mind for the user. The number of web pages is effectively unlimited. But most people only have a handful of browser extensions installed and the icons for these extensions are are always visible. The friction to installing a web app is somewhat greater than that of opening a web app since there are multiple steps in the process and it requires installation, something that some users may be reluctant to do. But for users that are able to overcome this friction there are benefits.

Aside from these differences and advantages an extension isn’t terribly interesting. It basically functions like a web app that resides in a special window in the corner of your browser screen. The rest of the functionality of the extension we’re contemplating here would be pretty similar to the first thing, above. Pocket does something similar with its extension and web app combo. Extensions also have a bit more persistence than ordinary web pages and web apps: they retain state even when browser tabs and windows are closed. But that state is still stored inside the browser which isn’t terribly helpful.

There’s one very important thing that neither a web app nor a browser extension can do, and that’s P2P. What’s more, extensions have the big downside of needing to be delivered and installed through app stores. That means they need to be reviewed and approved and that companies like Google, Apple, and Firefox need to give you permission to publish your apps. This process is time-consuming, error prone, and costs money. Moreover these companies tend to have narrow definitions of permitted behaviors for apps and tend to apply their rules arbitrarily and with little to no oversight or accountability, as evidenced by the many bans on cryptocurrency related applications by companies including Apple and Google.

Both of these limitations bring us to the next thing.

Thing #3: Standalone App 💻

As I alluded to above, a standalone app has a number of benefits that non-native apps including web apps, browser extensions, and mobile apps can’t provide. Web apps run in a sandboxed browser environment which means they’re very limited in terms of what they can do and what they can access. They can interact with the browser and they can send HTTP requests but they can’t do much else. They have no native access to files on the filesystem, hardware devices such as cameras and microphones, to the network, or to anything else running on the system. All of this is by design, in order to protect the user and their system.

There are APIs and SDKs that make it possible to access hardware from the browser: WebHID, for instance, allows use of devices like joysticks and gamepads, and of course it’s also possible to access the camera and microphone for, e.g., video calls. But the requisite popups and approvals degrade UX and web apps remain constrained in other big ways, e.g., limited disk and network access. Browser extensions face all of the same constraints with the one difference that, as mentioned above, they have more access to what’s going on in the browser than ordinary web apps.

What about native apps? There are different kinds of native apps. Most mobile apps are native apps but these are also quite constrained in much the same way as web apps. Mobile operating systems were designed with sandboxing and security in mind in order to ensure that one app can’t gain control of the system, read another app’s data, or drain the device battery. While there are slight differences between iOS and Android, in general mobile apps on both platforms can’t run background processes or exchange data with other apps.

If it were totally up to Apple I imagine every device, including desktops and laptops running macOS, would look and feel like an iPhone or an iPad where all apps have to be installed and managed through the App Store. Fortunately it isn’t up to Apple and we still have relative freedom in terms of the native apps we run and what we can do with them. Native desktop apps can do more or less anything. Over time macOS and Windows have introduced some constraints on what apps can do—they cannot, for instance, overwrite sensitive configuration files by default—but they do have unfettered access to essential resources including disk and network. This means that as developers we have more degrees of freedom and can do much more exciting things with native apps.

In the context of blockchains and decentralization the most significant of these is P2P networks, which require direct network access. P2P apps need to be able to dial other nodes, i.e., establish multiple outgoing network connections using proprietary protocols (that tend not to work very well over, say, HTTP) and also to accept incoming connections from other nodes. Direct disk access is also very important because it means apps can efficiently read from and write to large databases, something that’s also required for a blockchain. It’s theoretically possible to run a blockchain node in a browser as an app or an extension using technology like light clients or stateless clients, but due to the limitations mentioned above it’s quite hard and I’ve yet to see it done in practice.

One interesting possibility with a native app is that you can have a browser extension that talks to the native app. 1Password is a good example: there’s a slick native app that you can use to manage passwords and documents but also a handy browser extension that autofills passwords on the web, and the two connect and exchange data with one another. This model would also make sense for the app we’re envisioning: you want to be able to quickly bookmark, snapshot, and generally store content you’re reading in the browser, so an extension would make sense. But you’ll have a better reading experience in a native app where you can remove clutter, be more focused, and enjoy a smoother experience than is possible in the browser.

Another advantage of a native app is that it gets its own icon! This might seem trivial but the value to the brand of an app having its own icon is a big deal in a world where we run very few native desktop apps (I’m running 10 on this laptop at the moment). An app with an icon is always visible at the bottom of the screen and it’s visible every time the user switches apps.

Where do networking and P2P fit in? This gets a bit more into the protocol side of things, which we’ll discuss in greater detail in a future issue, but the general idea is that you want to be able to swap content directly with other users of the network without going through or relying on a few centralized content providers. The easiest way to do this is to think of each piece of content as an object, a transaction, or something like a NFT. When you save a piece of content you should broadcast that content or at least the associated metadata to the network, and you should also be able to request and retrieve content from peers in the network. This is how we defeat paywalls and open up curation, and it requires P2P, which requires a native app.

A native app may seem like an app’s final form and the ultimate option for distributing our app, but we’re not done with this list yet and there are a few more stages that we’ll consider.

Three Angles on the New Web

https://rettig.substack.com/p/three-angles-on-the-new-web

This pretty well captures how I feel about newspapers and media in general. We can, should, must do better. Photo by Nijwam Swargiary on Unsplash

Subscribe now

I spent the last three weeks listing the biggest problems facing the modern web as I see it. I could keep going and come up with several more weeks’ worth of problems, but that would be annoying and most of you would probably stop reading if I did that. It would also be unnecessarily pessimistic and depressing. In any case by now I think I’ve covered the biggest, most important points and it’s time to turn our eye towards the future and towards a solution. As an intermediate step I’m going to attempt to paint a picture of where we might be heading in attempting to solve the problems I laid out.

Sometimes with the very biggest, hardest problems a direct approach won’t work. Sometimes it’s necessary to approach the problem from the side in order to get close enough to bash it on the head. Sometimes you have to do that from several sides in order to stand any chance of making progress. That’s what I’m going to attempt to do here. Rather than try to outline the once-and-for-all grand solution to the web, a task that would be impossible, I’m going to approach possible solutions from three distinct but related perspectives. Once this is done we can try to reconcile them all, put the pieces back together, and figure out how it all fits together.

Thing #1: Better Reading App 📒

There’s more interesting content out there than I can read (and listen to, and watch) in ten lifetimes let alone the one I’ve got. Like I’m sure everyone else reading this, I’m constantly receiving things my friends and colleagues send me to read, and I’m constantly stumbling upon interesting looking content on social media, in podcasts, books, and elsewhere. I read, watch, and listen to what I can, but for lack of time the vast majority of it gets filed in a single place.

Long ago that place was emails to myself. Later I got a smartphone and began saving notes and links on it. Later I moved to an app called Readability, then a few years ago to one called Pocket. Recently I’ve begun playing with a delightful paid service called Readwise that’s a slightly better version of Pocket.

In general these apps and services let me do some degree of tagging and categorization of the links and content I save. I like to separate personal stuff from work-related stuff, I like to tag things that are relevant to a particular project or pursuit (“exercise”, “diet”, “politics”, etc.), and I like to prioritize things (even if I literally never get past the “REALLY SERIOUSLY WTF YOU NEED TO READ THIS NOW!!” tag). In addition to tags and categories, must-haves for me include downloading content for reading offline (I spend a lot of time on airplanes), the ability to share things with others very easily, great search (for finding that article I know I saved six years ago even when I just can’t remember the author or title), and something I’ll call “snapshotting.” Snapshotting means not only recording an immutable copy of a document as it was when I first saved the link (as opposed to when I try to read it—things change and disappear with a depressing degree of frequency on the web), but also doing so without ads, menus, suggestions, or any of the other garbage that tends to clutter web pages.

This last feature is particularly important and particularly hard to find. Pocket and Readwise both do a reasonable job of snapshotting but neither can handle every page and both tend to get confused by even simple things like PDF files and Google Docs. Both apps often revert to “web view” which means you’re back to where you started: ads, menus, and suggestions aplenty.

Another issue is my very strong preference for open source software. Sadly both of these apps/services are closed source and both are centralized which means I have zero guarantees that they’ll keep my data safe, will continue to operate in the future and won’t arbitrarily kick me off without explaining why. I also haven’t found a way to easily export my data from either app. While they’re okay and kind of get the job done they leave something to be desired.

I’d also love for such an app to defeat paywalls. As I wrote earlier in this series it’s not because I’m averse to paying for good content. It’s because I simply cannot handle the cognitive burden of managing dozens or even hundreds of different subscriptions. If such an app found a better, simpler business model and could wrap payment for content with better UX, I’d be all over it.

With that in place I can explain what I want, which I think is really quite simple and not too much to ask for. As a content consumer I just want a better experience saving, organizing, reading, searching, and sharing articles and other types of content. That’s it. If apps like Pocket and Readwise did a better job along these lines, and if additionally were open source and were decentralized or I could run my own backend, I wouldn’t be wasting my time writing this or researching how to fix this. But I think this is actually a great bellwether example of the ways in which the web is fundamentally broken because this is such a simple thing to ask for and yet for frustrating, structural reasons it doesn’t seem possible today.

To reiterate:

As a content consumer, when I come across an article or other piece of content on the web that I want to save and/or share with others, I want to be able to do so with a single click. I want to know that I’ll be able to find that content later in the form I expect.

And as a content creator I’d love if my readers could have such an experience. I’d love if my content could be placed alongside similar, relevant, high quality content, free of ads and paywalls and possibly with something better like micropayments built in.

Is that really too much to ask for? In my opinion expecting the web to let me easily find, consume, save, share, and publish content is like expecting McDonald’s to serve juicy hamburgers. You had one job, bro.

Thing #2: Decentralized Newsroom 📰

Two themes I write about a lot here are the breakdown of trust in traditional, centralized institutions and the tension between the upsides and downsides of decentralization. I’m going to touch upon both of these here.

On the first point, I’ve written many times here about how I’ve totally lost faith in mainstream media. And others have covered this phenomenon much more thoroughly and convincingly than I could so I won’t rehash those arguments here. For the purposes of this issue let’s take it for granted that in my eyes and in the eyes of many people, and perhaps most young people, there are no longer any trusted legacy media outlets. To the extent that I and many of these people trust anything or anyone to help us understand what’s going on, it’s increasingly individual people and individual brands (Joe Rogan and Lex Fridman come to mind), not companies and not institutions.

And yet as I wrote here a few weeks ago there’s one very compelling aspect to the product offered by mainstream outlets like NYT: curation and a bundle of content. There are many fantastic independent content creators who publish their content on the web in one format or another, but—as I keep saying—I don’t have the time, energy, or wherewithal to discover, curate, and subscribe to such content, including the burden of managing those subscriptions, jumping around to many different sites and apps to consume content, etc. By contrast I can open the NYT app and have one single, integrated, comfortable experience and consume all sorts of content across a wide variety of subjects. This experience just isn’t possible on the open web and decentralization and fragmentation make this much harder.

How do we square this circle? How do we create a trusted channel or platform that doesn’t get captured by one radical ideology or another and doesn’t serve its political and corporate overlords (as has happened to mainstream media) but that nevertheless can deliver a delightful, integrated, bundled experience? I think the answer is threefold: an open protocol, decentralized curation, and better incentives.

The open protocol is how you avoid capture. The protocol and its infrastructure shouldn’t be owned or governed by any single corporation or organization. Bitcoin and Ethereum have proven the viability of this model.

Curation is how you achieve bundling and how you ensure trust. There should be many content publishers and curators. Users may choose to subscribe to any subset of publishers and curators. They may choose to curate their own content or they may rely on curators to do this work for them. Some curators may naturally specialize in fields they know a lot about or are especially passionate about: sports, arts, music, economics, technology, etc.

Sound familiar? It should. If done right, this would be something like a decentralized newsroom with different “desks” occupied by teams of curators. Eventually meta-curators may begin to curate the work of many such focused curators together into a single, bundled experience like a new NYT. And due to the openness of the protocol, if any curator loses your trust you can easily switch to another or choose to curate content yourself. This mechanism would keep curators honest and make sure they act in the best interest of their readers/subscribers.

Finally, better incentives is how you make the whole thing sustainable. The mainstream media have collapsed due to broken incentives: first old fashioned print publications began to fail because digital platforms and digital advertising killed their business model, then the new, digital outlets became shitty and have begun to fail because their business model, competing for eyeballs in an ever more competitive online marketplace, also fell apart. It’s time for something radically different.

I haven’t worked out all of the details—we’ll dig deeper into this soon—but at a high level this will only work if readers are prepared to pay for good content and curation, and if content creators and curators are downstream of this revenue. Would readers be willing to pay for such an experience? I’m not completely sure and there’s a lot more research to be done but I suspect the answer is yes, especially given the apocalyptic state of the alternative. If you can deliver a comfortable, robust, familiar experience, something that looks and feels like NYT but is powered by a totally different social and economic mechanism under the hood then I think you stand a pretty good chance of changing the world for the better. It’s also possible to give new users a free budget to initially spend on content and to allow them to earn “coins” by providing a service to the network (such as publishing their own content, or curating, or adding commentary, or sharing, etc.) which can subsequently be spent on content.

What about the other side of the market, content creators? It may sound contrarian but creators should be charged for publishing content, since this imposes a burden on the network and, indeed, on the world. It’s a disincentive for publishing garbage or low quality content. But they should be unafraid because even halfway decent content that appeals to, say, 100 other people would more than cover costs and be profitable. It’s important that this equilibrium be established. And content creators should be able to earn a huge amount from popular content, even without advertising. It’s no different than a shopkeeper needing to pay for a storefront in order to go into business.

The case for curators is a little more complicated. It’s not quite so straightforward how they should be compensated but one simple model is that they should receive a small cut, say 10%, of the revenue flowing from readers who accessed content through their “feed” to the creators of that content.

If we can get even these basic incentives in place I think we could bootstrap a really exciting new economic model and totally reimagine how things like newspapers and magazines are designed and run in the modern era, using the power of cryptoeconomics and better incentive schemes.

Thing #3: Proof of Human Work ⚒️

In the earliest days of Bitcoin it was possible to mine from home. In fact, this was the only way to mine and all miners were by definition home miners! Of course, at the time no one other than a few cypherpunks and cyber-weirdos had heard of Bitcoin and it had no value to speak of. Over the following several years Bitcoin mining went through several phases of professionalization: from home CPUs to GPUs, then to FPGAs, and finally to ASICs. At least since I joined the Bitcoin community around 2017, and probably even before that, it’s been unprofitable to mine from home and it’s only gotten harder and harder over time.

A similar process played out with Ethereum prior to its transition to proof of work in 2022. Ethereum proof of work mining was designed specifically for GPUs. In the beginning people mined from home using the GPUs they already had. Over time, and as the value of ETH increased, mining became more and more specialized so that eventually it was only profitable to mine as part of a pool or an industrial mining operation. Eventually ETH ASICs also began to emerge.

When proof of work was designed there was a belief, somewhat utopian and unrealistic in retrospect, that it would be egalitarian and enable ordinary people everywhere to participate in the economic upside of cryptocurrency by mining from home using existing hardware and bandwidth. Today this idea seems naive to the point of laughability. It seems obvious and inevitable that, where there’s money to be made through professionalization, special hardware, streamlining of operations, etc., professional miners will take advantage of those things and, eventually, crowd out smaller home miners.

We nevertheless launched the Spacemesh project a few years ago with a similarly hopeful, utopian vision: that any Internet user anywhere in the world with any device and an ordinary Internet connection could download the Spacemesh software, join the network, help provide security and validate transactions, and create economic value for themselves. I wasn’t around at the start of Bitcoin or Ethereum but I wouldn’t be surprised to learn that many in those communities had a similar vision at the time. We thought we could defeat the centralizing tendencies that put mining out of reach for home users in Bitcoin and Ethereum due to clever unit economics: in a nutshell, as long as a home miner is mining using hardware and an Internet connection that they already have (i.e., without investing additional money into mining), they will never be priced out by pools or industrial-scale miners who will always have higher costs. This is possible because of Spacemesh’s bespoke consensus mechanism: proof of spacetime mining is much easier and cheaper (in theory) than proof of work mining, which consumes a lot of electricity on an ongoing basis.

While we’ve come a long way towards realizing that vision—the network is live and there’s thousands of home miners on it—it’s proven harder than we expected to ensure mining is profitable and sustainable for home miners in practice. For one thing, it’s much harder to run a node from home than we expected or intended, and it’s become harder over time as the network has grown rapidly. For another, the network has grown much, much more rapidly than we hoped or expected, meaning the rewards for small miners have dwindled.

There are lots of complex technical, social and economic reasons for this trend, and while examining them would be very interesting it’s beyond the scope of this issue. From my perspective the lesson here is that “egalitarian proof of work” mining is much, much harder than I expected even with clever protocols and unit economics theoretically working in your favor. I’m not ready to declare the experiment a failure yet—the market hasn’t yet found equilibrium, it’s possible that the situation may eventually improve, and Spacemesh may yet create value in many other ways—but for now I’m unconvinced that proof of work, however clever, can ever be egalitarian or create much value for home miners.

It’s time to think even further outside the box. As I see it the goal is to design a novel form of proof of work that fulfills three criteria. First, it should require a talent that is widely endowed and that ordinary people everywhere can contribute without specialized training or equipment. Second, its needs to be difficult or impossible for a machine. Third, it needs to be objectively measurable and meritocratic so that rewards are more or less proportional to skill and effort.

This is a really interesting puzzle! It’s one that I’ve been mulling over at least since getting into the crypto space almost eight years ago. A good starting point is “proof of humanity”, i.e., a way for a person to prove that they’re both human and unique. I’ve looked at many unique, crazy schemes from physical movement and gaming to pseudonym parties to web of trust to eyeball scanning. Unfortunately none of these cuts the cake. The problems should be clear: these schemes are mostly centralized and not scalable. What’s worse, they don’t fulfill the third criteria of being meritocratic and objectively measurable and they can easily be gamed and dominated by machines.

I’ve only ever been able to come up with one idea that ticks all the requisite boxes, and I keep coming back to it: creativity, especially with respect to creating and curating high-quality content. This is the one thing that’s meritocratic, that machines just aren’t very good at yet, and that involves talent that’s quite widely endowed. The permissionless rise of bloggers, vloggers, streamers, and other social media stars over the past generation should make this clear.

Let me address a couple of likely objections upfront.

You’re probably wondering, what about LLMs and other “AI” technology? I’ve played with LLMs as much as the next guy and, while they’re good at spitting out text that sounds natural for very specific use cases, I don’t think the technology is yet at a stage where the memes or long form content it generates are anywhere near on par with the best, most creative content generated by humans. Even if it does eventually get there I still don’t consider this a problem because at the end of the day it’s just a tool, like a word processor or a spell checker. Behind every piece of LLM-generated content is a human agent and a prompt, and if that human actor is able to produce better content more efficiently than other people they deserve to be rewarded for that (it still requires creativity). In my opinion we’re nowhere near a world where AI tools are capable of acting on their own behalf.

You may also be wondering how to objectively measure creativity. It’s not obvious at first blush but it’s fairly straightforward as existing social media networks worked this out a long time ago: it can be measured through engagement metrics such as clicks, likes, upvotes, shares, etc. These metrics aren’t perfect but they’re a reasonable first-order approximation and can be improved upon over time.

In a sense we find ourselves back where we started! Starting from first principles it seems like the best model for collecting, curating, and valuing human labor in a maximally decentralized, participatory, egalitarian fashion is… social media. I think the problem with social media today isn’t anything fundamental about this process. It’s rather the way in which today’s platforms are centralized, unaccountable, and privately governed and operated. The incentives are wrong. An open, decentralized social protocol is worlds apart from the way social media operates today. There’s a lot of work to be done to wrap all of this into a protocol that’s usable and isn’t overly complex, and that isn’t trivially gameable, but we’ll work towards that over the coming weeks.

I call this Proof of Creativity (I’m not the first to come up with this term). Decentralized social media is proof of creativity.

Fixing the Web, Part III

https://rettig.substack.com/p/fixing-the-web-part-iii

Back in the early days of the web my “deploy pipeline” was just me manually uploading some HTML files to a server. That’s all it took. WTF are Cypress and Prisma anyway? The web shouldn’t be this complex. Image courtesy kentcdodds.com.

Subscribe now

This is part three in a series on the biggest ways in which the modern web is broken. We’re nearing the end of the list and we’ll be talking about solutions soon, hang in there!

Thing #7: Complexity 🪢

When I think of the complexity of the modern web two remarkable anecdotes stand out.

Thanks for reading Three Things! Subscribe for free to receive new posts and support my work.

The first is an article that I read about three years ago. It was written by an experienced web developer who attempted to document every step in the process of setting up a modern website: all the tools, libraries, and platforms, all the different technologies, and all of the decisions that had to be made (see image above). It was written in an extremely detail-oriented, pedantic fashion, and the responses on Hacker News were mostly people trying to figure out whether the article was serious or tongue-in-cheek. I read the whole thing. It was both. Everything included in the article was really a part of setting up a modern website. And I’m certain things have only gotten worse since it was written a few years ago.

The second is a post on X that I read a few months ago about the total size of the specifications behind the web (unfortunately I’ve lost the link but will update this if I find it again). How big do you think it is, in pages? It depends how you count, of course, but if you include just HTML, JavaScript, and CSS it’s on the order of tens of thousands of pages, orders of magnitude more than I expected. This post pointed out that it’s orders of magnitude greater than the US tax code, which is famous for being massive and overcomplex. Frankly I don’t understand how a spec for anything can be this complex, but there you have it: the modern web in all its complex glory.

As I keep saying in this series: it wasn’t always this way! I’m old enough to remember when setting up a website really just meant one or a small handful of HTML documents. You could write the HTML by hand (it wasn’t hard), you could use a WYSIWYG editor like FrontPage, or you could even use a word processor to convert a document into a web page. It felt a bit like editing a wiki or writing markdown today: just text, some basic syntax that was easy to learn and remember, and inter-page links, and everything just magically came to life and started working.

Things are orders of magnitude more complex today. Complexity isn’t always bad and it sometimes buys you nice things, a lesson we’ve learnt at Spacemesh. The early web could display documents with text and some basic formatting, and later images, but that’s about it. “Multimedia” just meant text and grainy, static GIF images. There were no animations and no embedded scripts or apps. Web pages weren’t interactive or dynamic at all; the early web was read only. There were no applications to speak of. Web content was tiny because most people with Internet access (myself included) had puny dialup connections. Browsers were slow to load and render even these simple pages. There were no headless browsers or fancy libraries for consuming web content.

If you started using the web more recently, you don’t know how lucky we are today. Today we have smooth, dynamic, interactive experiences on the web. We have full-featured applications like the one I’m using to write this. We have voice and video calls. We have pages and apps that are responsive and work across a huge array of devices. We have SPAs and PWAs. We have gigabit broadband and streaming. We have CDNs and edge caching and edge compute and a blazingly fast experience. We even have full 3D games. There’s almost nothing you can’t do with the web today (P2P and persistent local file storage are a couple of the very few things you can’t do with the web). But the price of all of this is a lot of added complexity.

And the price of this complexity is unfortunately hidden. It’s not something we think or talk about very often. For any web developer under age 30 this is just the way things have always been and, by extension, the way they’ll always be. But the cognitive burden associated with this complexity is enormous. A friend put it best when he said that developers today can’t write apps any more because it’s become too complicated. A few years ago a motivated solo developer could build and operate an app. That’s simply not possible today for all but the very most basic apps. In a sense every web page is now an app and maintaining any app is quite literally a full time job—typically for a whole team! This takes a lot of money, which usually means VC dollars and a business model. A solo developer can’t manage to write and run an app anymore. That’s incredibly frustrating and tragic.

This complexity also severely limits choice and innovation. A decade or two ago there were dozens of upstart web browsers. Today we’re reduced to three: Chrome (Chromium), Safari (WebKit), and Firefox. Even tech giants like Microsoft gave up maintaining their own web stack. To be clear, there are still lots of browsers, but they’re all based on one of these existing stacks because building one from scratch is simply too hard. So there are really only three.

It means that choosing a web browser today is akin to choosing an airline or a mobile phone company: all the choices are sort of unappealing and more or less the same because the startup cost and barrier to entry is too high. When your protocol or standard has gotten so complex that no one can afford to or is capable of building a new implementation, that’s a good sign that something’s wrong and it’s time to start over from scratch.

The web as we know it isn’t going anywhere anytime soon, complexity and all. There’s simply too much invested in it. Projects like Urbit are trying to reimagine the web (and, in the case of Urbit, the entire Internet) from scratch, which I think is a little too ambitious as a starting point. I’d start with a New Web that, as with the early web, just tries to do a few things and does them well—hopefully without most of the problems outlined in this series.

Publishing something on the New Web should feel like publishing on the Old Web: like editing markdown or a wiki. That necessarily means limited styling and limited interactivity but I think that’s a good place to start. Those things can come later, once we get the basics right. Let’s start with books and excellent content, not flashy ads and companies monetizing your data.

It’s possible that a New Web that starts out as simple as the Old Web would end up just as complex as the web but in different ways, but I sort of doubt it. The web itself isn’t going anywhere anytime soon. That doesn’t mean we shouldn’t try to build something simpler and more specialized in parallel.

Thing #8: Privacy 🕵️

In the early days of the web there was no such thing as privacy. Nothing was encrypted. When you logged into a site with a username and password (the only form of authentication available in the beginning) your credentials were sent in plain text across the Internet and could be intercepted at lots of points: by someone else on your same local area network (maybe not so bad at home, but potentially catastrophic at a company or university), by someone “snooping” at the destination network, at any point in between, or in seemingly random places like webserver logs. This lack of privacy made sense in the beginning because computers were only just beginning to be connected to one another and the threat model wasn’t fully understood, and because in the beginning people mostly weren’t passing around sensitive information or doing sensitive things like shopping.

Over time more and more web and other Internet traffic has become encrypted. SSL and TLS were developed and support was added to major web browsers and servers. This was a key piece of the infrastructure that was required in order for online shopping to take off. It took a long time for the standard to become widely adopted, but thanks to recent initiatives like Let’s Encrypt and HTTPS Everywhere almost every web page and application now offers transport-layer security. This is not without flaws—there are still various forms of MITM attack possible, including those that use DNS hijacking—but it’s a lot better than the way things used to be and it makes it very difficult to snoop on the information moving back and forth between your device and the server.

Of course it does nothing to protect the data once it arrives at the destination. There are still a myriad of ways your data can be compromised, and it happens all the time. Really: the list of exploits, intrusions, and data compromises, even just among Fortune-500 companies (which should know better and have the expertise and resources to do better) is depressingly long. Sadly, the vast majority of companies, including tech companies and Fortune 500 companies, and even governments simply do not prioritize network or system security or take these issues seriously enough. Lots of these organizations leave extremely sensitive information including names and addresses, birthdays, social security numbers, credit cards, purchase/transaction history, and even protected health information sitting around on unencrypted, Internet-connected servers. This violates the very most basic security principles, but companies do it anyway out of laziness, a lack of understanding, and bad incentives.

End to end encryption helps but it only really works for point-to-point messaging and file sharing applications like email and chat. With E2E encryption, only the parties to a conversation can decrypt and access the contents. It doesn’t work well for other types of applications where the counterparty isn’t an individual or a small group of people but is rather one of those big, vulnerable servers run by an irresponsible company. And we can’t rely on closed source E2E encrypted apps (which most are) because there’s no way to verify for ourselves that they’re doing what they say they are.

Blockchains take a totally different approach to privacy. Contrary to popular belief account data, transactions, etc. on major platforms including Bitcoin, Ethereum, and Solana are not encrypted. Privacy, such as it is, can be achieved through other means such as not reusing addresses, but it’s nuanced and difficult even for experts, most wallet software isn’t privacy friendly, and most privacy software isn’t user friendly. There are applications and even entire chains that bake in stronger privacy guarantees, but governments and regulators have made using them very difficult due to concerns about money laundering, terrorist financing, and other illicit use cases.

Privacy is very much on the list of “goals that are critical but really hard,” along with most of the other problems discussed in this series. Fortunately, for many kinds of applications, I think less than perfect privacy is fine as long as people know best practices and the software they’re using supports these practices. Perfect privacy is almost never possible in practice but we can still go a long way without it.

A great example is pseudonymity. The worst thing you can do in blockchain is to use a single account for absolutely everything: for getting paid, for gambling, for remittances, for trading NFTs and shitcoins, for joining DAOs, etc. This by definition means that you’re leaking tons of information each time you engage in one of these actions: the way blockchains work today—at least until they offer better out-of-the-box privacy guarantees—everyone who’s party to any of those transactions can immediately see all of the others! A much better approach is to compartmentalize your digital life into multiple identities with a wallet address for each one: e.g., one that you use for your day job, one that you use with your family, one that you use for degen trading, etc. If you do this correctly it offers much stronger privacy guarantees than an “out of the box” blockchain experience.

It can also offer better privacy guarantees than the web. Why? Because the vast majority of web applications today require you to identify yourself: with a name an address, a telephone number, a credit card number, a birthday, etc. Sure, you can create lots of email addresses and in many cases use fake names, but unless you’re an expert these email addresses can be easily traced back to your real identity. And the reality on the web today is that most users are lazy and choose to authenticate with an account on an existing, centralized service (Google, Facebook, Microsoft, GitHub, X, etc.). These companies can literally shut down your identity and block you from accessing anything you’ve signed up for at the click of a button! This happens all the time, without cause or justification and with little to no accountability or means for appeal.

By contrast, in a crypto native world you can (and should!) truly have many different identities that you control. If set up and used correctly, they cannot be linked to one another. Crypto native applications should never require KYC or real world identification—if they do they are by definition not crypto native! If you combine these two ideas you have a very powerful foundation for strong privacy. Add cutting edge technology like zero knowledge proofs and things get even better.

Privacy is a fundamental human right and outside of a very narrow range of sanctioned, high stakes transactions that impact other people (marriage, high-value financial transactions, criminal and judicial proceedings, running for office) you should be permitted to use a pseudonym and maintain your privacy everywhere. (And even in many of those high-stakes transactions you should be able to maintain relative privacy with zero knowledge proofs: by providing only the minimum required information relevant to the application.) You should be allowed to have and transact with as many accounts or identities as you want. If you believe as I do in the rights of privacy and self expression this conclusion follows naturally.

Crypto software can, should, and will make identity management, and by extension privacy, far easier than it is on the web today.

Thing #9: Interoperability 🪡

One way to look at the Internet is as a tool intended to solve interoperability once and for all. Before the Internet it was very difficult for computers to interface and talk to one another. There were a number of different, incompatible protocols and applications. It didn’t happen overnight but eventually the Internet solved this problem through the introduction of standards including Ethernet, BGP, the TCP/IP stack, and the rest of the OSI model. The eighties and early nineties, the period immediately prior to the invention and popularization of the web, saw an explosion of applications that made use of these new standards: email, newsgroups, gopher, BBS, FTP, telnet, etc. Using common protocols meant that for the first time in history any computer (and, by extension, any user) anywhere in the world could talk to any other anywhere else, and be reasonably sure that the message would be received as intended.

In retrospect it’s remarkable how the first decades of the Internet saw the emergence of so many successful, widely adopted protocols: SMTP, POP3, NTP, NNTP, HTTP, FTP, to name but a few. In some senses the Internet would’ve been much better if its development had stopped there or in any case if global protocols such as these continued to emerge, but we all know what came next: centralization in the hands of and even capture by several large companies, as discussed several times already in this series. HTTP is an open protocol but Facebook is not; email is open in theory but Gmail is not. There are open standards for streaming video but TikTok and YouTube aren’t open, etc.—the list of such examples goes on and on.

As these open protocols were gradually replaced by proprietary, closed alternatives—or dominant closed, walled gardens were built on top of them—interoperability and portability became harder and harder. The final push for interop and portability came in the mid to late nineties with the introduction of standards like RSS. RSS put up a good fight but it and similar protocols were eventually killed by social media, as evidenced by the fact that over time more and more websites and browsers have dropped support for it. Sadly, it’s in the interest of social media companies to keep users and content within their own ecosystem: to trap them, raise switching costs, and make it hard or impossible for users to take their data elsewhere or integrate with other applications. As a result there are scant global data standards, APIs can’t talk to one another, and many services provide no way to export your data, or give it to you only in a strange, useless format.

Indeed, as I wrote last week the original killer app of the web was composability: any web page anywhere could link to any other web page permissionlessly. That seems trivial today but it was a huge breakthrough at the time. And as with so much of the web this has gotten harder and harder over time. Walled gardens and paywalls break the composability and openness of the web: you can’t easily link to a Facebook post or a paywalled article. If you do, it often simply doesn’t work or the experience is intentionally terrible outside the “garden” (i.e., the app). Social media apps often do allow linking but they force you to download their app and create an account in order to view content. Some, like X, recently stopped displaying any link metadata and began disallowing embedded links. These forms of hostile behavior are sadly inevitable with the closed, walled garden model.

APIs help a little bit, sometimes. In theory a well designed API allows a clever, motivated developer to build anything at all on top of a platform. It should allow an application to act on a user’s behalf, accessing their data and exporting, modifying, or displaying it creatively. In practice it’s rarely this simple. For one thing APIs are permissioned: you need keys to use them. For another they’re not free (and tend to get expensive quickly). What’s more, they change all the time in arbitrary, unpredictable, unaccountable ways, and the platforms behind them are unafraid of deplatforming anyone they think might compete with them. There are hardly any universal data standards (this is something else that died around the time RSS did) so even APIs from similar services are likely to provide data in radically different formats.

The exact opposite of this is a platform like Ethereum and the radically open, permissionless, composable model that it introduced. The vast majority of smart contracts on Ethereum are open source and publish their interfaces. Any smart contract can permissionlessly, atomically, and synchronously interact with any other smart contract (for which it has an interface) at any time. There’s zero cost to composing such applications (aside from the gas cost, which the user pays for any transaction). This is a utopian version of the web—how the web could and should be if it were designed differently! It unlocks enormous scope for creativity. It’s a major part of what excites people so much about the potential of blockchain and “web3” applications.

The one downside to such a model is that it doesn’t easily scale since it requires a single, global, synchronized database. The web, by contrast, is decentralized and Ethereum is rapidly moving in the same direction with the introduction of rollups and many chains. Even with these challenges I think that Ethereum-style blockchain-based applications will continue to be far more permissionless, composable, and atomic than their web2 counterparts (anything is better than the existing API model!). And the Solana ecosystem is taking a different, more integrated approach that is also promising.

There’s a great deal that the web can learn from blockchains about composability. Open, permissionless composability is the only way to maximize creativity and ensure that the greatest number of high quality applications get built. That above all should be our goal for a modern, reimagined web.

Thanks for reading Three Things! Subscribe for free to receive new posts and support my work.

Fixing the Web, Part II

https://rettig.substack.com/p/fixing-the-web-part-ii

As I said last week when I introduced the topic, the web and content are broken in too many ways and I can’t cover the major ones in one week, or even in two. So here we are at part two. Of three. Or four. Or possibly more. The web is far too broken to ignore!

For the under forties in the room, this is what web search used to look like. It’s slightly better today. Image courtesy Web Design Museum via Mashable.

Subscribe now

Thing #4: Search 🔎

“For a growing but not universal portion of the web and the world, we allow Google to determine what is important, relevant, and true.” – Siva Vaidhyanathan, The Googlization of Everything

In the earliest days of the web search was impossible. Some of the earliest Internet applications including BBS, newsgroups, and gopher had search functionality but were limited to the scope of a single monolithic application running on a single server and provided no cross-domain search functionality. Then the web, the killer app of the Internet, came along and everything changed.

The web had many features lacking in these earlier protocols but arguably its most important killer feature was composability: the fact that any web page hosted on any server anywhere in the world could permissionlessly link to any other web page hosted on any other server anywhere in the world (sound familiar, my blockchain believooors?). But this cross-domain composability made search very difficult! How could you build a search tool that could index documents of many formats across such a decentralized network? I wasn’t in the room but I can imagine the investors, designers, and builders at the time debating this seemingly impossible problem.

We all know how the story ended: a first generation of “naive” web search engines such as AltaVista, Magellan, and Excite appeared and while they weren’t great they also were a lot better than nothing. Then Google came along a few years later with a much better, more efficient approach and some key insights and ate everyone’s lunch. The rest is history.

Except that this story is still being written. I’m not sure what your search experience has been lately but anecdotally it seems that mine is getting worse and worse. I’m having more and more trouble finding what I’m looking for and the various options available today including DuckDuckGo, Bing, Brave, and Google increasingly aren’t cutting it. I don’t know how much this is due to the simple monopoly/duopoly power of Google and Bing causing them to underinvest in improving their product, and how much it’s due to the increasing fragmentation of the web: walled gardens, paywalls, SPAs and dynamic content, social media and ephemeral content, fragmentation, and the appearance of much more structured data. In short the web is changing and search engines aren’t keeping up. But like so many things in technology today the network effects are quite strong and incumbents have such a head start that it’s very difficult to replace them, which is why we’re all still using Google in spite of a seriously subprime experience that’s actually getting worse. Search needs another paradigm shift.

Let’s start from the beginning. The web as we know it and as originally conceived is a set of publicly-accessible documents that link to one another using hyperlinks. That part of the web still works—you can still publish HTML pages with links—except when it doesn’t (see all of the examples I listed last week). A paywall is a great example. A web crawler will find plenty of links to documents that aren’t accessible to non-subscribers for which it can only index the metadata (e.g., document title, date, author, URL, first few words, etc.). In practice the web giants behind major search engines like Google have negotiated deals with big content providers and have special access to such content in order to index it, but it’s still not accessible to everyday users and such deals are barriers to entry for those wishing to launch competitive search engines. In other words they’re antithetical to the idea of an open web.

Blockchain and crypto offer another great example of how the original web paradigm is breaking. What’s a NFT? It’s certainly not a webpage. It’s more like an “immutable bookmark” or a “pointer”: a small piece of metadata with modifiable and transferable ownership. In fact, when you think about it abstractly a NFT is a superset of a web page, and of content more generally. What’s a web page if not a “bookmark” or “pointer” (or a set of these) to more substantial content including text and images?

The issue is that unlike a traditional web page the NFT doesn’t “live” anywhere. In the terms of the web it doesn’t have a permanent URI. The hyperlink and URL/URI system, just like email and the domain name system, is built around the old-fashioned notion of centralized, physical servers. This made sense in the seventies, eighties, and even nineties when companies, universities and other institutions had actual, physical servers, identified by domain names, that they operated and controlled, but it began to break down in the cloud era. Today NFTs aren’t unique in this respect. Most data that we access on the web doesn’t have a single home—it’s replicated and backed up globally for speed and redundancy—but we maintain the fiction with various tools like DNS-based load balancing. This abstraction breaks when two users attempting to access the “same” document in two different places and/or at two different times end up with totally different documents. (I wrote last week about how modern tools like content-addressable storage can fix this problem.)

But decentralized, immutable crypto applications and data like NFTs simply don’t fit into this model. As I said, a NFT simply doesn’t have a URI! A concrete example may be illustrative. My ENS (Ethereum Name Service) domain, lanechain.eth, is a NFT that I own. Its only URI is its ENS “token ID”, which is 5773164272799913803859189447880505702716. You can view information about it, including its current ownership and metadata, at https://etherscan.io/token/0x57f1887a8bf19b14fc0df6fd9b2acc9af147ea85?a=57731642727999138038591894478805057027166897266126960561158965344283323439476, but this is just the view of one centralized company (Etherscan) on the NFT (you can see another, different view on OpenSea; there are countless others). The only foolproof way to read this information without trusting someone else is to run your own Ethereum node—in which case, at the risk of repeating myself, there’s still no meaningful URI for this data!

In this respect crypto is the decentralized straw that broke the centralized web camel’s back, in the sense that old-fashioned notions of the web and of how to crawl, index, and search it will never map well to the new paradigm. The best Google can do is index the Etherscan or Opensea pages linked above. This isn’t an index of the actual NFT any more than a photo of a mountain is an actual mountain. We need crypto-native search engines that “speak crypto” and understand these important paradigms like ownership, tokenization, and decentralization, and underlying data structures like NFTs, keypair-based accounts, smart contracts, and blocks.

Search is a difficult problem and I don’t mean to suggest that these problems have easy solutions. I have no idea how to solve search for today’s web other than to suggest that we need a universal substrate where all assets are registered, and the NFT is the best tool we have for that today. The fact that we have many different chains, ecosystems, protocols, and standards doesn’t make it easy—but then all of these same problems existed in the original web era in the nineties when the first set of search engines emerged. The situation today is as head-scratchingly complex as the early web in the nineties. The solution then was standards and the creation of organizations like the IETF and the W3C, and I suspect the solution today will be similar. Interoperability is still mostly lacking in the crypto era—as one example, there are already dozens of competing NFT standards—and I strongly suspect that better interoperability is the right place to start looking for a solution.

In fact what we really want is probably not many search engines, per se, but rather a decentralized, distributed one (i.e., a protocol), where a network of indexers is responsible for finding, hosting, crawling, indexing, and operating the search engine. This is a complex protocol but similar, similarly complex ones already exist and it’s definitely doable. It’s a huge project but I’m sure something like this will eventually emerge. It feels inevitable.

Thing #5: Misinformation and Disinformation 📡

“AI makes things easy to copy and fake; crypto makes it hard again. This symbiosis is critical.” – Balaji Srinivasan

This thing is of course a huge topic by itself and it’s only grown in importance over time. It’s actually closely related to the fragmentation issue I discussed above. It’s grown in importance because a generation or two ago it wasn’t so hard to figure out what was going on in the world. Almost everyone read more or less the same books, listened to the same radio stations, watched the same TV stations and shows, and read the same newspapers. After all there just weren’t that many to choose from.

Let me be clear: I’m not suggesting that these sources of information always told the truth or always had the citizen’s best interest at heart—disinformation is of course not a new phenomenon and we’ve had our share of propaganda in this country too—but at the very least there was a semblance of social cohesiveness, even if it wasn’t always correct (“the USA is a proud country”; “gay people are degenerates”, “we must fight communism with democracy and capitalism”, etc.). I don’t have room here to tell the story of what happened since then—others have done that job much better than I could—but for better or worse thanks to social and political change coupled with powerful technology we now live in an ultra-fragmented age where people get their news and information and, indeed, their understanding of reality from a huge variety of places, some more trustworthy and some less (they all have their biases of course).

In recent decades social media made things much worse by making it easier for people to build, and indeed find themselves in, echo chambers where they’re surrounded by people who think and believe the same things they do. In retrospect it was inevitable that social media platforms would be hijacked and exploited for antisocial purposes by nefarious actors from North Korea to Russia to Donald Trump to Q-Anon to people who lie about vaccine effectiveness. Without casting the blame on any particular group or demographic, we can safely say that on average the ability of ordinary people to know what’s going on and what’s true fell massively during this period, as did their trust in previously respected institutions including the government, the courts, the UN and even the WHO. To be fair, understanding what’s true can be very difficult since the world is a complex place and it’s rapidly becoming more complex. Conspiracy theories are attractive because they’re simple and often less painful than accepting reality. A lack of trusted, ethical curators and thought leaders doesn’t help—or maybe it’s the opposite: the fact that there are a huge number of people who call themselves thought leaders.

As if all of that wasn’t bad enough, things got even worse in the past year due to the emergence of large language models and their ability to instantly churn out massive amounts of genuine-sounding information and content that’s at best loosely associated with the truth. This includes “deep fake” photos, videos, and voice recordings, which have actually already begun to sway politics and elections. It’s getting easier and easier to create convincing-sounding misinformation (which merely gets things wrong) and even disinformation (which does so intentionally with an ulterior motive) and it’s getting harder and harder to distinguish these from the truth. You could be forgiven for scrolling through images and stories from current conflicts like Russia-Ukraine and Israel-Gaza and genuinely not knowing what to believe, like I do. (At least having a healthy skepticism whenever encountering emotionally charged content is a good start.)

Fortunately we also have powerful new tools at our disposal with which to fight back, most prominently crypto (including both cryptography and the adjacent fields of blockchain and cryptocurrency). The use of cryptography to fight misinformation and disinformation has only just begun but I and others believe it will have a massive, positive impact over time. Machines can fake content but they cannot fake digital cryptographic signatures, at least not without stealing your private keys! If we can figure out how to get cryptographic keys into the hands of people, from journalists to photographers to government officials, and teach them how to keep those keys safe and how to use them (in the industry we refer to this as PKI or public key infrastructure)—and we’ve made a lot of progress along these lines lately—then in a few years it might be a bit easier to at least tell what information is genuine.

Thing #6: The Risks of Centralization 🏛️

“We cannot have a society in which if two people wish to communicate the only way that can happen is if it’s financed by a third person who wishes to manipulate them.” – Jaron Lanier

As I’ve mentioned here a few times, the Internet as originally conceived of and designed was decentralized. Organizations including the universities, companies, and government institutes that served as the initial Internet nodes could publish content and users affiliated with those nodes could access the network via their node. (Having an email address such as user@domain.com used to mean the user had a real affiliation with the organization behind domain.com, rather than being merely a paid user!)

As we all know by now, however, decentralization is really hard. It makes sense for companies, universities, and government agencies to run servers but it doesn’t make sense for most ordinary people to run their own servers. Anecdotally, I tried running my own email server recently. In spite of having a lot of experience doing this (I used to professionally run several), I gave up after a few days. It’s just too difficult today.

It wasn’t always this way. In the beginning each Internet node hosted some content. Over time, however, service providers on the Internet have specialized. It turns out that today not every “host” is equally capable of or interested in hosting content. The tools to do so exist, as they have since the earliest days of the web: databases, web servers, CMS tools, etc. There are free, production-grade versions of all of these. But, as with running email servers, running web servers and hosting content more generally has also become very difficult.

Everything on the web these days is difficult because it’s gotten too complicated (more on this soon). Even setting up a simple blog from scratch is insanely complicated and would take days, not minutes or hours, to say nothing of the ongoing maintenance burden. It’s orders of magnitude easier to give your data to Squarespace, Substack, a blogging platform, or to a centralized social media network than it is to host content yourself. There are relatively straightforward options like Ghost and Jekyll but even these are mostly beyond the reach of users who aren’t tech savvy and don’t want to roll up their sleeves and write code and scripts.

As a result the entire modern Internet has become centralized, because it’s just easier and more efficient. Your email is centralized, captured as it has been by Google and Microsoft. Your identity is centralized, captured as it is by Google, Facebook, and a few others. Your data is mostly centralized, captured by—you guessed it—the same small group of companies. Think you own your data, your identity, your email? Think again. These companies can deplatform you with the click of a button, and they do so arbitrarily and without cause or accountability all the freaking time. Think you’re somehow special and that it can’t possibly happen to you? Think again.

Arbitrary deplatforming isn’t the only thing wrong with a centralized Internet. In an age of wokism and cancel culture, censorship is also a real problem. Democracy and society in general cannot function if ordinary people don’t have the freedom to speak their mind in public and be heard whether we agree with them or not; in other words, without Oliver Wendell Holmes Jr.’s famous “marketplace of ideas.” Yet, as Elon demonstrated last year when he took over Twitter, these same centralized, unaccountable, arbitrary platforms are increasingly being captured by extreme, harmful ideologies like “no mental discomfort” and by mainstream lies. If you don’t toe the party line, you’re likely to be canceled or at least severely censured, something we’ve seen happen to people from Elon to Joe Rogan to Donald Trump.

Then there’s the question of monetizing your content. Good luck doing this today on Youtube, Instagram, Tiktok, Twitch, or any other major, centralized platform. These platforms share only a tiny portion of their revenue with creators; as a result there’s a tiny set of people able to support themselves as creators on these platforms and an extremely long tail of people trying and failing to do so. As long as we continue to give our data and our content to these companies—as long as there are no viable alternatives—they’ll continue to exploit their monopolistic power and take advantage of us.

Okay, enough about what’s wrong and the current sorry state of affairs! What can and should we do about it? I believe that blockchain and cryptocurrency contain the keys to fixing these problems. It’s an idea that’s been talked about time and time again over the years but it’s also something that we’ve almost completely failed to deliver on (Elon has made far more progress with a freer, less woke X). This is understandable since shitcoin casinos are more attractive for investors, builders, and users alike, but I also believe that we’re moving into a new phase that will involve less casinos and more usable products and services—both because regulators are increasingly cracking down on the casinos, and because the latent demand for better software is enormous. Content is a great place to start! We finally have all the tools we need to build this sort of application, and it can be just as usable as the existing centralized ones.

More on some possible designs soon, once we finish reviewing all of the problems!

Fixing the Web

https://rettig.substack.com/p/fixing-the-web

Reading good print media is a truly delightful, joyful experience. (Boy I hope I’m not the last generation to feel this way.) The web sort of felt this way in the early days. How do we get back to this? Photo by Water Journal on Unsplash

Subscribe now

I’ve written about a huge array of topics here (and in older blogs) over the past few years: technology, politics, culture, deep tech, media, family, travel, economics, and of course Spacemesh, just to name a few. It may seem like there’s no connection among these disparate topics but in the back of my mind I always felt like there was one that would reveal itself one day. To be clear I didn’t set out with the intent to tie it all together, but I’ve always had the sense that there was a common denominator. For the first time I’m beginning to see what that is.

I don’t think I can clearly articulate that common denominator quite yet—it’s not yet that clear in my mind—but if you forced me to I’d say it has to do with reimagining software, the Internet and the Web in a human-centric fashion as a newer and better medium for human connection and communication. (I realize that’s quite vague. I’ll work on improving it.) One of my goals for this newsletter over the coming year is to narrow the focus a bit and start to home in on this topic.

Let’s start with media and content. Over time I’ve become more and more obsessed with content—with creating it, consuming it, collecting and curating it. The entire bundle of these products and experiences feels extraordinarily broken today in some very profound and important ways. This, like so many things, has a lot to do with broken incentives.

You may wonder, if I care so much about media and content why am I building a blockchain? These ideas are connected: in brief, the blockchain is the necessary infrastructure to reimagine media and content. At the moment Spacemesh is a bit like Bitcoin: the main thing it can do is mint coins via mining and allow coins to be sent, and not a whole lot more. But I have grand visions for Spacemesh, several of which I laid out recently (and surely many others have visions at least as grand as mine). One of these visions, though I haven’t been able to fully articulate it, is for Spacemesh to power a new content-based information economy.

This is a big topic and a big problem space. Before trying to fix something it makes sense to lay out the problem. I’d like to use this space for a time to consider the most important ways in which content, and the web in general, is broken today and what might be done to address those problems using fresh technology and fresh ideas. These things are very broken and I can’t even cover all of the biggest problems here in one week, but this is a starting point and I intend to continue the list.

Here are three of the biggest and most important ways in which content and media, and the web more generally, are broken today.

Thing #1: Broken Links ⛓️‍💥

It sometimes feels like half the time I click a web link the link is broken or the connection hangs. Sometimes the page loads very, very slowly and sometimes the formatting loads incorrectly. This is by design: the web is of course decentralized and servers, sites, documents, and the underlying resources that power them (Javascript scripts, CSS stylesheets, databases, API backends, etc.) come and go. But this leads to a “swiss cheese” problem where pages and documents that still exist link to ones that don’t, and pages sometimes link to scripts and stylesheets that can no longer be loaded. By design, there’s no way to verify the integrity of a link without attempting to visit it—and two users that do this in two different places and/or at two different times may get completely different results.

Web sites, pages, and these other resources disappear for lots of reasons. Sometimes people just lose interest and stop maintaining them. Sometimes a bill isn’t paid. Sometimes companies and agencies disappear, sometimes they change policies or leadership, and sometimes people intentionally remove content that they no longer want to share. Sometimes people just get pissed off and mic drop.

I think the web would be more functional if it were immutable. Once a page, document, or other resource is published, you should never be able to remove it. In practice it sort of already works this way thanks to the Internet Archive Foundation’s Wayback Machine and other, similar tools, but the Wayback Machine can only archive a small percentage of all sites and content and it’s not able to archive all of those underlying resources. It certainly can’t archive every API backend and every row in every database!

In my opinion the web should be like a blockchain: an immutable, append-only ledger. You should be able to “revoke” a document, and most frontends should respect that revocation, but the original should still be visible in the history—like a git repository or a wiki. The web, like a blockchain, should be unopinionated and very consistent and available. Different frontends and services built on top of this underlying infrastructure should of course be free to filter, interpret, and display this underlying data as they like. This immutability would prevent broken links and provide accountability. (People who don’t want to share content publicly and permanently already have the option of publishing it somewhere other than the clearweb, on apps with ephemeral content like Signal or Tiktok. The web definitely is not the right medium for every sort of content.)

Of course, this would also require that someone store all of this content, which would be prohibitively expensive if done in a centralized fashion. And it would be subject to something of a tragedy of the commons: everyone would potentially benefit from such a resource but no one would want to pay for it. It would be very difficult to monetize without running into all of the other problems described here.

Enter blockchain and cryptocurrency. The best way to achieve this is with a decentralized protocol and good mechanism design. More on what this might look like in a bit.

Thing #2: Paywalls 🧱

When the web was new there was no such thing as a paywall and all of the content was free. There was a strong ethos of making as much information accessible as possible and no one was really thinking of business models, which isn’t surprising given the academic origins of the Internet. That state of affairs clearly wasn’t bound to last. Pre-internet publications such as newspapers and magazines began to colonize the early web, and in parallel web-native content such as blogs began to appear. Several content-related business models emerged, some from the pre-web era (subscriptions, advertising) and some native to the web (social media, freemium, sharing economy, online marketplaces, crowdfunding, decentralization a la Wikipedia and open source, etc.).

As is so often the case, pre-web business models didn’t translate terribly well into the web era. It may have made sense to subscribe individually to newspapers and magazines when there weren’t that many to choose from in the first place and when an individual subscription included an enormous amount of diverse, curated content. The NYTimes is the canonical example of this: it includes current events, local, national, and international news, investigative journalism, sports, entertainment, cooking, product reviews, travel, real estate, etc.. Today, however, in our modern, fragmented, digital world, we tend to consume content in a much more piecemeal fashion. While the earliest websites did attempt to do this (remember the days of AOL, Compuserve, and “portals”?), today it’s impossible to imagine a single website or property giving you all of these things. It’s an outdated model of content creation, aggregation, and distribution! The very idea seems untrustworthy: how can one company or one platform do so many different things, and do them all well?

In fact the period of mass aggregation that took place in the middle of the twentieth century was a historical aberration, and moving to a more fragmented model is really a return to the way things always were (Balaji Srinivasan refers to this phenomenon as “history running in reverse”). So there’s nothing wrong with this on the face of it, but in practice there is a problem: each individual content provider wants to charge you separately for their content! The aggregate model has one huge advantage: you pay a single monthly or annual subscription and get an enormous amount of diversity—it’s an all you can eat buffet, a one stop shop. Both the NYTimes and cable TV provided such a model, where they curate and bundle the content for you. You don’t get to pick and choose precisely what you want access to since these packages always come as a pre-selected bundle, but it severely reduces cognitive overhead.

Let me be clear: I don’t mind paying for high quality content. The problem is that I don’t want to manage dozens or even hundreds of subscriptions. Every digital newspaper, magazine, Substack creator, Onlyfans creator, Patreon creator, podcaster, YouTuber, and X content creator wants me to subscribe. This is on top of “the apps”: Apple TV, Netflix, Paramount Plus, Disney Plus, Max, YouTube Pro, Spotify, Apple Music, etc.. The list of content subscriptions we’re expected to manage has gotten out of hand. Subscriptions are dangerous because you pay for them even if you’re not using them, and it’s too easy to forget you’re paying! I really do wish I had the time to comb through every one of my credit card and bank statements each month. I don’t. No one has time for this much complexity or for managing this many accounts. It’s gotten to the point where I’ve just given up trying to subscribe to anything else, or to consume any paid content whatsoever. Goodness knows there’s enough free content out there to last several lifetimes.

Which brings us back to paywalls. No matter how much I want to read an article there’s basically zero chance I’m going to subscribe to get past a paywall. I either find the same content for free somewhere else or else I give up entirely. Huge, important web properties like WSJ, Financial Times, and Forbes simply don’t exist to me. It’s not that I can’t afford the money to access these; it’s that I can’t afford the time or mental energy to manage the subscriptions.

There must be a better way. I think blockchain and cryptocurrency gives us a better way. Lots of folks have talked about micropayments for years. I wouldn’t mind at all paying $0.10-$1.00 to read an individual article, especially if the transaction is seamless and basically invisible, i.e., it’s something I don’t have to think about much. And I’d like it even better if I could access a bundle of content curated by someone I trust. Unfortunately, I don’t trust any of those apps I mentioned above, and I certainly don’t trust the NYTimes.

This would unlock an enormous amount of latent demand for content creators and curators. There must be millions of people like me out there happy to pay for quality content and curation, if only there could be a better, easier way to do so. What’s missing is both a platform to deliver all of this, and a much better crypto wallet and payment UX.

Thing #3: Ads 👁️

While we’re on the topic of business models let’s talk about the most popular business model of them all: advertising. As discussed above advertising is a pre-web technology that hasn’t translated terribly well into the web era. It’s still enormously popular on apps and platforms that serve digital content but I think the main reason is risk aversion (it works, even if not terribly well), laziness and a lack of creativity to try other, more novel, more promising business models.

Advertising worked well enough when it meant static ads in the pages of newsletters and magazines. In fact, ads in places like magazines can work quite well when they’re well designed, nonintrusive, and relevant to the reader. There’s no fundamental reason ads couldn’t work this way on the web! Obviously digital ads can be as well designed as, or better than, their analog predecessors since digital designers have more degrees of freedom at their disposal (more mediums, crisper, cleaner displays, multimedia including images, video, audio, and text, better tools, better access to archives and samples, and simply more dynamism). And it should be clear that digital ads can be more relevant—since as we all know online platforms have orders of magnitude more data about us than old-school newspapers or magazines.

Intrusiveness is sadly another story. Static ads on print media are almost by definition nonintrusive. Most print ads are relatively small and, well, boring. Even full-page ads are great since they don’t compete for space with any “real” content. The web is another story, of course. There’s been an arms race in digital ads for many years along at least two dimensions. The first is loudness. The first web ads were simple static banners or sidebars, usually with plain text or at most grainy images. The day the animated GIF was invented everything got worse, and it’s all been downhill since. Ads have gotten bigger, brighter, and louder—in short, more and more intrusive—over the years since. As users have become inured to ads, advertisers have made them more and more obnoxious in order to grab attention.

A typical modern mobile web experience. These ads aren’t exactly nonintrusive.

The second dimension is the browser arms race. Popup ads became a huge thing over a decade ago. Browsers and ad blocking browser plugins responded by blocking popups. Then pop-under ads started appearing. Every time browsers and extensions got smart enough to block a type or class of ad, a new, even more clever, obnoxious, intrusive one would emerge. It’s an arms race that can never end because browsers and extensions can’t go too far in blocking ads or they’ll block useful content as well—an impossible balance that advertisers continue to exploit. In my experience even the best, most effective ad blockers, such as the one built into the Brave browser, still only manage to block around 90% of ads. There are always a few that find a way through. And ad blockers are often paid by advertisers to let some ads through.

I don’t know enough about the history of advertising to know why this never happened in offline content like newspapers and magazines. Maybe it’s because print media never had to compete as fiercely for eyeballs and attention as digital media. Maybe it was just as chaotic in the early days of those mediums. In any case by the time I was reading them advertisers, publishers, and consumers had long since reached an equilibrium (or a stalemate) because print advertising was never as annoying as web advertising. By contrast, I find the web more or less totally unusable today without extremely powerful, up to date ad blocking software. Every time I have to turn off the “Brave shields” due to some incompatibility (another way web publishers and advertisers get you) I feel completely smothered in ads. The horrendous experience of the web today really makes me miss print media!

As I said above: surely there’s a better way. Surely it’s possible to reach some detente, to have ads that are respectful, well designed, nonintrusive, and relevant—and are therefore far more effective than the garbage ads we have today. It’s in everyone’s interest. As with paywalls, I have nothing fundamentally against ads if they’re done right. As with the above things I think what’s missing is a better system of incentives, and maybe some better technologies too.

Gratitude

https://rettig.substack.com/p/gratitude

When I visualize gratitude, I visualize donuts. They’re one of a very small number of things that unambiguously make me happy and grateful. Photo by Pushpak Dsilva on Unsplash

Subscribe now

I have a very long list of topics I want to write about and I almost always dive right into one of them when I start a new issue on Monday. I typically have no trouble choosing a topic, coming up with three things (often I start with more and pare it down), and drafting the first one. But it took a lot longer this time. I sat and reflected for quite a while before I began writing, which is quite rare. One hundred is a pretty big number and I want to honor the milestone, however arbitrary (base ten ftw). It’s also been two years since I began writing here.

I thought about writing the obvious: a meta topic exploring the history of Three Things, how it’s going, what’s going well, and what I’d like to change. Then I realized I wrote exactly that a year ago and that I don’t have anything too different to say on the topic this year (short version: I’m still considering mixing things up going forward but I haven’t made up my mind yet and in the short term I think I’ll keep doing what’s working). I thought about writing about new year’s resolutions and things I plan to do differently in the new year, whether related to writing or not, but that feels preliminary: I need to start by reviewing the past year.

The best way to do that, and the theme I kept coming back to, is gratitude. Here are three things I’m grateful for.

Thing #1: Consistency 🗓️

I read a few years ago about the Jerry Seinfeld method of practice. It couldn’t be simpler: it involves setting a daily goal, putting an “X” on the calendar each day that you achieve your goal, and trying to line up as many contiguous X’s as you can. It’s idiotically simple, focused as it is on continuous and consistent inputs rather than on results, but if you’re anything like me—if you’re a perfectionist and have OCD like I do—it can be extraordinarily effective.

I’ve been using the method in order to achieve some pretty big challenges each year for the past few years. These have included no alcohol for a year (2020), no added sugar for a year (2021), writing every day for a year (2022), and exercising every day for a year (2023). While total abstention from alcohol was hard, and abstaining from sugar was even harder, I found the positive goals the past two years to be much more productive and constructive than the negative goals. I enjoyed writing every day last year so much that I decided to continue it this year.

Writing every day is hard. It’s hard on a typical day when I get no chance to write until after dinner, at which point I’m usually already exhausted and ready for bed. It’s impossibly hard when I’m on the road: I’m often jetlagged and short on sleep, and sometimes I come back late from a dinner or an event feeling tipsy and ready to collapse into bed, barely able to keep my eyes open. Even in these situations I still force myself to write. The things I write in this situation are usually garbage (you can usually tell which issues were written while on the road) but I can generally manage to shape it into something presentable by the end of the week.

But writing every day is also a really incredible thing to do, and I don’t mind at all if it means writing the occasional word salad. After writing every day for two years (and most days for the two years prior to that), and after publishing around 150 articles, I’ve found that I have an unexpected superpower. If you give me a topic and a quiet hour to myself I can almost always bang out a decent piece about that topic. Sometimes it comes even faster than that—sometimes I can bang out a draft in a mere 10-20 minutes, especially if it’s a topic that I’m particularly interested in. I didn’t understand what a superpower this is until comparing notes with friends who told me that doing the same thing takes them hours and that they often feel totally unable to write. It actually kind of amazes me how easy writing has become, and on the rare occasion when it’s really hard I’m always surprised and caught off guard.

They say that you should ignore the first 100 things a person creates. For an artist this means their first 100 pieces are going to be pretty bad. For a podcaster it means the first 100 episodes probably aren’t worth listening to. And for a writer it means the first 100 articles probably aren’t worth reading. With a tiny number of exceptions, I think the first 100 issues of Three Things mostly aren’t worth reading, but I also think this consistency in writing has gotten me to a place where I can write more readable things and I expect and plan to do more of this in the future. I’m consistently shocked by the number of people I meet face to face around the world who tell me they read this newsletter and enjoy it. (For the record it’s not so much that I think my writing is bad, per se, it’s more that it doesn’t have a single theme, or rather, it has too many themes to hold the interest of most people!) I’m really grateful that I’ve been able to commit to writing and that my writing has improved to this point—with the recognition that I still have a lot to improve as a writer!

The other thing I’ve done as consistently is running. Like writing, running used to be something I struggled with. As recently as a year or two ago, even after running for over a decade, I still felt anxious before runs and in many cases dreaded lacing up and heading out the door, especially if it was cold outside or I was tired or sore or had any of the 1,000 other excuses that would cause me to miss a run.

This is the beauty of consistency: there are no excuses. It’s that simple. I pre-committed to running every single day for one calendar year. I made the decision already so there’s no consider or hesitate before lacing up and heading out. The only occasions when I didn’t run this past year were the ones where it felt absolutely impossible: when I was seriously ill, and when I was stuck in the mud at Burning Man. That was about a week in total: I ran the other 358 days.

The proof is in the pudding. Thank you Strava.

And guess what happened? Running has also become second nature. I thought of myself as a runner long before this year and before I took on this new challenge, but running every day regardless of conditions, location, or mood has made me feel like much more of a runner than I ever was before! Even when I’m on the road, when I’m jet lagged or tired or sore or hungover or feeling a little under the weather like I am this week, once I get moving I’m totally fine and I always feel better after a run. As with writing it consistently amazes me how crappy I can be feeling just before I start, and how that feeling vanishes when I start moving and doesn’t come back after. And that’s all down to consistency.

I’m grateful for having the sort of will power to commit to and stick with these challenges even when they feel very difficult, and I’m grateful that my life is structured in such a way as to make this possible, even with what feel like big challenges including an intense job, a ton of travel and having a toddler at home. I’m grateful to the people in my life, especially my wife, for putting up with these daily practices.

Like running my first 10k or my first marathon, running every day for a year has shown me that I’m capable of things I didn’t think possible. I strongly encourage you to do one thing at the start of every day that challenges and inspires you. Do the hard thing first, and the rest of each day will feel easy.

I look forward to extending this consistency and productivity to other healthy areas of my life including work and meditation in coming years. I know I’m also capable of being significantly more productive in work. That’s a bigger challenge and in some ways much more important but I feel up for it next year.

Thing #2: Family 👨‍👩‍👦

I’ve written about family a lot lately, most recently just last week. I don’t tend to write about the same topic too often (other than Spacemesh) but I’ll make an exception this time because family is both an incredibly important topic and also one that tends to be underappreciated. I have a lot to say about it and I hope to continue to explore it here.

I know it’s stereotypical to say that you’re grateful for your family, but most people who say that don’t actually go further and say why they’re grateful for family or what exactly they’re grateful for. In my case I’m grateful to a few different family members for different reasons: to my parents for what they gave me, to my wife for what she taught me about the world, and to my son for what he taught me about myself.

My parents are both gone but I’m grateful to them both for very different reasons. I’m grateful to my mother for constantly challenging me: both intentionally, by having very high expectations and high standards, and unintentionally, by being a crap mother, which forced me to grow up and become independent quite early. It was difficult at the time but I see today all of the positive ways it’s made me who I am. My mother showed me the power and importance of gregariousness and social graces. My father taught me conscientiousness, frugality, focus, and intellectually curiosity. I feel incredibly grateful for the gifts my parents gave me: their positive qualities and characteristics and, yes, some of their flaws too.

Family is unique in the sense that you can’t choose part of it, the family you’re born into, but you do get to choose the family you marry into and the family you create. I’m deeply fortunate and deeply grateful for the latter as well as the former.

I’m grateful to my wife for her patience and perseverance and for putting up with me during all of the years when I wasn’t yet mature enough to commit (to marriage, to living together and buying a home, to having children). I’m grateful for the different perspectives that she and her family have shown me: how to see the world through design rather than through code and engineering, the experience of growing up on the opposite side of the country, and what it’s like being a first generation immigrant from a very different culture. I’m especially grateful for her challenging me and keeping me honest.

Most of all I’m grateful for my son. I’m grateful that we decided to have a child and were able. I’m grateful for the joy and novelty that he brings into our life every day. Having a child is truly like experiencing the entire world all over again from zero with no previous understanding, no preconceptions, and no expectations. As I wrote a few months ago it’s an extraordinarily refreshing, healthy experience. He’s so amazed and intrigued by such simple things: animals, cars, dinosaurs, toys and machines. Seeing his curiosity and fascination helps me channel the same sense of wonder and awe at the world we live in. It’s so easy to become jaded and take for granted all of these wonders. Seeing the way simple things bring him endless delight helps me channel a sense of delight, too.

Becoming a parent has made me a better person in a thousand ways. I’m much more focused and my work has a much greater sense of purpose and urgency than before. I’m definitely more productive now than I was before becoming a parent. I work harder so I can spend more quality time with my son after work. I’m grateful for every moment of this experience, and also for the way that becoming parents together has highlighted and exacerbated differences in my wife’s and my parenting styles and personality. It’s a healthy, productive form of conflict that’s also opened my eyes and made me consider a different perspective.

I became a parent last year, but it was too new and my son was too small to interact very much. This year was my first full year of parenthood and it’s the first year that I really got to know my son and watch his personality develop. I’ve grown as a person alongside him, and I’ve fallen even more deeply in love with him as I’ve gotten to know him as a person this year. I wouldn’t trade that for anything in the world, and I’m deeply grateful for the experience, opportunity, and privilege of being a parent to an amazing little son.

If you’ve ever considered becoming a parent I strongly urge you to consider doing it now. We’re not getting any younger and the biological reality of having kids doesn’t get any easier as we age. If you don’t feel ready, consider that you probably never will, at least until the moment you meet your child for the first time. Then you’ll feel absolutely ready because it’s a latent ability we all have. If you’re uncertain or feel on the fence, reach out (my DMs are open). I’m happy to listen—and to tell you about all of the wonderful reasons you, too, should become a parent, sooner rather than later! I hope you get to experience the same sense of awe, fortuity, joy, and gratitude.

Thing #3: Work 👔

Paul Graham famously wrote that very few people are able to find work that they love:

“How many even discover something they love to work on? A few hundred thousand, perhaps, out of billions.” – Paul Graham, How to Do What You Love

Maybe this sounds about right to most people, but I found the idea surprising. It took me until well into my thirties before I found work that checks all of the important boxes: lets me build, challenging but not too challenging, meaningful and socially constructive, pays the bills, allows for constant learning and exploration, gives me some freedom, and is something that I’m both good at and enjoy doing. And I consider myself extremely fortunate for having found it! On some level I think I was aware that most people, in fact the vast majority of people, don’t particularly enjoy their work and don’t find it particularly meaningful. For most people work is a means to an end. It puts food on the table and lets them support their families. It isn’t necessarily a career, which has a long-term trajectory and long-term goals, and it isn’t necessarily a calling, which is something else entirely. I feel extremely fortunate to have a calling. (Just don’t ask me to describe what I do. It isn’t easy to describe and doesn’t fit neatly into any existing boxes that I’m aware of.)

In my case it was a weird set of circumstances that led me to this career path and to the work that I do today. Partly I have my parents to thank, especially my father who, as I mentioned above, taught me the importance of focus and hard work. Partly it was studying hard, getting good grades, going to good schools, and building my career and skill set over decades. Partly it was dumb luck: I picked a field (computer science) which wasn’t especially popular at the time (over 20 years ago) out of curiosity and interest, but which turned out to be extremely lucrative and has more or less guaranteed me gainful employment. And all of that combined is just the first part of my career. It was also the decision to step off the career track and found my first startup ten years ago, and then changing gears and joining a totally different industry seven years ago. I’m grateful for every step in this long process. Looking back, none of these decisions was an obvious one at the time.

Family, friends, community, fitness, spirituality, reading and writing all bring a great deal of meaning and purpose into my life, but my work—in combination with my family and in particular with the calling to build a better world for my son and his generation—gives me by far the deepest sense of meaning, purpose, and calling of all of these. I can genuinely say that I’m excited to get out of bed every day and start work.

But as I always say, everything is a tradeoff and there’s a downside to being as invested in work as I am. I struggle to separate work from the rest of my life and I sort of always want to be working. If I allow it to, work has a tendency to take over every corner of my life. That was kind of okay when I was twenty-something, lived alone, and had very few commitments or obligations outside of work. It’s not so okay at age 40 with a spouse, a child, and tons of personal and professional obligations. My wife in particular hates that I can’t turn work off on the weekend or during a so-called holiday. But it’s the price I pay for passion and in my opinion it’s a price worth paying.

I think it’s possible to be even more invested in what I do. There are several successive potential stages to work, as I outlined above—a job, a career, a calling. But there’s another related but somewhat orthogonal dimension, the pinnacle of which is a craft. A craft is something we do out of sheer joy. Engaging in it puts us into a flow state. It’s the kind of thing we do during nights and weekends outside of work time. It’s something we do even if we don’t have to, even if it would be better not to, even if it distracts us from our “real” job or doesn’t pay the bills—even if costs us a lot!

For a long time I’ve had a dream of taking up a real craft: writing fantastically useful open source software, creating something like the next Linux, out of sheer love and curiosity, not for any financial or status reason. I don’t think I’m quite there yet for a number of reasons—mainly that I need to get much more efficient and focused at my work and other tasks—but it gives me something to work towards. I’m grateful to have a calling. And I’m grateful to have something else ambitious to aspire to.

I encourage you to consider the trajectory of your work over the span of your working life. Which stage are you at: job, career, or calling? What could you change to get to the next level? Is that what you want for yourself? If you had all the time and money in the world, what would you spend your time doing? How can you restructure your life and career to achieve that goal today, or in the near future?

As with things one and two above, I encourage you to seriously consider making hard choices sooner rather than later. In work it’s definitely the case that you sometimes have to take one painful, scary step backwards in order to take two big steps forwards.


Thank you for reading. I wish you and your loved ones all the best in the new year: health, happiness, and prosperity. As the Chinese say, may ten thousand things proceed according to your wishes. Most of all, here’s to a year full of friendship and building amazing things together. I love you all.

The Things That Really Matter

https://rettig.substack.com/p/the-things-that-really-matter

Call me old fashioned but I don’t think these things can be built online, at least not yet. We’re just not that evolved yet. Photo by Annie Spratt on Unsplash

Subscribe now

A few years ago I got into the habit of reading biographies of successful entrepreneurs and I noticed a theme: the people who are the most successful in the traditional, social sense (wealthy, influential) are almost always the worst people, and I think most of them were not happy people in spite of their material success. They’re the worst in the sense of the things they had to sacrifice in order to achieve the things they did: family, friendships, community, and connection more generally. There are a precious few notable exceptions such as Chuck Feeney who gave away essentially all of his wealth and Ed Thorp who from the very beginning decided to prioritize family, but they’re the exception that proves the rule (and most people probably haven’t heard of either of these men).

I was thinking about this pattern when a few days ago a good friend posted a moving series of posts about the tragic experience of losing his life partner recently. He wrote about the daunting burden of raising a toddler as a widower, and about the things that his partner understood towards the end and that he in turn learned from her. One is that the only things that really matter in the end are family, community, and connection. This message resonated very strongly with me, and it stood out as the antidote to the mistakes that so many successful people make (and that I’ve seen so many of them make).

It goes without saying that money doesn’t buy happiness (or family, or community, or connection). In fact, in my experience, while having enough money to pay the bills, put food on the table, and buy a degree of freedom is quite helpful, more than this can be actively destructive to these important lifelong projects. It’s worth considering why.

This week as the holidays are upon us and as we take some time to reflect on the past year and set our goals and intentions for the new year, I want to share some thoughts on these projects, on why they’re so important, and on how best to achieve them.

Thing #1: Family 👨‍👩‍👧‍👦

“Sometimes people who affect the course of humanity have better relationships with humanity than they do with the humans sitting around them.” – Walter Isaacson

I’ve said this a few times recently but becoming a parent last year changed me in ways I didn’t expect. One difference is that I now have a deep, abiding respect for the power and importance of family—not only for my own family but for family in general.

Growing up I had a small family (three grandparents gone before I had any memory of them, no aunts, uncles, or cousins) and it never bothered me. In fact when I saw what my friends with big families had to deal with—remembering everyone’s birthdays, big family gatherings, buying presents for everyone and everyone’s drama—I felt grateful that I had a small family. Nor did it bother me that my family was scattered: my father, mother, sister, brother, and I almost always lived in four or even five different states, and at times we were even scattered across several continents. I had my life to live, they had theirs, and that was all there was to it. We saw each other from time to time, we kept in touch occasionally, and that’s about where the obligation ended as far as I could tell. Private, personal matters like work and my own relationships and freedom mattered more: these were paramount.

Starting my own family made me flip my perspective 180 degrees. I now feel that family is the most important force in the universe. What’s the point of my career if not to support my family and to build a better future for my son? And when I have freedom—free time, money, energy or attention—I almost always want to spend it with my family.

What’s more, I can’t understand now how I ever felt otherwise and I can’t understand modern, liberal, American and global culture. It now seems insane to me the way families scatter the way mine did, and it seems insane that we expect one or two parent households to raise children in a “nuclear family” unit in a city far away from home with little to no family support. I regret spending so much time so far away from my parents. As a parent, today, it pains me to empathize with how that must have made them feel. It’s not how human society was ever structured and it’s not how it should be structured today.

I have my differences with my family members and things aren’t always sunshine and roses with them but I recognize and appreciate that I need them and they need me, and that they’re the only family I’ve got. With respect to raising children, I recognize (after 18 months of struggle) that the two of us aren’t equal to the task without family support. Sure, living in a big city far from family is exciting and fun and maybe good for our careers, but it’s not good for my son or for our family, and his needs are infinitely more important than mine.

Putting family first requires sacrifices and tradeoffs. It requires putting the needs of the family unit above one’s own selfish personal needs (which is a good exercise in its own right). It means considering others when making decisions, which should be trivial and a no brainer except that it’s not how the society that I grew up in works. It means accepting that you’ll be uncomfortable and you’ll have to swallow your pride from time to time in the name of the greater good, longer-term success, and comfort. And it requires bringing family together, not virtually but in person and for very long periods of time, which is one of the hardest things to do in this modern world that’s constantly trying to pull us apart from our loved ones and replace in person connection with the poor, mediated substitute of social media. Family cannot be functional or healthy at a distance.

Yes, my career is still very important to me and I derive a sense of pride and meaning from it, but it’s primarily important as a means of supporting my family and building a better world for my son. Everything else is secondary. And to be clear I don’t think that a successful career and a successful family life are mutually exclusive. If some of the world’s most successful people had learned this lesson I suspect they would’ve had better relationships with their families and they would’ve been a lot happier.

Thing #2: Community 🧑‍🤝‍🧑

“If you want to go fast, go alone. If you want to go far, go together.” – Proverb

Community is a critical concept that today isn’t well understood and isn’t appreciated. As I wrote recently, the term is misused and abused. But second only to family, nothing is more important. One definition of community is all of the people beyond family that we care about and that care about us.

This misunderstanding and abuse of the concept is due to the fact that, like traditional family structures, traditional community structures have also broken down in much of the developed world, especially in cosmopolitan cities. What does “community” mean when you’re surrounded by literally millions of people that you don’t know, have no reason to trust, and have no particular affinity for? This isn’t how humans lived for 99.99% of history. It’s not natural and it’s not healthy.

Since many of us no longer live surrounded by an actual community of people we know, care about, and trust, we instead interpret the term in a more abstract, broader sense. If you live in a big city your “community” may not be your actual neighbors or city-mates but instead your colleagues, your friends, or people you meet at school, activities, houses of worship, etc. There’s nothing wrong with this—we are all social creatures and we need a support network of people we share affinity and resources with, and can rely on in times of need—but I don’t think that such a scattered, ill-defined group takes the place of one that actually lives in close proximity and interacts on a daily basis. A real community pools its resources, takes care of the afflicted and the plain unlucky, and effectively governs itself. By contrast loose networks of friends and colleagues tend not to do these things, at least not to the same extent.

The term is even shakier when used to describe something like an online community, i.e., a group that, while they may share resources or common interests, never or only rarely meets face to face. You can call me old fashioned for saying so but I think the root of community is trust, and a group of people can’t develop true, deep trust without repeated face to face interactions. Yes, it’s absolutely possible to develop a degree of trust with people you know only virtually, but it’s not the same.

To be fair there is a spectrum of community. At one extreme are the loners who want little to no interaction and who don’t want to rely on the neighbors at all, so to speak. This is unappealing to me and it sounds quite lonely but such people exist and, hey, you do you. At the opposite extreme is the commune where all resources and responsibilities are pooled, such as the old-fashioned kibbutz where one doesn’t even raise one’s own children. Online communities and in-person communities fall somewhere in between. And there’s a sweet spot somewhere in between these extremes.

But the goalposts are also moving. The definition of community, and our understanding of the concept, need to evolve as technology and society evolve. The reality is that I don’t feel any particular affinity for most of the people I happen to be close to geographically; and the people I trust the most and for whom I feel the most affinity happen to be spread out all around the world. It’s nice to be welcomed by a close friend or colleague almost everywhere, but it’s also not very nice to not have friends or community members nearby that I can easily call on in times of need. I actually really wish I could find a geographical community of like-minded people with whom I share values but this is very hard for a variety of reasons including work and family. While I don’t think an “intentional community” like Próspera or Praxis is for me and my family, at least not at this early stage of the lifecycle, I do understand the appeal. My favorite modern interpretation of community is the one proposed in the Network State: a group of people who share resources and values, who may not all be in one geography but who nevertheless crowdfund non-contiguous territory and colocate.

We need to continue to build online, remote communities. But we also need to appreciate that frequent face to face interaction is critical for building trust, which underpins any community. Maybe someday technology will become good enough to allow this degree of trust to be built remotely, but I highly doubt I’ll see it in my lifetime. In the meantime we need to be creative and intentional about how we conceive of and build modern communities.

And I wonder if the most successful people understood or appreciated the value of community. I have a gut feeling that many of them conflated things like colleagues or counterparties with community. These are not the same thing; while colleagues and even counterparties can become close friends, the relationships tend to be more transactional, something that community definitionally is not. I wonder if they wouldn’t have been happier if they had invested more in building and contributing to old-fashioned communities.

Thing #3: Connection 🔗

“In the city of Manila there are many young prostitutes; some are only fourteen or fifteen years old. They are very unhappy. They did not want to be prostitutes, but … After only a few weeks in the city, a vulnerable girl can be persuaded by a clever person to work for him and earn perhaps one hundred times more money than she could as a street vendor…  if she could look deeply at herself and at the whole situation, she would see that she is the way she is because other people are the way they are. How can a “good girl,” belonging to a good family, be proud? Because the “good family’s” way of life is the way it is, the prostitute has to live as a prostitute. No one among us has clean hands. No one of us can claim that it is not our responsibility. The girl in Manila is that way because of the way we are. Looking into the life of that young prostitute, we see the lives of all the “non-prostitutes.” And looking at the non-prostitutes and the way we live our lives, we see the prostitute. Each thing helps to create the other…

The truth is that everything contains everything else. We cannot just be, we can only inter-be. We are responsible for everything that happens around us.” – Thích Nhất Hạnh, Flowers and Garbage, from Peace Is Every Step: The Path of Mindfulness in Everyday Life

Of this week’s three things connection is definitely the most vague. We obviously have a connection to our family members and to our community. What other kinds of people and what other things are we connected to? And why is connection so important for success?

Meaningful connection isn’t and shouldn’t be limited to family and immediate community. Some of the most powerful connections I’ve formed with people have been made on the road, far from home, and sometimes in spite of great cultural and linguistic barriers. It’s possible to foster connection with almost anyone, and it’s absolutely essential that we practice doing so at every opportunity.

A lot of modern society is structured around transactional, “single serving” forms of interaction. Think about how you interact with your banker or insurance broker, your cashier at the grocery store, the postal clerk, your hairdresser or barber, the server at a restaurant, your barista, a customer service agent, etc. Most people put little to no thought or effort into these sorts of interactions. It’s all too easy to forget that the person on the other end of the line, the person standing in front of you, your counterparty, is a fully fledged human being just like you are, with their own set of hopes and fears. This is a good starting point for fostering connection.

I’m a curious person—I’m curious about absolutely everyone—and I always try to empathize and recognize the humanity of the people across the table from me. Sometimes this just means smiling. Sometimes it means asking them how they’re doing, not in passing in the obligatory social fashion, but really, patiently asking the question and showing that you care about the answer. Sometimes it means giving a generous tip, or just taking a moment to chit chat.

Take my word for it, this makes all the difference in the world. Most people in these sorts of roles tend to become a bit numb as they get very little love, respect, empathy, and compassion from others in the course of business. If you go out of your way and demonstrate these things it endears you to people and you can get almost anything you want! I’d say that rule number one of business and negotiation is to find and respect the humanity in your counterparty. As important as this is for one-off interactions, it’s even more important for the people you see and interact with regularly: your colleagues and neighbors, your morning barista, the people you pass every day on your morning jog.

It’s much harder to demonstrate these traits over virtual connections and over a great distance—again, maybe, hopefully someday that will change—but it is possible. There’s a lot less bandwidth, but a smile or a genuine “How are you?” will still go a long way and will have the same effect remotely as it does in person. I personally find it quite easy to find some form of shared connection with just about anyone, even if it’s something fairly generic like sports, the weather, or complaining about your mother in law. Everyone has a story to tell and if you give them the opportunity most people are very happy to share theirs and grateful to have someone who will listen. And you might even learn something.

If there’s an underlying reason why it’s possible to form a connection with anyone, it’s simply the fact that we’re all already connected in a cosmic sense. Without going too deeply into metaphysics, this is one of the central tenets of Buddhism (as expressed in the beautiful metaphor of Indra’s Net) and I find the idea very compelling. We share a common substrate with every other person, every other being, every blade of grass and every drop of rain. We all breathe the same air, we’re composed of the same elements, and we’re all connected in intricate, infinitely complex chains of cause and effect (what Buddhists call dependent origination). In other words, the entire universe is really a single, gigantic butterfly effect and it’s not possible to cleanly isolate anything from anything else. Everything is connected, truly.

Reflecting daily on this connection is extremely calming and supremely grounding. You are connected to everything and everyone else around you, even the things and the people that you hate. Buddhists go so far as to say that, due to eons of reincarnations, we’ve also been in every possible arrangement of relationship with every other being in existence.

Of course, a simpler and more mundane definition of connection is what we mean when we talk about connection and sharing in terms of modern technology: we’re connected to other people that we can communicate and share information with quickly and conveniently. In this respect the world is far more connected than it’s ever been in human history, and I think this is a force for good. This is one of the biggest reasons I work on blockchain technology: we need a common substrate where we can exchange both information and value that’s not mediated by a big, unaccountable company.

Connection is in many ways the lifeblood of community and society. We may never totally end conflict and war but more connection, of all the types described above, is a step in the right direction.

As for why connection is important to success, there are many reasons, among them the fact captured so eloquently in the second quote above: what we can achieve alone is limited; what we can achieve together is more or less unlimited. We need the love and support of those around us when times get tough, which they inevitably do. For those of us who are building things like products and services, we need a meaningful connection with our customers and users in order to serve their needs. There’s also the fact that living inside our own head for too long is unhealthy and dangerous. It’s essential to have people around us that we love and trust because they keep us honest, including with ourselves. Success absolutely depends upon the ability to be honest about the world and honest with oneself.

Alignment

https://rettig.substack.com/p/alignment

Four baskets: Bitcoin, Ethereum, Solana, and Spacemesh. You can guess which is which. Seen this way they all appear quite aligned, don’t they? Photo by Ella Ivanescu on Unsplash

Subscribe now

An “alignment” meme has arisen lately in the Ethereum, Cosmos, and Solana communities. You’ll often see folks debating on Twitter whether a particular person or project is, e.g., “Ethereum aligned” or “Solana aligned.” I actually really like this meme because it gives a new, straightforward name to a very old phenomenon. Blockchains and their communities have always been about alignment—each is aligned around a different set of goals, principles, and priorities—and as a result the space is quite tribal. This is in no way unique to blockchain nor even to technology: there have been Microsoft, Apple, and Linux tribes almost as long as there have been desktop computers, and humans are fundamentally tribal creatures.

Alignment is something I think about a lot as I contemplate the path forward for Spacemesh. I have a pretty clear idea what attracted me to the project, what’s kept me here for so many years, and what I like about the community. I have a somewhat less clear idea what my colleagues value and even less of an idea what the community values, but I do have a sense that we’re aligned. What does it mean to be Spacemesh aligned? How do we encapsulate, articulate, and defend the things that Spacemesh stands for? These are some of the questions that keep me up at night—because while the technology of blockchain is important, the social side is even more important and it’s the thing that really differentiates each blockchain platform and community from the others.

Alignment matters because when you build something successful a thousand people try to pull you in a thousand different directions. Spacemesh hasn’t succeeded yet—we’re off to a good start for a very young project—but the tug of war has already begun (my Twitter and Telegram inboxes are evidence of this). If you aren’t clear about what you stand for you’ll chase shiny things, you’ll try to make everyone happy, and you’ll end up standing for exactly nothing—and ultimately making no one happy, least of all yourself. This is why it’s so important to think about, and to articulate, alignment.

Here’s how I’m thinking about alignment.

Thing #1: The Shoulders of Giants 🗿

Spacemesh truly stands on the shoulders of giants in so many ways. None of what we’ve designed or built would’ve been possible without the myriad pioneers that came before us, from the early computer scientists, Internet pioneers, and the open source wizards, to the cypherpunks and those who fought the first crypto wars, to Linux, to Bitcoin and Ethereum (to state just the most obvious ones). We stand on their shoulders technologically as well as socially. And in so many ways, their values are our values.

Bitcoin is the clearest and most obvious of these. To be Bitcoin aligned is to be a cypherpunk, since Bitcoin grew out of the cypherpunk movement: this means being skeptical of government and of authority more generally, valuing self-reliance and self-discipline, and believing in the power of technology specifically and of cryptography in particular to protect individual rights and privacy. Bitcoin alignment means sound monetary policy, and more importantly, monetary policy and governance in general that’s credibly neutral: it means minimizing the governance surface and minimizing the degree to which information asymmetries can arise and the degree to which influential actors can capture or disproportionately benefit from governance. I’d say that Bitcoin alignment also means a slow, steady, mature, responsible approach to development: the opposite of a move fast and break things methodology. Most of all Bitcoin stands for better money, money that’s outside the control of any nation state, any actor, or particular set of actors.

Ethereum is a bit more nebulous and a bit more nuanced. For better or for worse Ethereum’s values have been defined more in opposition to Bitcoin than they’ve ever been clearly articulated in their own right. This is probably because Ethereum arose out of the Bitcoin community and as a reaction to a perception of ossification on the part of Bitcoin. Whereas Bitcoin stands for simplicity and reliability—simple protocol, simple programs, simple governance—Ethereum is “crypto for developers” and has always leaned into innovation and been much more comfortable with complexity than Bitcoin. One need spend only five minutes browsing the list of EIPs or proposals on the various Ethereum forums to see what I mean. Ethereum folks love inventing new, complex-sounding words for old ideas and they’re constantly pushing the envelope on crazy research themes without much grounding in established fields like economics.

Recently of course the Ethereum community has also carved out a niche with several distinguishing characteristics including a democratized version of proof of stake with hundreds of thousands of participants (as opposed to the delegated proof of stake that basically every other protocol uses), a modular blockchain thesis (otherwise known as Ethereum’s rollup-centric roadmap) and an enormous, “big tent” ecosystem that includes dozens of adjacent projects and chains and hundreds of companies. In theory Ethereum alignment also includes ideas inherited from Bitcoin such as decentralization, permissionlessness, censorship resistance, and self-reliance (running your own node) but these have fallen in importance over time as the ecosystem has grown and it’s become inconvenient to maintain them (more on this in a moment).

For all these reasons it’s hard to characterize Ethereum alignment succinctly. Doing it justice takes about 20 pages, which I’d argue is a bug, not a feature. Ethereum has gotten too big and too complex for its own good; it’s no longer a single project, a single ecosystem, or a single community. It’s more like a broad-based, big tent, progressive cultural movement that’s never been entirely sure what it stands for.

Based on my experience with Ethereum the technology and Ethereum the community over the years, if I had to boil it down to the bare essentials I’d say that Ethereum alignment is about pushing the envelope on both social and technological progress towards building novel socio-economic systems while also paying homage (some might say lip service) to the cypherpunks and what they stood for.

Finally, I’d be remiss if I didn’t mention Solana, especially since I learned about the concept of alignment in the Solana community. Anatoly put it very well in his keynote address at Breakpoint this year: “if it reduces latency and increases throughput, it’s Solana aligned.” Solana isn’t perfect but I give the community a lot of credit for clearly understanding and clearly articulating what they stand for, and for seriously working towards this goal. That’s more than 99% of blockchain and cryptocurrency projects (including Ethereum) have managed to do. And it’s led to a clever, straightforward, effective marketing campaign with a simple message: Only possible on Solana.

https://twitter.com/sachayve/status/1717913888836972564

With that background in place, what does it mean to be Spacemesh aligned?

Thing #2: Spacemesh Alignment 🫥

One way to look at Spacemesh is as a blockchain that makes mining from home easy and accessible. That’s certainly the most important distinguishing characteristic of the project in its current form. So playing off Anatoly’s definition of Solana alignment, you might say that if it makes mining from home easier or more economically sustainable then it’s Spacemesh aligned.

That’s not a bad start. And it’s a fair description of everything that we’ve built so far in Spacemesh and the reason we’ve built it. The protocol is complex and has a lot of moving parts but it’s all geared towards allowing miners to mine profitably and sustainably from home without needing to join a pool. Of course, sustainably mining from home is only a means to an end. The end is building a better economy: one that’s more open, more participatory, and that offers a more level playing field for everyday participants.

What do I mean by a better economy? When describing the economy I’d like to see I tend to avoid terms like “fair” and “just” because they’re ill-defined, subjective (according to what belief system?), and they’ve been misused a lot lately. A better, more specific word, borrowed from Ethereum, is credibly neutral. We want to build an economy where the rules are known, where everyone is playing by the same rules, and where these facts are independently verifiable (i.e., without needing to trust an authority). Along these lines you might go a step further and say that if it makes the economic system more accessible and credibly neutral then it’s Spacemesh aligned.

To be honest, beyond Spacemesh mining and the Spacemesh coin we’re still figuring out exactly what this means in practice. My vision is that we can use the Spacemesh infrastructure to build open global marketplaces for creating and exchanging value that make it easy for people everywhere to transact permissionlessly and create value for themselves, their families, and their communities. I’ve previously shared a few preliminary ideas of what this might look like in practice.

Of course Spacemesh stands for other things as well. I don’t know that we have consensus on our values, goals, and principles beyond the ones I just mentioned but in my opinion these include transparency and accountability, decentralization, permissionlessness, censorship resistance, personal responsibility and self sovereignty, integrity, innovation, trust in one another, and autonomy. Many of these values and principles should sound familiar because they’re inherited directly from Bitcoin and the cypherpunks. And some of our values come from Ethereum too: while we share the cypherpunks’ frustration with the existing system, respect for privacy, and mistrust of government and authority, like Ethereans we’re more optimistic about the future and about the power of blockchain, cryptocurrency, and smart contracts to solve coordination problems and act as building blocks of a better society. In other words, less dystopian cyberpunk and more utopian solarpunk.

Putting all of this together, you could say that if it aligns with the cypherpunks and with Bitcoin but puts a bit more emphasis on innovation, tech-forward optimism, and decentralized tech as a tool for personal financial empowerment, then it’s Spacemesh aligned. This seems like a rare and interesting intersection since the cypherpunks were more interested in freedom, encryption, and personal responsibility than they were in financial empowerment, and most projects today that focus on financial empowerment have little to no overlap with those cypherpunk values.

But it’s also a mouthful. I think the first or second definitions are better!

Thing #3: Defending Your Values 🛡️

Bitcoin maximalism is a real phenomenon: one need only spend a few minutes on Crypto Twitter (Crypto X? 🤔) or attend a Bitcoin conference to witness this. And Bitcoin maximalism has a bad reputation for a reason: it’s toxic, close-minded, and unwelcoming. It was one of the reasons that when I joined the industry I was almost immediately turned off by Bitcoin and joined the Ethereum community instead (which today has its own strain of toxic maximalism but felt much more welcoming a few years ago). A charitable way to describe the phenomenon is as a collective immune response to people, ideas, and projects that violate norms or otherwise don’t fit into a conservative definition of Bitcoin (i.e., those that aren’t Bitcoin aligned).

It took me quite a while to understand this but over time I’ve come to see that maximalists have a role to play. For me the turning point was seeing censorship of non-OFAC compliant transactions in Ethereum reach around 80% in the wake of the Merge last year (the number subsequently came down but recently has begun to increase again).

As I tried to describe above Ethereum doesn’t have a culture or a set of values that’s as straightforward, as clearly defined, or as strongly defended as Bitcoin’s. And it’s paying the price. Censorship resistance is undeniably one of Bitcoin’s core values. Bitcoin has had its own issues with censorship but it hasn’t come close to the situation in Ethereum and, because of that clearly articulated, strongly defended core value, I don’t think it ever will.

Ethereum, by contrast, is trying to do a lot of things and it’s trying to please a lot of people. The most obvious of these is that it’s trying to scale: to increase the total transaction throughput in the ecosystem by orders of magnitude including all of the sidechains, rollups, etc.. It’s also trying to become more usable for everyday people. It’s trying to create “ultrasound money.” It’s trying to be green and reduce the cost of security, which were the two main drivers of the Merge and the transition to proof of stake. Unfortunately, through all of these changes, Ethereum has seriously begun to sacrifice some of the values it began with, such as decentralization and censorship resistance. Proof of stake has led to a massive amount of centralization, it turns out, and that centralization has driven censorship.

Censorship resistance is ostensibly one of the Ethereum community’s values but it’s clearly not valued as highly as other things. This is a good example of why simply having a set of values isn’t enough. In order to put those values into practice and turn them into something—a platform, a community, an ecosystem, a product, a company, whatever—one must install those values into a value system. After all, no matter what, no matter how nice sounding or universal your values, there will always, eventually, inevitably come a time when they come into conflict. In those moments you must make a decision that will favor one value over another. And all values are not created equal. While the Ethereum community has been focused on scalability and usability it’s taken its eyes off the balls that matter most, such as decentralization and censorship resistance. In the early days of Ethereum, the Ethereum I knew and loved, Ethereans wouldn’t compromise on those values and principles for anything. After all, without those things there was no point in trying to build Ethereum—why not just use a centralized database? Sadly, once the censorship toothpaste is out of the tube it’s nigh on impossible to put it back.

Which brings us back to Bitcoin maximalism. Say what you will about toxic maxis, they have an important role to play: that immune response serves a purpose! Once you’ve determined and articulated your core values, the things you won’t compromise on at any cost, your army of maxis will defend those values. If Bitcoin alignment means censorship resistance then anything that causes more censorship is by definition not Bitcoin aligned and should be expelled from the system. This is why the #No2x movement won and defeated the big blockers in the block size wars of 2017 via a user-activated soft fork (UASF): bigger blocks would lead to more centralization which could only lead to more censorship. This movement worked in the first place because Bitcoin is meaningfully decentralized and had (and indeed still has) a culture of people running their own nodes, so the network was able to reject this bad idea “from the edges”, i.e., ordinary Bitcoiners rejected the idea even when most influential mining companies and exchanges were in support of it. Sadly I don’t think the same thing could happen on Ethereum today. If Ethereum had clearly articulated its alignment and values then it might not be in this situation in the first place.

Spacemesh is too young to have maximalists, which for now is a good thing. And to be clear I don’t think Spacemesh is facing any existential threats other than keeping up with its own growth and developing the protocol to be more mature, more sustainable and more secure. But it’s absolutely essential that we reflect on what it means to be Spacemesh aligned, what our core values and our value system are, and how we’ll stand up for those values when the time comes that we must. We can learn from the successes and failures of the projects that came before, including Bitcoin, Ethereum, and Solana, as we embark upon this journey.

Principals and Agents

https://rettig.substack.com/p/principals-and-agents

Say what you will about independent craftspeople: their work is completely their own. They’re their own boss; they’re both principal and agent. That makes some things a lot simpler. Photo by Rebekah Blocker on Unsplash

Subscribe now

I never write reviews on Amazon, Uber, Airbnb, or any other centralized marketplace. There was a time when I used to do this, in the early days of each platform, when it still felt novel and fun. Amazon around 1998, Airbnb around 2010, and Uber around 2013 felt small and vulnerable, and to be a user felt exciting, like being a renegade and part of an important movement. It was exciting because you were onto something that the world didn’t know about yet. Even my friends didn’t know about these platforms when they first launched. In retrospect, I don’t know whether I legitimately felt that way or whether it was due to the effect of propaganda, but it felt real enough. I used to advocate on behalf of these platforms, and to onboard all my friends.

Of course that couldn’t continue. These companies and these platforms eventually got too big, and as they grew everything got shittier. Uber’s customer service was amazing in the early days; now it’s basically nonexistent, the prices are exorbitant, and drivers try to scam you. You used to find all sorts of hidden gems and meet amazing people on Airbnb, and there used to be a novelty factor to it; the last few times I ended up in a disgusting property that was clearly only used for Airbnb listings and that looked nothing like the photos. And Amazon… well, horrible UX, tons of fake reviews, and screens full of hidden ads are just the start of its problems.

And yet these companies still pretend to be community-driven. They all still talk about the importance of “community” as if they’re a small village garden or an open source project or something. The abuse of the word community among unaccountable, for profit billion dollar companies is atrocious. Words have meaning and this word has been sadly stripped of its meaning due to bad actors like this using it as a pleasant-sounding euphemism for “customer.”

As I reflected on the sad trajectory of companies like this, from darlings that I was genuinely excited to share with my friends to unaccountable, toxic, shitty platforms with terrible UX and no customer service to speak of, I kept coming back to this question: Why don’t I post reviews on Uber? What’s the actual reason? Why don’t I feel like doing this? Why does the mere thought of doing this disturb me so much? I think the core issue, and the mitigation if such a thing exists, lies at the heart of this question. Here are three reasons.

Thing #1: Ownership 🚩

On the surface it seems to boil down to a question of ownership and agency. I’m willing to invest a great deal in myself, my home, and my family because they’re mine and they’re always going to be mine—I’m stuck with them! I’m willing to invest a bit in my local community because I feel some degree of ownership and agency, but less than I do at home. This relationship continues outwards in ever more distant concentric circles, so to speak: I feel less agency in my city than I do in my local community, even less in my state, very little in my country, and hardly any at all at the global level. (Incidentally this is one reason I think large nation states are inherently ungovernable, but that’s a topic for another week.)

Similarly, I’m willing to invest a great deal of time and energy, without limits (other than those impacting the health and security of myself and my family), in my own startup. I see such a project as an extension of myself and my agency as a person. I’ll invest less in a company or project if I’m an employee rather than a founder and have, say, very minimal ownership rights and limited agency. I’ll invest even less as a contractor: I’ll deliver the agreed upon work product, but I typically won’t go above and beyond in the way that I would as a co-owner.

Why is this the case? Partly it’s simple incentives. If I’m the founder or cofounder of a project then I have a great deal invested in it, a great deal of stake and reputation on the line, and a lot to lose—and also a lot to gain if the project does well. (This is sort of the central tenet of capitalism and why, despite its flaws, it’s the best system of incentives we’ve yet devised.) Presumably I wouldn’t put myself in that situation if I didn’t genuinely believe in the opportunity, timing, market, etc. or if there were something more promising to work on.

By contrast, as an employee, while I’m still somewhat invested in the success of the company and the project, the degree of investment is far less than that of a founder. And as a contractor it’s even less, since contractors typically don’t have any ownership.

All of these forms of engagement can make sense depending on the people involved, the situation, and personal preference. I personally can’t work as an employee (I’ve learned this the hard way, multiple times) because I can’t be only partially invested into a thing and because, as an employee, the temptation to leave and become a founder again is always too great. I’m independent minded and I’m not good at following instructions or playing by someone else’s rules. I can be fully invested, as a founder or cofounder, and give something all of my energy and attention. I can also be a contractor and have a clearly defined deliverable and no other obligations (and work for myself, which is what it means to be a contractor).

Is there more to ownership than simple financial and legal incentives? It’s also a practical matter of time and commitment: if I found a startup I’m likely to be working on it for a very long time. By contrast, as a contractor I probably won’t be involved in any given engagement for very long. You’re more likely to invest time and energy in making a home comfortable if you plan to be there for a long time!

The other piece of the puzzle is agency, which I touched upon above. I’m willing to invest time and energy into a thing not only because I have financial and social upside but because I feel a sense of enfranchisement, a sense of agency, a sense that I and my actions matter: they have impact both on the organization and on the wider world. This is somewhat intangible and difficult to describe in other terms but it’s a very rational human emotion.

Which brings us back to Uber and the other platforms. I have no ownership in Uber. And I have zero agency. Uber may pretend otherwise but it’s simply too big and I’m just one lowly user. My thoughts, feelings, and preferences don’t matter in the least to the company. My relationship with Uber, to the extent that such a thing exists, is purely transactional. I don’t like Uber very much, I feel no sense of values alignment, I avoid using it when I can, and using it often leaves a bad taste in my mouth for a bunch of reasons. But I do it anyway sometimes because I’m buying a job to be done. When the job is done, I want nothing more to do with it. I want it to go away and stay out of my life (which is why I hate push notifications from apps so much).

I have zero intention of ever leaving a review in Uber. Why bother? What’s in it for me?

Is there a way to feel a similar sense of ownership and agency in a big project that many people are working on? Fortunately, I believe so, which brings us to the second thing.

Thing #2: Open Source 📖

All of the platforms just mentioned are run by big, for profit companies. Those companies are accountable only to their shareholders and their software isn’t open source. Despite being a customer I don’t feel compelled to contribute to those companies or their platforms because I have no agency, no ownership, and derive no benefit from doing so.

Fortunately there’s an alternative! Humans have found another way, besides sheer capitalism and for profit companies, to organize human endeavor at a large scale: open source. I use open source software every day, from Bitcoin and Ethereum to Linux to Brave to a variety of tools and utilities. (I’m trying to transition to using exclusively open source software and I’ve made some progress but it’s a work in progress.) And there are some big differences between closed source, unaccountable, for-profit platforms and those that are public, participatory, and built on open source software.

One way to have ownership and agency in a project is to, well, literally own a portion of it through equity. But there’s no equity in an open source project, or in a public good more generally, so how does one achieve ownership and agency in this sort of project? It’s a bit nuanced and it varies from project to project but the short answer is, one derives a sense of agency and ownership from the act of contributing to the project (you get out of it as much as you put into it).

Many open source projects are run and governed as a form of commons-based peer production. Another related idea is do-ocracy. In the case of a for profit company in order to become an owner one must not only be wealthy enough and have the wherewithal to purchase equity; one must also be enfranchised by the financial system, and one must convince someone else to sell them shares (easier in a public than a private company). By contrast a do-ocracy is typically permissionless. Anyone with the time and requisite skills can typically jump in and start contributing. Github uses the term code owner for a reason: one really can derive a sense of ownership in such a project through “sweat equity” and through the respect and admiration they’re afforded if they have a track record of valuable contribution over time.

When open source projects first emerged most people thought that this model would never work. After all, it’s not economically rational for experienced software developers to contribute unpaid labor to such projects when they could instead devote the same time and effort to a project that they get paid to work on. But open source did work, and it continues to work, because it turns out that people are motivated by more than pure economics. I’m far from the only developer willing to devote a great deal of time and effort to an open source project that no one owns or controls so to speak.

There’s a sense of joy, pride, accomplishment, community—and, yes, ownership—that arises out of contributing to an open source project in one’s spare time. Do not underestimate the power that this sense of community and shared ownership imparts to a project. It turns out to be a very powerful phenomenon. Extraordinarily complex projects, some of the most complex, most widely used software ever written including Linux, Apache, Chromium, and Android have arisen as a result. And one could argue that these projects could never have been built in a traditional, centralized, top-down fashion! In many of these cases the decentralized, open source upstart (Linux, Chromium, Android) defeated the centralized, corporate-backed incumbent (Windows, Internet Explorer, iOS).

While I never post reviews on Uber, I’m more than happy to spend 10x or 100x the time reporting a bug or adding a feature to an open source project that I use. Partly it’s because there isn’t some unaccountable, distant corporation and its shareholders that are benefiting from my labor, at least not directly. (It should be noted that sadly this isn’t equally true for all open source projects. I’m a lot less likely to contribute to Android or Chromium due to the way Google has captured these ecosystems than I would to something without an unaccountable, distant corporation behind it.)

Partly it’s because I feel like a real stakeholder in such a project. Contribution is typically permissionless and in most cases it’s fairly clear how I could play a larger role in the governance and leadership of such a project if I were so inclined. And I always have the option of forking the code as well, something else I can’t do with Uber! In this way open source projects and applications can tap into orders of magnitude more talent than closed source, unaccountable projects can. As a result and over time, I’m certain that open source software will get better and better and will gradually replace more and more of the garbage, closed source apps we use today.

I should note that for the same reason that I’m totally unwilling to write reviews on Uber or Amazon, I’m also totally unwilling to devote any time or resources to software or projects that aren’t truly open source. I often get pitched on some exciting new protocol or application that’s going to change the world, and my response is always the same: show me the code! This is both because as a developer I need to see the code to know the project is legitimate; but even more importantly it’s because it makes the interaction trustless. I don’t want to invest time and energy into something that’s not going to be around for very long. And I don’t need to trust that the entrepreneur and the company are going to open source the code later (everyone says they will, but most don’t get around to it) or be around forever. The code will be.

Thing #3: The Principal Agent Problem 🧑‍🔧

I’ve been intuitively aware of this phenomenon—not feeling incentivized to invest in something when you don’t have ownership or agency—for a long time but I never knew what to call it or how to classify it. I finally realized recently that I had been introduced to the answer in a totally different context: it’s called the Principal-Agent Problem. In a nutshell, this is the conflict that arises when one actor (the agent) acts on behalf of another (the principal). The two actors have divergent personal interests, and while the agent in theory is supposed to act in the interest of the principal, in practice they’ll put their own interest first. I had been introduced to the idea in the context of corporate governance, where the agents are the company executives and the principals are the shareholders.

I think this framework captures well what’s going on when I refuse to write reviews on Uber or Amazon. In this case I’m both a customer, paying the company in question in exchange for a service provided, and also an agent who’s expected to do work that’s in the interest of the company (write a review). But the company isn’t compensating me for that work, and due to that and the total lack of ownership and agency my interests diverge from that of the company. In other words, the incentive design here is broken.

The Principal-Agent framework also explains the other examples I presented above. I’m willing to do a lot of work at home, on behalf of my family, because I’m both principal and agent—in other words, I’m doing the work on my own behalf (or on my family’s behalf, but the family is an extension of the self). The startup scenario is the same: I’m willing to do a great deal of work for my own startup because, again, I am both principal and agent. In both of these cases the problem isn’t a problem because the two actors are in fact one and the same! By contrast when I’m not a founder or at least part owner of a company I’m much less willing to work extra hard because in this case I’m the agent, not the principal, and the owner’s interests don’t match my own.

Of course ownership isn’t black or white; there are shades of gray. If you’ve ever wondered why companies give their employees stock options, one big reason is that it’s a partial solution to this problem. This helps a little bit with ownership, but for all but the very earliest employees the amount in question is barely measured in basis points relative to all other shareholders, so for 99% of such employees the attraction of equity-based compensation is purely about the financial upside and not about engendering a meaningful sense of ownership or agency.

What about open source projects? Does the Principal-Agent framework explain these as well? One way of looking at it is to say that there’s no principal in the case of an open source project. A for-profit company could be created to commercialize and monetize the code but, assuming the code has a true open source license, it has no owner to speak of because anyone can fork it and use it anytime for any purpose without permission.

As mentioned above many such open source projects are governed via commons-based peer production. The key word here is “peer.” When there’s no principal, all agents are in fact peers. One could equally say that all of the agents are principals. True, in practice not all actors have equal roles in the governance and operation of a project. Some will inevitably be more central and take on more agency, responsibility, and accountability. But as long as the project is governed as a true open source project, and as long as any actor is able to fork the code and establish a different system of governance, strictly speaking there is no principal.

I think this explains why I feel comfortable working on open source projects (and why I feel uncomfortable if the project is owned or in practice dominated by a for profit company like Google or Facebook). Someone else isn’t profiting from my work (at least not directly). Someone else isn’t taking advantage of me. My interests are aligned with those of all of the other people working on the project, and the others benefiting from it.

I’m not aware whether anyone has studied the principal-agent problem in the context of commons-based peer production or open source projects, but if this hasn’t been done it would be an interesting angle to explore. I’m also curious how it plays out in cooperatives, where all agents are also principals (albeit not necessarily to an equal extent). The incredible success of open source in recent years does suggest that, in addition the usual, narrow, capitalistic set of solutions to the problem, there are promising alternatives such as removing the principal entirely or making everyone a principal.

I recognize that I’m privileged to be able to say this—how wonderful it is to be a software developer in 2023!—but I, for one, do not plan to ever work again on a project where I’m not a principal. I encourage you to do the same if you’re able. And if you feel stuck I’m happy to strategize anytime about how to get there.

And for the record I still don’t plan to start writing Uber, Amazon, or Airbnb reviews! Until these companies start compensating us for this data labor I encourage you to boycott the practice as well.

Fitting In

https://rettig.substack.com/p/fitting-in

People have preconceived notions about what a blockchain should be, and it helps if you fit into one or more of these boxes. Spacemesh isn’t perfectly any of these today, but it could become them. Photo by Clem Onojeghuo on Unsplash

Subscribe now

It’s pretty clear what the next 6-12 months look like for Spacemesh: improving and fixing all of the things we’ve already shipped, and keeping up with rapid network growth. The number of miners and the total amount of storage space is growing rapidly each epoch. We just exceeded 100,000 miners, and each miner needs to generate and broadcast a proof each epoch. This is a lot of data and we need to continue to improve the protocol to ensure that the nodes and miners can handle it all. We need to make more improvements to the P2P network and we also need to fix the PoST incentives. We have our work cut out for us.

What’s a bit less clear is what comes after this. We released a roadmap recently that lays out the general direction of travel and includes many of our goals, but it’s not terribly specific. We do intend to do all of these things but the roadmap is somewhat aspirational and high level. The timing and order of these things is likely to change.

Putting together the roadmap was nevertheless a good exercise, but at this stage no one knows for sure what Spacemesh will be when it grows up. I previously laid out some wacky, fun ideas, but every day it becomes more important to have a down to earth, concrete, realistic roadmap.

While we don’t know exactly which direction Spacemesh will go, there are several nascent themes or theses in the crypto ecosystem that are growing rapidly and that are relevant to Spacemesh. It’s easy to make fun of investors and their silly obsession with theses, but the best theses are helpful because they speak to broader, longer term, important stories, and because they give people an anchor to understand what we’re working on, why it matters, and how to communicate it, i.e., how it all fits into familiar narratives and worldviews. Here are three themes that come up again and again in conversations with investors, team members, and community members. Spacemesh isn’t perfectly any of these things today but it could become them.

Two quick caveats before we dive in. Firstly, these are all extremely preliminary. Each one, especially the third, would require an enormous amount of work rearchitecting and reengineering the protocol to make it compatible. Secondly, even more importantly, these are just my own ideas, not necessarily those of the team or the community. I’m just one voice and Spacemesh will chart its own course forward as it matures and as the ecosystem and community governance mature.

That being said, if any of these ideas are especially interesting and if you’re interested in working on any of them, please let me know!

Thing #1: Bitcoin Programmability 🤖

Bitcoin is obviously most well known as the first successful, decentralized form of money, but the idea of using it for applications other than money has arisen from time to time. One of those times was around 2013-2014 when a number of projects were attempting to build other applications on top of Bitcoin: Primecoin, Mastercoin/Omni, colored coins, etc.. Later there were other, more sophisticated attempts such as Rootstock and Blockstack (Stacks). Ethereum grew out of this era. Most people today probably aren’t aware that Vitalik first tried to build Ethereum on top of Bitcoin and only decided to build a separate chain after Bitcoiners rejected the idea. After the success of Ethereum, those interested in greater programmability mostly moved to Ethereum and Bitcoin programmability didn’t get much attention for a few years.

Today, however, Bitcoin programmability has become a hot topic again. This is due to a combination of reasons. The most obvious is new features added recently to Bitcoin, especially Taproot. In combination with Segwit, this allowed new applications like Ordinals and BRC-20 tokens to appear; BitVM will allow even more types of applications. The Lightning Network is developing rapidly. There are projects trying to build DeFi on top of Bitcoin. Another reason is the proliferation of the L2 ecosystem on Ethereum and the realization that rollups might be possible on Bitcoin as well. There are a few other attempts to develop different sorts of L2s on top of Bitcoin including Liquid, ARC, and Fedimint.

Bitcoin has many strengths but programmability isn’t one of them. People who are not Bitcoin maximalists, including those in the Ethereum and Solana ecosystems, mostly watch efforts to build things like DeFi on Bitcoin with equal parts amusement and pity. Indeed, Bitcoin maximalism is one of the main drivers behind this phenomenon, and maximalism isn’t a good reason to build a thing. There have been many failed attempts to deploy true programmability on top of Bitcoin in the past that went nowhere, and frankly most of these attempts will probably also go nowhere. Why try to build things on a chain that doesn’t have the required tools and in an unfriendly ecosystem when it’s so much easier to build and deploy on Ethereum and other smart contract platforms?

But these responses miss the point of building on Bitcoin, which has its advantages. For one thing, Bitcoin is still the most decentralized, censorship resistant chain, and the one with the most credibly neutral governance (i.e., without a known founder who can change the protocol by sheer force of will). These features matter a lot for certain types of applications. To the extent that applications built on Bitcoin use BTC or the Lightning Network, there’s much less fragmentation of liquidity than in Ethereum and other ecosystems into hundreds of rollups and thousands of shitcoins. These applications can plug into the permissionless, global payments network of Bitcoin, which is already established and trusted more than any smart contract chain. Regardless of the noise that Ethereans make to the contrary, Bitcoin is the only really established, credible, successful, global, digital money.

Spacemesh isn’t Bitcoin, of course, but it is like Bitcoin in some key ways. It’s already approximately as decentralized as Bitcoin, at least in terms of the number, geographical distribution, and political distribution of nodes and node operators (if not yet in terms of governance—real decentralization takes time). It can’t currently do a lot more than Bitcoin since we haven’t yet rolled out the VM and smart contract support (that’s coming but we want to take our time and get it right). Its economics are modeled on Bitcoin’s. And we intend its governance to function a lot like Bitcoin’s as well.

These things didn’t happen by chance. We’re cypherpunks at heart and we share most of the values that led to the creation of Bitcoin. We intend Spacemesh to be built and operated in the most meaningfully decentralized, credibly neutral fashion possible. We have a long way to go but we’re off to a good start.

And, of course, Spacemesh will be highly programmable. We’ll have a full featured, Turing complete VM. Unlike Bitcoin, this is an intrinsic part of the Spacemesh design from the very beginning, not something bolted on after the fact at a higher layer.

I don’t think it’s unreasonable to think of Spacemesh as an account-based, natively programmable version of Bitcoin. In other words, it’s something like what Bitcoin would look like if it had been designed today.

Thing #2: Proof of Work ⚒️

Over the years I’ve noticed that everything in blockchain tends to happen in cycles—not just Bitcoin programmability. This should be no surprise since all of society works this way: what’s old will eventually be new again; what’s out of fashion will come back into fashion.

The first blockchain ran on proof of work. So did the second blockchain, and the third. But over the past few years proof of work fell out of favor. Pretty much every serious blockchain that launched over the past four years uses proof of stake or some variant thereof. Proponents of proof of stake cite several motivating factors including cheaper security, but I think the biggest one, and the biggest reason proof of stake became so popular, is that it’s much less energy intensive than proof of work.

Proof of stake thus perfectly fit the ESG narrative that took over the corporate world during the same time period. (Nevermind that proof of stake is by definition plutocratic; most people don’t even know what the “G” in ESG stands for anyway.) For a few years companies and countries alike were tripping over themselves to come up with the cleanest, greenest narrative and to convince the world that they’re the most serious about reducing emissions. The Greta generation really cares about this stuff.

As it turned out, however, companies took ESG a bit too far, with some putting environmental or social goals ahead of profitability and competitiveness. Like so much else in modern culture it became more performative than effective. Fortunately, the ESG narrative has begun to fade. There are lots of reasons: greenwashing, the Russia-Ukraine conflict, more pressing concerns like inflation, and the overall silliness of the idea.

It seems like the proof of stake narrative has also begun to fade. One reason is that we’ve seen the dark side of proof of stake including how it leads to massive centralization and even censorship. While it’s true that proof of stake is greener than proof of work, people have begun to wake up to the fact that Bitcoin mining is a lot greener than most people realize and that a lot of the energy-related attacks on proof of work mining were overblown, unsubstantiated FUD.

I think another, less talked about reason is that the novelty factor has begun to wear off. Yes, lots of big chains are running proof of stake now. Yes, they seem reasonably secure and haven’t suffered major attacks. No, proof of stake hasn’t fixed big problems like governance or scalability. And the elephant in the room: blockchains are still struggling to achieve mass adoption, to build apps that aren’t ponzis and that normal people care about, and to repair their tattered reputation. Proof of stake doesn’t fix this either.

One of the big downsides to proof of stake, which I’ve written and spoken about many times, is that it’s not permissionless and that it’s not easy for those who aren’t already crypto savvy. You need to set up a wallet, buy coins, and figure out how to stake those coins safely. Proof of work can be a lot simpler: you just run an app, or in the extreme case plug in an appliance (see next thing), and you start earning coins. No credit card, no bank account, no KYC, and no cryptocurrency exchange needed. Anyone, anywhere with decent hardware and an Internet connection can participate. (This is a big part of our motivation for building proof of spacetime, a greener variant of proof of work, for Spacemesh.)

These are some of the reasons that proof of work seems to be having something of a renaissance. The first proof of work summit took place recently. There are a number of new proof of work blockchains launching, and several that are already running have been doing very well. Maybe it’s nostalgia, maybe it’s the simplicity and elegance, maybe it’s its contrarian, meritocratic nature, maybe it’s the recognition that AI is anyway going to use orders of magnitude more compute power and energy than blockchain—whatever the reason, the appeal of proof of work is clearly growing.

If you asked me to explain this trend I’d say that the world at large feels more and more unfair to everyday people. Bailouts happen all the time, the Cantillon Effect is real, and while the rich continue to get richer life keeps getting harder for ordinary people as healthcare, education, housing, and even food feel increasingly out of reach. Proof of stake is plutocratic through and through and leads to even greater centralization of wealth and power. By contrast, proof of work, when mining is possible using existing hardware as in Spacemesh, is a much more level playing field and is credibly neutral.

A rising tide lifts all boats and Spacemesh seems to be benefiting from this trend as well. We built proof of spacetime as a hybrid that has the best elements of both proof of work and proof of stake: it’s permissionless and resilient like proof of work but green like proof of stake. I’m not aware of any other protocol or consensus mechanism that can claim both of these.

It’s gratifying seeing the world begin to wake up to some of the risks and downsides of proof of stake and the upsides of permissionless proof of work. It’s humbling to see that others value the things we do. But this is just the beginning of a trend. We have our work cut out for us, and while it’s wonderful having a tailwind for once, we’re not going to stop or change course even if this changes, as it eventually, inevitably will.

Thing #3: DePIN 📡

I learned the term DePIN recently but it’s an idea that’s been around for a long time. DePIN stands for “decentralized physical infrastructure network”: i.e., allowing people around the world to contribute hardware to a decentralized, permissionless network in exchange for a share of the network’s revenue. The basic idea is that centralized infrastructure providers, including cloud computer service providers and mobile phone operators, have to charge a lot for their services to cover their overhead, whereas decentralized networks governed by open protocols can charge a lot less for access to the same infrastructure.

The first DePIN projects I learned about were OG projects from the Ethereum ecosystem including Livepeer and FOAM Protocol. Recently the DePIN idea has really taken off in the Solana ecosystem, where projects such as Helium, Hivemapper, and Teleport have gotten a lot of attention. There are lots of types of physical infrastructure that can be decentralized. Helium and FOAM protocol are based on specialized hardware that provides Wifi or 5G access, and radio beacons that provide proof of location. Hivemapper and Teleport use ordinary hardware such as automobiles and mobile phones to compete with the likes of Google and Apple Maps, and Uber and Lyft, respectively.

Of course physical infrastructure naturally also includes digital infrastructure: CPUs and GPUs (compute), and hard drives (storage). Livepeer allows anyone to transcode video files, Filecoin makes it possible to monetize spare storage, and projects like Gensyn are working on letting people monetize spare GPUs in a truly decentralized, permissionless fashion. These are not trivial achievements: on top of all of the usual complexity of peer to peer networks, consensus, sybil resistance, etc., these networks additionally need to deal with problems like dispute resolution, preventing and addressing fraud, payments, etc.

There’s something about DePIN that I find particularly appealing—much more appealing than the shitcoin casinos that have dominated the space for too long. For one thing, as I mentioned above, it allows ordinary people to invest in and monetize assets in a permissionless, credibly neutral fashion. For another it solves real problems: e.g., making access to compute resources an order of magnitude cheaper than on centralized platforms controlled by tech giants. As Gensyn points out, we don’t want to live in a dystopian future where only the biggest, wealthiest companies have access to training and inference. We want to live in a future where we can perform both training and inference on our own models using local resources. DePIN could go a long way towards democratizing access to these resources.

For machine learning models to proliferate throughout our world in a fair and equitable manner, it is crucial that we establish the right to build. Not as a legal right enforced by governments, but as a technological right enabled by building with a new perspective – decentralisation. This right is very simple – we should all be able to access the resources required to build new machine learning models. We’re in a race against competitors aiming to dominate our future by controlling an enabling technology that will radically alter our society. – The Machine Learning Compute Protocol and our future

In a nutshell I’m beginning to see these networks as one of the purest, most ideal applications of blockchain infrastructure beyond just money. Web3 is about more than censorship resistance and self-sovereignty. It’s equally about disintermediating unaccountable legacy tech giants that extract maximal rent and make everything shitty in the process. One of the superpowers of Web is its ability to reduce the take rate that these companies and platforms can extract from users through decentralization and better incentive schemes. DePIN is a manifestation of all of this.

What does all of this mean for Spacemesh? As I wrote a few days ago, what is Spacemesh if not a decentralized physical infrastructure network of tens of thousands of GPUs and hundreds of petabytes of storage? That’s a lot of horsepower. And both are currently underutilized on Spacemesh: the GPUs because they’re only needed for the initialization phase and the hard drives because they’re currently storing cryptographic junk that’s meaningless outside of the Spacemesh protocol. If other protocols like Livepeer, Filecoin, and Gensyn have figured out how to put these resources to valuable use there’s no reason we can’t do this, too (although it would require a major change to the protocol).

Today Spacemesh has successfully built a “People’s Coin” that allows ordinary people around the world to mine from home sustainably, profitably, and permissionlessly, and to earn their first cryptocurrency with no need for KYC or a bank account. That’s a huge accomplishment. But I’ve always felt that Spacemesh could be a lot more than this. I’d be really excited to develop Spacemesh into a more useful platform that allows our miners to generate even more value with their spare compute and storage resources. We have tens of thousands of miners that I know would be excited to participate, and while the technical challenge is real we also have a world class R&D team that could make it happen. This is a promising, timely thesis that I think we should seriously consider.

Blockchain Economics Revisited

https://rettig.substack.com/p/blockchain-economics-revisited

In order to properly measure the effects of inflation you need to first calculate your consumption basket. Mine includes a lot of zucchini. What’s in yours? Photo by Brooke Cagle on Unsplash

Subscribe now

I like to joke that I came to Ethereum for the tech, stayed for the people, and eventually left because of the economics. As I wrote last week I recognize that economics is nuanced and that it’s not something everyone pays attention to in blockchain, but they should.

I was never totally comfortable with Ethereum’s economics. The size of the premine always bothered me—why so many coins relative to total, eventual issuance? When people began making noise about “Eth is money,” without understanding what this actually means or how ridiculous they sound when they say it, it was sort of the final straw for me. I stopped contributing to Ethereum in 2019 for several reasons, but economics was a big reason.

Fast forward a few years and as we set out to design the Spacemesh economic model I did my best to correct a lot of these mistakes, or rather, to not make the same ones. This required a deep dive, studying in detail the economic model of existing blockchains: their coin allocation, their issuance mechanisms and inflation schedule, burn mechanisms (where relevant), governance of issuance and monetary policy, etc. It took a couple of years but we eventually finalized and announced the Spacemesh economic model a year or two ago. I’m extremely proud of this work, as proud as I am of anything I’ve ever done before. It wasn’t easy, and in retrospect the optimal design wasn’t at all obvious. I’m sure this design isn’t perfect. And not everyone is equally happy with it, including some of our investors. But I think it’s an excellent foundation for the Spacemesh project and community, and most importantly, it’s in line with our values and principles, which include leaving as much value as possible on the table for the community (something everyone says but no one actually does), and thinking and planning for the extremely long term.

Honestly, I thought I didn’t have much more to say about the economic model than what I already wrote when we announced our economic model, and the math and details published on Github. I thought it was pretty simple, straightforward, and mostly self-explanatory, especially since it’s based on Bitcoin’s economics and those couldn’t be simpler. However, since we launched a few months ago we keep getting questions and I’ve realized that blockchain economics is even more complex and nuanced, and less well understood, than I thought. Here’s a slightly deeper dive into some of the topics that keep coming up, and some thoughts on things I’ve learned since I originally wrote about blockchain economics a few years ago and since we designed the Spacemesh economic model.

Thing #1: Premine ⚒️

This is a sensitive topic for many blockchains and “premine” has become something of a dirty word, despite the fact that every project since Bitcoin has one. In spite of having a ginormous premine Solana, for instance, doesn’t mention it even once anywhere in its official documentation. It’s very difficult to get information today on the Ethereum premine. But the fun thing about a premine is that it’s quite literally there in the code for all to see, forever. It can be somewhat swept under the rug socially but not technically.

It shouldn’t be a sensitive topic. For all serious blockchains since Bitcoin, it’s a necessary evil (there will never be another immaculate conception) and a recognition of the fact that building something this complex requires real capital. There’s no way around it and there’s absolutely nothing wrong with a premine done right.

But not all premines are created equal. Every time I look at these graphs, they make me want to cry. Every serious blockchain that launched over the past few years gave away at least half of their coins to insiders and investors. That may seem totally arbitrary and unimportant—after all, venture-backed companies regularly sell more than half of their equity to investors before eventually exiting, right?

Except that a blockchain isn’t a company. At least, a serious, decentralized, permissionless, public blockchain isn’t like a company—and all other types of blockchains are uninteresting as far as I’m concerned. If a cryptocurrency wants any claim of being money, and if a blockchain wants any claim of being infrastructure for the public good, then it’s critically important how and when those coins are issued, and whose hands they wind up in. The problem with a premine is that it’s by definition a closed, permissioned act whereby coins are handed to a tiny group of privileged insiders. In other words, everything about a premine is diametrically opposed to the value that a public, permissionless blockchain stands for: inclusion, egalitarianism, credible neutrality.

It’s bad enough that projects do this constantly. It’s even worse that they gaslight you about it. If you read any article or listen to any interview with a founder behind a massive premine they all say the same thing: “Our first priority was to make sure that the community got a fair share,” and then proudly announce that they’ve reserved a generous 10% or 25% or, in really extreme cases, maybe 50% of coins for the community. Even then those coins are rarely if ever distributed in a credibly neutral fashion such as proof of work or proof of space time mining—they’re instead distributed in dodgy ways like airdrops, grants, and other forms of handouts to friends, or through a public sale (where insiders and the already-wealthy have an edge) and/or a treasury/foundation (which is controlled by insiders). I’m not suggesting that airdrops or grants should never happen, or that foundations and treasuries should never exist, but they’re not a credibly neutral mechanism for coin distribution to the masses and should not be confused as such. These are not the same thing.

By contrast Spacemesh reserves 93.75% of coins to distribute to the community via a meritocratic, credibly neutral mechanism. More on this in a moment.

In some respects this is the foundational lie of every blockchain after Bitcoin, and incidentally it’s one of the major reason that Bitcoin maximalists call every other coin a shitcoin and will never accept any other coins or blockchains. They have a point, but I’m a little more pragmatic than that. Bitcoin is great but I do believe that the world needs multiple chains and those chains are highly likely to have premines.

Which brings us back to my comment above: not all premines are created equal. How do you get a premine right? The most obvious and most important parameter is the size of the premine. The other parameters are the vesting schedule and how quickly the premine gets diluted.

Most projects including Ethereum and Solana didn’t impose vesting on their premined coins (some of Solana’s premine involved vesting but much did not). This is especially a problem for proof of stake chains including Solana since they require that millions of coins be staked when the protocol first launches (incidentally this is one of many reasons I seriously dislike proof of stake). And most projects including Ethereum and Solana issue coins for a few years post-genesis, then slow, halt, or even reverse issuance. The unfortunate effect is that the premine calcifies: those privileged insiders who hold a disproportionately large share of coins will maintain or increase that share through staking, and no matter how hard new ecosystem participants and new stakers try, they will probably never be able to displace those insiders. This is the opposite of a meritocracy and it’s not the world I want to live in.

Founders do this because people are afraid of inflation and because investors don’t like inflation. People don’t understand inflation. Inflation is your friend and a healthy amount of inflation is a good thing economically. Seriously, go ask a real economist (not a crypto armchair economist like me). Crypto people tend to misunderstand inflation because of a false equivalence: Bitcoin and cryptocurrency in general was created in response to mismanagement of fiat money, especially uncontrolled printing that leads to hyperinflation. Hyperinflation is bad, therefore all inflation is bad, therefore currencies that inflate over time are bad. (Wrong.)

Some people suggest that a premine isn’t an issue because coins change hands over time, early insiders tend to sell their coins to realize a profit, and new actors are always arriving. There is doubtless some truth to this, but I’ve never seen any serious research to confirm or deny it. And my gut feeling is that this effect isn’t very strong. In the ecosystems I’ve participated in, early, privileged insiders tend to become an entrenched elite in a given project or ecosystem and are still privileged, wealthy, and influential many years later regardless of merit or ongoing “proof of work.”

To be clear, as I also wrote last week, I’m not suggesting that there should be no premine or that early team and investors don’t deserve outsized compensation for their foundational work and for bearing the lion’s share of the risk. They absolutely do, and for this reason there should be a premine. But there’s a right and a wrong way to do it, and having a large premine, especially one without vesting and one that won’t be diluted over time through a healthy amount of inflation, is absolutely the wrong way.

Ultimately the question we should all ask ourselves is, who is this project for, and what world do we want to live in? Default world economics are pretty rough on every day people (which is a big part of the reason that wacky stuff like meme stonks and cryptocurrencies are so popular). Real wages aren’t growing nearly fast enough to keep up with inflation. The Cantillon Effect is in full force as governments everywhere print money in response to never-ending conflict, high inflation, and ballooning deficits and global trade imbalances, and money simply doesn’t trickle down very effectively to every day people.

What is a premine if not the purest, most extreme possible example of the same Cantillon effect dynamics at play? And why on earth would we want to recreate those same dynamics on chain any more than we must? Blockchain is quite literally a golden opportunity to opt out of the existing, broken system and build a better system—why wouldn’t we want to do better? And if we cannot, what’s the point? Why not give up the whole charade and go back to the broken default world?

A blockchain is not a company! It’s not a closed, permissioned project for a small set of private investors and insiders. A blockchain is an open, public, permissionless thing. In this respect it’s more like a country—not exactly alike, but more alike. I for one do not want to live in a country where half the money that will ever exist was handed out to a few privileged families at the founding. You choose where you want to live, and where you want to invest your time and money, and I’ll do the same.

Thing #2: Inflation 🎈

Inflation is nuanced and difficult to understand. It doesn’t help that we colloquially use the term to mean two completely different things: increase in the money supply, and decrease in purchasing power. These two phenomena are related but distinct, and they’re very easy to confuse.

In the context of a layer one blockchain inflation is more or less synonymous with issuance, emission, minting, reward, and subsidy, and I mostly use these terms interchangeably. The only way bitcoin ever comes into existence is through issuance (a.k.a. emission or minting) by the protocol of new coins as a block subsidy (a.k.a. reward). Of course as mentioned in the previous section a premine can also create new coins, and L2 applications and probably even some L1s have wacky economic mechanisms that issue coins for other reasons, but in general the block subsidy and the premine are the only way coins come into existence.

When seeking to understand a blockchain’s economics the key thing to understand is its monetary policy, i.e., the shape of the issuance curve. When it comes to economics a picture is worth a thousand words; here are the Bitcoin and Spacemesh curves including all future issuance:

The X axis is years post-genesis. Source: https://spacemesh.io/blog/spacemesh-economics-intro/

As you can see the Bitcoin curve isn’t actually a curve, it’s a series of straight lines whose slope halves around every four years (the halvening cycle). Spacemesh uses a similar exponential decay model of issuance but smoothes it out so that, rather than sudden halvenings every few years, issuance declines very gradually and smoothly from one layer to the next, every few minutes. And Spacemesh issues coins for a much longer time than Bitcoin does: compared to Bitcoin’s four year half-life, the Spacemesh half-life is around 29 years. No two chains have precisely the same issuance curve: some are linear forever, some premine 100% of the coins, some depend on variables that are difficult to know ahead of time such as amount staked, transaction volume, and block time, and some are, well, weird and change constantly.

To get the full economic picture including all fluctuations in circulating coin supply you need to consider not only coins created but also coins destroyed, whether due to intentional burn or simply lost keys. Some protocols also have an enshrined burn mechanism, most notably the EIP-1559 mechanism in Ethereum whereby a portion of the transaction fee of each transaction is burned; Solana has a similar mechanism. These burn mechanisms ensure that the more active the chain, the more coins get burned, which has the net effect of reducing inflation or in some cases even making the coin deflationary, i.e., on balance more coins are destroyed than are issued.

While it’s not difficult to calculate the number of coins burnt through an enshrined mechanism like EIP-1559, calculating total burn due to all causes is much harder because, obvious burn addresses aside, there’s no way to know for certain if someone’s keys were lost or if a given address is a burn address (i.e., an address for which no one holds the spending keys). Any burn estimates will therefore be a floor, i.e., a minimum known burn amount, but not the total amount, which means that any economic calculation that factors in burn will always overcount the number of circulating coins.

The other thing to keep in mind about inflation is that it’s by definition a relative term, and one that only has meaning over a fixed period of time. Inflation is defined as new issuance over a fixed period of time divided by total prior issuance at the start of this period. This sounds pretty straightforward but the math is non intuitive. For instance, consider for a moment: what was the inflation caused by the first Bitcoin block? The answer is infinity because issuance prior to this was zero. What was the inflation caused by the second Bitcoin block? 100%. You get the gist.

In the same fashion, when Spacemesh launched there were zero circulating coins, so the inflation of the first Spacemesh block was also infinity. People often ask why Spacemesh inflation is “so high,” and this question confuses me. If you draw a straight line up starting from zero, then over any arbitrarily short period of time starting from zero inflation is going to be extraordinarily high.

What people mean by “high inflation” is usually “the protocol is issuing too many coins,” but if you do the math that’s actually not at all what high inflation means! In this case it means “many coins relative to the existing supply”, and if the existing supply is low, the relative inflation figure is going to be high. What’s more, it also depends on the period of time you’re considering. A single Spacemesh layer issues around 400 new coins, which currently represents about 0.00286% inflation. That translates into 0.823% inflation per day, or about 25% inflation per month (which makes sense since the network has been alive for about four months). Just as in how the yield on a bond or a credit card debt is meaningless on its own without a time period, inflation is meaningless without a time period. This is self-evident and axiomatic but there’s something about this math that confuses people (probably because it involves calculus, understanding relative rates of change and derivatives, etc.).

Take my word for it, there’s nothing out of the ordinary and nothing interesting about Spacemesh issuance. It’s totally unremarkable. It decays very gradually with each block, i.e., it’s disinflationary (not to be confused with deflationary: the former means that the supply is inflating at a slower and slower rate; the latter means that the total supply is decreasing). But for the first few years it might as well be linear, i.e., straight line issuance, just like Bitcoin’s first four years. The fact that people think it’s “high” speaks less about Spacemesh and more about the fact that people are used to absurdly large premines, as described above. If we had handed hundreds of millions of coins to insiders before launching the network, as everyone else does, then the denominator would be much larger in the inflation math—but your economic situation would be far worse (since the number of coins you hold relative to the total outstanding coins would be much lower).

“Inflation” is a loaded term and despite the fact that they both mean the same thing I think it’s better to use the term “issuance,” which is more neutral. And issuance isn’t always bad. The question isn’t simply how much issuance there is. As with any form of spending, the question is, what are you buying with that issuance? You’re buying chain security, for one thing. And in the case of an open, thriving ecosystem like Spacemesh you’re also buying more miners entering your ecosystem, more applications building on your platform, better infrastructure and other public goods, etc.—in other words, you’re buying a flywheel effect. If done right that spending is absolutely worthwhile and incredibly valuable, especially in the early days of a project and an ecosystem.

One final thought on issuance: it’s also important to consider where those coins go once they’re issued. Not all issuance is created equal! As mentioned above this economic phenomenon is known as the Cantillon Effect: a well-studied real world phenomenon whereby inflation affects different actors differently. It generally means that newly-created money tends to end up in the hands of the influential and already-wealthy. We need look no further than recent American stimulus spending to see this in action.

If you’re in charge of an economy the worst thing you can do is mint coins and hand them out to your friends and cronies. The best thing you can do is continually issue a steady, predictable supply of new coins through a credibly neutral mechanism such as proof of work or proof of space time, whereby any participant has an equal opportunity to earn coins by creating objective value for the protocol. That’s what Spacemesh does and it shocks and saddens me that so few other protocols do the same, especially given how simple this is to achieve.

Thing #3: Governance 🏛️

Setting the initial economic parameters is only half the battle. Actually, it’s probably around 10% of the battle. Governing those parameters over the lifetime of the network and community is the really hard part.

My thoughts on governance of cryptoeconomic systems have evolved over the years. When I was part of the Ethereum community I thought that there wasn’t enough governance: decisions were made in an extremely opaque and arbitrary way, it wasn’t clear who the decision makers were, and the near total lack of formal governance mechanisms meant that governance was obfuscated and not meritocratic. Ethereum at the time was quite literally governed by friends making decisions together in back rooms and in Telegram chats. I was part of the economic decision making process during the years I worked on Ethereum, e.g., helping determine the issuance reduction in the Constantinople upgrade. And it always felt a little bit strange because I felt unqualified. Given the size of the Ethereum economy and the amount that was at stake, I wondered, shouldn’t actual economists and people with experience governing real economies at least be part of the conversation? (I wrote more about this time in So you think you want to be a core developer? and spoke about it in an interview.)

A couple of things have changed since then. For one, while I’m not involved anymore, as far as I can tell Ethereum governance has gotten a bit better. I’m sure decisions are still made among friends in back rooms and in Telegram chats—I doubt that will ever change—but, while we were really struggling to make big, difficult decisions while I was working on Ethereum governance, the successful roll out of EIP-1559 and the Merge suggests that’s less of a problem than it used to be. Ethereum’s economics had several bumpy years when lots of changes were made, but that seems to have stabilized and, as much as Eth isn’t money and as much as Bitcoiners like to hate on Ethereum, its economics today does seem sustainable, if a bit confusing. And there are now at least a couple of actual economists in the room.

The other thing that’s changed is that I’ve become something of a governance minimalist. The main reason is that, in the intervening years, I’ve witnessed more or less every way that governance can go wrong. I’ve been part of multiple DAOs that spent nearly all of their time and effort just figuring out how to govern themselves, only to fail and collapse under the weight of this stress without having achieved anything. I’ve heard horror stories from a number of blockchain foundations and ecosystems about all the things that can go wrong when you put professors in charge, or when the founders and executives let wealth and power go to their heads and become egotistic, or when you try to design complex on chain governance mechanisms, or when any of the thousand other things that can go wrong with governance inevitably happen.

I’m often asked if there are any positive examples of blockchain governance. Honestly, in my opinion the project that did the best job of governance, and maybe the only project that has successful governance, is Bitcoin—at least if we define successful governance as achieving its stated objectives. It’s not a coincidence that the “governance surface” in Bitcoin is tiny: in other words nearly all of the protocol parameters were fixed long ago and there’s very little scope for change today. Relative to other projects and protocols there are relatively few decisions to make and relatively few resources to govern. There’s no intellectual property, no foundation, and no treasury. Each actor in Bitcoin, each core developer and company and fund, is free to govern itself as it sees fit in proper, decentralized, self-sovereign Bitcoin fashion.

I didn’t see this at first when I was working on Ethereum as, at the time, Bitcoin seemed both chaotic and stagnant, but the more I think about Bitcoin governance and the more I understand it, the more I admire it. It’s easy to write Bitcoin off as stagnant and uninteresting—and Ethereum people do this all the time—but it simply isn’t true. You need attend only a single technical Bitcoin meetup to see all of the innovation that’s happening. Segwit and Taproot were big, interesting upgrades that unlocked all sorts of new applications and use cases, and more such changes are in the pipeline. The fact that Bitcoin governance moves slowly is by design.

All of this is on my mind as I consider what sort of governance model we want to design for Spacemesh. I very much hope that we can take the best from Bitcoin, including setting extraordinarily strong norms and Schelling fences around the economic model. Spacemesh’s 2.4 billion coin hard limit should be like Bitcoin’s 21 million: it should never change.

There are many exciting upgrades coming down the road to Spacemesh such as improvements to existing components (PoST, PoET, Hare, etc.) and brand new features (most notably the VM). Governance of all of this—which features to prioritize, which improvement proposals to implement, multiple client implementations—will be entirely in the hands of the community, along with governance of ecosystem resources such as a foundation treasury, when the time comes to set one up.

But governance of the core protocol’s economic mechanisms, such as total issuance, is special. Those mechanisms are sacrosanct. They should not be changed except in a truly extreme scenario and then only by an overwhelming majority of stakeholders. The Spacemesh company doesn’t have the authority to unilaterally change those parameters, not anymore, not even though we’re the only ones actively developing and maintaining the protocol for now. The foundation, when and if one exists, won’t have the authority to do that. This is absolutely critical for the credible neutrality of the protocol. It’s the only way that Spacemesh can stand confidently, shoulder to shoulder with giants like Bitcoin, and fulfill its promise to be a people’s coin that’s not only issued overwhelmingly to the community in a credibly neutral fashion, but that can one day be relied upon as a form of hard money with perfectly predictable, reliable issuance, if that’s a goal the community decides to pursue.

Of course Spacemesh is significantly more complex than Bitcoin and is still quite immature by comparison so Bitcoin governance won’t work out of the box for Spacemesh, and it won’t work for quite some time. Nevertheless it’s something to aspire to and a yardstick against which we can measure our governance: the less there is to govern the better in my opinion.

Solana From the Outside

https://rettig.substack.com/p/solana-from-the-outside

The hacker space at Solana Breakpoint. The event campus was so big it took me two days to find this space, and when I finally found it, I felt at home. Photo by the author.

Subscribe now

Autumn is in full swing and that means it’s also conference season. I’m at Ethereum Devconnect this week, and two weeks ago I attended Solana Breakpoint, so I can’t help but compare and contrast the things I saw and heard at each ecosystem’s big annual event. It may seem a little weird to write about Solana while attending a major Ethereum event but I wrote this as much for the Ethereum community as I did for Solana. Solanans (is that what they’re called?) already know Solana’s strengths and weaknesses. By contrast Ethereum folks genuinely have no idea what’s going on in Solana.

I attended Breakpoint out of curiosity since I’d never been to a big Solana event before and since I’d heard a number of promising things about the project and the ecosystem from friends. I’m writing about Breakpoint and about Solana more generally this week because the event left a fairly strong, fairly positive impression on me. My first introduction to Ethereum was also at a large developer conference, DevCon III, an experience that was, in retrospect, life changing. I wouldn’t quite say the same about Breakpoint this year but it did pique my curiosity about all things Solana, and it had a similar energy.

I shared this brief memo with my team after Breakpoint and I thought I’d expand it into something more comprehensive this week, looking at the aspects of the Solana project and ecosystem that are the most interesting and seem the most promising. Like the work I did previously in Ethereum and other ecosystems, a big part of my work at Spacemesh today involves studying, thinking about, designing, and building open source ecosystems and communities. I approached Breakpoint with this mindset: what can mature ecosystems like Ethereum and nascent ones like Spacemesh learn from what’s going on in Solana today? It certainly seems worthy of study and attention.

Here are three perspectives on Solana today.

Thing #1: Downtime? What Downtime? ⛓️‍💥

Let’s start with the tech. It’s the most straightforward thing to like about Solana. Solana’s technology isn’t perfect but it’s not bad and it’s improving. It’s had some episodes of downtime but the issues that caused that downtime have been identified and addressed and the network has been stable for about nine months. The Solana team is trying to build a single, integrated global state machine that can handle tens or even hundreds of thousands of transactions per second, and can process those transactions in parallel. When airplanes take off they mostly fly just fine; when we launch rockets they mostly take off just fine. Solana is mostly flying just fine at the moment. It’s very technically ambitious and I think the team deserves credit for achieving stability.

As I wrote around the time we launched Spacemesh, you should always be a little embarrassed by your first release, you should minimize time until your product comes into contact with the market, and you should iterate from there. That seems to be the Solana approach, so in this respect at least I’m Solana aligned. Personally I’m willing to forgive occasional downtime early in the life of a project and I think it says more about the project launching before it was perfect than it does about any fundamental flaw in the technology. Also, people have short memories: almost no one remembers the issues Ethereum faced in 2016, which in many ways resemble Solana’s issues.

In fact, Solana calls its mainnet a “beta” which feels accurate and appropriate. It’s a little obnoxious and a little hypocritical, but as long as they don’t do what Gmail did and keep the “beta” tag around for five years it can be forgiven. It’s a good reminder that the software is still evolving rapidly and still has bugs, so you shouldn’t invest more than you can afford to lose on it. I feel exactly the same way about Spacemesh, and have to constantly remind people that it’s alpha software.

Ethereum also used to “move fast and break things” in its early days and I imagine Bitcoin probably did, too (though I wasn’t around at the time). It’s easy to do this early in a project’s lifecycle when there isn’t much at stake. That pace of change necessarily slows as a project matures, as there’s more at stake, and as there’s a greater and greater “installed user base” who would be upset if you do in fact break things. Solana is still in this phase, and it’s the most fun phase in the lifecycle of a project: when it’s live and you get real time feedback from the user and the market, but at the same time it hasn’t ossified and you can still think big and do really interesting things. If Solana continues to grow this will eventually become difficult, but I urge the community to delay that day as much as possible in order to both have fun now and also to make Solana as good as it can be.

What I respect most about Solana’s technology is that the project has chosen a very clear and lonely spot on the decentralization trilemma solution space. At one extreme you have centralized databases (i.e., Web2), or blockchains that are DINOs (decentralized in name only). At the opposite extreme you have extraordinarily decentralized blockchains like Bitcoin and Spacemesh. Ethereum is more Bitcoin-aligned and more towards the decentralized end of the spectrum, but it’s becoming more centralized. And Solana has staked a claim to be “decentralized enough” while still fulfilling its vision of being a single, integrated global state machine, a vision that’s totally the opposite of Ethereum’s modular vision. Basically every other layer one blockchain has struggled to find a comfortable, unique spot along this spectrum and as a result has struggled to differentiate itself.

The people I spoke to at Breakpoint told me that, while Solana is “probably decentralized enough,” they recognize that there’s room for improvement. It also struck me that no one I met was bothered by Solana’s previous episodes of downtime. The topic didn’t come up once, not in conversations, not in talks, and not on the panels I listened to. It was sort of conspicuous in its absence. So many of the people I respect and listen to wrote Solana off a long time ago as unreliable and as trying to solve an impossible problem. I did, too, for a while. But I respect Solanans for not giving up on that vision and for making meaningful progress towards it in spite of the hate and FUD, much of it coming from the Ethereum community.

The people I met at Breakpoint feel like a bunch of nerds that are genuinely excited to talk about how to build a better, faster global state machine. Nothing to complain about there. I can count on one hand the number of blockchain community events and conferences I’ve attended that had such a high level of discourse involving good, interesting tech.

Thing #2: Came for the Tech, Stayed for the People 🤸‍♂️

The thing that first attracted me to Ethereum was the technology. Concepts like a decentralized world computer and smart contracts blew my mind when I first learned about them. They excited the computer scientist in me and lit my brain on fire. But what really impressed me about the first Ethereum event I attended was the people. It was the most unique, interesting, curious, intellectual, renegade group of people I’d ever met. Ethereans didn’t fit neatly into my existing mental map. I had so many inspiring conversations at that first DevCon that I went to another Ethereum event, then another. The rest is history.

Over the years I’ve attended events in around a dozen other, non-Ethereum ecosystems. With a few notable exceptions, they haven’t been very good. This is usually because of the quality of people they attract and the things those people want to talk about. Events in blockchain and cryptocurrency nearly always attract people who just want to shill their own project, or who want to talk about how wealthy they are, or how wealthy they’re going to be. The quality of discourse in Ethereum aside, the crypto community has earned its scorn and bad reputation.

A good bellwether for the quality of an event is the builder to non-builder ratio. An event with at least half builders is almost guaranteed to be a good event. Most crypto events have few to no builders (who, unless they’re nerding out with other builders, would generally rather be left alone to get on with the building), and tons of self-styled “investooors.” I’ve been literally the only builder in the room many times, and there’s nothing worse than that. It makes me want to melt into the wall.

I’ve been to Solana events in the past and, while they weren’t among the worst, they failed to impress me overall. The ratio of builders to investors and those looking to make a quick buck was quite low and the quality of the projects was quite low: mostly projects trying to ape Ethereum DeFi apps. Solana was pretty clearly overly financialized from too early in its lifecycle, which I blame on the investors that backed it including Alameda, and maybe also the timing of its launch. This really detracted from the quality of the discourse and I think it caused a lot of serious builders to steer clear. It’s so important to strike a delicate balance in terms of the composition of your ecosystem from the earliest days, and frankly I think Solana did a poor job of this early on.

Most people only give a project one chance to impress them. I don’t blame most people, given the degree of noise and nonsense in our industry. Working in crypto is like living in New York City: you learn to tune out almost everyone and everything because it’s the only way to get through the day.

I decided to give Solana a second chance and attended Breakpoint this year, and this time it did impress me. More than anything it reminded me of Ethereum DevCon circa 2018: some tech, some art, some gaming, some funky unique culture, lots of first-timers. It has a less whimsical, more polished vibe than Ethereum—less rainbows and unicorns, less awkward, cryptography autists, more neon and people who talk nice projected on huge, ultra sharp screens—but the vibe was still fun overall, like Solana doesn’t take itself too seriously. It felt approachable but not overly corporate, which is a difficult balancing act. It was big but not overwhelming: a few thousand attendees, which seems to be a sweet spot; pretty much everything declines as it scales beyond this point.

Most importantly I was impressed by the people I met. I tried to have as many random conversations as possible with developers. Since it was my first Solana event I was very curious to ask them some basic questions: What brought you to Solana? Why not Ethereum? What do you think about Ethereum and other platforms/ecosystems? What do you like/dislike about Solana? What does decentralization mean to you? How’s the dev ecosystem/dev tooling/developer experience on Solana today? Etc.

I met plenty of smart, thoughtful, motivated builders who by and large were quite honest and thoughtful about the upsides and downsides of Solana and the challenges it’s facing. They mostly found Solana after trying Ethereum and feeling that Ethereum was too slow and too expensive—no big surprises there, and Ethereum sort of deserves that criticism. They’re mostly quite open-minded, are strong believers in “a multi-chain future” (this phrase came up so often I lost count), are not maximalists, and also want Ethereum and Bitcoin to succeed. They respect and admire Anatoly but also recognize that for Solana to succeed it also, like Ethereum, has to move towards multipolar governance and become more politically decentralized. They’re genuinely interested in the technical questions and challenges that Solana faces, which are admittedly many and interesting. They generally feel that, while far from perfect, the Solana tech is good enough for now and that both the core platform and the tooling are improving rapidly.

If I attend another Solana event—and I should like to—it’ll be for the people more than anything else. I had tons of interesting conversations and was introduced to lots of new ideas, which is the most you can ask of any conference that brings people together from around the world. Ethereum events used to feel that way. They still do, to some extent, but I get the feeling lately that Ethereans have taken their eyes off the ball. They’re not paying attention to Solana and other projects that threaten to steal Eth’s thunder, out of a sense of entitlement. Ethereans endlessly debate tiny topics (account abstraction) and lofty, obscure, abstract goals (“public goods funding”) while missing the larger picture. By contrast projects like Solana are doing a better job of figuring out the tradeoffs and sacrifices that must be made to build usable applications and, hopefully, achieve mainstream adoption.

It’s been Ethereum’s race to lose for a while and I think the cracks are starting to show. But that’s a big topic and I’ll save it for a future issue!

Thing #3: Money, Money, Money, Money 🫰

So far so good. But now we turn to the most complex and, in my opinion, most important topic: economics. Because what’s a blockchain if not an economic engine?

I asked everyone I met at Breakpoint about economics. Most people broadly said the same two things. First off, like me they don’t really understand Solana economics and couldn’t, e.g., even tell me how much staking yields are (apparently it’s currently around 6.8%). Secondly, they don’t care too much.

I get it. Economics is complex, nuanced, and difficult to understand. That nuance is lost on most people. Most people don’t get further than coin price. Even asking people to understand market cap is a stretch, which is why unit bias is real. Most people don’t understand how inflation is calculated or what the numbers mean—or that it means their own coins are losing value.

And Solana economics is particularly complicated. I read as much as I could about the topic this week but the information I found was unclear, out of date, incomplete, and contradictory. The official docs egregiously totally fail to mention the premine or any concrete numbers at all. I found several different numbers for things like current and final issuance, inflation, and premine size. I even tried asking but didn’t get any good answers. It’s sort of crazy to me that a project as mature as Solana doesn’t have a single, clear issuance chart like Spacemesh does. I get that the numbers depend on variables like total staked coins and transaction volume, but it wouldn’t be too hard to retrospectively update such a chart every so often. In any case I did my best to make reasonable guesses and estimates. Economics is the part of Solana that I remain the most skeptical about and nothing I learned this week made me feel otherwise, sadly. I’ll try to explain why.

As I mentioned above the thing that first turned me off about Solana was the early financialization. I understand that new projects do this because other projects have done the same and because investors expect them to. But it’s not ethical because it leads to investors and insiders dumping heaps of coins on uninformed retail investors, and it’s not the right, sustainable way to build a community-driven open source project.

If the project is worth too much too soon it causes all sorts of problems. Anyone who wasn’t a lucky, early insider resents the fact that they forever missed the initial value creation event. Sudden, massive wealth creation leads to entrenchment of economic classes within a community, which is more or less impossible to fix and leads to many social ills including an out of touch, entrenched early elite.

Let me be clear: I’m not saying that capitalism is bad or that the early team and investors don’t deserve outsize returns for believing in the project early, getting it off the ground, and taking on lots of risk. They do. (Capitalism ain’t perfect but I have yet to see a better option.) But it’s important that this process play out slowly, and in particular it’s important that that return should come after the project has launched, found product/protocol-market fit, and created real value for people other than those early insiders. There should be no liquidity events, no coin sales, etc. prior to this. To do anything else, such as handing hundreds of millions of coins to early insiders and dumping them on the market during bull runs before the project has done anything of note, is to fundamentally misalign incentives. It’s a mistake from which you cannot recover.

As I wrote recently, we made the difficult decision at Spacemesh not to raise too much money and to have the smallest possible footprint on chain in terms of coins allocated to early team and investors, with standard vesting. Not every investor likes these terms, not every investor understands why we’re doing this (which has made fundraising harder) but enlightened investors understand it and appreciate that we’re here for the long term and that we’re trying to take the high road and do this the right way, even if that means it’ll take longer.

I joined this industry years ago in order to build something novel and different, something that puts everyday people everywhere on a level playing field and in the driver’s seat of their lives. This goal is more important today than ever before. In short, I’m convinced that proof of stake ain’t that thing. Of a total supply of around 560M coins Solana issued around 280M coins to investors prior to genesis. Why so many? Why did they feel the need to have such a large premine? Why not leave more value on the table for future generations of network participants to earn in a credibly neutral fashion? I suspect the answer is, “it’s what the investors asked for”—but then the question becomes, why did Solana need to raise as much money as it did? Spacemesh built something of comparable complexity for around 5% of the money Solana raised. I don’t mean to discount all of the other things that Solana has invested in, such as ecosystem building, grants, events, marketing, etc., nor to suggest that those things are all unnecessary, but it still feels like they could’ve done fine with significantly less—and left a lot more on the table for the community.

The question we should ask ourselves is, Who is this blockchain for? Is it for you, the lucky insider, who happens to be an accredited investor with access to private sales? Or is it for me, the ordinary person, who can add value in so many other ways? When half of the coins that will ever exist are reserved for those insiders, sadly the answer is pretty clear.

I intended to write about Solana, not Spacemesh, but when it comes to economics I can’t help but offer Spacemesh as a point of contrast. Because this isn’t theoretical. It’s tempting to say, “Well, sure, Lane, that sounds nice in theory but in practice you really do need to give half your coins to investors to get a project this complex off the ground.” But you don’t. Spacemesh is also a live, healthy layer one chain and since successfully launching a few months ago we’ve proven that you can do better. A lot better.

We reserved 75% of the coins at the ten year mark and 93.75% of long-term issuance for the community. The other 6.25% goes to investors, team, and treasury—and some of those treasury coins will be handed to the community over time, too. I’m proud of this economics. It wasn’t easy to get this done and not every investor and every insider likes it, but it’s a very clear statement: Spacemesh exists first and foremost for the community, not for insiders. I challenge other blockchain founders to do as good or better for their community. If they’re unable to do so, if they fail to do as well by their community as we have, I challenge them to explain why, openly and honestly, to their community.

Economics in the default world are hard enough for everyday people. As we’re all aware the cost of living, including food, transport, healthcare, education, and especially rent, are rapidly rising and wages aren’t keeping pace. Our governments are attempting to address these imbalances by printing more and more money, but the majority of that new money goes to people in positions of power, influence, and authority. Why would we want to recreate this world on chain? Blockchain gives us the opportunity to build something fundamentally better, fairer, and more egalitarian. To fail to even attempt to do so is cowardice plain and simple.

As I hope I was able to describe above Solana has gotten a lot of things right and the energy in the community is quite positive. I think Solana as a platform and as an ecosystem has a lot of potential and I wish it the best. But as far as I can tell it got its economics fundamentally wrong and I fear this is a mistake that can’t be fixed. Broken economics, and more generally a lack of understanding about those economics on the part of decision makers, is one of the biggest reasons I stopped contributing to Ethereum a few years ago and I refuse to contribute to another ecosystem that’s made many of the same mistakes.

If you’re a Solana fan, help me understand why I should care about Solana from an economic perspective. What’s in it for me, an outsider, and for billions of other regular people? Why do insiders deserve half the coins that will ever exist? And why does the community deserve only 38.89%? I just can’t understand this and why this is okay, and just as I did in Ethereum I refuse to normalize this behavior on the part of Solana.

If someone cares to explain to me why I should contribute in spite of these economics I’m all ears and willing to be convinced otherwise. Until that time I’ll keep watching Solana from the sidelines.

On Running and Failing

https://rettig.substack.com/p/on-running-and-failing

The “subelite” starting line at the 2023 TCS NYC Marathon last weekend: quite an international bunch of runners. I’m sure everyone in this group trained at least as hard as I did and I pray that, unlike me, they all achieved their target time!

Subscribe now

Other than building Spacemesh, the hardest thing I do is distance running. In fact, the difficulty is why I started running. The idea of running a marathon, all 26.2 miles, felt totally absurd and impossible when I was younger. I decided to run my first marathon 11 years ago because I somehow knew that, if I could accomplish something that seemed truly absurd and impossible, then I could accomplish anything I put my mind to.

They may not seem related but there is a direct line from my first marathon to Spacemesh. I’m absolutely certain that, if I hadn’t taken on that challenge, I wouldn’t be taking on this one today (and I wouldn’t have taken on many intermediate challenges along the way). As I wrote before, finishing that first marathon gave me enormous confidence in all areas of life. Lack of confidence had been the main missing ingredient, the main thing holding me back, and having confidence has been a huge factor in everything I’ve done since then.

Launching Spacemesh in 2023 is also an act of confidence. The blockchain landscape is increasingly crowded and complicated and even projects that have raised tons of money, have huge teams, and have very high valuations are struggling to define themselves and attract and retain users and developers. Today Spacemesh is a shrimp among much bigger, better resourced and more well known projects. That may not always be the case, but it is for now. Launching Spacemesh today is a bold statement that the existing blockchain landscape, crowded and complex as it is, is incomplete and dissatisfying in some key ways, and as I wrote two weeks ago it’s also a statement that things like good tech, community, and decentralization still matter.

Since that first marathon I’ve run around 10 others and dozens of shorter races. This year I decided to try something different, and a bit harder: to run a marathon in three hours. That’s an absurd thing to do at my age, and given my busy schedule—with a toddler in the house, and being on the road a lot—but running my first marathon my first semester of grad school was also absurd. I decided to spend the past 6-7 months training for a three hour marathon, which has long been a sort of “pie in the sky” dream. It’s an arbitrary, round number, and a serious stretch goal, but I trained really hard for it. It’s even crazier trying to do this in New York, rather than a flatter, easier course such as London, Chicago, or Berlin. My goal was to qualify to run the Boston Marathon.

The marathon finally happened last weekend. I ran the first 15 or so miles perfectly at my target pace, and in retrospect it was one of the peak experiences of my life. As long as I live I’ll never forget crossing Brooklyn with the fastest pace group of the race, listening to the crowd screaming. Then everything fell apart shortly after this when I had a breakdown due to dehydration, and I struggled through the rest of the race. In the wake of the race and of failing to achieve my objective after training so hard for so long, I’ve been reflecting on running, on failure, and on what it means for Spacemesh.

Here are three ways I deal with failure.

Thing #1: Look on the Bright Side 🌝

Of course I’m disappointed that I failed to achieve my marathon objective. It’s especially frustrating given how hard I trained and prepared for it. But running a marathon (especially the NY marathon!) is like trying to launch a rocket: lots of things can go wrong, and absolutely all of them need to go right in order to succeed. Right after the race I briefly considered giving up on marathons entirely, but by the next day I knew I’d run another one soon, so there will be future opportunities.

It’s cliche but true: every cloud has a silver lining. In reflecting on my failure I can’t help but consider the good. And there’s plenty of good. Yes, I made a critical error and failed to achieve my objective. But I learned a lot about myself, about running, and about how to achieve that objective. I will be much better prepared next time. It’s hard to learn from warnings and from other people’s mistakes. I won’t make that same mistake again.

I’m also in the best shape of my life thanks to my training. The race provided a clear, concrete objective at a specific point in time, and it provided necessary structure for that training, but the real value is in the training, not the race. I’ve done things this year that I never thought were possible: running farther, faster, and in more difficult circumstances than ever before (e.g., running 12 hard miles on foreign soil immediately after getting off a transcontinental, redeye flight a few days ago). I’ve run nearly every day this year and missed only a small handful of days due to sickness.

And as hard as the breakdown was, I actually managed to recover. I had three or four impossible miles, miles when it was literally just one foot in front of the other. My entire world shrank down to those few footsteps, to the mile remaining to the next fluid station. Initially I promised myself I’d run fast. When that was no longer possible I promised myself I’d at least keep running. When that was no longer possible I walked, but only briefly. I then promised myself I’d keep moving forward, and I kept that promise. I drank amply at every fluid station and gradually began to feel better and pick up my pace. Eventually I was jogging again, then running again. I never got back to my original, fast pace, but the last couple of miles were quite solid and respectable, and the first half was so spectacular that, in spite of the abysmal second half, I still finished with a PR that was much, much better than my previous best time. That was down to my training, too, and to recognizing when I had pushed too far, and dialing it back as necessary in order to sustain and recover.

The bright side is I finished. I have yet another marathon medal to add to the collection—and an excellent story to tell about earning it. I made a mistake, I suffered for it, and I learned a lot. That’s not such a bad outcome, is it?

Spacemesh had something of a breakdown, too—several, actually—before the race even started, but we finally made it to the start line when we launched in July. The first few miles were bumpy but we made very rapid progress. Now the first part of the race is over and we’re entering the difficult part. The initial burst of enthusiastic energy is gone. The easy growth is gone. We’re in the part of the marathon—and it is a marathon—when we need to sustain the improvements and the growth for the long haul. We’re basically out of money, it’s difficult to raise more money, and people keep suggesting that we do things that are against our values, such as issuing more coins for ourselves or bribing people to list the coin. Spacemesh hasn’t failed, not by a long shot, but we’re facing some strong headwinds.

But there is also a lot to celebrate. Most obviously, the network is still alive and healthy. The growth is steady and impressive. The community is small but extraordinarily high quality, full of missionaries who are here for the marathon as we are. And we have a uniquely talented team to lead the way.

When things get frustrating I remind myself of these things, and of how lucky I am to be working on this problem set in this place and at this time. Just as I reminded myself how lucky I was to be running the NYC Marathon in beautiful autumn weather, surrounded by other passionate runners from around the world, and to be alive and physically capable of doing so.

Thing #2: Redefine Success 📝

We have a bad habit of letting other people define success for us, and we tend to let society and social norms define how we think about success. In mainstream, modern American society this tends to mean going to the right school, getting a high-status, high-paying job, marrying a beautiful partner and having lots of beautiful children, all the while posting about the journey on social media and making it all look effortless. In marathoning this typically means running lots of races in exotic destinations at faster and faster speeds, sometimes on an insanely aggressive schedule, all the while wearing expensive, branded gear, posting about the journey on social media and making it all look effortless. In blockchain this typically means being autistic and good at math, raising ungodly sums of money, hiring tons of people who pretend to be busy, creating shitcoins with artificially inflated market caps, making a lot of noise about the process, and never building anything that normal people use or care about—you guessed it, all the while posting about the journey on social media and making it all look effortless.

Escaping from this mindset and figuring out how to define success on my own terms took a long time and it was one of the hardest things I did, but it’s also one of the things that’s made me the happiest over the long term. While I could talk about what this has meant in various aspects of my career and personal life, this issue is about marathoning and about Spacemesh so that’s what I’m going to focus on here.

When I began running years ago I made the intentional decision not to care about pace, speed, or performance in races. I decided that my goal was simply to challenge myself, get healthy, burn extra energy, and most importantly to enjoy myself along the way. Over the years as my running got more intense and more serious I tweaked those goals a bit but I never abandoned that original principle. The one metric I began to pay attention to was distance: for some reason I’ve always been more captivated by the notion of running impossible distances than the idea of running fast. Far has always felt more challenging to me than fast. I’ve not yet attempted an ultramarathon, mainly due to time constraints, but I did reach a point in my training a year or two ago when I was running around 100 miles per week (the equivalent of about four marathons per week), which is pretty insane for someone who isn’t a professional runner.

This year I decided to try some new challenges, just for fun and to see what I’m capable of. I decided to run every single day for an entire year regardless of the weather, logistics (including baby, travel, lack of sleep, etc.), or how I’m feeling (barring serious illness). And I decided to try to run a marathon fast for once. I don’t think I actually expected to achieve these objectives, but I believe in constantly challenging myself and trying new things.

The year isn’t quite over but I’ve more or less succeeded in the first goal. And I totally failed in the second. But I was never playing by anyone else’s rules and I don’t intend to start now. The moment I knew during the marathon last weekend that I wasn’t going to achieve my goal, I had already begun to redefine success in my mind. Success in those difficult moments, over those difficult miles, was literally one foot in front of the other, making it to the next fluid station. Then it was jogging without walking. Then, finally, it was crossing the finish line, then recovering and spending time with family to celebrate. Then it was going for an easy jog the next day, and a longer run the day after that. Recovering from a very difficult marathon and running at my usual pace and distance three days after the race is also success.

I haven’t decided what my next marathon goal will be, but—in spite of what I may have felt in those dark, difficult moments last Sunday—I’m sure there will be another goal and another marathon before too long.

The situation with Spacemesh is a bit more complicated. Building a successful, valuable blockchain ecosystem is more involved than running a marathon (even if it does feel like one). I’ve never cared about vanity metrics like market cap or transaction volume; those in no way, shape, or form translate to the things that really matter, like human joy. From the beginning I decided that one of my goals was simply to help develop the technology, prove that it works, and release it to the world as open source software. I deeply wanted to prove that there are viable alternatives to proof of work and proof of stake. I’m extraordinarily proud of the work we’ve done designing, building, and launching proof of space time and the rest of the Spacemesh protocol over the past few years, and we have indeed proven that it works. The fact that all of our research and engineering is open source and permissively licensed means that it’s a gift to human society, regardless of what happens to Spacemesh. In this respect we’ve already succeeded.

Of course it would be wonderful if we can continue to develop the technology, to make it even easier for people to mine from home, and if the community continues to grow and the coin someday has real value. If we can find a way to do this that’s sustainable and in line with our values then I’m all for it. Right now we’re struggling to raise money because many investors don’t understand our economics (less short-term pumponomics, more long-term, long-tail wealth creation), and because the market is really crowded with projects that are happy to play short-term games (and make a lot of noise about it on social media). I don’t know what the future holds for Spacemesh but one way or another I’m confident that it will work out and that the future is bright.

Being comfortable defining our own success metrics is a big part of that. Spacemesh has made it this far playing by our own rules, and as a result we launched despite having raised one to two orders of magnitude less money than projects of comparable complexity. If we continue on our slow burn trajectory and it takes Spacemesh a while to take off, but the trajectory is as positive as it is right now, I’ll consider that a huge success.

Thing #3: Play an Infinite Game ♾️

On some level nearly everything in life is a game. Making money is a game. Dating is a game. It goes without saying that sports and fitness are games, too. Each game is different but they all have a few things in common. For one thing, games have rules. They have a defined set of players and referees. They have a start point, an end point, and an objective. As I’ve matured and moved through the world I’ve seen the outlines of these various types of games come into focus. If you pay close enough attention you can often figure out the rules of a game, and once you’ve done that you’re already halfway to winning.

Running is a game within a game within a game. The immediate, small game is the race right in front of you. The players, the objective, and the start and end time are immediately evident. The medium sized game is the season. You have a certain number of months to train in good weather before it gets too hot or too cold, you have races scattered throughout the season, and you usually have one big event—in my case, a marathon—at the end of each season. The biggest game of all is your career, which of course consists of many seasons. You may decide to increase or decrease your training in a given season, or to set different objectives. It’s important to understand that these various levels of games are all interconnected: what you do in a season will impact each race that season, and if you make a serious mistake in a race it can even impact your entire career. In other words, it’s actually all one, big game.

This is one way to think about running. It’s a popular way to think about running, about most sports, and about life in general. It provides a comforting degree of structure and quantification. Runners love numbers: we track our distance, our gear, our heart rate, our VO2 max, our stride length, our breath rate, and tons of other statistics.

But it’s not the only way to think about running, and I think it’s not the healthiest way to think about running or about life. To be clear there’s nothing wrong with tracking miles or pace or with training to improve them. But if that’s all you’re focused on while you’re running then you’re missing the point. Because the real point of running, at least for me, isn’t winning. It isn’t miles or speed. It’s being in the moment and enjoying every single run, every single mile, easy or hard, fast or slow, hot or cold. I don’t always succeed in doing this, especially when I’m getting my ass kicked on a hard race, but when I can achieve it, it’s glorious.

There was a moment in the marathon last weekend that I alluded to above: somewhere around miles 5-10, when I fell into stride with the 3:00 marathon pace group. Before this I was running on my own, and then when I first joined the pace group it took a while to get into stride with them. The course was crowded and I was constantly having to dodge around slower runners. And after, I began to really struggle to keep up. But for those glorious few miles I was totally, completely in the zone. It was one of the peak experiences of my life—crossing Brooklyn during the greatest marathon on earth in the greatest city on earth with the very fastest pace group, feeling confident, listening to the crowd screaming at us—that I will never forget as long as I live. If I’m lucky I might get to experience something like that once or twice more in my lifetime.

In the moment I don’t think I fully appreciated how magical the experience was, but when I reflected on the race it immediately hit me. I didn’t realize the magic at the time but I was in the zone and fully present, and that’s what it’s all about, far more than an arbitrary goal time.

This is a good example of the fact that the only way to win a game is to opt out of the game in the first place, and instead to play by your own rules. For me this means running way more miles than I probably should, just for fun and usually without any particular aim, just because I love running so much. I had some minor running-related injuries a few years ago, and my doctor told me I should cut back on the running. Cutting back didn’t help. When I instead leaned into the running and increased the miles a lot, the injuries went away and haven’t come back.

Playing by my own rules means belatedly trying to become fast past age 40 when I’m already way past my prime. It means going on crazy, epic runs around foreign cities while I’m traveling for work, which tend to be more about exploration than about fitness. It means running in all weather: in the rain, on the coldest and hottest days of the year, and even in heavy snow! It means paying peripheral attention to those numbers but recognizing that they’re probably not that accurate in the first place and they’re not why I run. It means being extraordinarily grateful for my 2023 marathon experience in spite of failure.

Back to Spacemesh. I sort of outlined the typical game for blockchains above: raise a ton of money, make a lot of noise, buy a community with tons of marketing, and then maybe think about shipping something. While this game does tend to involve making gobs of money it doesn’t tend to involve doing so in an ethical way or in a way that aligns incentives and creates real value for everyday people. It should be pretty clear that we opted out of this game at Spacemesh a long time ago. That ship has sailed; good riddance.

We’re playing an infinite game at Spacemesh and we’re not playing by anyone else’s rules. I think the most important way we do this is by slowing down and taking our time. While we’d all love to see the community grow, the coin price to increase, etc., it’s important that it happen in an organic, sustainable way (rather than, e.g., due to an airdrop or some stupid, inauthentic marketing campaign), and that we enjoy and appreciate the process of getting there. We believe that we should put our hearts into every line of code we ship and every interaction with our community. We should appreciate the small wins: getting to genesis, reaching one million storage units (64 PiB), reaching 100 days live, etc. And it means always following our north star: ignoring those tempting vanity metrics in favor of working to create joy and economic sovereignty for everyday people everywhere. As long as we remain true to that goal we cannot fail.

Big Ideas from Urbit Assembly 2023

https://rettig.substack.com/p/big-ideas-from-urbit-assembly-2023

As in previous years, Assembly was equal parts tech, culture, and philosophy. There were also cool animations showing Urbit battling flying Windows logos, and excellent live music. Photo by the author.

Subscribe now

Urbit Assembly 2023 just wrapped up in Lisbon. This was my third Assembly. The first two events were excellent; last year’s was one of my favorite conferences ever. It was equal parts tech deep dive and plain weird. So despite the longer trip to Europe I didn’t want to miss this one.

Urbit has long fascinated me for many reasons. It’s good computer science: the more I work on related problems, including deterministic, solid state virtual machines and P2P networking, the more I understand Urbit from first principles and the more Urbit’s design makes sense to me (even if it makes little sense at first contact). Sometimes it feels like all computer science roads lead back to Urbit, and that Urbit is the apotheosis of the human-centric computational model.

But it doesn’t stop there. As I wrote last year, as much as it’s a technical project Urbit is equally a social and political movement. Whereas just about every other tech community, especially blockchain communities, pretends to be apolitical, Urbit proudly leans into its politics (although precisely pinning down those politics is not so easy). Urbit cares a great deal about aesthetics which are, after all, upstream of politics: this, too, is unique among tech communities, and correct.

Of course these are all abstract ideas. You can’t expect to understand or appreciate any of them, nor can you expect to understand the Urbit community, remotely or virtually. That’s why these conferences are so important. At the end of the day, blockchains are people and Urbit is people, too. It was through Assembly that I first really began to understand what Urbit is all about and why you and I should care about it; and the previous two conferences have been an opportunity to catch up with everything that’s going on in an increasingly active, diverse ecosystem.

Without further ado, here were my three biggest takeaways from this year’s Assembly.

Thing #1: Urbit is Actually Almost Useful 🤞

A few years ago when I first touched Urbit there was as yet no real frontend. It was just a CLI tool that resembled IRC, BBS, and early newsgroups more than anything else. But the first official frontend, Landscape, launched four years ago and it has continually improved since then. Since Assembly happens once a year and it’s now been two years since the first, this provides a nice, unscientific opportunity to checkpoint the state of Urbit and its app ecosystem “beyond the hype.”

I remember struggling to actually use Urbit at the first Assembly in 2021. My long-running ship had crashed and every time I tried to boot it up it would crash again with mysterious errors. I followed troubleshooting instructions but couldn’t fix it. At the event, one of the core devs kindly fixed it for me, but it died again a few days later. There were no native mobile apps and the mobile web experience of Landscape wasn’t very good. I was using my laptop to connect to the ship I had running at home via ssh tunnel. In practice, I and almost everyone else used Signal to communicate because it was too frustrating to use Urbit.

At Assembly last year, there was a native mobile app and I distinctly remember getting a push notification from Urbit for the first time, which was pretty exciting. I had also migrated my ship to a hosted service which helped a lot: much lower latency and no annoying ssh tunnels to deal with. Most importantly, a major upgrade to Urbit’s core finally fixed the issue I was encountering and allowed me to resurrect my ship, which had been sunk for over a year. (It was actually pretty marvelous watching it come back online, download one OTA update after another, apply them flawlessly, and get caught up over an hour or two.) I remember briefly testing a handful of new Urbit apps, including several that had been developed as part of the hackathon, and I remember thinking they were cool novelties, but none of them solved any actual problems for me and I didn’t touch any of them again after the event.

This year for the first time I actually found myself continually switching back and forth between Signal and the new Urbit native iOS app. I used Urbit for about half of the messaging I was doing. Not because it was better than iMessage, Signal, or Telegram—it isn’t, not yet, not by a long shot—but for two other reasons. First of all, it’s now good enough. It works reliably. It’s not super fast, but it’s also not super slow anymore. It didn’t crash or fail once. It’s smooth and slick enough and the UX isn’t bad: it feels like a modern, clean, native iOS app (which it is).

It needs some polishing and it doesn’t have the bells and whistles of the mainstream apps, but it has something else going for it, which is the second reason I found myself using it a lot: I could easily find and message people using their @p (their Urbit identity). I’m beginning to understand that, to the extent that Urbit ever “wins” and convinces ordinary people to switch from the centralized apps we all know and love, it will do so through a combination of these two things: being good enough, and community. The apps don’t necessarily have to be better than, or even as good as, the incumbents (that’s unrealistic). They need to be good enough, and this combined with the goodwill and affinity I feel towards the Urbit community, and the tight integration with all things Urbit, is enough of a shove for me, and maybe for other people as well.

The most interesting thing about this realization is that it doesn’t include the usual schtick: the importance of decentralization, the benefits in terms of privacy, governance, censorship resistance, etc. Of course those things are important, too, but they honestly weren’t very much on my mind the past few days as I found myself interacting with my Urbit dozens of times a day, for the first time ever. I’ve used probably every decentralized chat and groups app ever created, and take my word for it when I say that the UX has always been horrendous. Decentralized chat is really, really hard for a bunch of technical reasons. The fact that Urbit is now usable and good enough is really quite remarkable, because it’s the first decentralized chat app that’s ever been good enough. That’s a surprisingly high bar.

Chat and groups is nice, but Urbit is designed to be a lot more and to do a lot more. For years, at least since the emergence of Landscape, Urbiters have been talking about a mythical first “killer app” that will lead people to adopt Urbit in droves. It’s the same conversation every Web3 community has had: for all of its growth and economic success, Web3 still has no killer app or use case aside from money (including stable coins) and maybe NFTs.

I’m also beginning to realize that Urbit might not actually need a killer app to succeed. I for one would be perfectly happy with Urbit delivering perfectly functional, boring, calm, quiet computing and apps—because all of the mainstream incumbents are none of those things. I’d love nothing more than to ditch my email, chat and groups, calendaring, and note-taking apps for Urbit. Post-Assembly I think that day isn’t so far off. I’m beginning to realize that Urbit wins with a long, slow, drawn-out whimper, with a deflation of and slow defection from mainstream, centralized, “you are the product” apps, not with a bang.

Actually, there were some other nice apps too. At this year’s Demo Day at the conclusion of the hackathon there were a number of useful projects presented including Urbit-native editors (one with built-in inline code execution, like a better Excel/Sheets), Urbit-native application error reporting and issue tracking, an Urbit-native LLM “personal AI” client, and an Urbit-native decentralized marketplace for anything.

A couple of years ago I migrated from using centralized note-taking apps like Apple Notes, Google Keep, or Evernote to a purely open source, decentralized, extensible setup using Logseq and git for simple markdown files. With the benefit of two years of hindsight I can say it was one of the best decisions I’ve ever made. I intend to eventually migrate nearly everything away from centralized, unaccountable, corporate SaaS. I haven’t gotten there yet—for one thing, multiplayer mode is much harder, whereas my notes are for my eyes only—but the fact that I successfully made this migration gives me hope. I could seriously see myself using %eyas, the Urbit-native text editor, instead of my current solution because it saves me the trouble of needing to keep many devices in sync. This is the first time I’ve seen an Urbit app that solves a real problem for me.

It’s not quite there yet but Urbit is almost actually useful. Another Assembly or two and I think I might actually be using it daily for something other than chatting with other Urbiters. That might not sound like much but it’s actually kind of a big deal.

Thing #2: To Mint or Not to Mint? 🪙

One of the best things about the Urbit ecosystem is the lack of financialization. As a result the people attracted to the project tend to be missionaries rather than mercenaries: you don’t really make money on Urbit (at least not yet, more on that in a moment). Urbiters are there for the right reasons—the tech, the values, the culture—and they tend to stick around.

I think for this reason Urbit may have the highest signal-to-noise ratio of any crypto or crypto-adjacent project. The people I’ve met in the Urbit ecosystem are, by and large, the most interesting, thoughtful people I’ve met anywhere. Unfortunately tokenization and financialization tend to attract the wrong types of people. Investors and speculators have a role to play but every ecosystem needs balance. As I wrote last week, if you have too many of those types (mercenaries, investooors, and generally those looking to make a quick buck) relative to actual builders, it can really hurt the ecosystem. This is NOT a problem that Urbit faces, which is refreshing.

The lack of financialization is also one of the things that many Urbiters I know love about Urbit. Urbit is about many things. Good technology. Good aesthetics. Freedom and independent thought. Calm computing. But it hasn’t historically been about money.

Of course, everything is a tradeoff. The same hyper-financialization that led to rampant speculation, an influx of millions of investors, and hype and scams galore in crypto projects also led to the inflow of hundreds of billions of dollars of funding. Sure, a lot of that money, probably most of it, went into garbage projects that never delivered on their promises, or outright rugpulls. But a not insignificant portion of it also got allocated to legitimate projects. You simply can’t have one without the other.

If crypto is or was seriously overvalued, Urbit as an ecosystem is underfunded and Urbit is undervalued relative to its potential, to the things being built on it today, and to the quality and talent of the people in the ecosystem. One reason is that most mainstream investors and even most crypto investors wouldn’t consider investing in the Urbit ecosystem today for multiple reasons including lingering distaste of the founder (who is no longer involved) and, well, lack of funding. You see, funding is a self-fulfilling prophecy. Investors like to invest in things that they know other investors are investing in. It’s hard to be the first mover. While there are a handful of small funds that have invested in Urbit and its projects, and Urbit was backed by Founder’s Fund and a16z in the early days, no large investor has written a check recently to the best of my knowledge (for Urbit/Tlon directly or for an ecosystem project).

This goes back to financialization: ironically I think the root cause is lack thereof. It’s hard to invest in Urbit. For one thing, the only anointed asset is address space, which is confusing for multiple reasons. It’s nonfungible, there are three types of address space (galaxies, stars, and planets), and the roles and responsibilities of each aren’t totally clearly delineated in Urbit’s current design. Urbiters talk about stars and galaxies as acting as infrastructure providers “at some point in the future,” and possibly receiving revenue streams as a result, but with very few exceptions this doesn’t happen today (I’m not totally clear on why; probably the project just isn’t quite mature enough yet). And perhaps most importantly, unlike with typical blockchain coins and other cryptographic assets, there’s no clear “in-protocol” revenue stream for holders of these assets, especially stars and galaxies. No staking, no burning. Galaxies get a seat at the governance table, which is clearly worth something, but it’s hard to value. The value of a star is even more nebulous.

While the lack of financialization is nice in a warm and fuzzy sort of way—people who hold and invest in address space today tend to do it out of a feeling of stewardship or wanting to support Urbit—it’s not scalable. Urbit is at a stage where, if it does want to continue to grow and achieve its potential, it needs to attract more attention and more capital.

The idea of launching an Urbit-native blockchain has come up several times over the years. Most recently, at Assembly this year, Sunny Aggarwal gave a talk on how to use the Cosmos SDK and some novel cryptoeconomic designs to launch an Urbit-native blockchain with clear roles for each class of address space. You might argue that the world doesn’t need yet another blockchain, but Urbit is Not Like the Others.

For one thing, it has a clear, intrinsic use case, which is extraordinarily rare: Urbit address space, otherwise known as Urbit ID, is a property ledger that requires global consensus on ownership and transfers, which is a perfect application for a blockchain. It’s currently hosted on Ethereum, but it can and should be self-hosted because the Urbit ecosystem is essentially paying tribute to Ethereum (i.e., leaking value to Ethereum) for something it’s perfectly capable of doing on its own. In fact I’d go a step further and argue that outsourcing its property ledger to a blockchain that’s subject to the values and governance of a different community is antithetical to Urbit’s values, including responsibility and self-reliance, but that’s probably the subject for another issue.

For another, Urbit has some Unfair Advantages. Unlike every other public blockchain, it cannot by sybil attacked because all users have to own a planet, which is scarce and which is tied to one’s identity and reputation throughout the network. You cannot do anything on Urbit anonymously; literally every action you take and every message you send is tied to your Urbit ID. It also has a natural set of trusted validators in the form of the galaxies. That’s a really unique, important set of strengths.

People have tried to launch a blockchain and tokenize Urbit before but the community rejected the attempts. The farthest Urbit got was the creation of the Wrapped Star ($WSTR) a couple years ago, but that failed to take off for lack of accountability, marketing, awareness, and liquidity. I’m hopeful that a more thoughtful, well-planned effort would be better received by the community and could go a long way towards attracting the sort of funding the ecosystem and the project need and deserve.

If one could simply “invest in Urbit” the way one can invest in Ethereum or any other chain or ecosystem, by buying a fungible, liquid coin or token, that could go a long way and do a lot of good. I know multiple investors that would be interested. Getting there will require addressing a number of remaining challenges, such as what to do about the inevitable dilution of existing address space holders and figuring out the relationship between a new, fungible token and the existing nonfungible address space. In my opinion it’s an experiment worth trying, but it can’t happen without the support, goodwill, and blessing of the community.

Thing #3: Strengths and Weaknesses 🔩

Sometimes it takes a little while to understand the strengths and weaknesses of a product, platform, or network. As one example we designed Spacemesh to be exceptionally friendly to home miners, but after launching the network it turned out that it wasn’t as easy for home miners as we thought and that it was in fact even friendlier to miners joining pools (something we’re working on addressing).

Urbit wasn’t designed to specialize in anything particular. It’s a general-purpose computer and it was designed to do all of the things that modern computers do. Today that means networking, messaging, identity, content, compute, storage, and all sorts of apps and services that can be built on top of this powerful set of primitives. As it turns out Urbit isn’t equally good at all of these things, and its relative strengths and weaknesses are becoming clearer. This was a big topic of conversation at Assembly and in many of my side conversations.

It’s been a bit of a tough year for the project. One major ecosystem participant, one of the most promising projects and one that raised a lot of money, announced that it’s giving up on building on Urbit because it’s too hard. Another important, promising project decided to launch its own chain and isn’t directly relying on any existing Urbit infrastructure. I spoke to several other builders and projects that are in a similar place: they love Urbit, but they want to ship usable, friendly apps and feel that this is impossible on Urbit today. There seems to be a pattern here: projects that want to build real products today usually end up taking ideas from Urbit but migrating away from the platform itself.

In its defense, as I wrote above Urbit has gotten a lot better than it was a year or two ago. It’s much more reliable and much faster than it used to be. But it still isn’t fast. And there’s still a lot of work to be done. Urbit’s compute model is extraordinarily robust and verifiable, and it’s highly elegant, but it’s very difficult to optimize. It’s single-threaded, and that single thread moves very slowly. Unlike how modern apps run on just about every other platform, Urbit apps are compiled and executed inline, on the fly because Nock doesn’t differentiate between code and data. This makes it impossible to apply modern optimization techniques, the things that make modern apps run fast on modern hardware, such as branch prediction and adaptive optimization (note: I may be wrong about this, and if I am, please tell me). The developers I spoke to also reported a lot of frustrations with the network layer: Urbit offers guaranteed only once delivery but makes no promises about when those packets will arrive, and peer discovery is quite difficult today.

Of course Urbit also has many unique strengths. It handles things like identity, encryption, and networking for you. These things are provided to applications and indeed to Hoon itself as primitives so developers don’t have to think about them at all. I’ve complained about how broken identity systems such as usernames and passwords are many times; this alone is a huge advantage of building on Urbit. While Urbit’s compute model isn’t the fastest, it turns out that it’s especially well suited to certain applications such as writing compilers, since compilers rely on things like tokenization and tree manipulation, which Urbit is very good at. There are probably other applications that it’s especially well-suited for. Finally and most importantly, Urbit is trusted computing: unlike just about any other operating system, your Urbit is cryptographically yours and you own and control it completely. No other application architecture today can offer this.

It’s unclear whether these strengths are enough to overcome Urbit’s weaknesses for application developers and users, or how long it’ll take until the weaknesses have been addressed to a sufficient degree. They’re definitely being worked on but some of them, such as the compute model, are truly core to Urbit’s design and I don’t see them changing anytime soon. Compute can be sped up to some extent through the runtime and a tool called jets, but without the additional speedup of multithreading and various other optimizations it’s unclear if Urbit apps will ever be competitive for many tasks. Elegance is nice for art and research but at the end of the day users want functional applications and developers want to build functional, useful, user friendly applications. Today that’s simply too hard to do on Urbit. I think this is the single biggest reason Urbit has struggled to escape the “art and research” phase.

There’s a rule of thumb in the blockchain world that you should split your application architecture and run most of your app “off chain” (which is fast, efficient, and free) and only the “consensus critical” portion (e.g., minting, burning, transferring coins, or updating a ledger) on chain (which is slow and expensive). It seems that such a model might work well for Urbit: only run on Urbit what needs to be run on Urbit—basically, the portion of an application that needs to be “trustless,” verifiable, and bound to a user’s identity (i.e., the portion that makes use of Urbit’s powerful primitives). Everything else can probably just run natively on a user’s device or in their browser, and the two pieces can communicate using an API. This isn’t a terribly well-formed hypothesis and as is always the case with application architecture the devil’s in the details but I hope to build a proof of concept “hybrid” app like this to test it. Let me know if this is something you’ve seen or built, or would like to work on!

Why You Should Invest in Spacemesh

https://rettig.substack.com/p/why-you-should-invest-in-spacemesh

Every community member, every node, every line of code is another coin in the (cactus?) bank. Those coins add up over time. Photo by Annie Spratt on Unsplash

Subscribe now

One of the reasons I joined Spacemesh back in 2019 is that I felt that the team had raised a reasonable amount of money from good investors. I had been a blockchain core developer for a couple of years at that point and I couldn’t imagine that it would take more than $10 or $20M to build a novel layer one blockchain. Raising $100M felt excessive, and raising $4 billion felt totally unethical.

Fast forward a few years and, well, a lot has happened. We made a lot of mistakes and some of the money we raised was wasted (although every team makes mistakes and hindsight is 20/20). The tech proved significantly more complex and harder to build than we expected and it took longer to launch the mainnet than we expected. We did finally launch just over 100 days ago and things are going pretty well, but the downside is that we’re almost out of money. However, Spacemesh raised that money to design and ship the network, and we did that successfully, beating even the most optimistic expectations along some dimensions, so I feel okay about that. We did what we promised to do with the resources we were given.

I’ve had a number of conversations with investors, current and potential, over the past few weeks and I thought I’d share some of what I discussed with them and some of what they shared with me. I wrote a few weeks ago about why you shouldn’t use Spacemesh; this week I’ll share my pitch for why I think you should invest in Spacemesh today.

One important caveat: I’m using the term invest here holistically and figuratively. This is not financial advice. I’m not a financial advisor and you really, really shouldn’t listen to me on financial matters.

Thing #1: Missionaries 📿

I’ve been a member of and contributed to around ten different blockchain communities over the years: some big, some small, some well-funded and some less so. I’ve spent countless hours getting to know the members of these communities on channels including Twitter, Discord, Reddit, Slack, Telegram, and Gitter. I’ve been active in both the theory and practice of governance. I’ve met these communities face to face at dozens of conferences. If there’s one thing I understand and there’s one place I feel at home it’s in the technical blockchain community, and the open source community more generally.

Each community is different but they all have some things in common. One of the most important is the missionary-mercenary dimension. Broadly speaking a community is dominated by mercenaries when people are there primarily to make money. Mercenaries aren’t necessarily uninterested in technology, they’re not devoid of values, and they’re not bad people, but they are opportunistic and transactional which means they’ll bolt as soon as something more profitable or interesting comes along. Missionaries, by contrast, are really committed to a cause. They stick around through thick and thin and adversity only serves to strengthen their resolve. They’re your strongest possible advocates: they recruit friends, colleagues, family members and strangers to your project and community. They can’t help but talk about the project because they’re truly passionate about it. Missionaries aren’t uninterested in making money but it’s not high on their list of priorities. They’re driven by values including curiosity, passion, and loyalty.

Every community has some missionaries and some mercenaries and there’s a place for both in any healthy ecosystem. But you need a balance: for your ecosystem to thrive and persist, you need at least a healthy, committed core of missionaries. I’ve participated in a number of communities with few to no missionaries and it shows; it’s one of those things that’s hard to quantify but you know it when you see it. When the main thing people in a “community” talk about are prices and trading strategies, go to market and profit margins, pumping and dumping, etc., that’s not actually a community, it’s a trading floor. In my experience the vast majority of crypto “communities” are in fact trading floors.

Spacemesh is the opposite. In this respect it’s the healthiest community I’ve ever seen. People do occasionally talk about coin price, exchanges, and profitability, but not very much and we discourage it. We’ve repeated certain messages like “exchange listing is not our priority right now and we don’t intend to pay for it,” and “we have no liquidity and cannot help with market making,” and “coin price means nothing in the short term and with no meaningful liquidity” so many times that I’ve seen community members saying it to new arrivals on our behalf (that’s how you know your values are contagious!).

While they don’t talk much about profit, the community talks about lots of other things: about how to build mining rigs, about headaches and troubleshooting, about upcoming features and upgrades, and about their vision for the project. I’ve engaged in numerous deep, interesting conversations with Spacemesh community members on topics ranging from the meaning of decentralization and how to achieve decentralized governance, to the social philosophy behind Spacemesh, to how the project might change the world. I look forward every day to logging in and catching up with the latest memes and inside jokes. The community is not large, not even by crypto standards, but it’s extraordinarily high quality and very values-aligned. It’s healthy and it’s organic and it’s growing steadily. The fact that the community has maintained its high quality as it’s grown over the months and years really says something about what makes Spacemesh unique.

Going back to missionaries vs. mercenaries: like I said, you sort of just know when you’re in the company of mercenaries. It never worked for me; I was never able to integrate into that sort of community. It never felt organic and it always felt like people were there on false pretenses: like everyone was really just there to make money but no one wanted to admit it so everyone was constantly lying to themselves and to others. I saw this especially in the communities of projects that raised huge sums of money and splashed out lavishly on marketing while underinvesting in things like values and constitution.

By contrast, Spacemesh is more like Burning Man: it’s so annoying to get there and remain there that only committed, values-aligned people make the hassle and stick with it. It’s getting easier but it’s still not “easy.” And you’re not going to make money there anytime soon, so the people who remain are there for other reasons. Communities of mercenaries always have trouble because no matter how much money you have, it will eventually run out, and what then? There’s always another profit opportunity, always someone with more money. There are limits to what money can buy: it can buy eyeballs but it can’t buy you a healthy, thriving, organic community. Only good tech and good values and slow, steady growth can achieve that sustainably.

I have my moments of frustration with Spacemesh and with crypto more generally. But the Spacemesh community keeps me going and makes me excited to start work every day. If I were an investor, that’s what I’d want to invest in: the healthiest, most sincere, most authentic, organic, committed community: in other words, the community of missionaries. This is the single most important KPI I’d pay attention to as an investor because it’s the single best indicator of long-term success. That’s what Bitcoin and Ethereum got right in the early days and I think Spacemesh is off to a great start in the same direction.

Thing #2: Decentralization (It Still Matters) 🤹‍♀️

Blockchain didn’t appear out of a vacuum. Bitcoin emerged in a particular place, at a particular time, for a reason and with a mission: to create a decentralized, unstoppable form of money that’s beyond the reach of the nation state. While we sometimes tend to forget, decentralization has always been at the heart of this movement.

Lots of things have happened in cryptocurrency and blockchain since then. Ethereum and other smart contract platforms, coupled with ongoing developments on Bitcoin, have made it possible to build a very wide range of applications including things much more complex than money. The cypherpunk ethos that gave rise to Bitcoin and made this entire movement possible still burns strong in the Bitcoin community and to a lesser extent in the Ethereum community, but it’s fading. The overall trend is towards centralization and the pressures in that direction are quite strong: usability, regulation, and the complexity of decentralization all drive projects in this direction. Decentralization is very, very hard. And without an unwavering commitment to the cause we’ll end up back where we started: centralized infrastructure and money and data in the hands of governments and big tech companies.

Decentralization is really hard but it’s also really powerful. The cypherpunks knew this, and it’s why a truly decentralized money like Bitcoin was their holy grail. Anything less decentralized would be shut down or captured by the state or by another powerful actor. The cypherpunks lived through the first crypto wars of the nineties and saw other, earlier attempts to create digital money fail. They knew that, given the chance, the state would try to shut down or capture any new digital money.

But that was a generation ago and we have a short memory. Our community today feels like it’s composed of a new generation of kids who grew up hearing their parents talk about a war they fought a long time ago. As a result of their experiences, the parents are strongly committed to a certain set of values and principles. To the extent that the kids follow the same values and principles, they do so out of a sense of loyalty to the parents and out of a form of cargo culting, without understanding themselves why those principles and values matter so much. This happens to every renegade social movement: over time it goes mainstream and gets diluted, or simply dies out gradually as later generations care less and less about the cause.

The cryptocurrency movement today is going through this, and in the process it’s splitting into two. The first half, the regulated half, is going mainstream through centralized exchanges and KYC and applications that are DINO (decentralized in name only) like NFTs. The second half, the dark, cypherpunk half, is being strangled by regulation and uncertainty, and is slowly dying because most people don’t, it turns out, actually care very much about abstract principles like decentralization or censorship resistance. Most people just want applications that are easy to use and that work for them (and, maybe, offer them the opportunity to make money), and truly decentralized applications ain’t it.

Even if most people don’t care about it, however, decentralization does still matter for all of the reasons it mattered in the first place. It’s the only way to assert our liberty and our sovereignty in a world that’s trying to control us, to stifle us with absurd laws and social dictates, more every day. It’s the only way to fight censorship and cancel culture. It’s the only way to stop putting trust in broken, corruptible, centralized human institutions.

Blockchains that are DINOs and the applications that run on them are a step backward, not a step forward for society. Sadly, this includes the vast majority of both layer one and layer two platforms today and the lion’s share of applications. Even applications that are decentralized on the backend and run on a platform with a reasonable degree of decentralization, such as Ethereum, are still too easily controlled when their centralized frontends disappear: witness what happened to Tornado Cash last year.

Ethereum is the second most decentralized blockchain after Bitcoin, and the most decentralized smart contract platform. But even in Ethereum the trends aren’t good. A worrisome portion of Ethereum blocks today are produced by validators that are censoring non-OFAC compliant transactions. And trends like MEV, rollups, and restaking all spell trouble for decentralization because all have centralizing tendencies and pressures.

That leaves Spacemesh in a category of its own as a layer one smart contract platform that’s bucking the trend and sliding the “decentralization” slider to max: we launched 100 days ago and we already have around 15,000 nodes, which is more decentralized than Ethereum by some measures. To be clear, this is not an easy thing to do. Being so decentralized makes our lives much harder. It makes the network much harder to manage since so many nodes are running on unreliable home internet connections and hardware. It makes upgrades hard: rather than coordinating a handful of enfranchised, known validators, we need to coordinate a community of thousands of home miners, many of whom aren’t terribly tech savvy. It means our block time is longer and slower than most other blockchains (although we have some ideas about how to improve that).

But it’s also a form of superpower. It means that Spacemesh can run types of applications that cannot run on any other platform: applications that require serious decentralization, sovereign-grade censorship resistance, and the other things the cypherpunks were after. It means that no adversary and no state actor can shut down the network simply by knocking on a few doors. And those applications are the really important ones, the threatening ones, the ones that will do the most to promote human liberty and flourishing.

Thing #3: Tech 👨‍🔬

Technology was a good reason to invest in blockchain four or five years ago. Bitcoin was of course revolutionary, as was Ethereum at the time. Solana has done some interesting, novel things with its technology, as have a vanishingly small number of other layer ones and a handful of innovative layer twos. Overall however layer one technology has largely become commoditized at this point: the vast majority of new blockchains that are launched today do so using “off the shelf” technologies like EVM or the Cosmos SDK. There’s still innovation happening, of course, but it tends to be layer two projects at the cutting edge of trends such as zero knowledge proofs and MPC. No one is building novel consensus mechanisms anymore (everyone uses proof of stake) and no one is building a new VM anymore (everyone uses EVM or a variant, or Wasm).

The technical innovation that is happening today at layer one tends to be small things “at the edges” of the protocol: tweaking the P2P layer, gradually improving the VM by adding new opcodes, or introducing new standards like data blobs and account abstraction. While these will lead to incremental improvements in transaction throughput, cost, and UX, none of them enables things today that were fundamentally not possible before. They’re optimizations.

For better or for worse we chose to go a very different direction with Spacemesh. We didn’t take an off the shelf consensus mechanism, we built our own. We didn’t take an off the shelf account model, we designed our own. And this is just the tip of the iceberg. There’s PoET, which permissionlessly lets one server timestamp the passage of time for any number of other nodes, and PoST, which allows initialization and management of the identity files that make miners eligible to participate in Spacemesh consensus. There’s Smapp, a novel frontend for managing all of these things—no other blockchain that I’ve seen has anything like it.

Then there’s the VM. We launched Spacemesh with a novel account design but a barebones VM that only runs a handful of hardcoded smart contracts (known as precompiles). We’re working on a full VM design now and expect to release a proof of concept in the not too distant future. As we explained in a position paper on the topic, we’re going to push the limits in the VM, too. It’s probably going to feature a based rollup design where layer one miners act as a decentralized network of sequencers, for one thing. And there will be other exciting, novel, cutting edge features. Stay tuned for more on this.

Lots of people think we’re crazy for designing and building so many new things on Spacemesh. In retrospect, maybe they’re right. We certainly didn’t expect it would take so long to design and build, and Spacemesh did get more complex in certain ways during this process (we simplified where we could, but it definitely got more complex overall). The biggest flaw of Spacemesh is its complexity. In retrospect we could’ve probably saved a lot of time by forking an existing platform and making some changes. But we buy a lot of nice things with that complexity, such as the fact that even small home miners can mine directly, permissionlessly, and profitably forever, without needing to join a pool or acquire stake ahead of time. It’s unclear whether we could’ve achieved any of that with a simpler, more standard design.

Investing in Spacemesh means investing not only in these specific core technologies, it’s also an investment in the idea that novel technology matters. It’s a statement that blockchain technology, Web3 technology, and the technology more broadly that powers permissionless, public, decentralized networks is not commoditized because frankly it’s not very good yet. It’s a statement that there are still a lot of unexplored corners in the overall design space that are worth exploring; in other words, the dominant blockchain design has not yet emerged. (This is almost empirically true: if it had, it would’ve dominated by now. But the landscape of blockchain architecture is still evolving so rapidly that it makes your head spin.)

It’s still way too soon to tell if Spacemesh will work, but it’s off to a good start, and an investment in Spacemesh is a statement that this experiment is worth trying. This is true even in 2023 when the rest of the ecosystem has coalesced around a small set of imperfect technologies like proof of stake—in fact it’s especially true for this reason. An investment in Spacemesh is a statement that technology matters and the best tech will win over the long run. We’re not naive and we know that projects don’t win only or even primarily because of the tech, but we do believe that good tech still matters a lot and we won’t sacrifice on this.

Thanks for reading Three Things! Subscribe for free to receive new posts and support my work.

On Israel-Palestine

https://rettig.substack.com/p/on-israel-palestine

The search isn’t going terribly well at the moment, but all hope is not lost. Photo by the author.

Subscribe now

I’ve been writing primarily about two things lately: Spacemesh, and miscellaneous “small” topics. This is easy, fun, and comfortable. I have a rhythm and I can write confidently about these topics. I know roughly how long it’ll take and, once I start writing and come up with the list of things for the week, I can visualize roughly what the final product will look like.

But I didn’t start this newsletter to write about small, comfortable things. I didn’t start writing publicly in the first place to do so. Writing is many things to me. It’s a chance to explain and communicate, yes, but it’s also a chance to learn and explore, to be vulnerable and to make mistakes. The only way to learn and grow is to write about bigger, less familiar, less comfortable things, and to make mistakes in the process.

I’ve written about big topics before. I haven’t done so recently because it’s exhausting and time consuming. But I’m doing it this week because I feel compelled to do so. I cannot ignore the Israel-Palestine conflict because my father was a Holocaust survivor who fled there and spent many years there. It left a deep impact on him and he told me stories of his time there throughout my life. Honoring his legacy requires that I not remain silent about the topic. Israel-Palestine is thus a place that’s played a critical part in my own family story, as it has in the stories of countless other families, and it’s a place that’s impressed me and moved me deeply on the occasions when I’ve visited.

Nearly all the coverage of the crisis that I’ve seen and nearly all the conversations I’ve had have been disappointingly one-sided. I’ve also heard a frightening degree of ignorance regarding the complex and nuanced history and present reality of the region and the conflict. One of my goals with this newsletter, and indeed one of my goals in life, is to explore nuance and contradiction and to grapple with the most difficult questions and topics. This is definitely one of them, and exploring and writing about this topic has been uncomfortable and exhausting. But the only chance we stand of ever resolving deep, long-lived conflict, including this one, is through nuance and discomfort.

This should go without saying but, for avoidance of doubt, any ideas expressed here are mine and mine alone.

Thing #1: Israel Must Defend Itself 🇮🇱

“There is nothing in this world—not even the cruel occupation—that can justify harming innocent people. Nothing. I have always categorically opposed harming civilians, and I will continue opposing it with every fiber of my being. It is a violation of our collective humanity.” – Ayman Odeh

One thing must be said upfront: the attacks on Israeli civilians a few days ago are atrocious and must be condemned in the strongest possible terms. Nothing can excuse assaulting and killing innocent civilians in their homes, at bus stops, and at a music festival, and taking civilian hostages. No moral code, no law, not in Israel nor Palestine, not in Judaism nor Islam nor any other place or creed, could condone such behavior, not by any stretch of the imagination. The attackers who carried out these attacks may have thought they were acting in defense of their cause or in the name of some twisted, misguided form of justice or retribution, but like just about every other terror campaign ever perpetrated they are delusional. They’ve already caused untold suffering not just for Israelis but for their own people and they’ve done irreparable damage to their own cause. Violence is never the answer; violence against a powerful adversary with the power and the will to carry out harsh retribution is also plain stupid.

I know many Israelis and what every single one of them wants is peace with Palestine. Some of them visit Palestine regularly and deliver aid or do humanitarian work. Some of them employ Palestinians. Many of them feel deep empathy for the suffering of the Palestinians and feel terrible about Israel’s role in it. Even the ones who don’t do these things and don’t feel empathy still wish for peace and feel frustrated that it’s not possible because of a constant stream of violence emanating from Palestine.

In my experience and opinion, when Israelis respond with force, they do so reluctantly and only because they feel they have no other option. I’ve never met an Israeli who bears any ill will towards the Palestinian people in general or is opposed to the existence of Palestine. I’m not saying those people don’t exist, I’m sure they do, but they are an extremist minority, and every place has its extremists.

Israel, like any nation and any people, has the right to exist, to defend itself, and to strive for peace. It has no more or less right to exist and occupy the land than Palestine and its people. Whatever your opinion or interpretation of history—and it is long and complex—the Israel of today is a thriving, legitimate nation state that, broken though its politics may be, has every right to exist and to defend itself.

Any terrorist organization like Hamas that holds as one of its raisons d’etre that Israel must not exist and that it strives to completely destroy Israel will never be a constructive negotiation partner. Whatever shred of legitimacy Hamas may have had prior to the brutal assault of a few days ago has been entirely forfeit. Nation states and organizations that do business with Hamas should declare it a terrorist organization and cease to do so.

As part of defending itself Israel has the right, protected under international law, to pursue Hamas and to capture or kill its leaders and fighters.

Thing #2: The Bigger Picture 🇵🇸

“Mr. Netanyahu has used every day in the prime minister’s office and every ounce of his power to try to convince the world that safety for Israelis must come at the expense of safety for Palestinians and to block all pathways to peace… We see the extent to which he is willing to burn our shared homeland to the ground rather than bring about long-term solutions that will deliver safety and a good life to all of us, Palestinians and Israelis alike.

“And we are also the ones who know, deep in our bones, which are made of the soil of this land, that the answer is peace. The only way we can fulfill our responsibility to the nation of our youngest ones—and to ourselves—is to recognize the nation of Palestine and the nation of Israel and to establish a State of Palestine alongside the State of Israel.” – Ayman Odeh

The other side of the story is far more complex. The Israeli-Palestine conflict is one of the world’s oldest conflicts, dating back somewhere between 60 and 2000 years depending when you start counting. It’s not possible to really understand what’s going on today without some understanding of and appreciation for that history, especially the last 100 years or so.

Israelis and Palestinians both have a legitimate claim to the land and neither group has intrinsically more right than the other. To say that the region has a long and complex history is a severe understatement, and I cannot even begin to do that history justice here so I won’t try, but I’ll share a little bit of helpful context.

The land that today comprises Israel has traded hands many times. The modern conflict began at the end of the 19th century when Palestine was part of the Ottoman Empire and when the Zionism movement began. At the time Palestine was largely pastoral, consisting primarily of farming villages. There was no notion of Palestinian nationhood, and there was only a tiny number of Jewish settlers. But Jews began to migrate from Europe in gradually larger numbers, influenced by the message of Zionism and the belief that they’d never be welcome or safe in Europe, particularly Eastern Europe, and that the Jewish people could only be safe if they established their own nation state in the Holy Land. After the first World War British Mandate Palestine was established with a specific mandate to establish a home for the Jews, and during and after the second World War European Jews began to arrive in much larger numbers, fleeing persecution, pogroms, and antisemitism.

Unfortunately this was also when Israelis began to occupy land and even homes that had been occupied by evicted and dispossessed Palestinians. The situation got much worse for Palestinians after the Israeli War of Independence of 1948, known to Palestinians as the Nakba or “disaster” when 700,000 Palestinian Arabs were expelled from their homes. Since its swift and decisive victory in the Six-Day War of 1967, Israel has had the upper hand. It has asserted military dominance over its neighbors and it has increasingly circumscribed the lives of everyday Palestinians, who must now suffer through checkpoints in order to move around, especially in the West Bank, sometimes multiple times per day (while Israeli settlers travel with ease on different roads, bypassing checkpoints entirely). Life is even worse for Palestinians in Gaza, which is crowded and very poor and has been subject to a blockade on imports of many essential goods for decades.

In 2022 the unemployment rate was 47%, and 70% for the young; eight-hour blackouts are a daily occurrence. – The Economist, A Short History of Gaza

Hamas arose during the first Intifada, or uprising, of 1987 and subsequently won elections in 2006. Since then it has run Gaza as a de facto autocratic state and there have been no further elections. Despite numerous terrorist attacks and a stated aim of destroying Israel, over the years Netanyahu governments have propped up the organization as a partner with which it can do business, supposedly on the grounds that, with Hamas in power, a lasting peace and a true two state solution would continue to be unviable. Hamas indirectly receives hundreds of millions of dollars of support from foreign sources including Qatar, money that actually passes through Israeli hands on the way to Gaza. I was shocked to learn this and thought it sounded like conspiracy theory, but it’s well known and well documented.

This has led to a very unique, complex, delicate situation where Hamas is “at the same time a religious idea, a social movement, a political party, a government and a hybrid militia wedded to terrorism,” as The Economist describes it. And it’s embedded very, very deeply into the fabric of Gazan life. It intentionally uses civilians as human shields and situates weapons and other strategic assets in mosques, schools, and hospitals. It still has quite a lot of support in spite of its brutal, illegal tactics.

For this reason, however—because it’s so deeply entrenched—I don’t think Hamas can be removed easily, or even with great difficulty. Even if we assume that Israel is willing and capable of staying the course and removing its leadership and offensive capabilities, stifling political and religious ideas isn’t so straightforward, especially while the Gazan situation remains as dire as it is. Once Israel withdraws as it inevitably must, Hamas may rise again, and something even worse may take its place. This is indeed the lesson of history: in 1982 Israel invaded Lebanon to root out the threat from an earlier terrorist organization known as the PLO (Palestinian Liberation Organization), and after it withdrew, a much greater threat took its place in the form of Hezbollah which to this day threatens Israel from the north.

It seems pretty clear to me that as the situation in Gaza has become more dire its people, including Hamas militants and extremists, feel that they have less and less to lose. This is doubly so today as the Abraham Accords continue to play out and normalization of relations between Saudi Arabia and Israel looks ever more likely. If Saudi Arabia recognizes Israel without any accommodation for or demands regarding Palestine, Palestinian liberation may begin to feel like a truly lost cause. Derailing this process is almost certainly one of Hamas’s goals in the recent attacks.

As if all of that wasn’t complicated enough there’s also Iran, which is known to support not only Hezbollah but also Hamas and which seems to have had a hand in planning the sophisticated assault. Iran has seen its influence in the region wane in recent years, and it too is opposed to a Saudi-Israel alliance since this would mean two of its enemies effectively teaming up against it.

Israel has an impossible task ahead of it, and it doesn’t seem to have a clear plan for what comes next, the “day after” a victory. In this respect it feels a great deal like the United States in the wake of the 9/11 attacks, and the risk is that it ends up in a similar situation to that of the United States in Iraq and Afghanistan, without a long-term plan.

As if this weren’t bad enough, Israel is going into this crisis during a low point in trust. Many Israelis have lost faith in Netanyahu, who has built a coalition government including some very extreme figures, who has been trying to make legal changes to the Supreme Court that have angered many liberals and secular folks, and who has been very focused on settlements in the West Bank at the expense of defense around Gaza. The current government is right wing, militarist, and anti-Palestine, and for years has been totally unwilling to entertain the idea of a two state solution (the only viable option on the table for establishing long term peace).

While the primary responsibility for terror attacks of course rests with the perpetrators, in light of this history, failures of governance, and of the desperate situation in Palestine, it’s not right to say that Israel bears no responsibility or accountability. Anyone who truly believes this is misinformed and/or has no moral compass. Israel has been playing with fire for a long time and has refused to come to terms with the reality on the ground in Palestine. The Palestinian situation, in particular Gaza, is and for a generation or more has been totally unstable and unsustainable. In retrospect, given the tragically long history of similar events and the unresolved conflict, this most recent event was to some degree foreseeable and also should’ve been preventable.

As if the buildup of Israeli troops near Gaza isn’t scary enough, the United States has sent a carrier group to the region and is providing logistical support to Israel, and President Biden visited this week to show support. Israel faces a serious and growing threat not only from Gaza but also from Hezbollah in the north and from distant Iran, which as mentioned has been conducting a proxy war against Israel and could potentially develop nuclear warheads quickly. The conflict matters so much because it destabilizes the entire region and because it risks growing into a much bigger conflagration.

While dysfunctional political processes on both sides are to blame for the present situation, ultimately the real cause is extremism on both sides. On one hand, Hamas and some other Palestinians believe that Israel doesn’t have the right to exist; and on the other, hardline Israelis, including members of the current government and those who support the Israeli settler movement, feel the same way about Palestine. As long as extremists rather than moderates are in the driver’s seat there will never be peace. A starting point then is for both sides to promote reasonable, cooler headed centrist narratives and sideline the extremists.

Thing #3: Light in the Darkness 🕊️

“The only real revenge for murder is achieving peace.” – Dr. Izzeldin Abuelaish

I wrote previously in the context of the pandemic and of the Russia Ukraine conflict that the bright side of crisis is that it can help unstick things that have been stuck for a long time. Humans are stubborn and shortsighted and it often takes a true crisis to push us to change our minds and take action, to realize the error of our ways and course correct. Sadly, this is human nature.

It would be terrible if, when this crisis passes, the status quo continues. If Israel reoccupies Gaza, carries out operations against Hamas, and then withdraws without any meaningful improvement in the political, economic, and social situation in Palestine, it virtually ensures that the endless cycle of violence will continue.

The worst thing that Israel can do is play into Hamas’s hands and respond the way it wants and expects: with a massive invasion and enormous collateral damage, generating yet more tragic images of wounded and dead Palestinian children. Or with a long term occupation that alienates it from other Arab and Muslim states, and indeed from its supporters in the West. The images and reports of the unfolding humanitarian crisis in Gaza since the attacks and since Israel declared an embargo on food, water, and electricity are already having this effect, playing into Hamas’s hands and causing widespread outrage and condemnation. Things are not going well.

The options are limited. Palestine clearly cannot eliminate Israel. Israel cannot eliminate Gaza, or Palestine more generally. There’s nowhere else for the Palestinians to go: neighbors including Egypt and Jordan refuse to accept any refugees because they don’t want to be seen abetting Israel in expelling its Palestinian population. And the Israelis obviously aren’t going anywhere. Neither group would leave even if given the option to do so.

Which means they must find a way to live together, side by side, in peace. A one state solution is totally unpalatable to Israel (since it wouldn’t be Jewish majority for long) and probably to many Palestinians as well. True apartheid, where Jewish and Muslim citizens would have different rights, is also not a viable option. This leaves the two-state solution as the only viable path forward. And the only way that can happen is Palestinian self determination: the Palestinians must find a way to replace Hamas with better governors, with leadership that’s more reasonable, constructive, and palatable to Israel and the rest of the world, whether that’s the Palestinian Authority or something better. This is a golden opportunity to do just that: to heal political rifts and unite around a positive vision for the future. Any viable, long term solution will require hard work and sacrifices on both sides; if after even this horrendous crisis Gazans are unable to take this necessary step then the cycles of violence, terror, retribution, and agony cannot but continue.

There is one light in the darkness: the recent increase in stability and peace throughout the region. As The Economist reported recently the Middle East, for all of its flaws, is on the verge of a renaissance. Gulf states are in the process of successfully weaning themselves off oil as the main economic engine. The region is playing a bigger, more significant role globally. Old conflicts elsewhere in the region, such as civil wars in Syria and Yemen, are being de-escalated and political Islam is on the decline. Authoritarian regimes including Saudi Arabia are gradually liberalizing in limited but important ways. Through the Abraham Accords Arab states have begun to recognize and normalize relations with Israel.

In other words, Israel and Palestine should have the wind at their back. If, somehow, they’re able to come out of this crisis with a detente and take steps towards long term peace the region will embrace them and these trends will only accelerate. It’s a long shot and may sound like a pipe dream at this moment, but I pray that this is the final crisis, the one that gets things unstuck and finally makes peace possible.

Spacemesh in the Wild

https://rettig.substack.com/p/spacemesh-in-the-wild

A live view from the Spacemesh network. That little minnow in the top left is my node. Photo by Kris-Mikael Krister on Unsplash

Subscribe now

The difference between theory and practice has always fascinated me. It sort of blows my mind that, no matter how powerful our computers and how sophisticated our algorithms, it’s impossible to simulate the way things actually work, even relatively simple things. You can’t create perfect laboratory conditions to test how something will actually work in the real world no matter how you try. The thought is tempting and lots of smart, well intentioned people have tried many times in many fields, but it just isn’t possible. Theory and practice just aren’t the same. It’s like an immutable law of the universe.

What’s even more interesting, you can’t perfectly explain why. Because if you could explain the difference, i.e., if you could explain why your theory is wrong, then by definition you could fix your theory. And you cannot. So by definition your theory is actually wrong and by definition the reason is unknowable. It sort of breaks the brain, doesn’t it? A bit like Gödel’s incompleteness theorem. I wonder if there’s an incompleteness theorem of theory.

One reason theory and practice differ is the observer’s paradox. This is true of all software and of all products more generally. Your users won’t behave the same way during testing that they do in production. In theory, there is no user. In practice, there is, and the simple fact of adding the user already means your theory is incorrect and incomplete. If there’s one thing theory is bad at, it’s predicting human behavior.

How does this relate to Spacemesh? We spent years designing, building, and testing Spacemesh in the lab. Then we finally launched it a few weeks ago, and we’ve learned a great deal since then. Here are some of the things we’ve learned and some of the things we got wrong—i.e., ways in which our theory didn’t line up with reality in practice.

Thing #1: P2P is Hard 👬🧑‍🤝‍🧑👭

“In theory, theory and practice are the same. In practice, they are not.” – Einstein

In theory, a network is a graph with nodes and edges: in our case, node software and P2P connections among them. Nodes have properties such as computational power and disk space, and edges have properties such as bandwidth and latency. It’s pretty easy to simulate such a graph, to build a simulator with many nodes that pass information around in peer to peer fashion.

In practice, however, not all nodes are created equal. Nodes in a real P2P network have all sorts of properties that aren’t captured by the reductionist model described above. Most importantly they have operators: human beings that get some things right and mess other things up. Humans that are running other applications on the system that’s also running the node. Humans that sometimes follow advice and do what they should do (from the system operator’s perspective), e.g., keeping their software updated, but more often do something else, something totally unpredictable. Sometimes they make strange changes to config settings. Sometimes they run many nodes on a single system, and occasionally they even run multiple instances of the same node at the same time, even though this is dangerous and you make it very difficult for them to do this. (Real humans have an uncanny ability, it turns out, to remove obstacles and safety checks and do just about everything you expect they never would or could.)

Every application on the Internet relies on exchanging data with another system. Most applications are client-server and most servers are pretty reliable: they sit in a data center on a fast, high-bandwidth Internet connection, they don’t run lots of other applications, and they’re managed by professionals.

None of this is true for a P2P network. Running P2P networks is hard for all of the reasons described above. The nodes are horribly unreliable. They come and go. They have unbelievably bad Internet connections: high latency, low bandwidth, and sometimes they disappear when it rains (seriously). Sometimes they have good days and sometimes they have bad days. All of this is nearly impossible to simulate in the lab, and it’s therefore impossible to know how your network will perform in real world conditions, especially when you have fragile things like consensus mechanisms with synchrony assumptions.

It turns out that despite originally being designed as a P2P network, the modern Internet was built for client-server use cases, not P2P. Most ISPs make it very difficult to run P2P applications at home, and some make it borderline impossible. They block inbound connections. They rotate IP addresses. They engage in a horrible, disgusting, no good, very bad practice called CGNAT that breaks the most basic tenets of the design of the Internet (that each node has its own IP address) and make running P2P infrastructure extraordinarily difficult. I’d never heard of CGNAT a few weeks ago; now I know more than I’d like to about it, and I wish I’d never heard of it. Various techniques such as hole punching exist to work around these issues, but in our experience even these don’t work in many cases.

To some extent all P2P networks, including other blockchains, run into these same issues. But most other blockchains don’t rely to the extent that we do on ordinary people running nodes on ordinary home computers and ordinary home Internet connections. Spacemesh is truly P2P in this sense, in the original sense. Most Bitcoin and Ethereum nodes are hosted on cloud infrastructure providers or in data centers, and for dPoS networks like Solana basically all are; as far as we can tell very few Spacemesh nodes are. This is a really, really good, exciting thing, since the goal of Spacemesh is maximal decentralization, but it makes running the network very hard, much harder than I expected. We didn’t expect that we’d be spending as much time troubleshooting the P2P network itself as we have been; we expected to be spending our time higher up the stack, on the protocol. Hard lesson learned: you simply cannot take the network layer for granted in the case of a P2P network, especially a really decentralized one with many home users.

For a long time I’ve long had an idealistic vision of a swarm of ordinary home nodes coming together to give rise to a newer, better Internet, starting with P2P projects like Spacemesh. I now understand that that goal will be significantly harder to achieve than I had imagined, because the network itself is so hard to get right and because we’re fighting an uphill battle against an Internet designed to serve us content rather than let us host it ourselves.

The upside is that, once we do figure out the network, we have an extraordinarily powerful new type of infrastructure that we can build incredible things on top of. We’re off to a great start.

Thing #2: Classes of Users 🐟🦈🐋

“Everyone has a plan until they get punched in the mouth.” – Mike Tyson

One of the most important things you need to do when building a product, and also one of the hardest, is knowing your customer. It sounds very Paul Graham-y but it’s true: if you had to come up with a single factor that differentiates successful startups from unsuccessful ones, you could do worse than: how well do they know their customer?

This is another important difference between theory and practice. In the lab, by definition, there is no customer. There is no user other than you, the designer/builder. Incidentally this is why it’s often a very good idea to build things for yourself and people like you, but this isn’t always possible. It’s also why it’s important to launch your product as early as possible, even before it’s ready, and to get it into your customer’s hands as soon as possible. Naively, this is so you can learn their preferences; in fact, it has at least as much to do with figuring out who your customer is in the first place. WIth very few exceptions, startups tend to get this wrong initially.

We got this wrong initially. As I explained previously, we envisioned two classes of Spacemesh users, at opposite ends of a spectrum. At one extreme we expected there to be small home miners, otherwise known as guppies or minnows. We expected these to be overwhelmingly young gamers, with some degree of tech savviness but without coding or devops expertise and without lots of resources. At the other extreme we expected some whales: large, professional, industrial operations with lots of resources and equipment.

What we didn’t expect is that the largest contingent, as far as we can tell, is somewhere in between: hobbyist home miners, affectionately known as sharks. They’ve invested a lot of time and money in setting up powerful mining rigs for other networks and they’re interested in Spacemesh to turn a profit but also as a learning experience, since the requirements to mine Spacemesh are different from other networks and are fairly unique. I’m thrilled that these users are active on Spacemesh and I’ve really enjoyed getting to know them on our community Discord, but we didn’t consider their needs very well when designing the Spacemesh protocol and our software. That’s led to a frustrating user experience for them, and has caused some to join pools.

Could we have done a better job of forecasting who our users would be and what their needs and preferences would be? Possibly, although it’s not totally clear how we would’ve done this. Most of us are not product or sales people and, even if we were, we didn’t meet many of these “shark” users at events or meetups over the years. A few have been with us for a while throughout many generations of testnets, but most showed up when the network launched and the economic incentives appeared.

The good news is we know who are users are today, and we like them a lot. We’re super happy they’re part of Spacemesh, and we’re belatedly doing as much as we can to make their lives easier. For me this is one of the most joyous aspects of practice, as opposed to theory, and ultimately it’s the reason I’m an entrepreneur, a builder, and a software developer (as opposed to a researcher or an investor): I want to build things that real people use, and I want to meet those users face to face and get to know them. We’re well on the way to doing that at Spacemesh.

Of course, this will likely change over time. A blockchain is a strange beast, not exactly a company and not exactly a product, and we’re still figuring out what product market fit looks like, what sort of applications will be built on Spacemesh, and who our users will be in the long term.

Thing #3: Pools and Canaries 🐦🏖️💰

“The best-laid schemes o’ mice an’ men

Gang aft agley,

An’ lea’e us nought but grief an’ pain,

For promis’d joy!” – Robert Frost, To a Mouse

I’m a huge fan of testnets. I’ve probably made more transactions on Ethereum testnets than I have on mainnet. As a developer, it’s really important to test your applications end to end on a testnet before deploying to mainnet, and the more realistic the testnet, the better. One of the great things about Ethereum testnets is that they’re really busy: they have millions of transactions and very complex state, and they’re long-lived. This means they’re very, very similar to mainnet and an app that works on a testnet is almost certain to work on mainnet.

But there’s one important difference on a testnet: the coin, by definition, doesn’t have any value. If it had value, it would be a mainnet and not a testnet. The whole point of using a testnet is that you can test things for free in a low-stakes environment. (There is of course something in between known as a canary network, but for the purposes of this conversation I think the binary distinction is more useful. A canary net is basically another mainnet if the coin has nonzero value.)

Spacemesh was in a testnet phase for over a year. During this time we saw a lot of interest in the project and thousands of users tested our software, but very few stuck with it. I don’t blame them because it wasn’t easy to run and, again, the coins they were earning had no value. (It still isn’t as easy to run as it should be, but it’s easier than it was and the coins do have some value now, so most miners are sticking around, which is exciting.)

This is a perfect example of the theory-practice dichotomy in action: you cannot have your cake and eat it too. Either you test on a testnet where the economic conditions are totally different than on a mainnet (e.g., slashing or other forms of economic punishment don’t actually matter because there’s no real value at risk), or you test on a mainnet where the economic conditions are realistic but your tests are expensive, possibly very expensive (especially when the network is busy and gas is high). A testnet is like playing poker for peanuts—which, for those who have never tried, doesn’t work very well. Take my word for it.

We had no idea how the Spacemesh economic incentives would work while we were in testnet mode. It turns out that the people we thought would be our miners, those elusive minnows and guppies, were not the majority once the mainnet launched. As described above the main class of miner is actually the sharks, i.e., the enthusiast home miner. And the other big class of user is the pool, which contains many sharks.

This has resulted in two things that we didn’t forecast. The first is that the network has grown much bigger much faster than anyone forecast. We’ve only been live for a couple of months, we’re in a deep, long, dark bear market, and we already have tens of thousands of miners on the network. There’s around 30 PiB committed to the network, a figure that’s growing steadily. On the face of it this is fantastic.

But it’s not quite that simple. As I wrote about last month, users in a pool are not exactly the same as ordinary home users. For one thing, they’re not actually running their own consensus clients. This means that, while they are contributing to the security of the network, they’re not contributing to the decentralization of the network.

For another, many or most pool users aren’t values aligned with the project. To be clear, this is okay. It’s just economics at work. As I’ve said many times, Spacemesh is open source, permissionless, and censorship resistant. Anyone in the world is free to mine for any reason, and there are clear economic incentives to do so, by design. But these users aren’t Spacemesh users, per se. Rather, they’re pool users who were mostly already running the pool software and just flipped a switch to allow their storage space to be dedicated to Spacemesh rather than another protocol. Many have probably never been on our Discord or read any of these articles or any of the articles in our blog. Many are probably totally unaware of the Spacemesh mission, vision, and values.

We didn’t account for that, and we haven’t fully figured out what this means for the project, the protocol, and our software. We’ll continue to improve the UX for miners, and on top of that we’ll be adding additional incentives to the protocol to encourage users to run their own nodes at home. This might have the effect of convincing some pool users to run their own nodes and manage their own keys, which would be great for decentralization and for the health of the protocol. Many likely won’t switch anyway, and that’s okay too. There’s room for many classes of users at Spacemesh and we need to do a better job of balancing their needs.

Perspectives on Eternity

https://rettig.substack.com/p/perspectives-on-eternity

Andromeda, the galaxy nearest our own, contains around one trillion stars. And there are trillions of galaxies. If stargazing doesn’t make you appreciate eternity nothing will. Photo by Shlomo Shalev on Unsplash

Subscribe now

It’s very easy to get caught up in day to day and week to week affairs—so easy, in fact, that it’s sometimes very hard even to think or plan long term. It seems like human nature that whatever is going on immediately around us in both space and time feels absolutely essential, while things that are more distant feel relatively unimportant, even if in reality they’re objectively big, important things. (This, in a nutshell, captures most of what makes politics and democracy so difficult, but that’s a topic for another issue.) It’s really hard to ignore gossip, the market, current events, trivial social goings on, and daily ups and downs, especially in an era of social media and doom scrolling.

But being caught up constantly in the day to day is really unhealthy. It distracts us from the things that matter most, whether big projects that span huge stretches of time and space (like, say, democracy, science, or space exploration), or mundane but important eternal truths. The focus of meditation and many other religious and devotional practices is precisely on leaving the mundane behind in favor of the eternal and of the here and now.

Thanks for reading Three Things! Subscribe for free to receive new posts and support my work.

I’ve found that three totally different areas of inquiry and practices have helped me zoom out and stay focused on the eternal.

Thing #1: Sci-Fi

“Chaos is no surprise. It has predictable characteristics. For one thing, it carries away order and strengthens the forces at the extremes.” “Isn’t that what radicals are trying to do? Aren’t they trying to shake things up so that they can grab control?” “That’s what they think they are doing. Actually they’re creating new extremists, new radicals, and they are continuing the old process.” – Leto II and Moneo Atreides, God Emperor of Dune, Frank Herbert

While I don’t write about it often, sci-fi is one of my great passions. I love sci-fi for many reasons, not least of which is my curiosity and love of technology, but really it boils down to two things: I’m obsessed with stories and I love the degrees of freedom that sci-fi affords the storyteller, far more than any other genre. The best sci-fi balances fiction and reality and encodes deep moral lessons, painting plausible alternate futures and considering the desirability of possible future outcomes.

My favorite sub-genre within sci-fi is the space epic (for lack of a better term) that includes the Dune and Foundation series, the two GOATs. These story universes—and they are far more than simple stories, each is in fact a universe that consists of many stories with hundreds of characters—span the long arc of human civilization over tens or even hundreds of thousands of years. (There’s an Asimov novel, loosely connected to the Foundation universe, that alone spans tens of millions of years of humanity.) I love these universes because they relax two of the biggest constraints on storytelling, time and place, and allow their authors to tell stories that span galaxies and millennia. The best stories take time (and space) to develop, and eternal truths are only visible on the broadest possible scale.

There are a few common themes in these epic story universes. One is the end of human evolution and the relative permanence across time and space of humanity. It may be true that humans evolved from apes over several million years, but ongoing evolution requires environmental stress factors. Once humans learned to create their own environment, most of these stresses went away and evolution slowed. Dune deals not at all with evolution (setting aside for the moment God Emperors, Kwisatz Haderach, the Bene Gesserit and others with super human powers), and in Asimov’s universe, over millions of years the only evolutionary differences in humans are fewer teeth, one less rib, less body hair, and the disappearance of the appendix. In other words, humans are recognizable as humans (and indeed can interbreed) across unimaginable distances of both space and time.

Another common theme is the permanence of human nature, human foibles, and conflict. We develop technology that’s ever more powerful and that gives us abilities that were previously unthinkable—in both universes, technology mostly only advances forward, with periodic setbacks—but this technology doesn’t alter the fundamental social fabric or issues of humanity. As someone working to build powerful, paradigm shifting technology, this helps me stay grounded and remember that technology amplifies existing intentions and tendencies, but it doesn’t fundamentally alter human nature.

Finally, there’s the theme of cyclicality. History doesn’t play out in a straight line. The same things tend to happen again and again, even on galactic and millennial scales. Empires rise and fall, only to be replaced and rise again. The long arc of history, in the very longest scale conceivable, is a spiral, hopefully upward.

Science fiction is of course only fiction, and while I enjoy it I try not to take it too seriously. But it still helps me zoom out from the mundane and the day to day. It reminds me that there’s a larger human project going on, of which I’m a part, and that even the biggest, scariest problems we face today will eventually fade in importance compared to bigger ones. Global warming is real and it’s terrifying today but we will figure it out and ultimately it’ll fade in significance relative to bigger problems (nuclear war? the dying sun?) and bigger opportunities (humans colonizing the galaxy). It reminds me that, no matter how bad things get today, they’ve been this bad (or worse) before and they’ll inevitably be this bad again someday, somewhere.

It’s a reminder that the problems most worth working on are the really, really long term problems, like general AI and robotics, longevity, and space travel. These are exactly the sort of problems that short-lived individual scientists, politicians, and even companies aren’t well equipped to handle. We need to think bigger. We may be mere individuals with lifetimes that are infinitesimal on this grand scale, but we are all part of a project and a story arc much bigger and much more epic than ourselves. It’s fun to think where it all might lead one day—maybe even to a galactic civilization. That’s a powerful, inspiring thought. Ad astra.

Thing #2: Religion

“All things are wearisome, more than one can say. The eye never has enough of seeing, nor the ear its fill of hearing. What has been will be again, what has been done will be done again; there is nothing new under the sun. Is there anything of which one can say, ‘Look! This is something new’? It was here already, long ago; it was here before our time.” – Ecclesiastes 1:8-10

When I think of eternity in the context of religion I think first and foremost of Buddhism. Christians understand eternity in the context of the immutability of God and the afterlife. I’m sure many other religions have notions of eternity. But the Buddhist notion is much more accessible and mundane.

Most people introduced to Buddhism, at least most of us who didn’t grow up in a Buddhist community, don’t get much further than reincarnation, which sounds absurd to a modern, educated person. But the more I’ve studied and understood Buddhism, the more I’ve reflected on the idea, and the more appealing I’ve come to find it.

In Buddhist cosmology all beings are stuck in endless cycles of rebirth and suffering known as saṃsāra, at least until they achieve enlightenment or liberation, nirvāṇa. The vast spans of time over which saṃsāra plays out are truly unfathomable. It’s not the case that beings live for a handful of lifetimes and then achieve enlightenment. On the contrary, all beings alive today have experienced countless cycles of birth, existence, death, and rebirth. The vast majority haven’t achieved enlightenment (which isn’t easy) and most never will.

The Buddha never gives any hard numbers, but he explains in proverbs that in previous cycles of existence you have been in every possible arrangement of relationship with every other being in existence: friend, parent, child, cousin, colleague, adversary, neighbor, lover, you name it. If you do even basic math, considering the trillions of beings even just on Earth (to say nothing of the rest of the universe), you’re talking about a pretty long span of time. (For the math nerds among us that’s around 10^23 years, or nearly a trillion trillion years, give or take.)

Another parable explains that the chance of being born as a human, and thus being at least theoretically capable of attaining enlightenment, is less than the chance that a turtle, swimming blindly and randomly under the sea, which pops its head up to the surface once a century, puts its head directly through a yoke that was randomly tossed into the sea. Buddhism deals in spans of time that are so great that only metaphor can begin to convey their immense duration. And all of this is not yet eternity! Enlightenment is eternal and immutable, but saṃsāra is not.

What appeals to me so much about Buddhist cosmology and metaphysics is that, by its logic, everything is cyclical. Eternity is somehow much more palatable and less frightening to think about when it happens in cycles—or, as in the case of Buddhism, cycles-within-cycles-within-cycles.

In Buddhism there is no beginning or end to creation, and there is no eternal creator. Things are a certain way, and early Buddhists had no reason to believe things were ever any different or would ever be any different: in other words, everything was eternal. My guess is that people thousands of years ago weren’t thinking in terms of trillions of years, or even of eternity.

Buddhas come and go; ages of man come and go; individual existences come and go. Everything is part of the fabric of dharma, the sum total of reality. After reflecting on this for many years I’ve decided that this is just a more natural way of thinking about the world than the modern, Western notion of history as linear, as proceeding like a story from a beginning creation myth to the present to some prophesied end time.

The sun rises, sets, and then rises again. Generations of man come and go in their turn. The seasons cycle endlessly. It’s no surprise that, for most of human history, most societies believed in an endless, cyclical nature of reality rather than in a beginning, middle, and end—a decidedly modern and Western notion. Given this fact, in my opinion the burden of proof is on believers in linearity and a finite nature of time to prove their case, and I remain unconvinced. It may be true that the universe that we know hasn’t existed forever and will eventually collapse into a freezing pile of entropy, but this doesn’t prove anything about what came before the Big Bang or that this isn’t just a very big cycle repeating itself, as Buddhism and other faiths would have it. (Science even gives us reason to believe this may actually be the case.)

In any case, I find comfort in the notion that “What has been will be again, what has been done will be done again; there is nothing new under the sun.” It somehow helps me zoom out from my day to day concerns; I take comfort in the fact that even the really big, scary stuff—say, climate change or the threat of nuclear war—has happened before, maybe not in precisely the same way but in some sense, and will certainly happen again.

I also find comfort in the Buddhist notion of cycles. The idea of eternity bothers me: obviously the notion of eternal damnation is frightening, but even the notion of eternal bliss in Heaven scares me because it implies stagnation (how does one improve when one is already in Heaven?). By contrast, the idea of endless cycles suggests the promise of gradual, ongoing progress, which is how I prefer to think of my life and of the long arc of human history: the upward spiral.

You could probably interpret this the other way around, that the lack of any novelty to speak of is depressing and fatalistic and a reason for pessimism. But that simply isn’t true because, even if history does repeat itself endlessly, the particular permutation of history at this particular moment, the particular combination of events and actors and outcomes, is unique. It has never happened exactly this way before and it will never happen exactly this way again (hence the spiral and not a perfect circle). Put another way, you only get to experience history once, so make the most of it.

Thing #3: Sociology

“It is the chief characteristic of the religion of science that it works.” – Hari Seldon, Foundation, Isaac Asimov

Human society doesn’t play out randomly. There are patterns in the course of events, as human behavior is to some extent predictable, especially over large populations and large spans of time (sort of like a social law of large numbers). There may not be true “laws” of human society (the fictional Hari Seldon’s work notwithstanding), but there are both universal aspects of human society, such as family, fashion, music, dance, courtship and mating, youthhood and coming of age, old age and retirement, sex and gender roles, social status, relative wealth and poverty, use of technology, etc., and universal dynamics, e.g., “the rich get richer,” that rhyme over time and place and cause these patterns. These universal aspects are so ubiquitous that we tend to notice them only in their absence: for instance, the rare matriarchal society, the rare society without marriage, or the rare society where inequality is low.

Some, such as Strauss and Howe, even postulate that these patterns persist over many hundreds of years. In their books, including Generations: The History of America’s Future and Fourth Turning, they describe recurring social archetypes and the recurring types of eras that they give rise to: an Idealist generation gives rise to a Reactive generation which leads to a Civic generation which is followed by an Adaptive generation, after which the cycle repeats.

These theories are referred to as “pop sociology,” and to be clear, Strauss and Howe are not trained sociologists. While I think they have a tendency to overgeneralize, I do think there’s a great deal of truth in the picture they paint of recurring social crises and a cycle of different generation types. In the same way that in democracies the political pendulum seems to swing back and forth between the two main political parties and between right and left, I have no trouble believing that a generation that grows up in fear during or following a crisis tends to raise their children more strictly, and that their children subsequently rebel and let their children run free, which leads to another crisis, kicking off another cycle, etc.. This is illustrated by one of my favorite quotes:

“Hard times create strong men, strong men create good times, good times create weak men, and weak men create hard times.” – G. Michael Hopf

This inevitably brings us back to Hari Seldon and the field he invented, psychohistory. Sociology isn’t usually thought of as an especially exciting or sexy pursuit, but Foundation explores the hypothetical limits of sociology taken to the logical extreme: what if these patterns could be understood and distilled into true laws in the scientific sense that could subsequently be used to forecast future trends with a high degree of accuracy?

Seldon’s original inspiration for the idea came from thermodynamics, where the behavior of individual particles is unpredictable but the behavior of masses of particles is perfectly predictable. Early in his career Seldon theorizes that, if he could just come up with a set of ironclad social rules, he’d be able to forecast the patterns of human society over enormous spans of time and space. At the end of his career he does just that, kicking off the Foundation project. His predictions are so eerily accurate, even hundreds of years later, that people take to calling him a Prophet and accuse him of taking away their free will. I won’t add any spoilers but let’s just say that it doesn’t win him many friends.

The work of Strauss and Howe is the closest thing we have to Hari Seldon in the real world. Seldon predicts a series of events, known as Seldon Crises, that his Foundation (and, eventually, all of humanity) will face over the course of a thousand years. Strauss and Howe forecast when major crises will occur and what the rough social structure will look like at that point in time, although unlike Seldon they make no claims as to the nature of the crises or how they’ll play out.

As fun as it is to consider the idea of a Prophet who, using nothing more than science (math, statistics, history, psychology, sociology), can forecast the action of populations of trillions of people hundreds of years into the future, the example of Seldon is of course totally fictional. But even without Seldon’s superpowers we can actually get pretty far using those same tools. And, as in the examples of real and fictional religions above, knowing this also gives me comfort and helps me zoom out from the day to day.

I feel overwhelmed on a daily basis by the number of crises it seems we’re presently facing: a terrible market and financial situation, a dysfunctional government, a housing shortage, an immigration crisis, supply chain problems, pandemics, war, rising authoritarianism and the unpopularity of democracy and capitalism, energy, obesity and opioids, and climate change, to name but a few. Like many Millennials, I feel like the Boomer generation broke the world and totally screwed things up for us. The mood isn’t much better among Gen Z.

But, as Strauss and Howe point out, this is far from the first time this particular social moment has existed and it’s not the first time this generational cycle has played out. The message of history and of sociology is clear: we will weather this crisis and the long, slow, upward spiral narrative of human civilization will continue. Hari Seldon agrees: this, too, shall pass.

Thanks for reading Three Things! Subscribe for free to receive new posts and support my work.

Wacky Future World Versions of Spacemesh

https://rettig.substack.com/p/wacky-future-world-versions-of-spacemesh

Everything old is new again. Maybe Spacemesh will be a 90s-era game console. Better that than a casino! Photo by Lorenzo Herrera on Unsplash

Subscribe now

I wrote previously about visions for the future of Spacemesh. Two of the three visions I described were fairly conventional and in line with existing blockchains (namely, Bitcoin and Ethereum). The third briefly considered some alternative ideas including AI and better software. This week I want to explore the topic again but cast a wider net. I want to think even more outside the box and dig deeper.

Spacemesh has been live for a few weeks and all things considered it’s doing just fine. I think it’s where it should be in its lifecycle in terms of adoption, health of the network and of the community, maturity of the technology, etc.. (Not to say that these things are all perfect, there’s still a ton of work to do and almost everything needs to be improved, but it’s where it should be for alpha software.) I nevertheless can’t help but think ahead and wonder where it might be in a few years. Partly that’s a question of organic growth and development; partly it’s a question of which direction we choose to steward it.

Thanks for reading Three Things! Subscribe for free to receive new posts and support my work.

I for one would be disappointed if Spacemesh turned out to be “just another blockchain” like all the rest. There are plenty of blockchains and plenty of smart contract platforms including layer two chains. I think we’re onto something unique, novel, and potentially big with Spacemesh and I’d be disappointed if it doesn’t evolve into something more than “just another blockchain,” like all the others. Here are some other things it might evolve into.

Thing #1: High Performance Compute Marketplace 💽

In order to start mining Spacemesh you need to first initialize your storage using a GPU. If you happen to have your own GPU, that’s great, you’re off to the races. But many community members and would be miners don’t have GPUs. Spacemesh is all about inclusivity and we’d like to make it at easy as possible for these users, too, to be able to start mining quickly and easily.

One way to do that is to make it easy for community members that do have GPUs to loan them out to users that don’t. The boring way of doing this would be to build an e-commerce platform along the lines of Vast.ai, Runpod, or Coreweave that lets you use your credit card to pay for someone else’s compute. That’s boring and it’s not in line with the Spacemesh ethos because it requires someone to already be enfranchised by the existing financial system, i.e., they have to have tens of dollars, a credit card, a bank account, etc.. We want people to be able to start mining with nothing other than the hardware and bandwidth they’ve already got, on any device including (eventually) a mobile phone.

It’s possible to do this as a decentralized marketplace. It could be done today but it would probably have to be built on top of something like Ethereum since Spacemesh doesn’t yet have full smart contract support. Another option is to build support into the Spacemesh protocol itself. We haven’t worked all the details yet, but the idea is that one user could establish a lien on another miner’s earnings, a bit like how a mortgage works. The lender, who provided the initial GPU access, would receive a portion of the borrower’s rewards up to a certain amount and/or a certain point in time. It’s a positive sum, win win situation, and best of all it doesn’t require bank accounts, credit cards, or fiat money at all.

The idea made me wonder: isn’t this effectively a decentralized GPU marketplace? Given that the Spacemesh network also contains vast amounts of storage (over 30 PB and growing quickly), doesn’t that mean that there’s potential to turn Spacemesh into a decentralized network for computational resources, or to build such a thing on top of Spacemesh?

I’m aware that this isn’t an easy product to develop and it isn’t an easy problem to solve. The complexity of projects like Filecoin show that the technology and the economics required to get this to work are quite complicated. But I wonder if Spacemesh couldn’t do better.

Even something as straightforward as a decentralized GPU marketplace is non trivial. You have to ensure security on both ends: that the host get paid and that their system isn’t compromised or overwhelmed, and that guests get honest, uninterrupted access to the resources they pay for. Doing that, getting the incentives right and policing the system, is a difficult problem even for a centralized network; doing it in a decentralized way would be even harder. A bunch of big projects such as Golem and iExec have tried but no one has yet succeeded or figured it out.

Still, it feels in many ways like an organic extension of what Spacemesh and its community and userbase are already doing. If we could start small and address the niche needs of our own small community, it’s just conceivable that we could build a general purpose solution that would work for AI and other high performance compute applications. The demand for those is only going to grow over time. There’s a surprisingly small number of incumbents in the market today and they’re all quite similar; there’s probably room for a fresh approach.

As I wrote a few years ago a blockchain and its ecosystem are like a desert island in economic terms. It needs to sell something of substance and of value to the world to create positive trade inflows and increase economic value. The most obvious thing that Spacemesh has to offer the world is the collective resources of all of its miners.

Thing #2: Application Platform 📱

The biggest thing that existing blockchains and Web3 platforms have failed to do is deliver usable applications (other than money) that solve real problems for everyday people, full stop. Mainstream attention is focused on things like regulation, scams, and energy FUD but this is the real story, the biggest indictment of crypto as an industry. It’s sad but it’s true. Regarding the one use case that does work and is valuable, money, Bitcoin mostly solved this all the way back in 2009, its core protocol hasn’t changed much since then, and the only meaningful money-related innovations that have come along since then are the Lightning network (built on Bitcoin) and stablecoins. (You might argue that DeFi counts, but I don’t think it has any mainstream users to speak of.)

When I joined the industry full time in 2017 it was hyper-financialized, rife with speculation, and felt like a casino. Three years later, still frustrated about the same thing, I wrote Ethereum is a Casino. I can’t believe I’m saying this today but here we are six years later and—you guessed it—it’s still mostly a casino and has delivered shockingly little else. When’s the last time you heard of a popular, usable Web3 application that allowed you to do anything other than gamble or speculate? Friend.tech (“the marketplace for your friends”) has exploded in popularity recently and—you guessed it—it lets you speculate on the “value” of friends and influencers 🤦. What an embarrassment.

There are many reasons for this. Crypto is still early, its value proposition isn’t widely understood, and it’ll take more time to mature and play out. Speculation always comes first and has a valuable and important role to play attracting capital and attention. Builders in crypto tend to be young and inexperienced, typically haven’t worked on real world applications with actual users before, and are better at chasing shiny things than they are at understanding people, problems, and use cases. They don’t have a UX or product bone in their body. And they’re more interested in numbers and in money than in people. The appalling number of grifters and scam artists that have flocked to the industry certainly hasn’t helped, and neither has climate and energy FUD.

Most of all, however, I think we’ve simply failed to give developers the right tools and we’ve failed to tell them the right story. Building applications in Web2 has become a terrible experience. It’s way, way too complicated with far too many decisions to make. It requires knowledge and understanding of dozens of disparate frameworks and protocols, which carries an enormous cognitive burden—to the point that a single human developer almost cannot keep the entire stack of even a moderately complex application in their mind. For this reason apps are enormously expensive and time-consuming to build, operate, and maintain. Building apps used to be fun but it isn’t anymore. I could go on. (I have: here, here, and here. I wrote about it last week.)

Web3 shouldn’t be a hard sell since we’re offering something fundamentally different and better! Except that it’s not actually better. We expect developers to learn new languages like Solidity (Ethereum) and Hoon (Urbit). I don’t know about you, but as a developer I’m tired of learning new languages, which is why old stalwarts like Java, Javascript, and Python will probably be with us forever. The thought of learning not only a new, radically different language but an entirely new stack of technologies and ideas is daunting and frankly sounds like the opposite of fun, all the more so because I’m pretty sure AI will be writing most software pretty soon.

And this is to say nothing of soul-crushing, UX and DevEx-destroying ideas like gas, time to finality, a proliferation of shitcoins, lack of on and off ramps and high transaction fees on the few that do exist, high gas fees, and the cold start problem, to name but a few. Granted, there have been gradual UX improvements in Web3 such as the introduction of meta transactions and account abstraction, but frankly these are lipstick on a pig. Is that really the best we can do?

It should be dead simple to build a Web3 app. In fact, it should be 10x easier than building a Web2 app. We stand zero chance of ever appealing to developers or fostering a meaningful ecosystem of apps if we can’t achieve this. And the only way we’re going to get there is by thinking seriously outside the box and getting unstuck from this suboptimal local maximum we’ve been stuck in for years. Developers might have been willing to strap in and learn Solidity and the Ethereum stack a few years ago when they could make a killing building yet another DeFi casino app, but those days are over. The total number of Web3 developers has been stagnant for two years and has fallen quite a bit recently.

All of this is to say that there’s an enormous opportunity to do better here. We’re still working on our VM design and all options are on the table. I, for one, would like to see Spacemesh ditch “industry standard” mumbo jumbo like EVM compatibility and lean into offering a radically better developer experience. It should be possible to build and deploy a basic, boilerplate Web3 app in five minutes or less without needing to learn a new stack or set of tools, and without needing to acquire mysterious coins. (Having said that, the decision about whether or not to support EVM compatibility has multiple tradeoffs and isn’t straightforward.)

We can’t build all of the killer apps ourselves, but we can do the very clever thing that Apple did with the iPhone: we can launch a platform strategy where we give the world’s best, most motivated, bravest developers the tools they need to build superpowered apps that can do things that Web2 apps cannot (such as eliminating usernames, passwords, and logins entirely), and that deliver UX and interoperability that’s totally unprecedented.

It all starts with the VM, which we’re working on. Expect more on this soon.

Thing #3: Social Network 👭

In a sense Spacemesh is already a social network. It’s a group of likeminded people who are at least somewhat values-aligned and are all working towards the same thing. We hang out on chat apps, we have inside jokes and we share memes, we share links and articles with one another, and we even hang out face to face from time to time.

Unfortunately nearly all of our interactions today are mediated by unaccountable, centralized platforms like Slack and Discord. Neither application is open source and neither makes its data portable or indexable. I find Discord particularly poorly designed and buggy with atrocious UX. The entire point of Web3 is to liberate ourselves from this sort of centralized, closed source, unaccountable application, isn’t it? So isn’t it totally hypocritical that we still subject ourselves to them on a daily basis?

The sad reality is that we all have day jobs to worry about. We’re busy people and we’re focused on building Spacemesh and the community around Spacemesh; there’s no way that today we can also build better software for communities. While I care a great deal about which software I use, and which software we impose upon our community, at the end of the day I’m a pragmatist and I don’t think we can be perfectly idealist about our software. If we were we’d literally never get anything done.

Slack and Discord are both deeply flawed, but they’re still the best we’ve got today. (Believe me, I’ve tried the alternatives and they’re worse.) We have open source platforms like Linux, Android, and Chromium, we have great free and open source software like Discourse, and even Telegram and Signal are at least partially open source. It sort of blows my mind that no one has built good, open source team collaboration software yet, despite the fact that many have tried. This speaks to what a difficult problem it is.

When something better exists, we’ll be among the first adopters. And if no one else builds something better then eventually we may have to! In a sufficiently distant future where Spacemesh is mature and sustainable I could see this being the sort of thing we attempt to tackle as a community. It’s a sufficiently Big, Important Problem.

Besides chat, one place we might start is with content. As I wrote last week, the experience of both producing and consuming digital content today, whether articles, books, podcasts, audiobooks, or music, is terrible for a bunch of reasons. For one thing content is scattered across way too many sites and services, nearly all of which are proprietary and closed. There was a brief moment when I thought an open alternative, RSS, might win, but it posed too much of a threat and unfortunately Facebook and other walled garden social media platforms killed it. For another it’s choked by ads and hidden behind paywalls and inside walled gardens. Content, like information, wants to be free. Web3 has certain superpowers that, like Napster and Bittorrent before it which also changed paradigms, might finally bring this about.

But there are more prosaic reasons: there’s simply too much content and it’s not well curated. We could build a social network around creation, curation, and hosting/serving of content. In my opinion this would be a lot more wholesome, would create a lot more value for the world, and would be more aligned with the cypherpunk ethos of blockchain than trading monkey JPEGs or shares in your friends.

Creation and curation of high quality content is a skill that requires very little training or education, as social media apps proved. It’s the sort of thing that people anywhere in the world, connected to the same value-creation network, could participate in permissionlessly. As much as I want to support independent content creators I’m not terribly interested in managing a dozen or more individual subscriptions on Substack, Patreon, and Onlyfans, both because managing subscriptions is frustrating and time consuming and, even more importantly, because there’s no easy way to aggregate that content into a single feed. If, on the other hand, it all existed as part of the same open network that allowed content aggregation and, say, micropayments, that would be another thing entirely.

Other than just being a community of people who care about something more than gambling, Spacemesh possibly has another edge here in that our miners are committing lots of free hard drive space to the protocol. While that space is currently intentionally filled with cryptographic junk, we might someday figure out how to use at least some of that space to host useful data such as content.

Thanks for reading Three Things! Subscribe for free to receive new posts and support my work.

Thanks for reading Three Things! Subscribe for free to receive new posts and support my work.

Impossible Problems

https://rettig.substack.com/p/impossible-problems

An Impossible Problem is something that motivates you enough to get you out of bed in the morning. This Impossible Burger would also get me out of bed in the morning. Photo by amirali mirhashemian on Unsplash

Subscribe now

“The difficult we do immediately. The impossible takes a little bit longer.” – WWII Army slogan

I’ve always found hard questions are a great way to inspire thought and conversation. In Zero to One, Peter Thiel famously introduced the big question that he asks all potential new hires: “What important truth do very few people agree with you on?” Pondering that question over the years has been a source of a lot of inspiration for me.

At dinner a few nights ago a friend asked me something similar: “What’s your impossible problem?” In other words, what’s the seemingly impossible but important thing that motivates your work? It turned out to be an excellent conversation starter and ice breaker at a group dinner. (Questions are amazing things, aren’t they?)

Several of the attendees gave good answers: solving energy, equal access to opportunity, addressing inequality, helping people everywhere improve their diet. I actually didn’t have a great answer when put on the spot, but I’ve been pondering the question since then and I’d like to share three answers this week: three big, hairy, audacious problems that lie at the intersection of what’s important, what I’m personally interested in, and what, while seemingly impossible, I believe we could tackle during my lifetime if we put our minds to it.

Thing #1: Access to Opportunity 🕯️

“The future is already here – it’s just not evenly distributed.” – William Gibson

To paraphrase Stewart Brand, we now have the power of gods at our fingertips. When the consumer Internet first emerged a generation or two ago, there were utopian predictions that it would end inequality and lead to world peace. Fast forward a generation and not only are we obviously not there yet, what’s worse, these tools have so far served to exacerbate existing power divides and economic equality. But I don’t think it has to be that way forever.

The Internet and tools like email and instant messaging gave people everywhere the ability to communicate with one another instantly and more or less for free. It took a generation to permeate widely, but today 65% of people in the world have Internet access. Young people pretty much everywhere are tech savvy enough to use Internet-enabled devices like smartphones.

We took another giant leap forward with the invention of Bitcoin in 2008. Blockchain and cryptocurrency make it possible to send not only information but also value around the world, instantly and nearly for free, with no intermediaries. This is an extraordinarily powerful idea that, like the ability to communicate and share information instantly and for free, will totally change the world. But that change will take time and we’ve only scratched the surface of its ultimate impact so far because cryptocurrency has not yet been deeply integrated into the existing economy.

I began working in blockchain and cryptocurrency a few years ago when I first saw this potential. When I learned about blockchain, Bitcoin, cryptocurrency, and smart contracts, I felt that it had incredible potential to democratize access to and participation in global, decentralized networks of value creation.

Value creation networks exist everywhere but most of them are small, regional, and centralized. A company is an example of such a network, but companies are centralized, joining them isn’t permissionless, and they tend to be small and regional. Economies are, of course, much larger, but historically it’s been difficult for most people to participate in them other than as consumers at the very end of the value chain. Partly this is because of the way that economies are captured and controlled by governments and big companies, i.e., large, privileged, centralized actors.

Platforms like Ebay and Etsy began to change this over the past 10-20 years, allowing everyday people to become service providers and create value for themselves, rather than just consume, by participating in those same networks. But those platforms are still centralized companies and, as such, can only scale so far and must inevitably put the interest of their shareholders over those of their users. More recently platforms like Onlyfans and Substack, and to some extent YouTube and X, have allowed content creators to monetize their followers, but, again, they’re still large, for profit companies that only operate in certain jurisdictions and that take a large cut for their managers and shareholders. What’s worse, they’re guilty of practices like arbitrarily censoring and deplatforming content creators with little to no accountability for these actions.

Blockchain, cryptocurrency, and smart contracts for the first time give us the tools we need to do better. Anyone, anywhere in the world can participate in Bitcoin and the Bitcoin economy. The network is totally open and permissionless and there’s no company that controls it. Any motivated person anywhere in the world with an ordinary computer, Internet access, and the wherewithal to read a book like Mastering Bitcoin has literally all the tools they need to set up a bank, a fund, or something far more sophisticated, and they can instantly tap into the global network of Bitcoiners, no license and no approval needed.

With smart contracts and platforms like Ethereum, we can go even further and create much more sophisticated applications, from stablecoins to DAOs to NFTs, that are totally unstoppable, permissionless, and censorship resistant.

This is all great in theory, but how does this tie into my own work? Our work at Spacemesh is downstream of both Bitcoin and Ethereum. We replace Bitcoin’s proof of work (secure, but energy intensive, and requiring specialized, expensive hardware) and Ethereum’s proof of stake (green, but requiring a stake that’s worth more than the average annual salary for most people in the world) with a bespoke protocol called proof of spacetime that anyone, anywhere can join without needing specialized hardware or an annual salary’s worth of stake, and immediately begin minting coins and creating value for themselves, their family, and their community. Granted, there isn’t a whole lot you can do with these coins yet other than hodl them or trade them, but the Spacemesh community and ecosystem are nascent and growing rapidly and I’m confident that plenty of use cases will emerge in due course.

My vision is that ordinary people around the world without much technical expertise can run our software on any device (today a laptop or desktop, and in the future even a smartphone), begin earning some coins permissionlessly, and invest them into something that will provide long term value such as educational materials or courses, or disinflationary assets like Bitcoin that’ll only grow in value over time. Increasingly people will opt out of the fundamentally broken traditional financial system and will instead build businesses and trade with one another using coins like SMH and BTC. These assets are disinflationary, censorship and seizure resistant, their issuance schedule is fixed and known, and they aren’t controlled by a centralized actor and should therefore hold their value over the very long term.

I’m not so naive as to believe that this is all that the world needs to increase equality of access to opportunity but money is important and broken money holds billions of people back from this opportunity today, so fixing it is a huge step in the right direction. Bitcoin has already done enormous good, and I think Spacemesh has the potential to do even more good over the long term by creating a more level economic playing field for everyday people.

Thing #2: Knowledge Management 📰

“The day of combination is here to stay. Individualism has gone, never to return.” – John D. Rockefeller

The parents of many of us Millennials are obsessed with watching the evening news. It’s just what their generation always did. Boomers were the first generation that grew up in a time of true national unity, when nearly everyone, everywhere was consuming the same content. Before that there were no national networks so people consumed local news. Everyone you knew more or less read the same newspaper. Everyone watched the same TV channels and shows, and the same news, more or less.

That exceptional time—dubbed the Great Moderation—is quite obviously over. Whether that’s for the better or not is debatable but it’s not what I want to talk about here. I want to talk about what comes next: what it’s like finding and consuming content today, post-Refragmentation.

If you feel like you’re drinking from a firehose, trust me, you’re not alone. Today we’re totally inundated by articles, podcasts, book recommendations, and “must watch” TV shows. My “must read” book list has hundreds of titles on it, more than I’d get through in ten lifetimes, and my “must read” article list has thousands. It grows faster than I can possibly read things. And all of this is to say nothing of social media.

More than 500 hours of content is uploaded to YouTube every minute. Pause and reflect on that number for a moment, and on what that means for the human race. On the one hand it’s an absolute triumph that there are enough humans alive today, educated enough and wealthy enough, and with the right tools to create and share content. At the same time it’s terrifying since at best 99.99% of that content is almost by definition garbage, at worst some is far more malevolent, and in any case the figure is so overwhelming that, like most people, your reaction is probably to give up and declare that content is dead.

It seems self evident that, amidst this flood, we’ve lost our ability to collectively agree on basic truth as a society, even on things as simple as whether sex has a biological basis or whether gender is a social construct. It undoubtedly has something to do with the fact that we’re all consuming different content and different knowledge from different sources these days. That’s why the way we create, curate, distribute, and store content and information is such an important issue to address—not just because, hey, it would be nice to feel less FOMO!

I won’t claim to know the solution to this very difficult problem, but I know that the things we’re doing today are absolutely not working and we need to try some very different models. Traditional sources of news and content (“mainstream media”), i.e., the traditional curators and gatekeepers, are in total meltdown. Viewership on traditional mainstream channels is rapidly plummeting and many of us don’t know where to look for the truth anymore. Social media is fine for sharing photos with your friends but it’s a disaster when people rely on it for news or science. As we all know by now the incentives are totally broken.

The status quo can’t continue for much longer. Wherever we end up once we get past this catastrophe, I’m certain it’ll be flexible and decentralized, and that it’ll have a very different set of incentives. The UX of future news and other media will look nothing like the way we consume news or other content today. There’s a heck of a lot of design space to explore.

It’s possible to build a healthier social network with better incentives around creating, curating, and sharing high quality content. I can sort of see the outlines but haven’t worked out the details yet. It’s an idea I keep coming back to. Expect to see more about the idea here.

Thing #3: Fixing Software 👨‍💻

“Software breaks before it bends, so it demands perfection in a universe that prefers statistics.” – Jaron Lanier

My own answer to Peter Thiel’s question is, “software is more broken than almost anyone thinks, and this is a bigger problem than almost anyone realizes.” If you agree with this statement, you may also agree that this has profound implications for how we design and write software, and for software business models.

Software is central to modern life for just about everybody. Most of us use software directly every day—social media, messaging apps, email, productivity tools, entertainment, navigation, word processing, you name it, not to mention websites and web apps. Even those rare people who don’t use much software still use it indirectly because it powers just about every interaction we have with any business, government, etc. In this respect software feels like the air we breathe: it’s all around us, it’s vital for our survival in the modern world, and yet we rarely notice it or think too much about it unless it disappears or stops working, in which case life gets difficult real fast. For the same reason, improving software feels almost like cleaning the air, and having good software thus feels almost as important as having clean air. Maybe that’s a bit hyperbolic, but not much, and not for long.

And software has become really, really broken. For one thing, it’s become nearly impossible to write and maintain. It costs way too much, takes way too much time, requires way too many people and way too much expertise, and most importantly building it just isn’t fun anymore. People don’t build toy apps and games for fun anymore; every app now needs to have a VC-backed business model behind it, which is tragic and totally unsustainable. But that’s how complex and expensive software has become. And it’s why there just isn’t much innovation happening in software these days, and why pretty much every app feels the same, and why most apps are crap.

As if all of that wasn’t bad enough, software has also been almost totally captured by those same VC funds and profit-hungry corporate business models. In this respect software is no longer humanistic the way it used to be. It doesn’t work for you, it works for the tech giants and their shareholders. (I wrote a more about this topic in Faster Horses, Better Software and Simple, Durable, Yours.)

I think people don’t really think much about this for a couple of reasons. One is that the surveillance capitalism model is so ubiquitous that people have largely given up hope that things can ever be different or better. Lots have resigned themselves to a dystopian future where their data never belongs to them, it only belongs to big corporations, and where they have zero privacy and zero control over their digital lives. Another reason is that people have never experienced anything better so they don’t believe it’s possible.

I haven’t given up hope. I know a thing or two about software and I know it’s possible to do better: to build software that’s designed and built around the user rather than around the tech company. It won’t be easy, and we have our work cut out for us—for one thing, people have gotten used to using software for “free” thanks to surveillance capitalism and other broken, pernicious business models. For another thing, in a sick twist of Conway’s law, the very architecture of the Internet itself has come to resemble the way those companies are run: it’s hierarchical and centralized, which makes it quite difficult to do anything peer to peer. But I haven’t given up on peer to peer networks and other forms of decentralization. That’s what we’re building at Spacemesh, it’s exciting, and thanks to this work and our community I can just about see a better future.

The problem does feel borderline impossible, but also exciting as hell, and I struggle to think of many more important things to work on. As I wrote before, projects like Urbit and more recently Nostr give me hope that the future will be less dystopian and less centralized. If this problem interests you, please let me know, because I consider this my life’s work and I’ll be working on solving this problem for a very long time.

Thanks for reading Three Things! Subscribe for free to receive new posts and support my work.

The Problem of Pools

https://rettig.substack.com/p/the-problem-of-pools

To jump in, or not to jump in? Lots of Spacemesh miners are facing this question today and it isn’t an easy one. We’re working on making it easier. Photo by Etienne Girardet on Unsplash

Subscribe now

The growth in the Spacemesh network over the past few weeks and the past few epochs has been phenomenal, exceeding all expectations. The network grew from 2,800 smeshers in epoch 2 (the first epoch where people could mine and earn rewards) to 6,500 in epoch 3 to 32,000 in epoch 4, which started about a week ago. Much of this growth has been driven by small, hobbyist home miners, which was always our target demographic. These users have been very engaged on our Discord and other channels, asking smart questions and swapping information about their home mining setups.

However, much of the growth has also been driven by users who have decided to join a mining pool for one reason or another, something that caught us by surprise. Spacemesh was designed specifically to be friendly to small home miners, and in such a way that there should be no advantage whatsoever from joining a pool. The promise of Spacemesh is that mining should be accessible and fair to even the smallest miners, who shouldn’t be at a disadvantage relative to larger miners. In simple point of fact, that isn’t true today, and what’s happened recently has showed that we still have our work cut out for us to fully realize that promise.

This week I want to explore what’s going on and why it happened, and explain a few ways we might respond.

Thing #1: Fixing PoST

One of the core elements of the Spacemesh protocol is something called proofs of spacetime, or PoST for short. The way miners in Spacemesh establish eligibility to participate in consensus and earn rewards is by provably dedicating a certain amount of hard disk space to the protocol and submitting proofs on an ongoing basis (once per epoch) that they still have custody of this data.

The process of initializing and managing this storage, and of generating and submitting proofs, is unfortunately rather complicated and cumbersome. As with so much in Spacemesh, in the most straightforward case a miner can simply run the Smapp application, use it to perform initialization, and then let it mine on an ongoing basis. The application and the underlying node software will manage all of the details on behalf of the miner.

However, this only works well for the simplest possible mining setup: a single node connected to a single miner identity on a single system, initializing a relatively small amount of storage on a single drive using a single GPU installed on the same system. This is the specific use case we had in mind when we designed Spacemesh, i.e., that of the “small home miner,” and we always assumed it would be the majority of the network.

As it turns out, however, many users, perhaps most at this stage, are interested in going further. Many of them have built custom Spacemesh mining rigs with arrays of many drives. Many want to use arrays of GPUs to perform initialization and run many nodes side by side, and many want to perform initialization in one place and mine on an ongoing basis somewhere else. This is a positive development that we’re excited to see but it’s just not the use case that we designed for, which is why it’s currently pretty hard to do these things.

As much as we care about usability, our first priority at Spacemesh is network health and safety. In order to keep the network secure we need to defend against various types of theoretical attacks. In one such attack, a sophisticated adversary could claim to have more storage than they’ve actually initialized and maintained. The proofs of space that miners have to generate on an ongoing basis are actually probabilistic so that they can be compact; rather than sending all of your data to the network once per epoch, which would be totally infeasible, you read all of your data and perform some proof of work while doing so, looking for certain elements of the data that satisfy a particular difficulty threshold. Then you submit only those elements as your proof. So in theory a miner could store, say, only 90% of the data they claim to have and still succeed in generating such a proof most of the time. (For those who are inclined see Proof of work and PoST proof generation for more details.)

In order to prevent this sort of attack we had to make this proof of work costly. Security is always a balancing attack because everything is a tradeoff: while this makes the network more secure it also increases the burden on every miner. We did lots of analysis and testing prior to genesis and picked a set of parameters that we thought were a reasonable compromise: they provide a high enough degree of security without imposing too burdensome a penalty on all miners.

Unfortunately there were a few flaws in this design. In the current design it turns out that miners that want to commit very large amounts of storage, on the order of tens of TiB or more, are actually better off if they split their one large identity into many smaller ones. The way Spacemesh works today, this provides several benefits: it allows miners to get storage online and begin earning rewards more quickly, it means they can more safely generate proofs during the window each epoch when that work needs to be done, and it means they can cut a few corners, do more work in parallel, and earn greater rewards than they could if they only had a single identity.

While in general miners should be free to split their storage however they wish for privacy or other reasons, at scale this is actually a problem because each identity imposes a cost not only on the miner who owns it (since they need to manage that identity) but also on the entire network (which has to receive, process, and store each miner’s proofs forever). By correcting the flaws in the PoST design, by enabling miners to grow their storage plots and combine existing identities, and by charging miners for the actual cost that their proofs impose on the network, we know how to get the incentives right and fix this but it will take some time. Miners who have already set up many identities won’t likely do additional work to combine them, and those already mining as part of a pool won’t likely exit the pool, unless the incentives to do so are quite strong.

Unfortunately, until this work is done, and in spite of our promises to the contrary, some miners will continue to see benefits from split identities or using pool software that manages all the gory details for them. The good news is that we know what needs to be fixed, we more or less know how to fix it, and there are some low-hanging fruit fixes that should improve the situation pretty soon. Stay tuned for more.

Thing #2: Better UX, Better Tools

There’s a type of user that cares deeply about what Spacemesh stands for, things like decentralization, censorship resistance, financial freedom, and a fair, level playing field. Those users do exist—I know because I’ve met them—but the reality is that they’re a minority, at least for now, and that’s okay. We’re building Spacemesh for all people and we need to be okay with the fact that many of those people may not share our values.

Speaking of building—there’s a lot left to build. We’re a small, under-resourced team that’s doing our best, but the reality is that the experience of using and mining Spacemesh today isn’t great for many users, to say nothing of trying to build applications on the platform. Our software is still buggy—hopefully there aren’t too many of the sort of bug that would crash the network, reduce stability, or cause security issues, but we have plenty of the sort of bug that makes it hard to, say, know your account balance at any point in time. There are also tons of other issues, features we haven’t gotten around to adding or things we haven’t had time to design and build or fix yet. For instance, our API was designed three years ago. Both the protocol and the state of the art have advanced considerably since then, and we had to cut a lot of corners implementing the API. This is seriously hampering efforts to provide better tooling and to improve the apps and tools we already have (such as the explorer), but we haven’t yet had the resources to redesign the API from scratch.

Users who are strongly values aligned may be willing to put up with a certain degree of frustration. Most users, however, are not so patient. I totally understand this. People have busy lives and can only dedicate so much time to Spacemesh even if they do align with the project’s goals and values. There’s only so many hours you can dedicate to fiddling with GPU settings, nonces, CPU threads, etc., not to mention apps that are just buggy and don’t work as they should out of the box.

Another thing that pools have done is provide a better user experience out of the box. In theory mining on Spacemesh should be as simple as downloading and running an app and pointing it at your GPU and free storage. This is the experience we’ve always promised users, and to be fair, it is more or less this easy if you’re running the “simplest possible mining setup” described above, i.e., the one use case we optimized our design for. But most miners today probably don’t perfectly fit this description. For anyone else, mining isn’t as straightforward as it could or should be. It turns out that there are a lot of variables, more than we accounted for—in terms of hardware setup, system resources, etc.. The complexity of the protocol doesn’t help. So our “five minute easy setup” has actually become fairly complicated for a lot of users. Software from pools has, it turns out, been easier. For instance, it’s not easy to figure out how to divide your storage so as to optimize your rewards and make the most of your hardware. Our software doesn’t do that for you; pool software does.

The obvious thing we need to do is improve both our tooling and the UX of our existing apps. It should be easy for all users, or at least most users, not just users with the simplest possible setup, to use official software to initialize, say, multiple identities or multiple drives using multiple GPUs, to move storage files around, etc. And Smapp should be simplified and streamlined, with a lot of confusing configuration options hidden for all but power users.

We’re beginning to work on a Smapp redesign to accomplish this, which may entail splitting it into several applications. We’re also working on splitting the node software into several modular pieces so that you could, e.g., perform several PoST initialization jobs in parallel, connect many miners to a single node, host a node in the cloud, etc. These are all big projects and they’ll take time, but the different interface that pool software has offered to the same underlying protocol has both inspired and informed future designs. We’re protocol designers and hackers, not product people, so it’ll take us some time to catch up.

Also remember that we have a superpower that pools don’t: doing things in-protocol. Today, by letting a pool perform initialization and mine for you, you have no choice but to give them your private key. This is not only antithetical to values such as personal responsibility and self sovereignty and bad for network health, it’s also dangerous because it requires trusting a third party to act honestly on your behalf, not get your identity banned, pay you correctly and not steal funds, etc. (in other words, from the perspective of money, it’s no better than a bank, which is sort of not the point of cryptocurrency!). This will never be the case with official Spacemesh software—you’ll always have full control of your own keys and your coins, as you should.

Thing #3: Education

Fixing PoST and improving UX are both important but, in my opinion, the most important thing we can and must do is to better educate Spacemesh users. The protocol is complex and, as explained above, today mining is also too complicated. The vast majority of our resources have been focused on shipping the network, responding to bugs and issues as they arise, and adding critical technical fixes and improvements. We’ve had scant time to think about education and it shows in the sorry state of our documentation.

One of the things that makes education hard is that among Spacemesh miners and users there are several personas and they are quite different from one another. As I mentioned we’ve always been focused on the small home miner with off-the-shelf hardware and without a ton of technical expertise. But since launching we’ve discovered that there are at least three other distinct classes of users: hobbyists with more technical expertise and lots of spare hardware, large scale semi-professional or professional mining operations, and mining pools. While there’s some overlap, the reality is that each of these groups of users has different needs: they need different tools and different docs, and they have different sets of questions. We initially prioritized the first at the expense of all of the others, and even now we’re struggling to help all of the groups. (One of the amazing things about the Spacemesh community is the way in which more experienced users have offered a hand to newcomers, something that’s delightful to watch and for which I’m incredibly grateful, but more needs to be done.)

As a result, we need a diverse set of educational materials. We already have basic explainer videos targeted at home miners. We’re working on more technical documentation for hobbyist and professional miners. We have Q&A forums and a FAQ in Discord, and we’re working on building a more complete, universal documentation site. Eventually we’ll add things such as full protocol documentation (targeted less at miners and casual users and more at app developers and researchers), an integration guide (for building apps and services on Spacemesh), and a lot more.

While Spacemesh is a blockchain and shares many of the same features as more familiar chains like Bitcoin and Ethereum, it’s also quite different in some key ways. I’ve attempted to explain some of those differences here, but this isn’t the best format for people to find or consume that information, so we need to do a better job. And answering one-off questions one by one on Discord also doesn’t scale (and, sadly and frustratingly, isn’t indexable by search engines). The good news is that, the more time we spend answering questions and discussing things with the community, the better sense we get of the sort of questions people have and the issues they’re encountering, which will ultimately lead to better docs and other resources. Between this and dogfooding the network myself (by, e.g., mining at home), I feel pretty confident that I can explain not only the high level protocol outline but also the practical, low-level technical details that miners and application developers are looking for today. By both improving the system itself and simultaneously improving documentation and other educational resources, the situation will rapidly improve.

For the time being, however, we have to contend with these limitations and with pools. The emergence of big pools on Spacemesh is frustrating to some people and in some ways it contradicts the Spacemesh mission of making mining easy for home users without needing to join pools. By the same token, however, pools are a legitimate application and they might always make sense for certain classes of users. As long as they act in a responsible fashion and in the network’s best interest, I have no problem with them, although a single, large, monopolistic pool does have centralization risks.

At the end of the day Spacemesh is a permissionless, censorship resistant protocol which means that we couldn’t ban pools from joining even if we wanted to. We need to help our users understand why this is the case and why it’s a good thing, and rather than “fighting” pools we need to figure out how we can respond more constructively through better incentive schemes (which at the end of the day is all a blockchain is at its core) and we need to communicate this to our users. Hopefully after reading this it’s a bit clearer how that might happen.

We have our work cut out for us to get Spacemesh to a place where it lives up to its original promise and potential but we’re aware of what’s going on, we know what needs to be done, and we’re working on it. The best thing you can do to support that work today is to join the network, mine, use it, and let us know what’s working and what isn’t. All of our work is open source and permissively licensed and we welcome contributions.

Hard Lessons from Burning Man

https://rettig.substack.com/p/hard-lessons-from-burning-man

Sunset over the playa at Burning Man 2023. This year’s Burn was challenging in ways no one expected. That challenge makes the event worth attending. Photo by the author.

Subscribe now

This week’s issue is delayed since I was at Burning Man last week. The experience was too intense to write while I was there, and it was so intense that I can’t not write about it now.

I’ve been to Burning Man three times and each experience has been very different. I’ve been at a different stage of my life each time and arrived with different sets of goals and expectations. This was my first Burn after missing three years due to covid and having a child. Each year, Burning Man has a theme: this year’s was Animalia. In similar fashion I feel like each Burn has had a different personal theme for me.

As I wrote before, Burning Man has ten beautiful principles that have deeply impacted me and the way I live my life. I could probably write a hundred pages on the topic, but as brevity is the soul of wit, here are my three biggest takeaways from Burning Man this year and in prior years.

Burn #1: 2018: The Power of Decentralization

This was my first Burn and it was momentous for several reasons. Most people go crazy their first Burn and I was no exception. I did things I’d never done before. I exposed myself to ideas and concepts I didn’t know existed. I felt the energy of a room full (well, a fishbowl dome full) of strangers—seriously. I tried new drugs. I came out of my shell. I made friends for life (five years later we’re still in touch and I’d still go to the ends of the earth for these people). There were highs and lows, but overall there was joy, wonder, awe, and release.

Prior to 2018 I more or less ignored Burning Man for over a decade since I felt that I didn’t need music, drugs, or desert festivals in my life. Little did I know how wrong I was. I was finally convinced to give it a chance in 2018 by my friends at Camp Decentral. At the time I was traveling and attending crypto conferences nearly full time, and I could squint and sort of pretend that Camp Decentral and Burning Man was just another crypto conference. (I camped with people I was used to hanging out and conferencing with at crypto events in Berlin and New York.) My main motivation was to see decentralization in action. I was quite active in Ethereum governance at the time and I wanted to put my money where my mouth is, so to speak, and try actually living some of the principles I had been espousing: things like do-ocracy, holocracy, and anarchy.

Be careful what you wish for—I certainly got more than I had bargained for! Both Camp Decentral and Burning Man itself are run along more or less these organizing principles. The Camp, and the Burn, are cooperative. There are no spectators or tourists. In camp everyone has a role, from cooking and cleaning, to building and striking, to managing critical infrastructure like power and water. At Burning Man there’s no money and thus no economy, so everything works through the principle of gifting. Every attendee and every camp brings gifts with them to share, some of them physical, some of them intangible and ephemeral. The whole thing only works because people respect the commons. Everyone maintains a sense of civic duty and everyone participates, and it would fall apart if this weren’t the case. (It’s not perfect. Some people respect and live the principles more than others; some gift more than others; and in recent years there’s been something of a fly-in fly-out tourist culture and people taking without giving much. Managing the commons is hard, man, and it flies in the face of selfish, short-sighted human nature.)

There’s a nonprofit organization nominally in charge of the event known as The Burning Man Project, “BMORG,” or affectionately just “The Org.” Their role is to provide very basic rules and infrastructure such as tickets, gate and will call, the physical layout and placement, regulation of mutant vehicles (a.k.a. art cars), emergency medical services, rangers, and porta-potties. Literally everything else—including food, water, and shelter, and of course all the art, music, and other fun—is provided by the participants.

Burning Man holds a lot of important lessons for “default world” life and business. It makes sense for a government to exist and provide some very basic rules and infrastructure, but The Org is generally respected because it mostly stays out of the way and lets people create their own Burn and enjoy themselves. The Org isn’t perfect but even so Burning Man is something of a libertarian paradise because it’s more or less the smallest, most local form of government most of us will ever experience. (Federal and local law enforcement are nominally present at the event as well, but I’ve never encountered them during any of my Burns and rarely see them at all.)

As a result at Burning Man participants necessarily develop a sense of community and civic involvement because they have to, because no one else is going to do things for them. And, incredibly, it all works and genuinely amazing things happen every year, testament to the power of decentralization and small government. Things at camp and at the Burn can be a bit messy. Sometimes things take a while to get done, and sometimes something doesn’t get done at all. But the important things get done, and when people do things, they do them well because they genuinely pour their heart and soul into them. In other words, they’re doing things to give back and because they really want to, not because it’s their “job,” because they’re being paid, or because someone else told them to (as it turns out, intrinsic motivation like this is a much stronger incentive than money). The Camp has leaders in the form of experienced burners who have done this a few times, and people volunteer for roles and shifts. No one gets told what to do, there are no performance evaluations, and the only form of sanction for shirking responsibility is that you won’t get invited back the following year.

In spite of all of this I don’t think Burning Man scales—in time or in size. But it’s still a wonderful, radical experiment and seeing it come to life in all its glory really has changed the way I look at governance and social organization in the years since my first Burn. It’s definitely made me a fan of a smaller, more local, more hands-off form of government and governance. It’s worth mentioning that some of the social and technical primitives we’re developing in the blockchain and cryptocurrency space, such as DAOs, are inspired by the Burning Man principles and might just allow us to scale them, but that’s a topic for another issue.

Burn #2: 2019: Radical Self Expression, Radical Transparency

Radical self expression is another of the Burning Man principles. Burners tend to express themselves through crazy outfits, temporarily taking on different personas, engaging liberally in things like drugs and sex, and generally doing debaucherous things they wouldn’t do elsewhere. None of these behaviors appeal to me in particular—these aren’t why I attend the event—but what does appeal to me is breaking routines and getting out of my comfort zone a bit. It shouldn’t require traveling thousands of miles and camping in the desert, but the reality of day to day life is that sometimes breaking routines does require extremity of one form or another. We’re quite stuck in our habits and, as free as life may be today compared to the past, society doesn’t make it easy to radically break the mold or radically express oneself.

One way I do this at Burning Man is by relaxing my regimen, things I normally do every day like writing, running, and meditating. For me radical self expression means going out with the intention of meeting new people, something I very rarely do these days. It also means being open to new experiences and new ideas. For someone like me who’s very rational and has an engineer’s mind and training, a lot of Burning Man can feel like hippie dippie, new age, spiritual mumbo jumbo, but I’ve found that being open minded and engaging with people and ideas that feel unfamiliar and a little uncomfortable can actually be very rewarding. Burning Man is a terrific opportunity to do this. I’ve learned a lot from these conversations and from workshops on topics such as male-female spiritual relationships and how to authentically relate with strangers.

I first came to understand the power of radical self expression in 2019, when I was facing something of an identity crisis. I was at an inflection point in my life. I was approaching the end of my thirties, and I was confident and comfortable with who I was internally, but I didn’t feel comfortable revealing my true self in public. I hid a lot, even from the people I cared about the most. Despite being a contrarian and having no interest in going back to the corporate world, I still felt that I had to remain “on the career track,” to make sure my resume looked good so as not to close the door to future opportunities. I rarely provided honest, critical feedback to friends and colleagues, preferring to avoid conflict in a misguided attempt not to burn bridges. I also realized that I didn’t believe in monogamy but felt that I was forced to pretend I did for social reasons.

As a result, I was feeling quite stuck and conflicted. Burning Man helped me break free of these feelings. It helped me realize that acting in a way that didn’t align with my true feelings was unhealthy and unhelpful, and was causing a lot of stress for me and the people around me. By seeing lots of others at the event act in ways that involved brave, radical self-expression—whether that meant adopting a different persona, a different gender, taking on risks they normally wouldn’t, or just being nude in public for a few days—I began to see that my behavior didn’t align with my feelings for silly, shallow social reasons. In short, I began to see that, rather than feeling that I needed to “grow up” and conform to the world, I should instead be proud of who I am and celebrate and lean into the things that make me different (such as non-monogamy, honest feedback, and opting out of the traditional career track).

This involved some painful adjustment when it was time to reengage with the “default world.” I decided that, first and foremost, I had to confess about lying to people I cared about, so that radical self expression began with radical transparency and radical honesty (which I consider my personal extensions of the Burning Man principles). I came clean to people that I had hurt and had lied to, and adopted a policy of radical honesty with myself and others. It was really scary and I was afraid that I’d lose multiple friends and relationships. It was difficult for the people I confessed to, and I probably did burn a few bridges that needed burning anyway, but ultimately it resulted in much stronger relationships. One is with someone who’s now my life partner and I’m certain that our relationship wouldn’t be as strong as it is without my experience at Burning Man and the difficult but positive actions it inspired.

I’m a much stronger, more resilient, more confident person today and I feel able to show my true self all the time, whether it aligns with social expectations or not. I’ve striven to maintain these principles in my day to day life, on and off playa.

Burn #3: 2023: Hard Isn’t Difficult

This year’s Burn was hard, but it wasn’t difficult. Let me try to explain.

As any regular reader knows, I’m obsessed with running. One of the things I enjoy so much about running is that it’s hard: I run every morning because I like to do at least one hard thing before breakfast. By hard I mean physically and mentally demanding. Physically, moving forward continuously for an hour or more is hard. (Believe me, staying in bed is easier, especially when the weather’s bad!) You get tired, thirsty, hot or cold depending on the weather, and sometimes you get sore. As hard as running is physically it’s even harder mentally, especially long runs. I get anxious before a run, and I often second guess myself. I worry that I won’t finish the run or that I’ll get sunburnt or hurt myself or need to use the bathroom, that sort of thing.

But these are all small things and running isn’t difficult. At the end of the day it’s just one foot in front of the other, again and again. It’s not complex or hard in any sort of big, novel, challenging way. I’ve done it so many times, I’m quite confident and can do it now without thinking about it. There’s still some anxiety but a lot less than there used to be. And more than anything there’s the knowledge and confidence that it’s good for me, and all of the happy memories of running over many years.

The difference between hard and difficult is psychological. Something hard is demanding, but it can be demanding in a very positive, enjoyable way. Physical labor is demanding—but if you know what you’re doing and enjoy it, are prepared and supported, can do the work safely and rest after, etc., it’s not necessarily difficult. Meditation or even just sitting still is hard but not difficult.

This year’s Burn was very, very hard for two reasons. Firstly, because I camped with friends who built an art car. Operating it, then taking it and the camp down, was very hard. It was a great deal of exhausting work, some of it a little dangerous. I was on my feet working for 8-12 hours a day—and that’s before going out and trying to have some fun. It’s the most physical labor I’ve done in years. But it was exhilarating because I like the people I was camping and working with, because it was for a meaningful, creative cause that brought joy to many people, and because I learned a lot (how to safely vent propane, that diesel fuel won’t ignite unless compressed, how to safely and securely set up a camp shade structure and keep it dry, and that shiftpods and hexayurts aren’t waterproof, to name a few things).

Secondly, because as you may have heard we had some quite extreme weather this year. My previous two Burning Man experiences were both hot, dry, and dusty. This one was wet, muddy, and cold. Rain at the Burn was always a distant possibility and friends that are OG burners shared stories from a decade or more ago about wet Burns, but it just doesn’t happen often. Or at least it didn’t used to. In the event we got several months’ worth of rainfall over just 2-3 days. I don’t have too much to add to what’s already been reported but it was muddy and miserable for a few days while the rain kept coming and while we waited for things to dry up. The thick mud made it almost impossible to move around. Everything in camp got wet and muddy and it was a constant struggle to keep things clean. Even after the weather improved and we had a full day of sunshine things were still wet and muddy and everything was a mess when we packed up camp. This made striking camp significantly harder than usual.

But, again, the experience wasn’t particularly difficult. It was uncomfortable and required hard work but it wasn’t especially taxing psychologically. On the contrary it was a great opportunity to adapt to new circumstances and to experience life away from the comforts of home for a few days (this is always true of Burning Man but it was doubly true this year!). This sort of experience really helps me not take day to day comfort and convenience for granted, and it makes me appreciate simple things like a real coffee in the morning, a hot shower before bed, and a clean, dry place to sleep. The conditions also meant that we were mostly stuck in camp for a few days and couldn’t venture out, explore, join parties, etc., which made for a great opportunity to form deeper bonds with our campmates.

Another term I’ve heard for this sort of hard-but-not-too-difficult thing is “stretch experience.” I suggest seeking out a few stretch experiences every year as an opportunity to grow, test yourself, and remind yourself how lucky you are to have the things you have in your life.

Thanks for reading Three Things! Subscribe for free to receive new posts and support my work.

Reasons Not to Use Spacemesh

https://rettig.substack.com/p/reasons-not-to-use-spacemesh

Spacemesh doesn’t have a label per se, but if it did it would come with a big, bright warning: “use with caution.” Photo by Duncan Kidd on Unsplash

Subscribe now

I’ve been writing about Spacemesh roughly every other week so why not keep that rhythm going this week? There are other, heavier things I want to write about but work is quite busy this week and I’m also preparing for Burning Man so I thought I’d keep this week’s Three Things light and fun. 🙂

The Spacemesh network is alive and coins actually exist now. In that respect shit kinda got real recently. Spacemesh has had a “happy hacker” mentality for many years, and there’s a lot that needs to change given this important phase shift. We need to shift into a mindset that’s at the intersection of product and critical infrastructure (think: hospitals, airplanes, self driving cars, etc.). We now have actual users and thousands of people are relying on the stuff we’re building—and if Spacemesh breaks, people lose money.

This transition is well underway but things are still going to be bumpy for a while. For the past few years I and the rest of the team have been extolling Spacemesh’s virtues, telling the world why it should care, and telling everyone why they should join and use Spacemesh. So I thought it would be fun to do the opposite and talk about reasons not to use Spacemesh—at least not yet.

One more quick disclaimer before we dive in. It’s not up to me who uses Spacemesh, whether or not people use it, or what they use it for. It’s not up to anyone. Spacemesh is a permissionless network that people are free to use or not as they wish, and they’re free to use it for any lawful purpose they wish. Okay, on to the points below—which I am serious about, but am also half in jest about!

Thing #1: To Make Money 🤑

This is probably the worst reason to use Spacemesh today. I’m not suggesting that it’ll never be profitable to use Spacemesh, that the coin will never have any value, or that mining is a waste of time. Those things may or may not come to pass, but they’re out of our hands and in any case they won’t happen for a while even if they do. They’re not the reason we’re building Spacemesh and they’re really not a good reason to participate in the project today.

Why? Lots of reasons. For one thing, the economics of Spacemesh are designed in such a way that if you’re spending money to mine—by buying hardware, renting a GPU, upgrading your Internet connection, etc.—then you’ll almost certainly lose money. The whole point of Spacemesh is that it should cost home users almost nothing to mine since they’re making use of existing hardware and bandwidth. By contrast, it should be expensive for industrial miners, but this means it’ll also be expensive (read: unprofitable) for most home miners building specialty mining rigs. This is how Spacemesh is able to be especially friendly to the little guy. Yes, it might take the network a little while to reach equilibrium in this respect, but given how fast storage space has joined the network I suspect we’re more or less already there. It shouldn’t cost you more than a few tens of cents to generate a single unit of storage, and if it does you’re probably losing money. Economics is economics and you can’t fight it over the long run.

Also, in its present form the software and the network are at a very early stage and are quite immature. It’s best to regard Spacemesh as “alpha” quality software. That means that, in spite of our best efforts, there are going to be bugs and lots of things are going to break. As I discussed here before we made the decision to ship Spacemesh when we did in spite of this, and I don’t think it was too early or too late. We’ve always emphasized the experimental nature of the project and never suggested for a moment that it’s mature or stable in its present form.

We’re attempting to do something that’s literally never been done before: making mining super easy for home users and targeting a million or more miners. This means Spacemesh is not your garden variety blockchain and it’ll take some time until the design is mature and well tested. Given all of this, it’s essential that no one invest more than they can afford to lose into the project at this stage. If you’re mining as a hobbyist in order to learn and because it’s fun, well, those are great reasons to join! If on the other hand you’re mining in order to profit from the coins, well, I can’t stop you since Spacemesh is permissionless but I think it’s a bad idea.

Another reason is that a liquid market doesn’t currently exist for Spacemesh coins and I don’t know if and when one ever will. We’re happy to help application developers and infrastructure providers (including but certainly not limited to exchanges) integrate Spacemesh, and we’re working on documentation to that end, but a listing is totally out of our hands. If it were up to me the coin wouldn’t be listed for quite some time, until the network is more mature. Even if we wanted to prevent a listing, however, we couldn’t, because—you guessed it!—Spacemesh is permissionless, as it should be.

Even assuming the coin does get listed and a market does exist, and assuming there’s sufficient liquidity and price discovery, I have no idea what the coin will be worth or if it will have or sustain value. There are thousands of crypto coins and tokens out there including many layer one smart contract blockchains like Spacemesh. There are plenty of projects that are far more hyped, have raised a lot more money to spend on marketing, and that hold events and conferences and pay for billboards in big cities. Spacmesh isn’t doing any of those things now: we don’t have the budget, and I doubt we would even if we did. It’s a competitive market. Yes, of course I think that Spacemesh is unique and special and a hell of a lot more authentic than most of those projects, but I’m also not sure those are things the market or the broader world values. Do your own research and do not invest more than you can afford to lose.

Lest I sound too much like an investor prospectus or regulatory filing, let me say one more thing. To the extent that Spacemesh coins ever do have value, it’ll be as a token: not in the ERC-20 sense of the word, but as a token or evidence that Spacemesh has achieved something. To me, today, Spacemesh coins represent not only the culmination of many years of hard work but also the success of the Spacemesh vision, that everyday people around the world can participate in a global network of value creation and exchange. Each coin that you acquire or transact with was or could’ve been mined by someone somewhere just like you. That’s never been done before, and that’s pretty damn exciting. Just as every Bitcoin is a sovereign, freedom-loving 🖕 to central banks and national governments, every Spacemesh coin is a celebration of human collaboration and achievement, and a symbol of the fact that a better system is possible.

Thing #2: Stability ⚓

There have been a number of bugs and other small issues since Spacemesh launched a few weeks ago. We made a mistake in the genesis config that caused the first few blocks and layers to contain only a single proposal, causing some layers to be empty (this was fixed quickly). We’ve had a few issues with the PoET (also fixed quickly). And we’ve had sporadic issues with the P2P network stability and gossip. Amazingly, though, consensus has been very reliable and we’ve had no hiccups in terms of confirming transactions, blocks, and layers. Spacemesh has been remarkably stable so far, considering the novelty and complexity of the protocol and how recently we launched.

I hope it stays that way but it might not. There are a thousand ways things could go wrong. We’ve already had near misses and there will be more. A consensus failure isn’t the end of the world since, with luck, we can fix the issue and restart the network pretty quickly. We also have a self-healing mechanism that will automatically restore consensus once the underlying cause is addressed.

But as mentioned above Spacemesh is still alpha software and will be for a while. The software was born prematurely, so to speak. There are many, many features and improvements that we would’ve liked to have included in the genesis release but couldn’t due to lack of time and resources. That’s okay. As I wrote previously and mentioned above, I think the network was launched at the right time and with the right level of maturity—as evidenced by the fact that it’s still running and hasn’t gone down (yet). Just like a baby born slightly premature, Spacemesh will continue to develop and it’ll be just fine. It’s 1000x better that its development happen “in the open” rather than in the lab. We’ve already found many issues and learned a great deal that we wouldn’t and couldn’t in a lab setting.

I’ve noticed that the community tends to be really frustrated when things break or don’t work properly, when things are a bit harder than they should be or take a bit longer than they’d like. I understand this frustration and I try to shrug it off as a natural reaction when one is excited about something and it doesn’t work as well as they’d like, but at the same time I think these are unrealistic expectations for alpha software. We’ve never claimed that Spacemesh is more mature than it is. We need to keep reminding people that, while we’re thrilled you’re along for the ride, it’s going to be bumpy for a while since we’re in the Wild West out here.

There’s always a tension with blockchain software. On the one hand it is mission critical infrastructure. It may not be on par with the software that runs airplanes, hospitals, military drones, self-driving cars and the like, but it’s close, because (unlike, say, photo sharing apps) real people lose real money and assets when blockchains don’t work correctly. On the other hand, this is an open source project, we have extremely limited resources, and we’re making mistakes in public. I think it’s essential that network and community participants adopt a pioneering attitude and steel themselves for what’s to come: a ride that’ll certainly be fun but also bumpy. Also, that rather than complain when things go wrong, they make an effort to educate themselves, roll up their sleeves, and help fix things. After all Spacemesh is a do-ocracy. A bit like Burning Man 🙂

Someday, like Bitcoin and maybe even Ethereum, Spacemesh will be mature and stable enough to really power mission critical infrastructure. That day isn’t today and I don’t know when that day will be, but we’ll continue to work hard towards that goal. Until then, please be patient.

If stability and reliability excite you less than being at the bleeding edge, trying software and protocols that are doing something that’s never been done before, then you’re in the right place. Stick with us! Everything’s going to be just fine (after a few more bumps).

Thing #3: To Build Apps 🛠️

Eventually Spacemesh will be a lot more than a blockchain. Today it has transactions, blocks, layers, and epochs, but in the future it’ll have a lot more. In fact one of the problems with the blockchain and cryptocurrency ecosystem is that the vast majority of projects have failed to get past this stage and have never managed to deliver usable applications that solve real problems for everyday people. Spacemesh will be an application ecosystem with boring but amazingly useful applications.

That’s very much our goal with Spacemesh and we will get there, but it’ll take some time. Coin and consensus are the starting point, and that’s where we’re at today. We need to take the time to make sure that the protocol works, that it’s robust and reliable and secure, and that it cannot be attacked. We need to ensure that Spacemesh is at least as secure, reliable, and censorship resistant in this respect as bigger, more mature networks like Bitcoin and Ethereum. We’re well on our way to achieving this! The network is just over a month old and we already have more than 10k nodes and 6500 miners! Incredible.

We welcome contributions to Spacemesh itself, but alas we’re nowhere near the point where you can build apps on top of Spacemesh. We’re still building the basic infrastructure. We have a candidate VM design. We had to launch without a full VM (we have just a few hardcoded smart contracts for now), but the VM is one of the first major upgrades we’re planning. We’ll have a concrete VM plan and roadmap in place within the next 2-3 months and with luck we’ll have a prototype out within about six months. At that point it’ll be possible to start playing with it and to start building prototype decentralized full stack applications on top of Spacemesh.

To be clear, you could build an application on Spacemesh today but it couldn’t do much more than send and receive transactions. In other words, it could more or less do what Bitcoin apps do. (Actually, Bitcoin apps can do a bit more today thanks to recent upgrades including Taproot.) But the process isn’t documented and the tools are messy. We don’t even have a proper integration guide (we’re working on it, and we’ll have one soon). And most app developers I know wouldn’t be interested in building the sort of app you could build on Spacemesh today because it’s just too limited. To build interesting things you need a fully expressive VM, as Ethereum and EVM have shown us.

I used to be an app developer and I still am at heart. I really can’t wait to start building apps on Spacemesh—whether that means building things that exist elsewhere like tokens, exchanges, NFTs, and DAOs, or the really exciting, novel stuff that’ll emerge, whatever that may be. Spacemesh has some unfair advantages here, such as that we have our simple wallet and mining app running on tens of thousands of computers already. This may evolve into an app ecosystem, or it may turn into a browser-based wallet, or it may be replaced entirely, time will tell. In any case, I won’t consider Spacemesh successful until I’m able to run some really boring but important infrastructure on it, such as chat and calendaring. It’ll be very interesting to explore collaborations with platforms that have made headway just coins and consensus, such as Urbit and BlockchainOS, when the time comes.

But that’ll take a few months at least and building apps is definitely not a good reason to use Spacemesh today! Be patient. We’ll get there, and when we do, it’ll be glorious.

Thanks for reading Three Things! Subscribe for free to receive new posts and support my work.

Giving a Good Talk

https://rettig.substack.com/p/giving-a-good-talk

James Baker said, “Proper preparation prevents poor performance.” In my experience it’s as true for giving a talk as it is for anything else. Sometimes, before a talk, first thing in the morning I sit in the back of the empty conference room where I’ll be speaking to just sort of feel the vibe of the place. It helps. Photo by Keith Kasaija on Unsplash

Subscribe now

I love giving talks. There’s something magical about being in front of a room full of people that are paying attention, listening to you, and actually interested in what you have to say. I’ve always felt this way, maybe because I find communication interesting in and of itself, but I feel doubly this way today because we spend so much of our time staring at screens and communicating through mediums like chat apps and social media, and distractedly multitasking. The chance to face a room full of people with no intermediation and no filter is just really, really unique and special, and it’s even better when I get to share something I’m really excited about with the audience.

The other thing I love about giving talks is that it’s an excellent opportunity to organize and structure my own thoughts and to test my understanding of a topic. Giving a talk really means telling a story. I like hearing stories and I like telling stories. The best talks are just captivating, interesting stories, well told—although, granted, most tech talks aren’t nearly so skillfully written or delivered—and who doesn’t like listening to interesting stories? I often choose topics that I have only a basic understanding of, but that I hope to understand more deeply, because giving a talk on the topic requires that I get smart about it quickly. Good examples of this are my talk at ETHBuenosAires ages ago on scaling Ethereum, my talks at ETHDenver in 2022 and 2023, and my EthCC talks on the use of Bitcoin in El Salvador (2021, 2023).

I’ve given dozens of talks on dozens of topics over the years, and over time I’ve become more comfortable and more confident. Friends and colleagues occasionally ask for advice so I thought I’d share some ideas here.

Thing #1: Keep it Spicy

If I had to give a single piece of advice on giving a talk—if you remember one thing from this issue—it should be this: pick a topic that you’re genuinely curious and passionate about and present it in a creative way. If you get nothing else right but you nail this you cannot help but deliver a good talk.

Curiosity and passion show, no matter how smooth or awkward a speaker you are, and they’re endearing qualities. If you’re really into the subject matter your audience will pick up on this and be much more likely to pay attention, follow along, and trust you. You’re also much more likely to write a better, more compelling, more interesting talk if given the opportunity to talk about something you’re really interested in.

And imagine the opposite: listening to someone give a talk that they’ve given many times before on a topic they’re just not that interested in. A common example of this is when someone on the marketing team of a technical project that they don’t fully understand or appreciate gives a “sales pitch” talk—a talk they didn’t write and just aren’t very invested in. Nothing is worse than giving a talk on a topic that you find dull. You’ll cut corners, you’ll lack energy and pizzazz, and all but the most sociopathic, pathological liars are simply unable to muster the energy and fake passion for a topic that bores them.

You can simply tell when someone is absorbed by a topic and when someone just isn’t that into it. You can see it on their face and hear it in their words. When a compelling, charismatic founder pitches you on their vision, or a passionate builder describes something they’ve poured themselves into building, you can clearly tell the topic means everything to the speaker. That sort of energy and enthusiasm is infectious; we’re hard wired to react this way to infectious enthusiasm and it’s very hard to resist drinking in someone else’s energy and passion.

This sort of begs the question, how do you find a topic that interests you? I don’t think it’s very hard. I keep running lists of interesting topics as they occur to me (those lists also form the basis for the things I write about here). So I suggest starting such a list if you don’t already have one and just jotting things down when they occur to you. When you ask yourself a question or wonder why a thing is such and such a way, write that down. When you notice a curious headline, listen to an interesting podcast, or someone tells you about an interesting book they read, write that down (taking notes, even brief ones, after reading or listening to books, articles, magazines, and podcasts is a great exercise). The next time you give a talk might be the perfect opportunity to explore one of those topics or answer one of those questions.

Finally but equally importantly, I also recommend thinking outside the box and keeping your topics spicy and a little controversial. I’m not saying you should shit on everyone and make enemies, but consider taking a controversial stance on a popular topic or playing devil’s advocate. No one will blame you for this, especially if you say upfront that you intend to play devil’s advocate, explain why, and keep it constructive and positive. There are literally hundreds of talks at an Ethereum conference called “How to build an xyz app”; but talks called Bitcoin is for Dictators aren’t as common. A good rule of thumb is that you want to piss someone off with your talk title and its contents, but ideally not too many people (and if you haven’t pissed anyone off you’re not thinking outside the box and keeping it spicy enough).

To summarize, a good strategy is: keep a running list of interesting topics and questions, pick one that you’re deeply curious about, and take an unpopular or outside the box stance when you talk about it.

Thing #2: Throw Away the Script

I’m all about authenticity. In any conversation or dialog one of the most important things is that you come across as honest and authentic, i.e., as your full and true self. This applies equally to giving a talk. But for some reason I think a lot of people don’t realize this. They think of a talk as a performance and feel that, like a performance, a talk should be scripted and memorized. Unfortunately if you actually script and memorize a talk, it will sound robotic and inauthentic and your audience will notice, I promise. This is just how communication works.

Alright, so if you’re not supposed to script a talk, what should you do instead? One obvious alternative is to wing it! Prepare some slides, review them a few times, have some rough idea what you want to say to each slide, and then deliver your talk off the cuff. I’ve done this a few times (typically when I simply didn’t have much time to prepare) and I can say from experience that it almost never goes well. It checks the authenticity box but it fails in other ways. For one thing, when I do this my delivery isn’t clean and I find myself tripping over my words. I say more than I should. I repeat myself. I sometimes slip into word salad. And sometimes I blank out and forget what I wanted to say in the first place. It can also result in a poorly structured presentation where information isn’t presented in the optimal order.

I think it’s important to strike a balance between being structured and prepared on the one hand and being authentic on the other. In my experience the best way to do this is to prepare the story that you want to tell without scripting it too much. First of all, make sure the story has a beginning, middle, and end (more on that next) and that it’s told in the right order and flows well.

The only way to really do this is to speak the story out loud to yourself in order. I start by creating a draft deck and I aim for 30-60 seconds per slide. I try to keep my slides extremely visual (with bright colors, simple ideas, and clear photos) with minimal information (numbers, text, graphs, etc.) so that the audience pays attention to me and not to the slides. Each slide should set the tone of the moment but you should communicate the information, not your slides.

Once the draft is done I begin walking through it from the beginning until I reach a point where the story or the presentation feels unnatural. I stop, fix the problem, then start again from the beginning. It typically takes 10-20 passes over the deck from the beginning until I’m comfortable with the story: that all the required information is there, is in the right order, and that anything spurious or unnecessary has been removed or, at least, moved to an appendix at the end.

Once I’m comfortable with the deck I’ll walk through it a few more times to make sure I’m comfortable with the verbal delivery and timing. I try to always do this out loud, with a timer, but I’ll admit that I sometimes cheat and cut corners on these points. If the talk is especially important and/or if I have extra time I’ll practice it in front of some friends or colleagues for additional feedback. This is also extraordinarily helpful because almost by definition your story will come across differently to other people than it does to you, but given how last minute I prepare my talks this is a rare luxury!

I’ve been using this method for years and it works well for me every time. Give it a shot and let me know if it works for you too.

Thing #3: Structure

Giving a talk without a script works much better if the talk has structure. Too little structure and you’ll get lost and the talk might fall apart. But, too much structure and the talk will feel scripted and inauthentic, and you won’t be able to adapt to the circumstances. You want some room for improvisation. The best example of too much structure is to structure each and every slide, each paragraph and sentence—in other words, scripting everything.

In my experience the “goldilocks spot” involves an overall narrative arc with checkpoints and bookmarks (I’ll explain the difference in a moment). There are many narrative formats, and the perfect format for any given talk will depend on your style, the audience, the subject matter and the story you want to tell. But for the vast majority of talks I find that a Hegelian dialectic format works quite well (and you can always tweak the format to your needs).

The gist is that you break your talk into three sections or acts. Act I is the “thesis”: it sets the stage and introduces a dilemma and/or sets up some sort of tension. Act II is the “antithesis”: you refute or contradict what you presented in Act I, but in an ultimately unsatisfactory way. Act III is the conclusion or “synthesis”, in which you bring together the thesis and antithesis in a satisfying way, resolve the tension, and tie off any loose ends.

These ideas are quite abstract and sometimes a concrete example is helpful. The structure I used for my Bitcoin is for Dictators talk used this format. Act I introduced some basic background information on El Salvador, Bitcoin, and the Lightning network, and introduced the cast of characters. It centered on Nayib Bukele and his antidemocratic tendencies, and suggested (without saying so explicitly) that he could become the world’s first “Bitcoin dictator.” Act II presented a very different perspective, suggesting that in fact Bukele may be an enlightened leader playing the long game and truly acting in the best interest of his people and that, while the country’s investments in Bitcoin and its infrastructure may be unpopular in the short term, they’ll ultimately pay dividends for the country. Act III connected the two perspectives by urging skeptical optimism (or optimistic skepticism!). It concluded the story by saying that we should remain vigilant but give Bukele and El Salvador a chance, and continue to hold him and the country to a high standard that includes the freedoms that Bitcoin stands for, because only then can both dreams be realized.

If you use this or a similar three act structure you’ll have no more than five sections in your talk: a brief introduction (explaining who you are and where you’re coming from, why this topic is interesting and important, why the audience should listen to you, etc.), acts I, II, and III, and a brief conclusion or Q&A. Each section represents a natural checkpoint and an opportunity to structure the use of time. For instance, if you have 25 minutes for a talk, you could simply use 5 minutes per section, or else 2-3 minutes each for the intro and conclusion and slightly longer for the main acts. Then you don’t need to time yourself on each slide or each point; you just need to check your time at the end of each section and speed up or slow down accordingly. I find this sort of pacing incredibly helpful.

Bookmarks are like checkpoints but they’re not connected to acts/section breaks. They’re individual points that you want to emphasize or really drive home. A talk should have no more than 2-3 of these, maximum. You might decide to conclude each act with one such point. While you shouldn’t memorize the talk itself, you should commit the list of bookmarks to memory and make absolutely certain that you touch upon each one of them during the talk no matter what. Write them on an index card or on your wrist or something if you must!

If you adopt a structure along these lines I think you’ll find that your talks are better paced, easier to follow, and more well received overall. If you do decide to use this structure, let me know. I’d love to know how it goes and to compare notes.

Thanks for reading Three Things! Subscribe for free to receive new posts and support my work.

Things I’ve Learned from Spacemesh

https://rettig.substack.com/p/things-ive-learned-from-spacemesh

Imagine trying to build a barn, only something much more complicated, and imagine that there are lots of builders, only each builder has their own blueprint and plan, and… imagine that it all comes together in the end anyway. That’s sort of what Spacemesh feels like. Photo by Randy Fath on Unsplash

Subscribe now

This should already be clear from my writing on the subject but, in case it isn’t: Spacemesh is a unique team building a unique project. I’ve written quite a bit about the technical reasons for this: that we’re building something quite different, that we’ve made some iconoclastic decisions, that we’ve chosen to do things the hard way, etc. But I haven’t written much about the social side of Spacemesh as a team and as a group of humans. I’ll attempt to do that this week.

I’ve been a part of maybe a dozen professional teams during my career, nearly all of them technical teams of engineers and researchers. Each was of course unique in its own way but Spacemesh is the rarest, most unique, most wonderful, and most fragile of all. We talk about the technology of Spacemesh all the time because it’s the thing we’re most proud of and because we’re builders who like to talk about the things we’ve built. We rarely if ever talk about the human side of the project, but it’s just as important as the technical side because we’re literally writing our values into our code and our designs.

Thing #1: Remote is Possible, But Really Hard

“Culture eats strategy for breakfast” – Peter Drucker

In the wake of the pandemic it seems like the world has divided into two camps. There are those who feel that remote work is the future, that tools and techniques have gotten good enough that you rarely if ever need to see your colleagues face to face, and anyway that the most talented people in the world have gotten used to the flexibility of remote work so, like it or not, you need to embrace it in order to attract and retain the best people. Then there are the stalwarts who feel that teams will never be as productive or cohesive, or be able to build trust and rapport well, while working remotely, and that everyone should be in the office at least a few times a week.

I haven’t totally made up my mind and I see both sides, but in general I put myself in the latter camp (and I think I’m showing my age by doing so). I think productive, effective teams are all about trust and it’s close to impossible to really build trust remotely or virtually. I decided a few years ago that the next time I build a team I’ll almost certainly do it in person for this reason.

Having said that, remote first can work for certain teams in certain stages of the company and product lifecycle but it almost never does work, so as a general statement I think it’s easier to say that it doesn’t. An effective, remote first team is something of a unicorn: a rare, mythical thing rumored to exist but one that no one has ever actually seen with their own eyes. All of the teams and projects that I’ve been a part of that tried remote first ran into these issues and either fell apart or just weren’t productive or effective.

Spacemesh is the exception. To be fair, it took a very long time to get here and a lot of mistakes were made along the way. The early team didn’t have a healthy culture or work ethic and almost everyone from that time has moved on. (Incidentally, this is something else I’ve learned from Spacemesh: you can’t blame culture on any one person. It’s a collective thing. And sometimes fixing a broken culture requires replacing almost the entire team.) We made a bunch of mistakes in trying to hire a new team, but we finally managed to do so and for the past year or so we’ve had a remarkable team in place that, somehow, has found a way to work productively and effectively in remote-first fashion.

The main thing I’ve learned is that it takes a certain person and a certain team culture to do this effectively. To paraphrase Tomer Afek, our cofounder and CEO, not all humans are capable of this—only the best ones are. Above all it requires trust and responsibility. Management has to trust that their team members are going to make the right decisions and do the right things even without micromanagement. And everyone must share a sense of responsibility towards something bigger than themselves. Everyone must share a commitment to the project and to the team, and to simply not letting the team down or violating the team’s trust.

Culture is the biggest determining factor in the extent to which the whole is greater than the sum of its parts. In other words, culture is the secret sauce that allows a team of talented individuals to come together, build something amazing, and change the world. There’s yet another difficult balancing act in constructing a team of autonomous agents, people who are competent, think and make decisions for themselves and don’t need micromanagement, who are nevertheless trustworthy and able to put the interest of the team before personal interest. Culture is a powerful thing but it must be built on top of a foundation of trust and can by no means replace trust. A team of autonomous agents working remotely is exceptionally vulnerable to abuses of trust, which is why it’s so important to establish integrity and trust above all else.

There’s a lot more to say about making remote work work. For instance, the times when it’s the most challenging (when for whatever reason you haven’t seen someone face to face in a very long time) and how we deal with that challenge, which tools we use and how we use them (Github, Slack, Zoom, and Google, nothing special), how we make the timezones work (our team is very distributed geographically but pretty tightly clustered around a couple of timezones), how often we do meet face to face and how we make that work (roughly quarterly), how to recruit (it’s complicated), etc. I could devote a lot more space to answering these questions and a bunch more, and I’m happy to do that if it would be interesting, but for now I’ll leave it here and reemphasize that, with the right people, people you trust and share values with, anything is possible—but finding the right people is really, really difficult and takes a lot of time.

Thing #2: Hierarchy vs. Meritocracy

“Bureaucracy destroys initiative. There is little that bureaucrats hate more than innovation, especially innovation that produces better results than the old routines. Improvements always make those at the top of the heap look inept. Who enjoys appearing inept?” – Frank Herbert, God Emperor of Dune

Hierarchy serves several purposes at work. The most obvious are structure and chain of command, but recently I realized that hierarchy (which is synonymous with bureaucracy) serves another more sinister purpose: job security, especially for those on top. Hierarchies and bureaucracies are almost universally good at causing an organization or project to stagnate and socially ossify, and they’re almost universally bad at innovation, which requires the opposite, namely allowing good ideas to percolate from anywhere.

In this respect a hierarchy is almost definitionally anti-meritocratic. Even if we assume that the people on top of the hierarchy are there for meritocratic reasons—they have a good track record—once the hierarchy has been formed and people have climbed aboard it’s nigh on impossible to dislodge them. One definition of a bureaucracy is a mechanism that turns an arbitrary, ostensibly meritocratic hierarchy into a permanent structure.

To the extent that people do advance and move up in a hierarchy it typically has a lot less to do with merit and a lot more to do with things like charisma, connections, and how well they play the corporate ladder game. I remember this clearly from my corporate days, it still gives me PTSD years later, and it’s the main reason I’ll never go back to working at a corporation again.

By contrast, Spacemesh is anti-bureaucracy, anti-hierarchy, and very meritocratic. I know every modern tech organization and every project that calls itself a startup (no matter how big) says it has a “flat hierarchy,” but in my experience this is a meaningless euphemism that companies throw around the way countries throw around the term democracy.

Spacemesh is really flat. In fact it’s so flat that we often have trouble figuring out the right person to make a decision or approve something. The rule of thumb is, we’re a do-ocracy: we encourage team members to take initiative and do the right thing, we trust our colleagues to do the same, we communicate early and often about these decisions and actions, and when all else fails we have a CEO who can make a final decision or approve something (but this is extraordinarily rare).

In this respect Spacemesh has somehow managed to strike a unique balance between meritocracy and democracy on the one hand, where everyone has equal voice, and the ability to execute fast on hard decisions when necessary on the other. I’ve seen too many projects slide too far into one direction or the other: either a hippie commune love-fest where nothing ever actually gets done and no one has any authority to make a decision, or else an authoritarian hellhole. I’m not sure I’ve ever seen a project or a team strike such a healthy balance between these two poles.

As I mentioned in the last thing, however, this also isn’t easy to achieve. In particular it requires a certain kind of team and a certain kind of person. It isn’t for everyone and most people won’t thrive in this sort of environment. Like successfully doing remote first it requires a great deal of trust in one another. In general I think it’s true that if you hire the right people—smart, good people who are there for the right reason—then you can trust their judgment to make good decisions without needing to micromanage them. But finding those people and building a team of those people is wicked difficult.

One thing that helps is the emphasis on raw meritocracy. Without a bureaucracy to disappear into, everyone’s swimming naked, so to speak. In other words, no one has a title or a fancy office to hide behind. We’re all evaluated and we’re all evaluating one another every single day on the basis of our current performance. We trust one another—once someone has made it through a trial period and created value and earned the trust and respect of the team, they’re a member of the family and we’ll stand by them—but that trust has to be renewed on a daily and a weekly basis. No one on the team gets to ride on the coattails of past performance (which, after all, in my experience is not necessarily indicative of future performance).

If someone has a particular title or responsibility and someone else comes along later who’s better suited, that person assumes both. This is in the best interest of the project and thus it’s expected behavior. I’m surprised so few organizations do this, although I can understand why it’s difficult: egos get in the way. But this actually works surprisingly well when you all trust one another and put little stock in titles to begin with. (It does make it a bit tricky when third parties ask you for your title, though, since we don’t really use them and this confuses people.)

I’ve never been part of such a meritocratic organization before. It’s exciting and can be a bit nerve-wracking, but it’s also liberating. It’s that rare low ego workplace where I can be myself and do good work and not worry about selling it to the team, or strategizing around roles and promotion opportunities.

In short the Spacemesh culture is a fantastic manifestation of the builder ethos: where you come from, who you know, who your parents are, what you did before, how much money you made, etc., don’t matter compared to what you’ve built and how good of a builder you are. It’s the purest form of meritocracy and it inspires people to do great things.

Thing #3: Leadership Takes Many Forms

“A team is not a group of people that work together. A team is a group of people that trust each other.” – Simon Sinek

I went to business school and have a degree in management. As part of the curriculum we studied leadership quite a bit, including leadership of many forms and in many contexts: ancient, modern, corporate, government, military, popular, unpopular, strong, weak, good, bad, you name it. We studied different leadership traits and styles and bases of power and authority, and we read case studies from dozens of companies in dozens of industries around the world. We participated in team-building exercises and leadership exercises such as technical mountain climbing in Ecuador. Of course you can only learn so much from case studies and “in the classroom” (even when your classroom is, say, an active volcano), but on top of business school I’ve also been a part of roughly a dozen teams at a dozen different organizations throughout my career. I’ve run a small startup.

In short, I thought I knew a thing or two about leadership. I thought I had been exposed to just about every kind of leadership out there, good and bad, and that you couldn’t surprise me. Then I joined Spacemesh. It should be fairly obvious from what I wrote above that Spacemesh is iconoclastic in more ways than one. One of those ways is leadership: both the type of leaders we have in the project as well as the type of leadership that’s respected and encouraged.

Spacemesh leadership is surprisingly successful but it’s unlike any other form of successful leadership I’ve seen before. It’s not authoritarian, i.e., leaders don’t simply expect everyone else to respect them and listen to them just because they’re in charge (this is almost never good leadership). But nor is it hands off and out of touch. It’s light touch leadership that emerges among peers who love and trust one another and have a long history of having worked together and done hard things together. It’s based on the sort of camaraderie that exists among soldiers who have gone to war together. It’s flexible and patient and compassionate, but strong in non-obvious ways.

Leaders garner respect and followership in different ways. For some it’s charisma or force of personality. For others it’s love and compassion. For yet others it’s fear and cold, hard respect. For a rare few it’s leading from the front, setting an example, and for even fewer, sheer competence. I’ve encountered all of these sorts of leaders before. Spacemesh leaders don’t embody any one of these things, but they rather embody a little bit of each of them.

I respect the Spacemesh leadership team because they are genuinely good people. They’re people who genuinely care about what we’re building, but also about how it’s built. They believe in living our values and expressing them in code, but also in excellence and integrity and in not cutting corners. They genuinely care about the team: the team’s personal and professional needs are paramount. We work hard, and occasionally we work long hours, but personal health and family always come first.

Leaders in Spacemesh are people who have a rock solid track record of having built good things before, which results in a form of quiet confidence (as in, “I don’t need to tell you how good I am, my track record speaks for itself”). They’re leaders that don’t assert themselves simply because they can; on the contrary, they step back and let the team take charge, and only step in where and when necessary. In a nutshell, they’re low ego leaders in the same way that Spacemesh is a low ego project. I cannot overstate how rare and special that is.

I think the biggest thing I’ve learned from my time at Spacemesh is that strong leadership takes many forms, including some forms that aren’t what you’re used to or what you see on TV and in movies. What’s more, strong leadership doesn’t always reveal itself immediately. Sometimes it takes time to understand how and why someone is a strong leader, or why a company’s iconoclastic culture is so resilient. There are many ways to be a strong leader, to inspire a team of humans to do something remarkable.

Leaders in Spacemesh are also people I trust and respect because they’ve continually demonstrated sound judgment. I’ve learned to trust the judgment of my peers even when I strongly disagree with them and never to judge a book by its cover because I’ve been proven wrong many times before. I like being proven wrong by high integrity people because it provides new information and literally lets me rewire my brain.

Finally, Spacemesh leaders are “first among peers.” We all have an equal voice, but our leaders are the ones who are willing to take that extra step, to go the extra mile, to put in the extra hour to make sure things get done, get done well, and get done the right way. I have boundless respect for such leadership and now, after four years, I can see how it’s inspired the Spacemesh team to do such amazing things. It’s working well for us today: after overcoming a lot of challenges the past few years, today I can safely say that Spacemesh is the most functional, talented team I’ve ever been part of. At the same time it’s fragile and I’m not sure whether or how we’ll be able to scale it. I’ll leave that as a topic for a future issue.


Special thank you to Tomer Afek for invaluable feedback in the process of writing this issue. All mistakes and omissions remain my own.

Thanks for reading Three Things! Subscribe for free to receive new posts and support my work.

The Merge Revisited

https://rettig.substack.com/p/the-merge-revisited

Proof of work on the left, proof of stake on the right: last year Ethereum had a changing of the guards. So far proof of stake is doing a pretty good job of securing Ethereum, but will it last? Photo by Patrick Robert Doyle on Unsplash

Subscribe now

I published an article in Coindesk last week where I argued that the economics of last year’s Ethereum Merge aren’t terribly well understood and that they’re not as straightforward or as overwhelmingly positive as some Ethereans believe. The article was written in a bit of a hurry, while on the road during a very intense trip, and on top of my usual writing for this newsletter. The space was limited and the editor was especially interested in focusing on the environmental angle. Nevertheless the topics are important and somewhat timeless so I think it would be appropriate to dedicate a bit more time and space than I could last week to the claims I made. I also got some critical feedback that I’d like to address here. Finally, I want to explore the same topic from the opposite perspective by asking, “What would have to be true for me to change my mind?”

To begin with, my biases are pretty clear and should be obvious to anyone who’s followed my writing for any period of time: I strongly dislike proof of stake, something I’ve spoken and written about many times, including in this newsletter. Also, I really like proof of work, and the vast majority of criticism of proof of work is misinformed FUD. Having said that, I do think the Merge is a major accomplishment for Ethereum and is arguably good for the network and maybe even for the world (time will tell). In other words, I see both sides of the story.

I also strongly dislike the tendency in the Ethereum community to unquestioningly accept received narratives, such as the plan for the transition to proof of stake. I questioned this idea almost from the time I joined Ethereum and the fact that it was considered a fait accompli and not even open for debate is a big part of the reason I left. It’s not that the arguments put forth in support of proof of stake by its proponents are lies or are untrue (more on this below); it’s that proof of stake too closely resembles the existing world order. A network governed by proof of stake is effectively a shareholder governed financial cooperative. I got into the blockchain and cryptocurrency space to build something different, novel, and promising, and proof of stake ain’t it. (I’ve been working on something better alongside an amazing team at Spacemesh for the past four years.)

My goal with the article, therefore, was to get people to pause and ask questions about the “party line”, such as it is. Also, I want people to see, understand, and consider how much of the narrative around the Merge reducing total global energy consumption by 0.2% is the Ethereum marketing machine on overdrive rather than being provably, objectively true in any meaningful sense.

Claim #1: The Merge is Really, Really Good for the Environment

Let’s start with the first order effects. Lots and lots of GPU and ASIC miners did stop mining Ethereum when the Merge happened. Other things equal, this is a good thing. If you could somehow measure the level of security that the proof of work miners provided to Ethereum before the Merge, and somehow switch to precisely the same level of security under proof of stake, and if it were truly the case that that security under proof of stake required a lot less energy expenditure, well, that would be great. But other things aren’t equal, and security is really difficult to measure (more on this in a moment).

The Ethereum Foundation claimed that the Merge reduced Ethereum’s energy footprint by 99.5%, and some went even further and claimed that it would reduce total worldwide energy consumption by 0.2%. This claim may be true on the face of it, factoring in only first order effects, but what we don’t know are the higher order effects.

How many of those GPUs and ASICs ended up in landfills? How do we calculate the economic impact of that relative to the reduction in energy consumption? Or do we ignore it completely on the grounds that those devices would’ve ended up in landfills eventually anyway?—in which case the Merge merely accelerated this process. How many are still running full throttle, consuming the same amount of energy? How many ended up mining other cryptocurrencies, or found their way to gamers, or to other industrial/high performance compute applications like training AI models? How efficiently did they perform at those tasks—and in particular, did they perform in a fashion more energy efficient than how those tasks would’ve been performed otherwise? In other words, what’s the counterfactual case? In order to perform a comprehensive economic and energy calculation you’d need enough data to answer all of these questions (and probably a few others that I’m missing here).

I really struggle to imagine that all or even a majority of those GPUs were suddenly shut off and never spun up again, and I also struggle to imagine that, whatever else they’ve been used for, they did so as efficiently as they mined Ethereum. But I don’t have hard evidence of these facts and I could be wrong.

What would need to be true for me to change my mind? I’d need to see a comprehensive analysis along the lines outlined above, involving the composition of proof of work mining prior to the Merge and the status of all of those devices today. It would have to include the energy impact of running the entire Ethereum network before and after the Merge, including not only mining but also validators and other classes of actors, and all of the other related infrastructure. In order to calculate the marginal impact it would have to include a counterfactual case of what would’ve happened if the Merge hadn’t occurred.

And even if all of this were done, and done well, it’s still only one side of the coin: cost, not performance. To be complete and useful it would also have to measure and consider the differences in security before and after the Merge (see next section).

That’s a big project and it’s not that useful today anyway since the Merge is ancient history. The scope is massive, it would take time and be expensive, and most of the data would be very difficult to come by. I don’t expect someone to actually do this. But if someone did it’d be fascinating, we might learn a lot, and I’d read such a report with bated breath.

Claim #2: Proof of Stake is More Secure

Measuring energy and environmental impact is hard enough. Security is even more complicated, nuanced, and hard to measure because most of the attacks contemplated under both proof of work and proof of stake are purely hypothetical.

Security in proof of work is guaranteed by energy, cryptography, economics, and thermodynamics: the only way to attack a proof of work-based network with a high likelihood of success is to have more hashpower than basically everyone else put together. Even temporarily attaining it, such as by renting, will cost you a lot, and sustaining it would be much harder. Cryptography dictates that there are no shortcuts and thermodynamics dictates that sustaining the energy required to attack a big network like Bitcoin would be devastatingly expensive. Proof of work has the additional nice property of probabilistic finality: with every passing moment and every additional block, the likelihood of being able to attack, alter, or remove a prior block or transaction rapidly approaches zero.

By contrast security in proof of stake is much more nuanced and subjective. Rather than energy or thermodynamics, security is guaranteed only through a property called economic finality. Proof of stake doesn’t make the sort of hard guarantees that proof of work does that attacks can’t or don’t happen. Instead it offers an economic guarantee: if an attack is successful, then at least two thirds of the validators in the network will have been slashed. In other words, an attack would be very costly (as denominated in the staked asset, i.e., assuming the staked asset is still valuable).

As I wrote last week, proponents of proof of stake claim it’s more secure than proof of work due to its ability to resist one particular kind of hypothetical attack, dubbed the spawn camp attack, wherein an attacker that controls a lot of the stake or hash power of a network continually attempts to 51% attack. For the reasons described above it shouldn’t be possible to carry out or especially to maintain such an attack against a large proof of work network like Bitcoin: it would be too costly and the required energy and computational power would be too difficult to obtain. (That’s why this sort of attack is theoretical, at least in the case of a large network.) If such an attack were to occur, the only way to resist it would be to change the proof of work hash algorithm, which hurts honest miners as well.

Such an attack should also be rare in proof of stake since it would require acquiring a huge amount of stake: tens of billions of dollars worth of ETH at today’s prices, although there are wealthy, powerful actors in the Ethereum ecosystem that already control a lot of stake and could plausibly attempt such an attack. If such an attack did occur, unlike proof of work, proof of stake allows coordination of a “social fork” (UASF) to ignore all of the attacker’s data or, additionally, a hard fork to actually delete the attacker’s funds. (It’s not possible to surgically target a single attacker in proof of work since all miners look the same.)

The wildcard in both proof of work and proof of stake is pools, of both the mining and staking variety, which are huge vectors of centralization. Before the Merge there were only four or five Eth mining pools that collectively controlled the vast majority of the hash power on the network—the same as on Bitcoin today. It’s important to point out that mining pools nearly always have a single, trusted, centralized operator that has a great deal of control including the ability to publish whichever transactions they want in whatever order they want, and individual miners in the pool have almost no control or even transparency into the pool’s operations.

Post-Merge there are over 700,000 validators (and rising, as of the time this was written). It’s still the case that validation is relatively centralized: the top handful of validators today control about a third of the total stake. But the situation may be improved somewhat. It’s hard to know for sure: we don’t know who controls the rest of those validators, and we don’t know how many are controlled by one entity or a cartel of entities.

In order for me to change my mind about proof of stake I’d need a few things. First off, I’d need evidence that the operators behind the validators are truly, meaningfully decentralized. Additionally, I’d have to see a “social fork” successfully thwart an actual attack, rather than this being purely hypothetical. I’d have to see the community rally behind such an event as it did in 2016 in the wake of the DAO attack. Note that the topic came up a few months ago when the question arose of Tornado Cash and large validators including Coinbase possibly needing to censor transactions that touch sanctioned addresses. Would the Ethereum community and network really be able to, say, delete the stake of a malevolent actor in this sort of scenario? And wouldn’t that violate the core “code is law” cypherpunk principle, just as the DAO hard fork did? How would the community and the world react? Ethereum was tiny and nascent in 2016; neither is true now.

By contrast, Bitcoin doesn’t need to rely on social coordination for its security. Quite the contrary, Bitcoin is money for enemies. The only things needed to keep Bitcoin secure are math and cryptography, thermodynamics, and greed. The network is most secure when everyone is acting in their own self-interest. That’s the brilliance of Bitcoin’s design, and of proof of work. Proof of stake introduces a lot of subjectivity and assumptions around the social layer that don’t sit well with me, and that are mostly theoretical and untested.

Many of the vulnerabilities of proof of stake also involve hypothetical attacks—costless simulation, weak subjectivity, etc.—and the response is to use yet more social coordination in the form of checkpoints in the code. Recall the reason I dislike proof of stake in the first place is that it too closely resembles the current system. I’m not saying that checkpoints can’t work or that they’re not useful, but a committee of privileged actors deciding when to bless a particular state via a checkpoint also feels too much like the way the world works today, and thus feels antithetical to the promises of blockchain (that anyone can objectively verify the current state for themselves).

By contrast the security guarantees of proof of work and its long track record of being unbreakable are unmatched. It offers a hard, objective form of security, unlike the soft, subjective security of proof of stake, a form of security that relies on social mechanisms like checkpoints. PoW works well for Bitcoin, and Bitcoin cares about security more than just about anything else, so I can’t imagine it ever changing. I find it very difficult to imagine a scenario where I’d change my mind and agree that proof of stake is more secure, and certainly not because of its ability to respond to one particular type of hypothetical attack vector.

Finally, analyzing security under proof of stake is even more complicated for two additional reasons, MEV and restaking, that I’ll discuss below.

Claim #3: The Merge Made Security Cheaper

Proponents of proof of stake claim that it’s not only more secure than proof of work, but in fact that its security is even cheaper than that of proof of work. We explored the first claim already; let’s take a look at the second.

As I outlined last week, the Merge is widely regarded as having improved the overall economics of Ethereum because the network is paying less per block in security than it used to. The steel man argument for why is that a network secured by proof of stake can afford to pay less for security because proof of stake simply costs less. Validators don’t entail the sort of ongoing operational cost that miners face because validators aren’t energy intensive. This is evidenced by the fact that Ethereum validators are willing to put up around $42B of stake on which they’re earning around 3.5% yield, even though there are plenty of ultra low risk opportunities that would pay more these days (albeit with less potential upside). In an objective sense Ethereum is paying relatively little for this level of economic security, around 2200 ETH per day based on the present number of validators, and certainly less than it was before the Merge when it was paying around 13.5k ETH per day to miners.

As Paul Sztorc argued, however, and as I described last week, it’s not that straightforward. You cannot simply pay less for the same level of security. In some sense you get precisely as much security as you pay for. Other things equal, if you just, say, cut the block subsidy in half, in “real” terms the reward earned by miners actually doesn’t change. Future issuance is reduced by half which means that each coin should be twice as valuable in real terms (see The Coinbase-Rot Paradox in Sztorc’s article). This may seem not to be the case for Ethereum today because the network has been around for a while and has already done most of its issuance so you’re not moving the needle on the total circulating supply very much. But if you imagine that Ethereum will continue to exist and will continue to issue coins to validators for a very long time to come then future issuance matters a lot more than past issuance. Over the very long run, other things being equal, halving validator rewards today would double the value of one ETH.

And then we have to factor in “obfuscated PoW” (as Sztorc dubs it), i.e., work that takes other forms. This is where MEV and restaking must be factored in. I’m not aware of serious academic research on this subject—I’d be fascinated to read it if it exists, so please share if you’re aware of any—but it seems fairly obvious to me that the network is paying for security through MEV as well as through block subsidies and outright fees. While the Flashbots estimate of realized MEV since the merge is only around 5% of the ETH that would’ve been paid to miners under proof of work, it’s impossible to know to what percentage of all MEV this accounts for.

While MEV happened to take off right around the time of the Merge, in theory they’re orthogonal: MEV was possible and profitable (and, indeed, did occur) before the Merge, and it’s still possible and profitable after the Merge. In a sense, MEV was easier before the Merge since searchers (the parties responsible for finding MEV opportunities and bundling transactions so as to take advantage of them) only had to communicate with and sell their bundles to a small number of mining pools. Today by contrast there are hundreds of thousands of validators, but as a result the MEV ecosystem has matured rapidly and a true marketplace has arisen, with many searchers competing via many relays to get their blocks included by validators (block proposers). I’d also be fascinated to read any real research on whether and to what extent the proliferation of MEV opportunities today are possible because of the Merge and wouldn’t have existed under proof of work.

Finally, it’s important to point out that unlike ordinary fees and subsidies which are borne equally by all users, MEV is especially pernicious because it’s a regressive tax in the sense that it’s borne disproportionately by unsophisticated, everyday users! Also, remember that the fully burdened cost of MEV should include the externalities borne by the entire network (i.e., not just those party to a transaction) including the computational power of the searchers and value lost due to alternative, non-public mempools. I don’t know how big this number is, but it’s substantial.

I want to briefly touch upon restaking as well. The situation involving restaking is more complicated since the phenomenon is more recent and less well understood, but in essence restaking allows actors who have already staked ETH as validators to use that stake to additionally participate in (and be rewarded by) extraprotocol schemes including layer two applications. This muddies the waters and distorts incentives, and even Vitalik Buterin has expressed concerns about the possible negative impacts on Ethereum security. I don’t claim to fully understand restaking and all of its implications and I haven’t made up my mind about it, but I cannot imagine that having your “security officers,” i.e., your validators doing double-duty elsewhere makes Ethereum any more secure. This is even further evidence that proof of stake is buying lower quality security for the price it’s paying. (Bitcoin miners definitely aren’t doing double duty.)

What would it take for me to change my mind about the cost of security? You’d have to prove to me, empirically or maybe from first principles, that Ethereum is indeed paying less and getting more. That analysis would have to factor in the big picture and all of the externalities: MEV, restaking, and the long-term, big picture economic consequences including the huge opportunity cost of the staked capital (which I mentioned last week but didn’t even have time to cover in this analysis). I’m not sure how you could convince me that the security Ethereum is buying today is better than the security it bought with proof of work but you’re welcome to try and I would read your argument.

But given what we know today, all things considered I think it’s intellectually dishonest to claim that Ethereum is spending less for security today than it was pre-Merge. And even if you think that it is, it seems to me that the quality of the security it’s buying isn’t as rock solid as the security afforded by proof of work. Not all security is created equal. The best thing we can say at this point is that it’s complicated and a lot more work needs to be done to understand all of the tradeoffs.

Thanks for reading Three Things! Subscribe for free to receive new posts and support my work.

The Secret of Spacemesh

https://rettig.substack.com/p/the-secret-of-spacemesh

Spacemesh marketing in a nutshell. Okay, maybe, like, a mirror would be even more appropriate 🤔 Photo by Kate Trysh on Unsplash

Subscribe now

Spacemesh finally launched a few days ago and it’s been an exciting few days to say the least. Community members are still initializing their storage, the PoET server is counting elapsed time, and we’re all anxiously awaiting the moment the network beings producing blocks and issuing coins in a few more days.

Lots of people came up to say hi and congratulations during EthCC week in Paris. I was very surprised by how many people are aware of Spacemesh. The fact that it’s sort of a word-of-mouth, low-key project seems to appeal to industry insiders, as if the only people that are aware of Spacemesh are those who “need to know.” This wasn’t totally intentional but nor was it unintentional. People get that Spacemesh is quite different but they can’t put their finger on precisely why or how.

To some people this is an obvious sign that Spacemesh isn’t a legitimate project and that it’s destined to fail. But others who are keener observers, who see and understand nuance, and especially those that understand hacker and cypherpunk values understand that Spacemesh has done a good job of standing out and differentiating itself in a very crowded space that quite frankly is full of copycats, garbage, and scams.

Upon first joining Spacemesh four years ago I wrote a series of articles describing my vision for what a better blockchain could look like, including critical (and often overlooked) areas like community and values. I’m really excited to report that now, four years later and after an enormous amount of sweat and toil, the Spacemesh network is alive and, hopefully, better along some of these lines.

A number of people have asked me, What’s going on? What are you guys up to? Why are you so different, so weird? What’s the secret? This is my response.

Thing #1: Lead With Values

“Keep your habits positive because your habits become your values. Keep your values positive because your values become your destiny.” – Gandhi

The single most important thing about Spacemesh, as a project and as a team, is also the least remarkable: we’re extraordinarily values-driven. More or less everyone in the world says this—every company no matter how ruthless or unethical has a values statement and if you ask someone if they’re values-driven, 99% would say yes—but in my experience only a tiny, tiny minority of people and organizations are truly values-driven.

Spacemesh is truly values-driven. It motivates literally everything that we do. It’s a huge factor in our hiring process, probably the biggest factor: values alignment is even more important than ability. Hiring for values isn’t easy and we made a lot of mistakes along the way, but the incredible team we have in place today is the most values-aligned team I’ve ever worked with. It motivates our team dynamic. It motivates our internal decisions, such as how we hire people and how and when we let them go, and it motivates the software and systems we build, such as the longest, most gradual issuance schedule and smallest reservation of coins for early contributors of any blockchain to launch since Bitcoin.

What are our values? For one, we question everything. We’re relentlessly curious and thorough. Like the cypherpunks that paved the way for us we do our homework, we don’t unquestioningly respect authority, and we foster a healthy culture of dissent. We respectfully debate just about everything, and everyone in the project regardless of team, role, or seniority has an equal voice. This also manifests in a very flat team without titles. The obvious downside is that it takes a bit longer to make decisions and align everyone behind them, but the upside is that, when we do make decisions and move forward, we do so confidently, and the decisions we do make are by and large very good ones.

Secondly, we’re compassionate towards team members, the community, and humanity at large. The Spacemesh project isn’t primarily about business, it isn’t primarily about making money, it’s primarily about moving humanity forward, putting a dent in the universe. It’s about always doing the right thing for humanity over the long run even if that’s difficult or comes at the expense of short term profit.

Thirdly, we’re patient. Good things take time to build correctly and we’re not in a hurry. The human problems Spacemesh is trying to solve are universal, timeless problems that are as old as human civilization itself. We’re playing a very long game, an infinite game even. We’ll always choose the slow, correct route over the short, easy route. We know that later generations will thank us.

Fourthly, we act with integrity and authenticity. We’re only able to be our true selves, and our true selves are always on display. There’s no other side to us and there’s no other side to Spacemesh. We speak honestly about ourselves, about what we’re building and why, about our achievements and about our failures. There’s no “marketing spin” or “approved party line” about Spacemesh (see third thing). If you ask ten team members the same question about Spacemesh you’re likely to get ten different answers because we’re all individuals and we’ll all be brutally honest about the good, the bad, and the ugly.

These are the biggest, most important values by my interpretation, but of course we have others as well, including fun, humility, creativity and innovation, openness, fairness, security, and privacy. For another interpretation see Spacemesh Vision and Core Values. For more on the importance of values in blockchain and technology more generally, see The key ingredients to a better blockchain, Part IV: Constitution.

Thing #2: Community, Community, Community

“DEVELOPERS, DEVELOPERS, DEVELOPERS!” – Steve Ballmer

After the protocol and core technology, what’s the most important thing in Spacemesh? (All together now!) “COMMUNITY! COMMUNITY! COMMUNITY!” Most companies and even most blockchain projects use the word “community” as a euphemism for “customers.” Just as every major company has a dumb values statement they rarely live up to, every big tech company in the world abuses the term community: there’s a “Facebook community,” an “Uber community,” a “Microsoft community,” etc.. These companies misuse this term as a form of manipulative marketing, in an attempt to gaslight their customers into thinking they’re part of something bigger than themselves: that they’re part of a movement that’s inclusive, open, and democratic, when none of those things are true. I personally find this misuse of the term offensive. A community is more than a group of people who use a particular product or service, and a group of customers beholden to a centralized company that isn’t meaningfully accountable to its customers is definitely not a community. But what is a community, really?

A community is really a group of people that are excited, even passionate, about what you’re building. It’s a group of people that contribute to something even without tangible rewards for doing so, for the sake of intangible rewards and to support the overall community. But it’s more than that. Members of a true community also have to have some degree of affinity for and feel invested or enfranchised by the platform underlying the community: in other words, they need to feel a sense of ownership and pride for a thing, at least a little bit.

The Spacemesh community is remarkable and I have a great deal of love for it, especially for the miners and others who have been patiently with us literally for years as we built and tested and eventually launched the network. I’ve spent meaningful time in at least five or six blockchain communities over the years and I can say with confidence that the Spacemesh community is unlike any other. There’s no shilling, no spam, no discussion of price or markets. There’s a focus on tech, good economics, and social causes, and there are active channels dedicated to art, economics, and philosophy. Our community isn’t huge but it’s solid in size, very high in quality, and growing steadily. Most importantly our community is healthy and sustainable. That’s no small feat.

We consider the community’s preferences in literally everything that we do. We’re not building Spacemesh just for ourselves, we’re building it for our like-minded community, today and into the future. So the community’s needs, concerns, preferences, and feedback are primary.

We’ve done our best to enfranchise them throughout the design, building, and testing process—which has admittedly been very difficult given the scope and complexity of the project—and we’ll rely on them for more and more as Spacemesh grows. It’s a bit odd to say that you trust a group of strangers you mostly haven’t met, but I do trust our community. Eventually, the direction and governance of the entire Spacemesh project will be handed over to the community. If I’ve learned one thing from my time in this industry it’s that decentralized, community-led governance is really hard, doubly so for something the size and scope of Spacemesh. It won’t happen overnight, but it will eventually happen and I’m excited about the prospect.

For more on the importance of community in blockchain, see The key ingredients to a better blockchain, Part III: Community.

Thing #3: Speak Through Code

“Cypherpunks write code” – Eric Hughes

I had a conversation about Spacemesh with the well known CEO of a large, successful blockchain company recently. He asked me, “What’s your go to market? Who are you targeting? What use case are you aiming for?” These are some of the most common questions I get about Spacemesh, and also the most annoying.

I told him that Spacemesh is a general purpose platform that developers can build anything on top of, so we don’t have any one specific use case in mind. And I told him that our “go to market” is simply to let people around the world mine their own coins from home, which we predict will lead to an IKEA effect whereby they’ll feel strongly invested in the network, more than in existing blockchains, and will thus advocate for it and want to build on top of it.

He wasn’t at all satisfied with my answers. In his world, “successful” blockchains raise $100M or more, splash out on huge, noisy marketing campaigns, endorsements, and partnerships, and target specific applications like DeFi, NFTs, or gaming. Needless to say, Spacemesh isn’t any of those things. That’s okay: Spacemesh isn’t for everyone, at least not yet.

Another common question is, “Why haven’t I heard of it? Where’s your marketing?” (Actually, as I already said, I’m pleasantly surprised by how many people have heard of Spacemesh, but those tend to be industry insiders who know it through word of mouth.) The simple answer is that we don’t do marketing, at least not in the traditional sense. We don’t have a marketing team—we have a community team (see previous thing). Our strong belief is that we should build the best technology that we can and the technology should speak for itself.

Also, as I said above, we’re not in a hurry for Spacemesh to grow. People will learn about it when they learn about it. Anyone can use Spacemesh since the network is permissionless, but not all users are created equal. We want to reward the early adopters and the OG supporters that have been with us patiently for years. Like Bitcoin, the longer it takes the world to discover Bitcoin the more time there will be for these folks to mine coins. Anyway, there’s no rush to join—given the exceptionally long issuance period, every day will feel like genesis for quite some time.

While we’re not prioritizing marketing in the traditional sense at this stage, I’m not naive and neither is the team. I know very well that the best technology doesn’t automatically win and that marketing is important. It doesn’t matter how good your product is if no one ever learns about it or has the opportunity to try it. And that’s all marketing is in essence: education and communications. In this respect it’s untrue to say that we don’t do marketing. But the forms of marketing that are values aligned and that work for us are unlike the forms of marketing that work for most blockchain and Web3 projects.

Seen during EthCC week in Paris. Cool posters, but decidedly not our style. Photo by the author.

The problem with mainstream marketing is that it’s almost 100% BS. This is true even (or perhaps especially) for blockchain projects—at least those targeting mainstream users and use cases. I can’t tell you how many talks I’ve listened to by people on the sales and marketing teams of these projects who have zero fundamental understanding of the underlying technology or even why it matters. I can’t think of anything sadder than a person paid to sell a thing that they don’t actually understand, care about, or even really believe in. I genuinely don’t understand why companies and projects hire people like this or let them speak in public. Maybe investors demand “sales”, and maybe meaningless marketing nonsense appeals to enterprise types, but it comes as across to me as incredibly inauthentic and unappealing. Our primary “customer” at this moment is developers, and developers have a fantastic BS radar.

For Spacemesh, marketing is just talking about the thing that we’re building, the thing we love to work on and love to talk about, as our authentic selves. Nothing more and nothing less. This sort of authentic communication appeals to developers, as it should to most regular (read: non-corporate) people.

I maintain that the best marketing is no marketing; the best products speak for themselves, and the best products create rabid advocates among customers and users. The two most authentic, effective forms of marketing are passionate stories from team members and testimonials from happy customers.

As you can see there really is no “secret” to Spacemesh. Yes we’re different, yes we’re weird, yes we’re a bit iconoclastic and averse to social norms that we disagree with, but in the end it’s all quite basic stuff: we are our authentic selves and we’re sharing our passion. Our goal is to be good people, stay humble, and build things people want to use. We’re not interested in playing the “game” that other projects are caught up in or tracking vanity metrics. That’s all it boils down to. We focus on our values, a healthy community, and solid engineering. These things are all slow, difficult, and unsexy, and there are no shortcuts, which is why most people and most projects skip them entirely in favor of vanity metrics and flashy, expensive marketing campaigns that don’t age well. Values, community, and engineering by contrast are timeless.

It may take longer to build awareness of Spacemesh but that’s perfectly okay with us because it’ll be the right kind of growth: namely, sustainable growth, not growth fueled by opportunists that will disappear the moment another shiny thing comes along. We’re in this for the right reasons and for the very long term and I know this resonates with the right people because they’ve told me, time and time again.

Thanks for reading Three Things! Subscribe for free to receive new posts and support my work.

Why Ethereum Ditching Mining Isn’t Better for the Environment

https://www.coindesk.com/consensus-magazine/2023/07/28/why-ethereum-ditching-mining-isnt-better-for-the-environment/

Last September, the long-awaited Ethereum “Merge” finally occurred and the Ethereum network successfully transitioned from proof-of-work (PoW) to proof-of-stake (PoS). Prior to the Merge the security of the Ethereum (ETH) network had been guaranteed by proof-of-work, i.e., the same mechanism that still powers Bitcoin (BTC). Since the Merge the security of the Ethereum network is now guaranteed by the collective stake of hundreds of thousands of validators who are punished, or “slashed,” if they go offline, double sign transactions or otherwise misbehave.

This story is part of CoinDesk’s 2023 Mining Week, sponsored by Foundry. Lane Rettig is a core developer at Spacemesh, and a former Ethereum core developer. He’s an advocate for open source software, open protocols, and open systems.

On the face of it this may seem like a massive accomplishment for Ethereum because it allowed the network to completely retire proof-of-work mining and, thus, to significantly reduce its energy consumption. Indeed, amidst ongoing mainstream FUD (fear, uncertainty and doubt) around the energy intensity of proof-of-work mining, the Ethereum Foundation marketing machine spun the upgrade as the “greenification” of Ethereum and institutional investors who won’t touch bitcoin are now holding ether as a result.

As a former Ethereum core developer who briefly worked on the technologies behind the Merge I have mixed feelings about the upgrade. I feel that it’s a major technical accomplishment and has certain advantages for Ethereum, but I strongly disagree with the economic arguments used to justify it: among them that staking is less wasteful, more secure and increases profitability. Let’s pick apart these claims one by one.

Claim #1: Proof-of-stake is less wasteful

This is the main and most important claim made about the Ethereum Merge: that it reduced Ethereum energy consumption by around 99.5%. This figure is shortsighted and misleading for several reasons. Strictly speaking it is true that Ethereum’s energy consumption fell after the Merge, but what matters to humanity is total energy consumption.

All of those GPUs, or graphics processing units, that were previously used to mine Ethereum didn’t disappear overnight. Many found uses in other applications, most obviously mining other PoW chains or AI applications. Those GPUs exist because of Ethereum, in a sense, they still exist post-Merge, and many are still consuming a lot of energy. Older GPU models that have few other uses and have been retired have mostly found their way to landfills, which also isn’t the greenest outcome.

In other words, claiming a 99.5% energy reduction is accounting sleight of hand.

What’s more, today there are nearly 700,000 validators running on the Ethereum proof-of-stake Beacon Chain. While it’s possible to run many validators on one system, a conservative estimate still yields on the order of 10,000-100,000 computers running Ethereum, each consuming bandwidth, energy and terabytes of disk storage. While these machines use less energy than Ethereum’s old miners, there’s almost certainly far more validators than there were miners due to lower resource requirements (read: you can easily run a validator at home without specialized hardware).

Finally, the market for maximal extractable value, or MEV, has exploded in the wake of the Merge. MEV, which allows sophisticated actors with powerful computers to calculate arbitrage opportunities and bribe block producers to prioritize their transactions in order to capitalize on them, thrives in an ecosystem of hundreds of thousands of bribable validators. I don’t know what percentage of miners were participating in MEV prior to the Merge, but today 90% of validators are doing so.

And all of those arbitrageurs are now consuming enormous amounts of computational power: some likely even using those same GPUs, which have applications in high frequency trading and statistical arbitrage.

In short, looking strictly at energy consumed by miners is short sighted. One must consider the total social cost of operating a network, including, now, the opportunity cost of $41 billion locked in Ethereum stake, which cannot be put to more productive social use, such as investing in high potential projects.

Claim #2: Proof-of-stake is more secure

This is another primary claim made by proof-of-stake proponents. By now the topic has been explored to death and the details are beyond the scope of this article but the argument in brief is as follows: Proof-of-stake is more secure because it’s possible to surgically target an adversary who attacks a proof-of-stake blockchain by coordinating a social fork (otherwise known as a user activated soft fork, aka, UASF) to remove the attacker’s staked capital.

By contrast adversaries of proof-of-work networks have the advantage that, to render a 51% attack ineffectual, the network must also render all honest mining hardware ineffectual by changing the proof-of-work algorithm. This is a “nuclear option” because, while it would stop an attack by an adversary with powerful, specialized mining hardware called ASICs (short for application specific integrated circuits), it would instantly destroy the entire capital stock of all honest miners as well.

This argument doesn’t hold water for several reasons. Firstly, unlike in PoW, a cartel controlling more than half of the stake can silently, invisibly, and permanently capture the entire network. Secondly, an attack on a PoW chain is in the first place less likely than an attack on a PoS chain. It’s easier to attack a PoS chain because doing so doesn’t require scarce assets like hardware or electricity. Actually, it doesn’t require staked assets either: the attacker only needs to acquire keys of former validators, or very briefly operate a huge number of validators (anyway a profitable enterprise). With these keys in hand an attacker can carry out a long range, costless simulation attack, which would produce a blockchain that for all practical purposes appears equally valid to the canonical chain.

This problem is known among Ethereum developers as “weak subjectivity”: subjective because it relies on social information rather than math and cryptography, and weak because that information is imperfect and can be controlled by an adversary. In Ethereum that social information takes the form of adding known good “checkpoints” to the code to prevent reorgs that are too long, i.e., to prevent an attacking longer chain from replacing the legitimate chain. By contrast, in Bitcoin, the objectively verifiable longest chain always wins. Social coordination is handy in many situations but it’s far from trustless or apolitical, and Bitcoin’s “longest chain wins” rule is much more credibly neutral.

It’s worth noting here that adversarial forks also become costless under PoS, whereas in PoW one must convince miners to switch and mine on a different chain. “Work” must still be done to defend against and respond to these attacks, but the “work” takes a different form – and, as mentioned, it’s much more subjective.

Claim #3: Proof-of-stake increases profitability

A popular meme, “Ultrasound Money,” began circulating in Ethereum circles around the time of the Merge. It refers to the fact that the overall block subsidy fell substantially after the Merge. This, combined with the burn mechanism introduced a year earlier in EIP-1559 that burns tokens as network activity increases, means that the Ethereum network is often deflationary: in times of relatively high demand, the portion of burnt fees exceeds issuance.

Nevermind the fact that “sound money” refers to something else entirely and the fact that Ethereum monetary policy has changed so often means it’s not sound money; this doesn’t seem to discourage Ethereans.

The thing is, as articulated so well by Bitcoin OG Paul Sztorc years ago, network security doesn’t come for free and attempts to circumvent this fact are just more creative accounting. In an efficient market paying miners or validators less can only have two possible effects: either they stop mining/validating and go elsewhere, making the network less secure, or they get compensated in other ways.

Sztorc refers to the latter as “Obscured PoW.” In the case of Ethereum today there are two major forms of Obscured PoW and associated cost. The first, already discussed above, is the enormous opportunity cost of the locked capital.

The second, also alluded to above, is MEV, which represents money captured from unsophisticated, everyday network users. When the network spends more on security, miners consolidate, MEV opportunities diminish and everyday users pay more in the form of inflation. By contrast, with lower spending under PoS, everyday users pay instead in the form of hidden transaction fees due to MEV. Over $1 billion worth of MEV is estimated to have been extracted on the Ethereum network alone over the past two to three years, to say nothing of the various side chains and layer 2s, and cross-domain MEV between and among them.

A major milestone, with flaws

Ethereum-flavor proof-of-stake represents a major milestone in the development of public, permissionless distributed systems and consensus mechanisms. It’s an improvement over permissioned, delegated proof-of-stake and I’m happy that it exists. It likely has socially valuable use cases that we’ll understand better over time. But let’s not fool ourselves into believing that it’s somehow inherently better – less wasteful, cheaper and more secure – than proof-of-work.