Menu

Tag Archives: snippets

It was 2008 in Chicago, the C4 conference was wrapping up and I shared a cab to the airport with Alex Payne, who built the first Twitter API. I was so excited about the potential for the platform that I probably had a dozen ideas for Twitter apps. Alex and I sat at a cafe at the airport, waiting for our respective flights, and talked about the future.

Years passed. I did build and ship a few Twitter apps, including the popular Tweet Marker sync API. But I also grew disillusioned. I took a break from using Twitter.

Alex had left the company and Twitter was much different from a business and leadership perspective by the time the rest of the world started paying attention. Thousands of employees worked at Twitter. How many of them had experienced the early days of following friends’ tweets via SMS, when the service seemed genuinely new and important? The future had arrived but it was full of hashtags.

This year — with rumors of Twitter being acquired, with fake news and the election, with online harassment — many people have written about the future of Twitter. I’ve been paying attention again, experimenting with cross-posting. I missed the 10th anniversary of when I joined Twitter in July 2006, but not the date of my first tweet a few months later.

10 years is a good milestone to reflect on. I want to highlight a few posts I’ve read recently, and then wrap things up at the end.

What I like about this article by Faruk Ateş is that he gives a sense of the major changes Twitter has gone through, most of which were difficult to fully understand at the time. On the change with @-replies:

The second thing is that when they started hiding @-replies to people you don’t follow, they stripped the user experience of a vital ingredient for civility: peer transparency. The tone of discourse changed much for the worse over time, following that new behavior of the timeline. Before the rollout, all your friends would see if you behaved like a jerk to someone; after the rollout that was no longer the case. It removed the natural consequences of bad behavior, thereby encouraging people to reap the benefits of such bad behavior much more frequently.

Next, Sarah Frier writes for Bloomberg about how Twitter leadership is losing faith in Jack Dorsey. That despite new features such as live video, Twitter failed to ship other development efforts and fell behind competitors:

Advertisers see potential in the company’s live video strategy, but they’re also being wooed by photo- and video-sharing app Snapchat, and Facebook’s Instagram, which has recently become more advertiser-friendly. At the time of Twitter’s 2013 initial public offering, those services weren’t close competitors. Now they both have larger daily audiences than Twitter.

As long as Jack Dorsey has 2 jobs, it will be easy to blame him for being unfocused. I don’t know if that’s fair. But when streaming live football gets so much attention, there do appear to be competing visions at Twitter.

Twitter is too expensive to acquire. It’s also too flawed for a company like Disney to take a risk on. So instead there was another round of layoffs. From Kurt Wagner at Recode:

Last year, Twitter also cut 300 jobs shortly after Jack Dorsey took on the CEO role full-time. (Or part-time, given that he’s also running Square.) The current feeling among those close to the company is that Twitter is simply too bloated, and pays too much in stock-based compensation for a company that’s still not profitable.

There are no guarantees for an unprofitable company. The only certain thing is that something will change.

Back to Alex Payne. He wrote a post 6 years ago about his time at Twitter, and his unsuccessful attempt to convince coworkers to decentralize Twitter. It holds up very well:

Decentralization isn’t just a better architecture, it’s an architecture that resists censorship and the corrupting influences of capital and marketing. At the very least, decentralization would make tweeting as fundamental and irrevocable a part of the Internet as email.

It used to be impossible to imagine that Twitter could fail. And today, it’s still unlikely to vanish or even change much overnight. But the web will be better if we assume that Twitter is a lost cause. From the 10-year view, it’s clear that Twitter has already changed.

Acquisition rumors come and go, although they seem more real this time, and we’re reminded that few web sites last forever. It’s time to prepare for a web without Twitter.

Today I sent the following email to everyone who has used my web app Searchpath. While I’m disappointed that I’ve neglected Searchpath, focusing everything on Micro.blog just makes the most sense right now.

Three years ago, I launched Searchpath to make it easy to embed a search box on any web site. Because you signed up to try it, either at the beginning or as a more recent paid subscriber, I wanted to thank you and let you know about the next steps for the service.

While I still love the idea behind Searchpath, I have not been able to give it the attention it deserves. Lately the service has been costing more to run than can be supported by subscription revenue. I’ve disabled new accounts and started migrating the data in an effort to keep the service running for active users.

Here’s what you need to know:

If you had an active paid subscription, it has been cancelled and you won’t be billed again. The service will continue to run while you look for a new search solution.

The current search index included many web sites that no longer use Searchpath. To save costs, I’ve reset the index. Active web sites using Searchpath will be automatically re-indexed.

I hope to return to Searchpath at some point in the future. For now, it will run in this limited mode for current customers. If you have any questions, please let me know via email at support@riverfold.com.

— Manton

P.S. One reason I can’t focus on Searchpath is I’m preparing to launch a new weblog service. It’s called Micro.blog.

As I talked about on Timetable, now that I have the micro.blog domain I get to figure out what to do with it. And what I’m hearing from friends and listeners is clear: throw out my jumble of Snippets-related names and use Micro.blog as the brand for the platform. It’s obvious now.

Renaming a product before its official launch may not seem like a big deal, but in this case it gives the app a new importance. Just by renaming it, the app feels more ambitious. It forces me to devote more attention to it, which means saying goodbye to some of my other web apps that I can no longer focus on.

I have a difficult time shutting down failing products. Over the weekend, I took some much-needed steps to finish winding down Watermark and Searchpath. I’ll be sending an email this week to everyone who has used Searchpath with the details.

For Searchpath, I had procrastinated making a decision because even simple steps like closing new account registrations requires actually writing code and deploying changes. The index on my Elasticsearch server had grown to 90 GB, including Watermark as well. I needed a clean way to reset it and migrate the small number of active paid accounts somewhere else, to give customers time to find a new solution.

I’ve tried a few technologies for search over the years. The first version of Watermark used Sphinx, which I loved but became a scaling issue with its default need to completely reindex MySQL data. Eventually I moved to self-hosted Elasticsearch, but I had to keep feeding it RAM as the index grew. It was never stable enough with my limited skills.

As I noted in my post about Talkshow.im, there’s no perfect way to admit defeat and clean up the mess left by a web app. It’s always a balance of responsibilities — to your own business and to your customers.

But again, the way forward is clear. I should put everything into launching and growing my new microblog platform. It’s too much to maintain other web apps at the same time.

I get why top-down solutions are tempting: fake news and filter bubbles are in front of our face, and wouldn’t it be better if Facebook fixed them? The problem is the assumption that whoever wields that top-down power will just so happen to have the same views I do. What, though, if they don’t?

Maybe. Though while we should debate how to balance Facebook’s enormous power, there should be a parallel effort to move away from the centralized publishing model that gave Facebook that power.

Facebook has confused itself into thinking it is the whole internet, and so the principles of a free press that apply to the open web, also must apply to Facebook. No. While Facebook has a great responsibility to do the right thing, because they are so big, Facebook is just a web site.

I want Facebook to improve. I want Twitter to improve. But I can do very little to effect change at those companies, and some problems are so fundamental as to be essentially unfixable. The web wasn’t supposed to be like this, with all the power and all the writing concentrated into so few sites.

It’s time for a new social network that brings discoverability and community without the baggage of an ad-driven network that must grow to a billion users. A social network that embraces the open web, and freedom of expression, while preserving a clean timeline that can’t be interrupted by harassment.

Not just one new social network. I hope that many developers will work on products that encourage independent publishing again.

It’s going to take time to build. That’s why I started working on Snippets.today 2 years ago. I’ve made great progress, but I’ve also drifted, unfocused, uncommitted to finishing it, as if I knew something was missing.

Something was missing. The election results have made that clear. I was thinking big, but not big enough. The way forward must include both a decentralized publishing platform and the tools to encourage a safe community.

Today I published a new episode of Timetable. It’s about Apple’s new design book but also about how social networks are broken, with a hint of what I think we can do about it. It’s just 3 and a half minutes long.

As I’ve written about before, Apple no longer needs us to defend the company. On the other hand, many good people work on Apple’s products and so criticizing the company can easily come across as criticizing those people. That’s not my intention, but I sometimes get that balance wrong.

I own dozens and dozens of art books, but I won’t be ordering this new Apple design book. It looks overconfident instead of nostalgic. It looks like it celebrates objects instead of people. It looks like a beautiful book for the wrong time.

One year ago today, I posted the first screenshots of Snippets.today for iPhone. I never would’ve guessed that a year later I’d still be working on the beta, still not quite ready to ship.

One theme from that post a year ago is even more true today, though. To succeed I need to not just announce and market the product, but tell a story about why it matters. This realization is what has held up the Kickstarter video for so long. It doesn’t need to be perfect — I’m sure it will be flawed in a few ways — but it needs to be right, in that it should frame the idea of independent microblogging correctly.

More from that post last year:

Earlier this year I gave a talk at CocoaConf about tips I’ve learned to be productive while juggling multiple projects. But as I worked on the talk, it turned out to be about something else. It was about Walt Disney moving from Kansas City to Hollywood. It was about crazy side projects that no one else believed in. It was about Texas Hold ‘Em poker and risking everything for an idea.

I still feel that risk. A long-overdue product is difficult to push forward, the weight starting to carry as much burden as potential. And everywhere I look there’s a new excuse to procrastinate.

One year ago, I celebrated my first day without a boss. I had just written 2 weeks of daily blog posts about wrapping up work after 14 years at the same company. Today, I’m wearing the same Mac t-shirt and working from Whole Foods again to mark the anniversary.

So how has it gone, a full year as an independent developer? It depends who you ask. While I was leaving the best day job I’ll ever have, there’s still no substitute for the flexibility and freedom to work on my own projects. From that perspective, the last year has been amazing, with some great success on new revenue from Core Intuition and contracting too.

And I made a few decisions early on with how to manage the business that have proven useful to smooth over the bumps. For example, I pay myself a fixed salary on the 1st day of each month, and for 12 months straight I’ve always met that goal. This month, I gave myself a small raise.

On the other hand, I’m still bringing in less money than when I had a real job, and my wife might say that there’s a fine line between being self-employed and unemployed. We’ve let our credit card debt go unchecked. There’s been no slack in the high monthly expenses of the house, car payments, business costs like hosting, and everything else. My income from Riverfold has grown significantly, but not significantly enough.

Yet, I’m upbeat. I’m upbeat because of the potential for what I set out to do a year ago: ship Snippets.today and help revolutionize independent microblogging. That’s still the plan. That’s still why this experiment of working for myself is in its very early stages, even a year later.

Earlier this week I sent an email to subscribers of the announce list for my microblogging project. These are people who signed up, wanting to hear more about what the project was and when the beta would be available.

I talked about this on Core Intuition 241 today. Some people signed up a year ago, and the longer I went without sending an email, the more nervous I became that I was missing an opportunity to sustain interest in the project. I was stuck on the idea that the first email to the list had to be when there was a product to either test or pay for.

These decisions of when to release a product, what to write about, how to communicate new ideas without overwhelming potential customers — they seem so monumental, but the truth is it just doesn’t matter that much. When the feedback started rolling in over email, I quickly realized that I was worried for nothing. People were excited and supportive.

I have a lot of work to do over the next couple of weeks before it’s ready to open up to real users. As I’ve talked about a few times on my Timetable podcast, I’m planning a Kickstarter project to complement the web app. I’ll be sharing more soon.

If you were to build a weblog publishing system, would you start from scratch or build on an existing tool? There’s a healthy market for WordPress-powered hosting, for example, from WordPress.com itself to WP Engine. People know and trust these tools.

I was faced with this question for my microblogging platform. My requirements were pretty simple:

The published site needed to be 100% static, so that I could host it anywhere.

The template system needed to be widely used, so that I could draw on existing themes and provide customization for users later.

Jekyll looked like a great choice. I’m so happy with how well this has worked that I mention Jekyll in the marketing and footer of published sites. It’s a brand that can help give users confidence that this is built on something solid, and that if they need to migrate to self-hosted, there’s a path.

On top of Jekyll, I built a web interface for publishing and deleting posts, changing themes, and I added XML-RPC support so that you can use external blog editors like MarsEdit. Plus there’s a native iPhone app for posting.

All of this enables another feature that I’m very excited about: full mirroring to GitHub Pages. When you publish a microblog site, you can have it upload all the Markdown and HTML to a GitHub repository. This is a great way to export or mirror your content.

I think it’s a good foundation. Publishing is actually a small part of the overall microblog platform I’ve built, but it’s an important one. I can’t wait to share more and keep building features up around Jekyll.

I’m writing a short e-book about everything I’ve learned, and I’ll have news soon about early access to the platform. You should sign up on the announce mailing list before next week.

I published 2 new Timetable episodes this week, with a shared theme around Kickstarter projects. They’re both just 5-6 minutes long.

Episode 19 is about how I finally sat down to record a video for my upcoming Kickstarter project. I still have editing to do, but I’m already feeling a lot better about actually launching this.

Episode 20 continues the discussion of Kickstarter, starting with my reaction after receiving the art book from Loish yesterday. I was really impressed with how well it was produced. Anytime I see something of such high quality I’m inspired to do a better job with my own work.

In my posts about defining what makes a microblog post and guidelines for RSS, I talked a little about links but didn’t explore linkblogging. While many blog authors post primarily long essays, shorter link blogs are a common approach for bloggers who want to post new content several times a day.

Essentially two types of link blogs have evolved since the early days of blogging. The most traditional link blog can be seen in Dave Winer’s posts (click on the Links tab). These are links with a very short commentary. Many tweets are like this. In a way, this format is the purest form of microblogging.

The second type of link blog starts to fall outside the limits of microblogging. Instead of just including a URL, authors use a quote from the linked material as the foundation for the post. The majority of Daring Fireball posts adopt this format. While John Gruber is known for his full essays, those longer posts are infrequent today. He keeps his site active by linking to other interesting essays and tacking on his own brief opinion.

At a technical level, this difference can best be seen in the RSS feed’s <link> and <guid> elements. These elements will contain URLs that either link back to the main site, or link away to an external site.

Here is where this evolving approach to link blogs starts to break down. Let’s take an example from Six Colors, one of my favorite sites. (I recommend subscribing. The members-only secret podcast with Jason and Dan Moren is really fun, and the email magazine is great too.)

In a link post about Hulu’s pricing, Jason Snell actually writes 4 paragraphs of commentary (plus a footnote). This is more like an essay than a short link post that points to the external site.

Another example is when MacStories linked to Twitter’s launch of Moments. A few paragraphs of quoted text, 5 paragraphs of MacStories commentary. The commentary is as important or even more important to read than whatever Federico is linking to.

Sometimes we read sites like MacStories, Six Colors, or Daring Fireball more for the commentary than for what is being linked to. But when using an RSS reader, there is too much confusion about where an item’s link goes when clicked if the site’s feed isn’t consistent about linking everything back to its own site.

And in fact Jason Snell acknowledges this problem by offering two separate RSS feeds: the default one, with a mix of links back to Six Colors for essays and pointed elsewhere for link posts; and another feed with everything linking back to Six Colors, where the commentary lives. He also attempts to minimize confusion on his own site by giving each type of post its own icon in the site design.

The less clear-cut the distinction between essays and link posts, the more confusion we introduce to readers. In some ways, this mixed approach really only works for Daring Fireball, because his feature essays are so long, and so obviously different in format to the rest of the link posts.

Good conventions for blogging have been at a standstill for years. While part of the appeal of indie blogging is there’s no one “right” way to do it, and authors can have a strong voice and design that isn’t controlled by a platform vendor, we must accept that Twitter has taken off because it has a great user experience compared to blogs. It’s effortless to tweet and the timeline is consistent. For blogging to improve and thrive, it should have just as straightforward a user experience as social networks wherever possible.

Luckily, RSS already has everything we need for clients to visually distinguish between link posts and regular ones. If the <link> element points to a domain other than the one for the site, it’s probably a link post. If the <link> and site domain match, it’s a full post.

I’ve adopted this in my new microblogging platform by exposing the domain in the UI itself, at the end of the title or microblog post whenever it’s a link post. If it’s a full post, the link isn’t added. And for either type of post, the timestamp links back to whatever was in the <link>.

Here’s a screenshot from one of Dave’s posts. Note that the link was not in the RSS text. It was added by my app automatically:

This has been a long post, but it boils down to two simple recommendations:

If you’re a blog author and you’re adding any significant commentary, the RSS feed should point back to your site.

If you’re an RSS client developer, the difference between link posts and full posts should be exposed in the UI.

I believe that adopting these will bring more consistency to blogging. Users won’t need to hover over links, or guess what will happen on a click or tap. It’s a small change that will make reading blogs a little better.

On the latest Under the Radar podcast, Marco Arment and David Smith talk about ways to make your app more robust. That includes tips for scaling your app with a lot of data, and also dealing with potentially hostile user data. It’s that last point that I’ve been thinking the most about lately.

With the experience of building Tumblr and Instapaper, Marco is clearly now hesitant to ship app features that accept arbitrary user-generated content, because a small indie company just doesn’t have the resources to deal with spam and abuse. Instead, he suggests outsourcing whenever possible. For example, letting Apple accept and reject podcasts, and basing the Overcast podcast directory search on that already-vetted list.

Let’s say you’re building a Twitter-like service. As we all know, hate is widespread on Twitter. At times, it seems impossible to even have a G-rated Twitter experience. But the problem is less that users can publish terrible tweets, and more that it is so easy to be exposed to those tweets with search, trending topics, retweets, and replies.

As I work on my microblogging project, I’m trying to be aware of these points in the platform where bad content can leak out. So I don’t have global search or trending topics. I also don’t make it easy to stumble upon random users. But I do have replies, which by default will currently go out as push notifications if you have the iPhone app installed. It’s that area that I should focus my attention.

Two options that come to mind for minimizing abuse in replies:

Don’t allow replies from people you aren’t following. This solves the problem, but it comes at the expense of discussion. It removes the accessibility that many people love about Twitter’s asynchronous following model.

Quarantine or attempt to classify replies so they don’t bubble up in your timeline or as notifications by default. This would be like an over-aggressive email spam filter. Difficult to get right and possibly routed around by clever microbloggers.

After listening to Marco and David, and reviewing the full scope of what I’ve been trying to build, I’m pretty concerned about this. I’m looking at Akismet, and other metrics internal to my app for judging content and suspicious user accounts, but I may be a little in over my head on this issue.

“So I decided it was time to do a restart of my JavaScript RSS aggregator, and it’s now ready for Node users — it’s called River5. […] This is a foundation for developers to build on, but it’s also possible for an adventurous user to set up their own rivers.”

River5 is built on a few XML and JSON formats, including River.js. I’m pretty interested in River.js as a format for aggregating multiple feeds together, so I’ve supported it in my new microblog platform. As a next-generation RSS, though, I prefer the proposal I wrote about in a post called RSS for microblogs.

Next up is twtxt, which attempts to recreate Twitter as a distributed, command-line based system with self-hosted text files:

“Instead of signing up at a closed and/or regulated microblogging platform, getting your status updates out with twtxt is as easy as putting them in a publicly accessible text file. The URL pointing to this file is your identity, your account. twtxt then tracks these text files, like a feedreader, and builds your unique timeline out of them, depending on which files you track.”

I’m less sure what to think of twtxt. The simple plaintext format is nice, but we already have a good infrastructure for this with RSS. And as I’ve noted before, having HTML in RSS with inline styles and links is nice for microblogs, and it’s not clear to me whether that would fit well with twtxt.

If you want to start an indie microblog, my suggestion remains to use existing blog software that can generate simple RSS feeds. Short posts, no titles. This is a widely-deployed format that we can continue to work with for years to come.

Dan Moren reports that Twitter is rolling out their algorithmic timeline, where tweets aren’t strictly reverse-chronological. It is opt-in for now, and likely won’t apply to third-party clients:

“I’d also guess that third-party clients won’t be able to implement this for a while, if ever. So users of Tweetbot, Twitterrific, and others won’t really have a substantively different experience.”

I don’t see the setting in my Twitter account yet. As a user, I hardly care, because I don’t read the Twitter timeline directly anyway. But I’ll be watching how people react to this and how it might affect my own microblogging plans.

“The point is that publishing on Medium and Twitter and Facebook gives you an immediate shortcut to a huge audience, but of course those companies’ interests are in themselves, not in building your audience, so it’s very easy for them to change things around in a way that totally screws you over (remember Zynga? Yeah, me either).”

My current thinking on Medium is that it’s a shortcut to building an audience for a single post, but doesn’t really help build a true audience. In other words, you will get more exposure, and maybe one of your posts will be lucky enough to be recommended and included in Medium’s daily email, but after someone finds it they aren’t as likely to read your other posts and subscribe to your entire site.

We can’t talk about silos like Twitter and Medium without talking about cross-posting. Noah Read says:

“While it is relatively easy to post to a blog, syndicating that content to Twitter, Facebook, or Medium still requires additional configuration, which many users won’t do. I think it would be in blogging software’s interest to make these POSSE features a standard part of their core product. In order for the open web to not lose ground, ironically they will need to play nicer with closed platforms than they are likely to receive in return.”

I’ve been thinking a lot about this too. For beta users of my new product, I’ve been telling people to use IFTTT to wire up cross-posting to Twitter. But that’s another step that will be confusing to people — an opportunity to lose interest and give up. Cross-posting should be a core feature.

“I want to own all content I produce. That way I can ensure that everything I write does not go the way of the dodo when the latest and coolest microblogging platform goes belly up.”

He calls the short posts “blips”. I call mine snippets, which I borrowed from Noah Read. I like both names, but even more importantly, I like Jussi’s approach to owning his own content and providing a simple RSS feed of microblog posts. (I wrote more about RSS and microblogs a couple weeks ago.)

“For every wild idea I plan out, she reminds me of the realistic outcomes, backed with historical data. If it weren’t for the tempering quality of having ‘pessimists’ around, I’d be living in a tiny apartment, buried in debt, and likely friendless.”

I’ve been trying to do a better job of bouncing ideas off other people before fully committing, while still holding on to a strong enough original concept that I can’t get too distracted or discouraged. I also have a new idea to help lay the groundwork for my new microblogging service, before actually shipping it. Hope to announce more in the next couple of weeks.

My good friend and Core Intuition co-host Daniel Jalkut isn’t convinced. After we recorded last week’s podcast, we talked privately about the direction I’m headed in. He’s seen the projects I have in development, but he thinks working on Mac apps is a safer bet than web services. And he works on a blogging app, so if I can’t convince him that the goals I have around microblogging-related tools can be a real business, how am I going to convince the rest of the world?

Earlier this year I gave a talk at CocoaConf about tips I’ve learned to be productive while juggling multiple projects. But as I worked on the talk, it turned out to be about something else. It was about Walt Disney moving from Kansas City to Hollywood. It was about crazy side projects that no one else believed in. It was about Texas Hold ‘Em poker and risking everything for an idea.

The new microblogging app and service I’ve been working on, off and on for the last year, is the most ambitious project I’ve ever attempted. It is difficult to explain and market, it might only resonate with a niche audience, and it is going to increase my hosting costs. So part of me knows that Daniel is right — that the smart business decision is to put it on hold and focus on my Mac apps, which will probably have more predictable revenue.

And yet, this project is also the most meaningful. In the words of Peter Thiel, it could take independent microblogging from zero to one. A new push forward for weblogs, maybe the first in a while. Therefore, I must do it, and I must accept some risk in the process.

Lately I’ve been working on the iPhone version. When you look at these screenshots, it might be tempting to compare it to Twitter. Don’t. Instead, think about how the plumbing fits together: RSS, microblogs, and the open web.

The best products don’t just have marketing copy; they have a mission statement. They don’t just sell a tool; they sell a movement.

When I stare at my product wondering if it’s too confusing — if it’s too different, and tries to do too many things, to be immediately understood by new users — I try to remind myself that it’s an opportunity. Instead of simply explaining what I’m doing, how can I pitch it in a way that strengthens a community around the idea. Because dozens of bloggers can spread the idea more quickly and in a more meaningful way than I can by myself.

And unlike a one-way press release, a community is inherently two-way. Every mention of the idea is both marketing and feedback. Someone blogs about how they’re excited for the product, but also how they wish it had a certain missing feature. Someone in the press writes a review, but also with a pros and cons list.

This cycle means the product gets better. And if we’re thoughtful in that first approach to marketing copy, then every blog post, review, and tweet that follows is laced with a little part of our mission statement.

It’s a common theme for Dave Winer to write about preserving our writing on the web. Today he outlines some criteria for judging whether a web host will last:

“The concern is that the record we’re creating is fragile and ephemeral, so that to historians of the future, the period of innovation where we moved our intellectual presence from physical to electronic media will be a blank spot, with almost none of it persisting.”

I think about this in 2 parts. The first is publishing your weblog to your own domain name. This ensures that your writing doesn’t go away and links don’t break when your web host goes out of business, because you can copy your content somewhere else and map your domain to that new location.

The second is some kind of host that will last forever. This is an unsolved problem. Hosting fees need to be paid, domain name registrations need to be renewed. It may be too big a leap to ever get there, but we could settle instead for better mirroring of content. I’d like to have my content mirrored automatically to GitHub Pages, for example, and maybe even Medium.

Imagine the life of a printed book from the early 20th century that has now survived generations. How was this possible? Many copies must have been printed, because some will inevitably be lost or destroyed. And when a library or bookstore is closed, copies of the book must be transferred to a new location.

This all follows naturally with a printed book, but to adopt the same pattern for digital works, we must go out of our way to create a system of mirroring and long-term storage that tries to match what happens in the real world automatically. It’s a great challenge.