Triumph of the Fail Whale

Fail Whale by Matthias TΓΆpfer (CC-BY-NC)

Early social networks had status fields; little boxes where you posted a short status line about your current emotional state (“I’m bored”) and maybe an emoticon. As social networks proliferated, Twitter came along, based on the useful idea that you could enter your status one time and have it automatically sync to anywhere else you wanted. I adopted Twitter relatively early on and it was a great time saver.

It was also easy to generate tweets from programs. When I published a new blog post, like this one, WordPress generated a tweet; the tweet then appeared as my status on Facebook, Google Plus, LinkedIn, on my personal websites (even on Myspace back in the day). Flickr and other sites could generate tweets to reflect current activity and I often wrote programs for websites I developed that generated tweets. For example, I wrote a bot for Camera-Wiki.org that tabulated the number wiki edits each week and posted it as a tweet. Twitter was the universal plumbing of the social media universe.

Gradually, Twitter has stopped talking to most sites. One of the earliest ones I remember this happening with was LinkedIn. One day my tweets stopped appearing on my LinkedIn profile status. LinkedIn claimed Twitter had changed their policy and no longer allowed LinkedIn to display tweets. Twitter claimed LinkedIn changed their policy. Sometime later, Google Plus started blocking Twitter. Then Twitter dropped their RSS feeds and created a new system that allowed them to block usage on personal websites unless you gave them your mobile phone number for tracking and demographics purposes. The final straw for me is that Facebook, while still allowing me to sync my Facebook status from Twitter, considers tweets as second class posts. If I post a status update via Twitter maybe 1% of my Facebook followers will ever see it. If post directly or from other, non-Twitter services such as Instagram, a much larger percentage of my followers see it.

For me, the sole purpose of Twitter is syncing my status with other social networks, so Twitter is now next to useless. I recently turned off my Facebook to Twitter sync. I think it’s not just me. Twitter seems to be largely a wasteland of lost status postings these days; an endless stream of status messages flying into a vacuum with no humans left to read them. I’ll probably keep posting there out of habit for a while longer but I think Twitter’s 15 minutes of fame are winding down.

Facebook Twitter Woes

For the last couple of years, I’ve been using the Facebook App called Twitter. It’s written and maintained by Twitter and its purpose is sync your Facebook status to your twitter feed. There’s a similar app for Myspace and other social networking sites. That means I post my status once to Twitter and it almost instantly updates my status on Facebook, Myspace, LinkedIn, and a dozen other sites, saving me a lot of time.

Sometime around May 11, the Facebook Twitter app stopped working. Or, at least, it stopped updating the Facebook status field. Instead all it does now is post your tweets to your wall. To most users, it appeared the Twitter app had simply stopped working since it was no longer performing its main function. This generated a lot of discussion in the Facebook Twitter App forum as more and more users reported the breakage:

By May 13 there was still no official response from Twitter on what was going on, so user tim.neumark filed a bug in the Twitter API database.

The next day Twitter API developer tokofu claimed Facebook had asked Twitter to make the change:

“We made a change to use a newer Facebook API to add content to the stream that no longer updates status. We think it provides a better experience based on what Facebook is asking developers to do.”

“You can always manage the settings Twitter has with Facebook through your Edit Applications tab.”

What’s meant by that last sentence is unclear as there is nothing in the indicated dialog that changes the behavior of the app in any way with regard to updating status.

Tokofu’s post was the nearest thing so far to an official statement on the breakage. This was followed by several days of people posting comments on the bug report noting that “better experience” is not how they’d describe a bug that breaks the app’s ability to perform its primary function. The flurry of comments prompted Twitter to close the bug report as “invalid” and users were asked to stop commenting.

Shortly afterwards on May 18, a new issue appeared on Twitter’s help pages in the “Known Issues” category: Twitter updates my Facebook wall but not my status

There was new spin on the story now. Instead of claiming it was an intentional change requested by Facebook to give the users a “better experience”, they seem to claim it was the unexpected result of moving to a new Facebook API (didn’t it occur to anyone to test it?!) They further claim Twitter is now “working with Facebook to see if there’s a way to push updates with the new API in a manner that updates both your wall and your status”. The issue has accumulated over 60 comments from users asking for the problem to be fixed, or for Twitter to revert to the older, working Twitter App until a fix is found for the new one.

After three weeks, neither Facebook nor Twitter appear to have made any progress on fixing the problem and most users of the Twitter app still have an empty status field. Oddly, third party Twitter apps such as Smart Twitter continue to work normally, so many users of the official Twitter app have switched.

Posts on the Facebook Twitter app discussion forum suggest that the move was an intentional effort by Facebook to cripple the Twitter app because Facebook viewed it as cutting down on the number of potential page hits for Facebook. By blocking remote status updates, Facebook could force users to log in and update their status manually, garnering more advertising views. It’s unclear (to me at least) whether there’s anything to this rumor or whether it’s pure speculation on the part of frustrated Twitter users. If it’s accurate, then I would expect Facebook to deprecate the old API that allows apps to update user status, disabling all the third party Twitter-to-Facebook apps as well. That hasn’t happened yet.

Given Facebook’s history of bad decisions and gaffes lately, I’m ready to believe anything.

Rebooting my blog

I’m bringing in the new year at home, sleeping off a bad cold. Really, it’s a 2009 cold and with it will go the last remnants of that year and the last decade. It’s 2010 and time for some major changes around here. I’ve been compiling a lengthy list of New Year’s resolutions, life goals, and To Do lists. I won’t bore you with them but, if you’re reading this, one resolution is well on the way to being met.

My blog was neglected for the last half of 2009. I haven’t been totally offline. I’ve continued posting regularly to my photo blog and twitter (which feeds my Facebook, Myspace, and LinkedIn accounts) as well as making daily posts to robots.net. But my personal website has fallen into disrepair. It’s time to reboot things. First off, you may notice I’ve moved my blog to its own domain, steevithak.com, from its old home on my business website.

Over the last few years, I’ve consolidated my online presence from lots of different user names to just one: steevithak. It’s hard to spell, nobody knows how to pronounce it, but it’s uniquely me and gives me a user name that’s always available. Don’t worry, only machines refer to me as steevithak. If you’re human, keep on calling me Steve in person.

Back to my blog; I started blogging 1999 before it was commonly called blogging. I wrote my own set of PERL scripts to manage the process. So in rebooting my blog, I was faced with a 10 year blog archive in a one-of-a-kind format. The earliest blogs lacked titles and none of them were tagged with keywords, so I decided to manually convert them one at a time, adding the missing elements. Over a period of time, I reconstructed my entire blog archive using Pivot.

As the end of 2009 neared, Pivot 2.x was released, so I converted everything to that format. In December of 2009, I made a last minute decision to switch again to Word Press, which offered several features Pivot lacked. Pivot 2.x also proved to be mind-bogglingly slow, perhaps because it couldn’t deal with a 10 year archive stored in a flat file database! The conversion from Pivot to Word Press initially looked difficult but I found a script that was able to move the entries and titles. I modified it to also preserve the keywords I’d spent so much time adding.

So the new website integrates my blog, my photostream, and my twitter feed in one location. The blog will continue to be syndicated to my robots.net and Advogato.org profiles, manually for the moment but I think a Word Press plugin supporting the mod_virgule XML-RPC protocol may be forthcoming.

Now all I have to do is make life in 2010 interesting enough to blog about! I’m not worried. Something tells me we’re in for a good year.

June is gone already!?

Yes, June is over already and it feels like I haven’t gotten anything done. Work has been taking up most of my time. Since I last posted I’ve been to A-Kon 2009. I shot few A-Kon cosplay photos plus a few time exposures of the A-Kon Friday night rave. I also shot a few photos at Jerry Chevalier’s 2009 Texas Build Off, a cool event where movie robot replica builders from all over the world gather to show off their robots and, more importantly, share building techniques and help each work on robots.

I’ve never managed to blog much more than a couple of times a month, so if anyone reading this actually cares what I’m up to, you might want to follow me on twitter or check my canonical home page where you can see the relatively frequent photo stream updates from my crappy mobile phone camera. By the way, if you’re looking for other robot builders to follow on twitter, check out Wired’s list of 52 Robot Geeks on Twitter.

Speaking of twitter, I really need to find a good way to get that integrated into mod_virgule. And speaking of mod_virgule, I once again completely failed to find time to work on it. But I’ve exchanged some email with another programmer who might be brave enough to start doing some hacking on the code, so maybe that will get me motivated in July!

May Miscellany

Time for a quick update. May started off with the VEX Robotics World Championship here in Dallas. I was one of the judges evaluating the 270 teams and their robots. I’ll probably write a little more about it in an upcoming issue of Robot Magazine for those who are interested.

I created a robots.net twitter feed and robots.net facebook page for robots.net this month. So far the facebook page is ahead with over 160 fans while the twitter feed only has about 38 followers so far. To be fair the facebook page went online a couple of weeks earlier so we’ll see if it hangs on to the lead over time.

I’m still struggling to find time to devote to mod_virgule but squeezed in a few more hours of C coding on the new HTML parser. It’s now running on a test server with a subset of Advogato’s database. So far, so good. Blog aggregation and parsing seems to be working, as do local blog posting, article posting, and article comments. The magnitude of the changes makes this update a bit of scarier than usual for robots.net and Advogato. If nothing breaks in the next week or so of testing, though, I’ll cross my fingers and make it live.

I continue to drag my Canon 40D around with me everywhere and since my last blog post, I’ve shot photos of the Funky Finds Spring Fling craft show in Ft. Worth, the Aveda Walk for Water event in Dallas, the aforementioned VEX Robotics World Championship, the Cottonwood Arts Festival in Richardson, the 2009 DFW Dragon Boat Festival in Las Colinas, oh, and a few pics of my friends at Vivanti Group in Deep Ellum. In the retro-photo department, I posted some BW 127 photos shot with a Kodak Brownie Reflex Synchro. Yesterday, a package arrived containing that rarest of things, color 127 film, from a small manufacturer in Canada. I’ll probably run a roll through the Bencini Comet S sometime soon.

Advogato and Syndicated Blogs

Over on Advogato, cdfrey asked whether syndicated blogs were good or bad for the recentlog. He asked whether the authors who allow their blogs to be syndicated into Advogato’s recentlog stream actually stop by to read the recentlog anymore. I’m sure some of them don’t but I’m equally sure some of them do. In any case, I can verify at least one person who syndicates to Advogato reads the recent log – me! :)

ta0kira followed up with some further comments on the topic including the question of whether other sites interleave syndicated posts with content that originates locally. There are a few such as Facebook (see below) but Advogato has always done things that were a little, ummm, experimental in nature. He has a good point that it would be nice to be able to select whether or not to see the syndicated posts. It has also be suggested in the past that an ideal solution is to give each user the ability to create their own personalize recentlog view.

One aspect to consider is that there are several ways of syndicating your blog to Advogato that may go unnoticed. Posts syndicated by RSS or ATOM are explicitly marked as such in the recentlog but syndication by XML-RPC or the older HTTP POST method go unnoted. My blog posts, for example, originate on my personal blog and are then syndicated to Advogato and robots.net using the HTTP POST method; and to Facebook by RSS. Facebook’s blog syndication services are horrendously bad incidentally, turning each blog post into a nondescript thing called a “note” with no clear indication of what it is or why it exists.

Another recentlog issue that’s been mentioned several times lately is that some people are piping their twitter feeds into the recentlog via RSS. I agree this can be annoying but rather than block twitter feeds, I’d like to see them rerouted into a user status field, much like Facebook or Myspace. For example, I use twitter and my tweets update my user status field on Facebook. Maybe it’s time to add a user status field to mod_virgule sites like Advogato?