Micro Matt

Micro thoughts and mini posts.

My thinking lately has started drifting to businesses outside of my own.

This “main street” idea is particularly interesting to me, because I think it’s the start of a path that can actually lead to meaningful resistance against the tech-giant-dominated web we live on.

I still dream of the early web days, with less rampant commercialism and more free-flowing humanity and knowledge. That side of the web is still alive and well, and will always be around. But it feels pushed to the fringes, and left out of all the mainstream conversations on today’s privacy violations, “misinformation,” and social ailments caused by the “big web.” I think it’s all pretty ironic when this old, human web holds solutions to all these problems. The answer is right in front of our faces, yet we blindly look past it.

I’m not sure what this all looks like in practice. Somewhere in it, maybe, there are organizations providing funding for small businesses that need it. Perhaps there’s a curated, social marketplace only for small businesses, where everyone in it can get to know each other. Or a federated network of these independent bazaars, naturally powered by communal, open source software. Just thoughts for now.

#web #business #mainStreet

Thoughts? Discuss...

Implemented the Write.as context switching system! It shares a bit of plumbing and UX with the Snap.as system, but diverges otherwise, since we have a /me/ base path for all “personal account” screens and an /org/ base path for all team-related screens. That means we don’t need as much state-tracking here, unlike on Snap.as.

Overall, the team-based navigation feels a lot cleaner to me (though I still need to get used to it). Here’s what it looked like before, where you’re always acting as the user and really just “visiting” teams you’re a part of (note the top navigation bar that mixes personal sections with your team):

Here is the new layout, with a pared-down context menu that allows you to switch back to working in a personal capacity:

Some notes:

  • All those extra pages (Profile, Integrations, Billing) have been moved under the Settings section (though I guess moving them to the context menu dropdown would keep things consistent.)
  • I haven’t settled on the “Dashboard” terminology, though it might be helpful to show helpful things from across the suite here — new submissions, new comments, etc.
  • When we support shared drafts for teams, I imagine adding a Posts section to the top navigation

Thoughts? Discuss...

Starting on user / org context switching today, so I can finish up our support for outside #contributors on #teams. Excited to get this big new feature out the door!

Thoughts? Discuss...

Realized that we need a clearer line, UX-wise, between the personal writing experience and Team writing experience.

  • Teams basically act as Users, with their own set of integrations, Snap.as uploads, drafts (eventually), and a pool of #authors that they can add to blog posts
  • We want to severely reduce the chance of accidental posting to the wrong blog (don’t want a personal post ending up on the company blog!)
  • We can optimize the editor and backend management flow if we know you’re in “team mode” instead of “individual writer mode” — like working at the office vs. writing at home

Concretely, we’ll have a way for users to switch between their personal account and any team they’re a member of, like they already can on Snap.as.

This also furthers my assumption that collaborative work on our platform is different from writing as an individual — something I don’t think many publishing platforms assume. With time, we’ll see how that assumption holds up, or if the improved Team UX / navigation bleeds back into the individual experience.

#teams #dev

Thoughts? Discuss...

Yesterday I made a ton of progress on new Team features. The biggest one is the ability to add outside contributors, so you can show authorship information on posts without actually creating accounts for each author.

Besides that, I updated the Snap.as API to support Team uploads, and updated the Classic editor to do the same — so if you have a Team blog selected in the editor, your photos will automatically upload to your Team’s collective photo storage, instead of your personal account’s storage space.

These features should go live today or tomorrow!

#dev #teams #authors #contributors

Thoughts? Discuss...

I’ve had a lot of trouble modeling the Team Member / Author roles I recently came up with to support everything we need to on collaborative blogs. Unlike Users, Posts, and Collections (blogs) that I can understand from one perspective, these new concepts need several perspectives to fully understand (and model correctly). At this point, I think I’ve finally worked it all out:

From a data perspective, these are distinct objects with a one-to-one relationship. A Member is (aside: always backed by one User, and) always associated with one Author — but an Author can exist without an associated Member (if the Member was removed from the team, the User was deleted, or it’s an outside collaborator).

From a user management perspective, team admins will always interact with either a Member-Author or just an Author object. But the complexity will be hidden and they’ll look the same to the end user — just in different states, really.

From a user (writer) perspective, a team writer will always interact with an Author object. They’ll only be concerned with who is authoring a post.

#dev #teams #authors

Thoughts? Discuss...

Author functionality is coming along! Now it’ll optionally display at the top of a post, if it has one or more authors set.

A screenshot of a new Write.as post, under the title it says 'By Matt Baer', followed by the date.

#dev #teams #authors

Thoughts? Discuss...

After last week’s interview, I’m starting to play around with Racket as a new publishing outlet. Here’s a new short clip about building a better web by first giving people a choice — inspired by Team Human, a book I’m about half-way through right now:

Building a better web: first, giving people a choice

#audio #reading #web

Thoughts? Discuss...

An idea occurred to me last month. All along, I’ve been pursuing this idea of “separate but connected apps.” But as I’ve started implementing them, and later with the release of WriteFreely, I’ve had to change my view on what that “connected” part meant. It turns out that they need to be not just connected, but highly integrated in some important ways, if I want to give people the best experience.

An easy example is the photo upload feature in our Classic editor. Previously you had to switch apps to upload a photo, then switch back to insert it into your blog post. Now it’s a part of the Write.as interface, and seamlessly powered by Snap.as behind the scenes. You don’t even have to know Snap.as exists to use it — but if you do, you can do things like manage your photos through this separate tool. Maybe that’s where the separation actually makes sense.

So this idea I had was: some sort of unifying interface. Open it and decide whether you’re writing (Write.as) or uploading photos (Snap.as) or reading (Read Write.as) or checking your inbox (Remark.as). Each action points you to the correct product, and each product contains elements of the others, where it makes sense. For anyone fully utilizing our ecosystem, this could fit them best, while not disturbing those who just need one tool or the other. Importantly, the model could also fit WriteFreely, so it’s no longer just a blogging platform, but actually a multi-application tool (kind of like Phabricator).

#suite #studio #WriteFreely #snapas #remarkas

Thoughts? Discuss...

This morning I chatted with Matthew Guay on Racket (a cool short-form audio service) about WriteFreely and what kinds of things I’m hoping to solve with it. You can listen to the 9-minute talk here:

“The WriteFreely story.”

#WriteFreely #audio #origins

Thoughts? Discuss...

Enter your email to subscribe to updates.