So the +1 button on the web is riding off into the sunset. But you can still make good use of the data that you've collected over the years via Google Takeout! I like to keep my bookmarks in Pinboard, so here's how I did it and you can too.

Some kudos to the US Postal Service. I sent Express Mail to a PO Box for Saturday delivery. Saturday comes and I realize that the post office is only open from 8 to 10:30, but delivery is only guaranteed by 3pm. Oops.

So I look up the Post Office and notice that a local number is available. With skepticism I called the local number. 3 rings later I'm talking to a small-town Postmaster. She knows the recipient, takes the tracking number and promises to call back. 15 minutes later she has found out where it was and promised to receive it after hours and deliver it.

Shocked I ask her what can I do to thank you. Her response is simple - "The mail must go through!".

Yeah, I was there... Back in May of 2006 Typepad, LiveJournal and TuCows got taken down by a massive (at the time) DDoS. I recall it was 2-4 GBps of reflective DNS traffic. Scott Berinato covered it pretty well in the Wired article Attack of the Bots.

For the record we were able to get back up using Akamai DNS Hosting, MCI/UUNet DDoS mitigations, and a cleverly placed GRE tunnel. Oh and a bunch of great Ops work from Lisa Phillips, Matt Peterson, Peter Wohlers and others. I think I still have the commemorative t-shirt we did with TuCows.

And here we are 10 years later. Same stuff, yet in many ways worse.

It's high time we get to fixing the underlying protocols and infrastructure to make these types of attacks a thing of the past. It's time to Redecentralize.

Reading this passage from Ready Player One1 I was reminded of a major influence that I had all but forgotten:

It was a Friday night, and I was spending another solitary evening doing research, working my way through every episode of Whiz Kids , an early-’80s TV show about a teenage hacker who uses his computer skills to solve mysteries. Ready Player One, Ernest Cline, Chapter 18.

So I was prepared when I was recently asked "What brought you here?" (in relation to technology). My answer? ... The Whiz Kids. I can directly trace my interest in online services to that white-hat hacking, war dialing, speech synthesizing, BASIC programming gang of kids2. I can only hope that today's teens have something as good or better.

Trying to find the video also made me realize that Youtube is providing a vital preservation service. You see the Whiz Kids episodes were never released, not on DVD, not even on VHS. You won't find them in any library. Anywhere. But there it is, in 10 minutes chunks3, captured and uploaded off a grainy, noisy videotape recording.

There's been a trend where open source projects start a Slack for team communication. I understand why. The Slack UI is refined, you get searchable, synced conversions on all devices and even emails when you're away. Nice! Except the price you pay is vendor lock-in and a closed source code base. Plus aren't you fed-up with creating dozens of slack accounts for each projects? I know I am.

What if I told you there was an open alternative? One that even included access to your favorite IRC channels? Well there is. For the past month I've replaced Slack usage with Riot.im (aka vector.im) and Matrix.org and I am very, very happy with the results.

Let's start with the UI. Here's my Web UI right now:

On the left: rooms/channels. I've customized mine into high/low priority with full control over notification settings.

In the middle: the #ipfs IRC channel on Freenode. Read/unread state is maintained on the server so I can easily switch to the Android or iOS app and participate there.

On the right: the member roster. You can hide it, or use it to Initiate direct messages.

And look, here's the same UI, on Android showing the Matrix HQ Room:

As you can see Riot supports video/audio calls using WebRTC and file upload too. Works really well!

Did I mention that these super high quality clients are all open source?

So what about the underlying service? Well, we're in luck. The matrix.org service is also well designed, fast, interoperable and open. So what exactly is it? From their FAQ:

Matrix’s initial goal is to fix the problem of fragmented IP communications: letting users message and call each other without having to care what app the other user is on - making it as easy as sending an email.

The longer term goal is for Matrix to act as a generic HTTP messaging and data synchronisation system for the whole web - allowing people, services and devices to easily communicate with each other, empowering users to own and control their data and select the services and vendors they want to use.

Bold and ambitious, and the FAQ has answers to some common questions like why not XMPP and more.

What all this means in practice is that anyone can run Matrix protocols using their own servers. Want your own private internal system? Run your own server disconnected from the network. Want your chats to stay on your own server? Run your own; with the benefit of interoperating and communicating with other servers in the mesh. Want to bridge to another chat system, like IRC? Yes, you can.

And the IRC integration is very, very good. As you saw above identity and channel state is carried through, direct messages are supported. Offline for a while? Scroll back to your unread indicator. Or just check your email:

So there you have it. An open system that enables chat. A highly polished front end. Full support for one to one and one-to-many conversations. Yes, it's beta, so there are some rough edges.

Give it a try. You can find me at @lindner:matrix.org or just drop into some IRC channels, my nick is plindner.

Content is flowing in all the right ways. Posts end up as Posts. Photos are uploaded native with backlinks. POSSE via brid.gy just works. You can see that Brid.gy polls Google+, and then saves what it finds back to the original post by sending Webmentions. The result is a full archive of activity around this content.

Oh and cross posting to SoundCloud worked perfectly. And so do embeds..

After a fix from the Known Team WebHooks are working. I get a POST whenever content changes. To test this out I send the URL to the Internet Archive Save Page. Voila! Instant archiving of my content. [Next up, backups in IPFS]

I was able to set up the Known open source software on my own server. Next step is to pull a backup from the hosted version I'm using so I can experiment further and contribute back to the project.

Mobile Posting via Chrome on Android is working well. You can access the Camera and a rudimentary file picker. HTML editing is workable, but not great. I installed the Url Forward app so I can also have native sharing intents.

Bumps

Of course there are some issues encountered...

Spelling errors mean you Publish Once, Edit Everywhere. Or if you messed up the URL, Publish Once, Delete Everywhere

I tried using a native web mention to reply to another post, but it didn’t appear on the target site. There wasn't any visible UX feedback.

I found that there’s no UI support for backdating posts. Okay, I’ll try Micropub to post. Nope, very rough implementations, but Quill seems nice. Eventually I wrote a stub post in Wordpress, exported, imported and edited. Phew!

But.. it appears that brid.gy doesn’t syndicate to old posts like this. Even when I went back and pointed links at each other. I’ll have to followup on that.

Also, I lost the first version of this post due to a CSRF error since I left it sitting too long in the browser. Oops.

TinyMCE still is a pain and loves using &nbsp; and CMD-9 is bound to <address>.. I might have to use Markdown instead.

I miss @ mentioning people, and wish there was a UI for that.

Native Google+ support in brid.gy needs an API.

But still overall quite happy with the way this is going. I hope you're enjoying the journey with me.

This is an experiment. Can I take control of my online life and move it to a place where I have more control? Can I pull my content out of multiple silos? And can I import existing content from other platforms and keep it (somewhat) synced over time so I have a full record of my public online life?

We're going to find out..

The trigger for me was an article about my early days working with the Internet Gopher Community. I had saved most of the email from back then and it was quite easy to reconstruct and remember what happened. I don't think I'll have the luxury for much of what's happening recently. The digital ephemera is spread out too far and wide to reconstruct and reflect.

To get there I'm experimenting with the hosted version of Known, a publishing platform that supports the things that matter to me. I like that it's open source, interoperable and respectful of human effort -- it also supports a number of Indieweb technologies out of the box like WebMention, and brid.gy to pull back content from the Silos.

So.. you're going to see more content in more places as I'll be syndicating out to Facebook, Twitter, LinkedIn and Google+. And I'll be sharing more as I document this process.