Color

Standard

There’s been so much discussion on Color that there are even posts talking about how much discussion there has been. Regardless of this, I am going to tell you what I think of it and why I think it’s a poor concept and why it won’t fly—at least with me. I’d love to be proven wrong (and I think Sequoia would love for me to be proven wrong as well, with a pre-launch $41 million round that’s the talk of the town), but let’s roll with this.

Continue reading

Adding a Custom Sharing Service to Sharedaddy or Jetpack

Screen shot 2010-08-26 at 11.56.44 PM
Standard

UPDATED 3/26/11: Since Sharedaddy is now bundled with Jetpack, I’m taking the opportunity to update this slightly and provide some more information. Leave a comment if you have a question!

UPDATED: Hello, self-hosted WordPress users! The plugin has been released for everyone, so I’ve updated the title of this entry to reflect that and these instructions now apply both to WordPress.com and to self-hosted blogs using the Sharedaddy plugin.

Earlier this week, the team here at Automattic released a new feature for WordPress.com that a lot of people have requested for a while now: the ability to add buttons for sharing services to the bottom of every post. (In fact, you’ll see a selection of them underneath this post. Feel free to share away.)

The service comes “pre-packaged” with a handful of buttons for the most commonly used sharing services and methods.

In the announcement post, it’s mentioned that you can add your own sharing services to the selection. If you go further and check out the support page, you’ll see that in order to add a custom sharing option, you’ll need to add certain information. Of course, every sharing service is different, so the same formula won’t work with all of them.

To add your own sharing services, you’ll need to do a little sleuthing and know how the tool works.

(Click on any screenshot in this article to see a larger version.)

Ingredients and Tools

If you go to Settings > Sharing and then click on the link in Available Services to add a new service, you’re prompted to enter three pieces of information:

  • The name of the sharing service
  • The URL needed to “push” a link to the sharing service
  • The URL of a 16×16 icon used to represent the service

All services you add using the custom settings will be “dumb” buttons; you can’t include any fancy JavaScript or buttons with counters. The buttons that are created will look like and follow the same general rules as the “dumb” buttons provided for the pre-loaded services.

Most of this is pretty straightforward. The key to getting it right is the Sharing URL. If you don’t have it right, then the service won’t receive the information it needs when someone clicks the button. You’re given five variables you can pass to the URL:

  • %post_tags%
  • %post_title%
  • %post_full_url%
  • %post_url%
  • %post_excerpt%

The first two will be used much more often than the third. Since the Sharing URL is the tricky part, let’s talk about how to discover it.

Discovering the Sharing URL

For our example, we’re going to use Delicious, since that’s one of the services people are likely to want to use and it’s a nice example of how to determine the right URL and variables to use.

The first thing you want to do is find either a site that already has a button in place for your sharing service, or a tool provided by your sharing service like a bookmarklet or a toolbar button. For instance, when you visit this page on Delicious, you’ll see several methods for getting links into the service. Since I’m using Safari, I’m going to drag the bookmarklet for sharing up into my toolbar.

Once you’ve got the bookmarklet in your toolbar, let’s say you want to save something to Delicious, like this post on Ma.tt with pictures from a recent shindig I happened to attend. (We’ll talk about Lisbon at another time.)

Visit something and then click on the bookmarklet provided. As I mentioned earlier, you can often get the same result by clicking on a button for the service on another site. What you see after you click the link or bookmarklet will look different for each service, but hopefully you’ll see something like this:

So we know what it looks like. Big deal, right? Check the URL, though. It’s this:

http://www.delicious.com/save?url=http%3A%2F%2Fma.tt%2F2010%2F08%2Fhappiness-team-in-lisbon%2F&title=Happiness%20Team%20in%20Lisbon%20—%20Matt%20Mullenweg&v=5&noui=1&jump=doclose

This is exactly what we needed to know in order to set up Delicious as a sharing service. Everything is right there.

Making It Happen

You can discard the “&jump=doclose” part of the URL without any trouble. It’s not necessary for what we’re doing.

So the base URL for sharing something on Delicious is:

http://delicious.com/save

It also takes a couple of arguments, as you can see. Everything after the question mark is a piece of data that’s being passed to the URL to give it the information it needs. There are two chunks here: “url” and “title.” It just so happens that we have the tools we need to fill all that in for our readers.

So since Delicious needs this:

http://delicious.com/save?url=something&title=something

All we need to do is enter this into our Sharing URL field like so:

http://delicious.com/save?url=%post_url%&title=%post_title%

Bingo. So go into Settings > Sharing, and fill in everything. The title is easy; that’s “Delicious.” You know now what to enter for the URL (you can just copy the one above). You’ll also need an image, and it just so happens that I have a perfectly good one from Delicious here.

Save your settings, drag your new service into the Active area, and then save your sharing options. When you go out to your posts, you’ll see:

Clicking on the Delicious link will open up the link addition form, just like the bookmarklet we used above.

Easy? Once you understand how to find the information you need, constructing new Sharing buttons is pretty simple. If you have any questions or comments, please feel free to leave them below.

You can also read my follow-up post, where I’m collecting the specifics needed to configure various sharing services with ShareDaddy.

Cultivated Play: Farmville (via MediaCommons)

Standard

The secret to Farmville’s popularity is neither gameplay nor aesthetics. Farmville is popular because in entangles users in a web of social obligations. When users log into Facebook, they are reminded that their neighbors have sent them gifts, posted bonuses on their walls, and helped with each others’ farms. In turn, they are obligated to return the courtesies. As the French sociologist Marcel Mauss tells us, gifts are never free: they bind the giver and receiver in a loop of reciprocity.

A great essay and a look into why so many of the people on your Facebook friends list are playing a game they will never win that intrudes upon their real life and isn’t even fun.

(via Cultivated Play: Farmville | MediaCommons.)

Notes from “Add Some Xbox to Your UX”

Standard

Presenter is Josh Knowles, a freelance designer who has worked on both game designs and other application design (http://auscillate.com).

Abstract: Tricks and techniques from the game design world can be applied to non-games — social apps, creative tools, etc. — to improve user experience, user enjoyment, and results. We’ll look at traditional UX in a new light: from the perspective of games and gamers (and zombies, aliens, and goombas).

Notes:

  • How to get people to sign up for something or participate in something?
    • Often, approaches to UX for these things tends to be a bit dry
    • The idea is to create passion in users to get them to want to participate
  • Game design is starting to work its way into other things now
    • American Idol
    • Million’s Poet
    • Toyota Prius efficiency leaves in the dashboard
    • Target checkout terminals – grades/scores
  • Game design can be a big part of interaction design, but right now it’s often a novelty and not something core to design
  • Games take a task and apply rules to give the participants enjoyment and satisfaction
    • Classic arcade games are this boiled down to essentials – basic tasks with applied rules and risk/reward structures
    • Galaxy Zoo; Solar Stormwatch – astronomical phenomena turned into a game
    • Google Image Labeler – the timed tagging and matching tags from two random strangers
    • Faux stock markets
    • (my note) Formspring.me is kind of game-ish
    • Slashdot comment moderation and granting mod points to random users to help improve comment displays to random users (and Karma)
    • StackOverflow applies this to Q/A (10 points to rate up, 100 points to rate down, 200 points to see fewer ads on site, 1k points to delete questions)
    • thesixtyone – music filtering system
    • Foursquare, Gowalla, and MyTown (duh)
  • Basic concepts
    • Points (especially public points and high scores)
      • Number of friends
      • Percentage completion of participation (Shelfari, LinkedIn)
    • Badges and Achievements (specific defined activities)
    • Unlockables (site or application features you receive as a reward for participation)
      • Individual unlockables versus global unlockables
    • Game boards
      • Visual representations of what’s available or what you can do
  • You can learn from:
    • Classic video games
    • Board games
    • Sports
  • Basic game concepts have universal appeal and people can recognize them quickly
  • Education (games are excellent teachers)
  • Invitation (give users an explicit invitation to participate – these are ways to nudge users towards certain actions)
  • Pitfalls
    • Don’t use points in a way that will distract users from what’s most important on the site
    • Don’t put a number on a bad behavior
    • Don’t oversimplify what’s important to your service
    • Don’t let people game the system – avoid anything that can be automated to success (challenging to avoid)
    • Avoid blocking people in to the point where they can’t build on top of your service or innovate new ways to use it (Twitter)
  • Reasons to do this stuff
    • Educates your users and makes them better users
    • Creates better differentiation for users
    • Users are more willing to collaborate