Fediverse Moving over the Face of the Waters
This is an early edition of Fudge Sunday where we we take a look at moving a newsletter from Substack to Buttondown and from Twitter to Mastodon.
Music: *Moby - “God Moving over the Face of the Waters” (1995)*
Getting Informed
*Record scratch* *Freeze frame*
Yup, that’s my newsletter arriving a full day early. You’re probably wondering how we ended up in this situation.
Subscriber asks: *Why is this newsletter moving? Again?*
Subscriber asks: *Wait, Twitter? Didn’t you* *stop using it in 2017**?*
That’s right. To explain, I’m going to play back a recent thread from my new Mastodon account on my new self-hosted Mastodon single-user instance.
Migration and Consolidation of Newsletter and Blog
Last month I learned that my cutover from Revue to Substack came at a cost.[1]
*Today I learned the default sharing link for Substack app does not use my cu$tom domain.😳*
*sunday.fudge.org* *swaps to* *open.substack.com/pub/fudge* *instead.🤔*
*This design choice is enough to make me reconsider my migration to Substack…. just 6 months after leaving Revue (Twitter).😂*
*Maybe I need to try and roll my own?🤷♂️*
*Or, do I test Buttondown first?🤷♂️*
*Thank you for attending my 500 char TED talk.🤓*
Over several days I would find out Substack URL handling actually was going to involve more time to migrate away from than I understood 6 months ago. Eventually, I made a decision that involved consolidation and investment.[2]
*I think I’m going to punt… on a couple fronts and simplify this.*
*Punt: Netlify blog (**fudge.org**)*
*Punt: Substack newsletter (**sunday.fudge.org**)*
*Plan: Move everything to Buttondown as the new simplified* *fudge.org*
*Migrate: My blog posts (mdx but mostly markdown)*
*Migrate: My newsletter posts to see how awful the export/import turns out to be getting off of Substack or prior archives from Revue, wget, curl, etc…*
So, if you are reading this… the migration was a success.
To get my newsletter migrated and able to post this update I performed the following steps:
- Go to Substack -> Dashboard -> Settings -> Exports -> Create new export
- Wait for Substack confirmation email to arrive indicating the export completed
- Download Substack export (zip file)
- Go to Buttondown Settings Importing to upload the Substack export (I ended up sending a support ticket, YMMV)
- Confirmed successful import
- Completed a Stripe purchase for Buttondown Standard for up to 5000 subscribers 🤓
- Did lots of DNS updates for my cu$tom domain and updated Buttondown Fancy Stuff and wait for propagation (in my case Cloudflare)
- Customized Buttondown Newsletter
- Go to Buttondown Settings Importing to upload the Substack subscriber export
- Wait for Buttondown approvals of the subscriber import
- Played around with drafts, formatting, customizations, etc.
Leaving The Bird for The Mastodon
I’ve avoided active use of Twitter for at least 5 years. So, while my account(s) are still up there is no content associated with them.
As I’ve written previously[3] on the topic of Twitter, this wasn’t like I was giving up anything to stop using Twitter. In fact, I missed what Twitter was back in 2007… a bit more civil and a bit less of that old Yogi Berra platitude due to the insufferable bot crowding.
Since I haven’t operated cuthrell.com as an active web property, it seemed like the best vanity domain to host a single-user instance of Mastodon. Plus, I already had a Linode VPS that was available and up to the task.
To get on the Fediverse I performed the following steps:
- Followed the basic Linode community recipe with personal choices along the way (naming conventions)
- Added back my
.well\_knowndirectory of files for Keybase proofs, etc… to the html root fornginx - Added my new Mastodon handle to my Twitter profile
- Used Glitch hosted Fedifinder to poll my Twitter Lists, Followers, and export folks
- Used my Mastodon import function from the Fedifinder export
- Waited for others to follow me back or appear over the next 24-48 hours appearing in my timeline
- While I waited it got me thinking about migrating my newsletter away from Substack

And here we are with a few broken links, redirects to be done, and a lot of fun along the way! 🤓
What breaks next in my quest for a Markdown + Email + Blog + ActivityPub?
Until then… Place your bets!

At the time I wasn’t planning to attempt this migration before the next issue of Fudge Sunday but here we are. ↩︎
Actually, Gatsby Cloud not Netlify, but I digress. ↩︎
But that’s for another post once I take down
sunday.fudge.orgonce and for all as a site that only performs HTTP 301 until I see traffic fall off completely. ↩︎
Enjoyed this post?
Consider supporting my sponsor!
🔓 Unlock Your Best Self with Lida Coaching! 50% off regular coaching rates until July 31, 2026!
A quick message from Lida:
With 18 years building, marketing, and scaling products at startups, I work with founders and leaders stuck between where they are and where they need to be. I help you cut through the noise, make sharper decisions, and get your team executing with clarity instead of chaos.
Most founders mistake complexity for strategy. They keep adding when they should be subtracting. When I'm brought in, the team is usually doing a lot right, and the real issue is focus and direction. I diagnose what's actually going wrong across product, positioning, and execution, then reset direction and get everyone aligned around one clear path forward that will lead to growth.
A bit of what I've done: I was the first PM on a fintech product that hit 10,000+ users within months, built a national incubator that supported over $500M in startup funding, and led teams at 23 Design before it was acquired by frog (the design team behind Apple’s first products). I've spoken at Google, Microsoft, and LinkedIn, etc.
🔓 Unlock Your Best Self with Lida Coaching! 50% off regular coaching rates until July 31, 2026!