Founder at

Uncertainty — pleasant tension. No words, only inklings. No maps, only footsteps.


I just updated my phone to Android 9 Pie, thanks to its endless notifying and nagging. Most of all, I'm thankful it didn't screw with the existing interface too much. But it came with this new “Digital Wellbeing” feature and, naturally, I have some thoughts.


The last several months have zipped by for me. But is about to enter a new phase that I'm pretty excited about.

While our focus until now has mostly been on individual users, as a business, today is starting to look at how we can support a new set of customers: other businesses and organizations. I'm excited about this not just because of how easily our software works in that space, but because it gives us a solid plan for long-term sustainability.

The consumer-focused prices we built our business on have made our road to sustainability long and slow. Really, they tend to only work when you're building a side-project, are backed by venture capital, or don't need to pay the people working on the thing. But today we're no longer a side-project, we still refuse to take venture capital, and yes, we pay people.

The road has been long, but we're in a good place as a business. Now I want to get us to an even better one. Which brings me to this next stage.

The past several months have shown me the many ways WriteFreely, the software behind, is useful. Make something simple enough, and it will find uses in ways you never could've imagined.

After seeing all these uses, listening to feedback, and considering our four-year history, we're finally settling into a very interesting use case we'll be pursuing next: knowledge-sharing within businesses and organizations. It's called for Teams, and will run entirely on WriteFreely.

This will be a new service offered in addition to our existing hosting for individual writers. Really, it's a natural evolution from the service we launched late last year. But unlike that service, Teams has a very specific audience in mind, and will be priced for businesses. We've been using it internally at, and it's really working out nicely so far.

I'll have more to share when the service eventually launches. But I just wanted to explain what's going on behind the scenes so everyone knows why other promised features have been temporarily put on the back-burner. We haven't gone anywhere or forgotten about you — we're just preparing for this new world we're about to enter as a company.

Just as well, our progress on Teams will continue to circle back and improve for everyone. As one example, an early Teams customer has driven our decision to speed up development on the v2.0 command-line client release, which any user can use. It'll be soon followed by our first official WriteFreely client, also for the command-line.

Beyond that, the underlying WriteFreely software will continue to improve for everyone, while stubbornly sticking to its goals of ultimate simplicity. I can't wait to see the new uses it finds, and to hear what you think.

#writeas #WriteFreely #future

I took the train from Jacksonville, Florida to Portland, Oregon for the #AWP conference, where the team exhibited. This is the story of that journey.

Read everything up until this point: Day 1, Day 2, Day 3

Day 4

I woke somewhere in North Dakota, the waning gibbous moon looking at me across patchy snow-covered plains. The sun was slowly turning the eastern sky behind us orange and yellow; I pulled some levers under the seats in my roomette to slide them up out of “bed mode” and back into seats, then looked out the window for a while. I'd tell you what was on my mind, if those thoughts happened to be in English — but they weren't, so all I can say is that it was a very pretty morning.


I'm taking the train from Jacksonville, Florida to Portland, Oregon for the AWP conference, where the team will exhibit. This is the story of that journey.

Previous: Day 1, Day 2

It's 3 am and we're going through... some city. Cleveland, I guess. Yep — Cleveland. My left hip is killing me. Somehow the arrangement of my limbs isn't only affecting the muscles around my hips, but also around my knee. Is my leg asleep, just not at the pins-and-needles stage yet? No idea, but it's stiff in ways I've never felt, so I have no idea how to fix it. Anyway, next stop: Chicago.


I'm taking the train from Jacksonville, Florida to Portland, Oregon for the AWP conference, where the team will exhibit. This is the story of that journey.

Previous: Day 1 Next: Day 3

Sleep last night was punctuated by a sore hip, a stiff knee, a quick lateral jerk by the entire train, seemingly going faster than usual, I guess to make up time (it was about 40 minutes late getting into Jacksonville). With my footrest down and my legrest up, I slept about as good as anyone can in that position — my only enemy was a giant, undimmed light hanging over the vestibule door, shining directly into my eyes at my slightly-reclined angle. So I covered my head with a hoodie and slept quite deeply, between the random jarring moments.


I'm taking the train from Jacksonville, Florida to Portland, Oregon for the AWP conference, where the team will exhibit. This is the story of that journey.

I love taking the train. I can't really remember when I started regularly riding it — sometime in the past six years of living in northern Florida. But I often get on the Silver Meteor or Silver Star for a relaxing trip up the east coast to visit family in the DC area. Whenever I travel abroad, it's my preferred mode of transportation — whether the Shinkansen in Japan or the many rail lines in Europe. I wish it was possible to travel the United States with the same ease as in those countries, but today I'm content that we have a passenger rail system at all.


We live in a cacophony of constant commentary. Whether it's talking heads on TV, buzzing smartphones, status updates, blog posts, social media mentions or retweets or reblogs or comments or likes, we're surrounded by opinion and reaction.

When it comes to software that enables the spread of commentary, we need to remember the human side. That's what I'm hoping to do with our upcoming product,


I recently found myself working 12+ hour days again, so I took these last two weeks to slow down, step back from work a bit, and enjoy time with family and friends. I'll be slowly ramping up again over this upcoming week, so we'll be back to full-speed again by next week.

I'm not usually one to divvy up my life into calendar years, but 2018 was a particularly impactful one for me, so I figure, what better time to do a little reflection than now?

I made some major life changes this year. ...Well, one in particular: I traded employee life for founder/boss-man/big-cheese/“maker” life back in February. I did a lot of traveling this year — some just me and my dog, some alone, some with good friends or family.

I started meeting more people, from my own city and others. I got stranded in Alabama as my old car broke down, and made friends with some mechanics. I got a tour of Asheville after showing up without a plan. I got too little sleep dancing and wrestling with locals in Reykjavik. I traded languages with new friends in Sevilla, and stories with Münchner, despite my sorely lacking German. I did some things for business and many for pleasure.

What I'm most excited about right now, this day in late December, is feeling like I'm finally hitting my stride. Besides having the time to build the things I want to this year, I've also had the space I need to grow up and out of old habits; to grab more control over how I spend my time and energy; to do things more deliberately. Many of my experiences and mishaps this year made me realize what I've been doing wrong for a much longer time, and what to do about those things.

One thing I've done over the past few months is go on a diet — partly to lose weight, and partly to eat less terrible food. I was never taught how to eat well as a kid — I didn't touch a vegetable and enjoy it until my mid-20s. But cutting out the sugar and beer and pasta for more whole, varied foods overall has got my body feeling better, and my mind more clear. I've lost a decent amount of weight, but more importantly, most mornings I actually wake up feeling refreshed and ready. When you eat like shit all of your life, this is a truly profound feeling.

One realization I had this year was that I've actually been doing something pretty serious this whole time, despite me not recognizing it — building these platforms and ideas and this business. I'm trying to seriously build something that will last. I'm seriously trying to continue doing that for the next few decades. I haven't felt that way about anything in my relatively short life thus far, so actually acknowledging it really affected me.

As I look to 2019, I'm optimistic. I can't wait to build more things, and help more people express themselves freely. I can't wait to meet more humans I've never known or only corresponded with through a screen — whether that's at FOSDEM 2019 in Brussels (February 2-3), AWP 2019 in Portland (March 27-30), or anywhere in between. I can't wait for what tomorrow holds, and I hope you can't either.

Happy New Year, everyone 🎉

#2019 #newyear2019 #personal #travel #work

A recurring problem I and others see in the fediverse, with both new and veteran users, is the issue of a single identity.

I wrestled with this when I first created a Mastodon account, going straight for one on, as most people do. But when I wanted to start my own writing-centric instance, I had to create a new personal account on it and mention my account in the bio, and vice versa. I was the same person, but speaking to different audiences — one, a general audience and the other, more about writing.

Many people create multiple accounts — the point, especially on niche instances, is to get access to the local timeline and see the conversations around your instance's niche. (There are probably better ways to handle this specific problem, but I digress.)

The issue of identity really started to grow as new platforms popped up. There's PixelFed / Anfora for photos, PeerTube for videos, Plume and WriteFreely for blogging, and many more in the works. Though #ActivityPub allows you to follow and comment on all these services from a single identity, current implementations unfortunately don't accommodate the other side: the publisher hoping to utilize all these services under a single identity.

But I think I have a solution — one I mentioned in a recent conversation in the fediverse.

Essentially, we could make each ActivityPub service work both as a publishing platform and a client to other AP services. So for example, if I wanted my primary identity to be a Mastodon account, I could also create a PixelFed account like normal and hook it up to that Mastodon account. In this scenario, PixelFed would let me turn off publication of any ActivityPub endpoints (so people aren't also following my PixelFed account), and would simply interact with Mastodon's API as a client. With this kind of setup, I could use PixelFed's photo uploading / filtering features and have everything go to the profile of mine that people already follow, over on Mastodon. With this, people could combine any number of services to publish a variety of posts all to a single identity.

With the projects I'm building, WriteFreely and, you might use your WriteFreely blog as your primary identity, and then by hooking up your account, any posts you boost from there would be published to your blog.

Of course, making this work in practice will involve much more work that wouldn't otherwise be needed. For one, each platform would need to be able to store any kind of activity out there published by another platform. And some platforms will be more suited to play the “identity” role than others.

Still, I think it's an interesting idea. And I'll be experimenting with it in the future to see if it's all actually possible.

#fediverse #WriteFreely #ReadAs

Enter your email to subscribe to updates.