Update: I did a rough sketch of an alternative Getting Started UI for the IndieWeb WP Plugin which addresses some of these issues.
This is my experience “indiewebifying” my personal WordPress site.
A user test from a “Gen 1” UX guy who just heard about this stuff last week.
Hopefully none of this comes across as too critical. I am REALLY impressed by what is already working.
- First off, guilty confession… before this weekend I’ve just been posting on Facebook and didn’t have a personal website. Because 10 years ago when I did have a personal website, far less people read my posts.
- What’s this you say? I can “POSSE” and suck Facebook comments back onto my own site? I can own my own content again? Awesome! OK, let’s give it a shot.
- Hours spent browsing indieweb.org. A goldmine of awesome concepts but a lot of jargon.
- OK, found http://indieweb.org/WordPress, and that’s my favorite CMS, so let’s get started.
- A download of wp-cli and 20 minutes later: www.aaroncommand.com is reborn. Copy-pasted over a few recent FB posts for some dummy content. Chose Independent Publisher from the suggested themes because it’s so purdy.
- $ ~/wp-cli.phar plugin install indieweb
- wp-admin -> IndieWeb -> Getting Started: OK, a lot of UA text. Seems to tell me I’ll need a lot of other plugins too. Why not just roll all the functionality into one plugin? Let’s hit that blue button, it appears to be the next step.
- Oh man. Overload. Too many choices and it’s not clear enough what I should do next. Do I need all of them? I think for a lot of people “Your Adventure Ends Here.” But I did work out what some of these things are from reading the wiki. I’m pretty clear on what Bridgy, IndieAuth, and WebMention are for example. Bridgy’s probably the piece that intrigues me the most, so let’s see if I can just get away with installing that.
- Install… OK… Activate… three clicks is probably 1-2 more than needed
- What’s the next step? I’ll randomly click around in WordPress to see if a Bridgy settings page appears. OK, a link has appeared in the hidden submenu of IndieWeb.
- *** Humble suggestion: don’t give people a list of plugins to install and activate. For Gen 2: give them a list of *benefits,* like “Post Syncing” or “Federated Login(?)” each with a “Configure” button next to it. Hitting Configure installs and activates a plugin if necessary behind the scene, and takes them straight to the relevant configuration screen. For Gen 3 and 4… this stuff should probably all just be set up by default with a goal of zero config.
- I enable Facebook, disable Twitter, for now. Save. Surprised there is no FB login stuff at this stage. “Bridgy publish requires a Webmention plugin.” Why not just install that for me when I install Bridgy 🙂 Links takes me to WP Plugins directory… But I just installed a plugin from the Indieweb settings UI, so this feels a little uncomfortable, even as a very experienced WP guy I wonder if there may have been some magic about that Indieweb install screen. So I back up to ‘Getting Started,’ install and activate Matthias’ plugin from there.
- At this point I’m presented with no prompts as to what I should do next. I suppose the install was probably successful. Back to Bridgy settings… nothing there. Umm… let’s try a post. OK if I scroll to the bottom of the WP’s new post screen there is a place where I can check a box to syndicate my new post to Facebook. Let’s post something about how awesome Bridgy is.
- Bridgy Error: Could not find Facebook account for aaroncommand.com. Check that your Facebook profile has aaroncommand.com in its web site or link field, then try signing up again. *** Humble suggestion: tell the user what they need to do for each silo on the Bridgy settings page.
- Added http://aaroncommand.com on my FB profile under Contact and Basic Info -> Websites, tried to post again but it still doesn’t work. Maybe visibility needs to be public instead of the default setting ‘Only Me?’
- Made it public, still doesn’t work. At this point I’m totally stumped. On a complete whim I go to http://brid.gy and click the Facebook button. Aha! An OAuth prompt! Scary to Gen 3-4 but reassuring to Gen 1-2 that some progress is being made. Click through a couple screens on brid.gy until I see a big “Click to enable publishing: Facebook” button. That’s very visually prominent so it’s probably what the website’s owner wants me to do.
- This brid.gy website is now giving me a lot of info. It’s pulling event invites and things from my FB profile. That’d be pretty creepy if I wasn’t friends with anyone in the Indieweb community. Scared: if someone gets the link to this page, can they read all this stuff about my private life? *** Humble suggestion: My scenario was “syndicate to FB” so if we need to involve a third party please mention it when I’m deciding to install/configure Bridgy. I totally get that at this stage Bridgy probably wants to show everyone in the community how much awesome stuff is happening here, but as usage of the tech expands to total strangers, I would consider not regaling the user with lots of their previously friends-only content. I actually gathered from the talk yesterday that Bridgy had a server component, but most people won’t even know that.
- There is nothing on the Brid.gy site about going back to my WordPress blog and posting from there, but lacking any other clear instructions for what to do next, I’m going to give it a shot. Type up my post again and hit Publish and WordPress says it was published successfully! But no mention of FB. So I go over to my FB profile, and after a minute or two, there it is! With an embedded blurry copy of my profile image in the post for some reason! Will have to figure that out, but this is a great achievement, so for now, a break for some victory chocolate.
*** Humble suggestion: user should get a notice when they publish that the post has been syndicated to {Facebook, Twitter, etc.} and will appear there in a few minutes.
*** Humble meta-suggestion: I suspect Brid.gy supports many more use cases than the WP-to-FB case I walked through today. Perhaps Brid.gy config chould be exposed through a RESTful API, delegating the UI question to the consumer (in this case the WP Indieweb plugin). Consumers of the API could then provide UI which is more contextually relevant.
Still todo: Set up FB comment syncing. Figure out if I can make posts on my site friends-only (!). (I know “privacy” on Facebook is at best security through obscurity, but that doesn’t make it useless. I don’t run ssh on port 22 either. I don’t want what I post to be world-readable by default.)
*** Last thoughts: That was easier than I expected! I didn’t run into a single part of the process that was really buggy or broken. Just a lot of UX nitpicks. What has been achieved so far is really impressive, it’s amazing that this stuff just worked without exploding once it was all authorized.
From a UX standpoint IMO my biggest hangups were:
1) At several points during the onboarding experience there was no clear next step. Users always look for a prominent button/banner/etc. which tells them what they need to do next to accomplish their task. Adding these at points in the workflow where they don’t currently exist is probably the easiest way to increase the number of people who onboard successfully.
2) Being confronted by a ton of plugins which all have obscure purposes. Consolidate these into one plugin or handle installation and activation behind the scenes when the user starts to configure a specific feature.
3) Having to jump out of the WordPress UI and go to another site to set up Brid.gy. Wasn’t actually told anywhere that I needed to do this, so if I hadn’t been furiously absorbing info from community resources for the past few days, I would never have figured it out. Keep the user in WordPress as much as possible while configuring Brid.gy.