As more and more people are using Twitter as a means of sharing and communicating, it seems that almost every web and mobile application on the planet as a "Share this on Twitter" feature. Most of the time, this feature is welcome. Posting Foursquare mayorships, new blog posts, entertaining YouTube video, etc. But sometimes, it's a problem. Namely, when a web application doesn't include the option to not post to Twitter or makes the button hard to find or easy to miss.
Over the last 36 hours, a web application, Twifficiency, has shown up ad-nauseum in users twitter streams. Still unclear on what the service actually calculates, it seems to generate a score and auto-post it to Twitter.
Originally, the app did not prompt users for their permission to post to Twitter. Instead, a warning was issued to let users know that their score would be posted automatically. Since yesterday, Twifficiency has updated it's page to include a checkbox to ask if you want to auto-tweet your score, likely due to user backlash.
This is not the first time Twitter has had an issue like this. Check-in services Foursquare, and to a lesser extent, Gowalla, added the option to automatically tweet badge and pin awards. While you were able to turn these options off, they were turned on by default, which is the problem. Users may not even realize that they're tweeting out information that they may not want to share. Also, users are likely annoying their friends with high volume of junk tweets.
The Twitter API has a rate limit that prevents apps from tweeting over a certain amount of times per hour but, currently, there are no rules in place to prevent an app from tweeting without a user's permission. A message on Twitter's developer list calls for guidelines and the ability to report apps. In the meantime, there are steps that developers can take in their application to help stop the auto-tweeting problem.
Make new sharing settings opt-in
If you're going to add sharing options to your app, they should be off by default. If a user really wants to bombard their friends' Twitter streams with check-ins and Twifficiency scores, make them turn it on themselves. This will prevent unwanted tweets and keep your friends from wanting to hit that unfollow button.
Make your 'Share via...' checkboxes more prominent
Mobile apps are really good at this, but web apps have some room for improvement. Twitter/Facebook checkboxes should be highly visible, and hard to miss. And they should be styled so there's no doubt that you are saying it's okay or not okay to post something to Twitter or Facebook.
Even with these app improvements, it still boils down to how much the user wants to share. For the most part, this isn't an issue, but every once in a while you get the friend that wants to post every check-in, picture, and retweets every single tweet from the day. The only advice I can give is to try and be considerate about what you tweet.
Update. Twitter's Brian Sutorius commented on the API policies:
Which brings us to our Developer Principles, one of which is "Don't
surprise users." Specifically, we require developers to get users'
permission before sending Tweets or other messages on their behalf.
Allowing an application to access your account does not constitute
consent for actions to automatically be taken on your behalf.
Twifficiency violated this principle, so we suspended the app
yesterday afternoon while we worked with the developer to make sure
users were better informed about the application's actions and could
control whether or not a Tweet would be posted. With these changes
--which include a more prominent warning and a checkbox on the main
page-- the application has been re-enabled.