October 24, 2014

Top VMware Blogs 2014: How I Voted

top-vblog-2014-2-crop-300x180

Once again, it’s time for vSphere-Land.com’s “Top vBlog” voting. And once again Feedbin and Twitter are full of hundreds of bloggers lamely begging for me to vote for them. And once again, I didn’t base my votes on their begs or my own hunches. Follow along as I explain how I actually voted and why I think you should use the same mechanism. And no, I’m not going to say who I voted for!

I’ve Been Voting All Year

I think most people vote based on gut reaction or knee-jerk response: “I recognize that blog so I’ll vote for it.” That’s the only explanation I can see for this blog being in the top 20, frankly. But that’s not how I vote.

See, I’ve been voting all year, in a  way I think is particularly apt. I have a “social media sharing machine” set up, where I read tons of content and share what I like best. My sharing mechanism is pretty straightforward:

  1. I read blogs through Feedbin, using their web interface or Reeder for iOS
  2. When I see something I like, I “star” it in Feedbin, creating an rss feed of the best stuff I found (yeah, that’s my Feedbin RSS feed and I welcome your subscription!)
  3. IFTTT converts this Feedbin Star Feed into a set of links in my Delicious account
  4. This is then shared on Twitter, Google+ (I’ll explain this later), and LinkedIn also using IFTTT

So I have a fantastic library of links I liked sitting there in Delicious, just waiting to be shared and mined.

Converting Stars to Votes

It’s fairly straightforward to tally these “stars” by site to generate my votes. Here’s how I do it using a Google Spreadsheet:

  1. I use the mobile delicious URL since it’s plain and easy to parse:
    https://m.delicious.com/sfoskett
  2. Next, I use ImportXML to pull in pages of 20 links at a time:
    =importxml(Delicious&"?&page=1","//div[@class='body']")
  3. I only pull in 800 links this way, since Google Spreadsheets is limited to 50 ImportXML actions in a spreadsheet. But that’s pretty good, taking me back about 9 months.
  4. On that same sheet, I use RegExExtract to pull out just the domain name of each share:
    =regexextract(B2,"https?://(.+?)/")
  5. On another sheet, I use the Unique function to grab a list of unique domain names:
    =unique('Delicious Data'!E:E)
  6. Then I paste this as values only so I can sort on the count I generate:
    =countif('Delicious Data'!E:E,A2)

Tada! Now I have a list of my most-shared domain names. I then match these up with the sites available for voting in the vSphere-Land poll.

There is one glaring weakness with this approach: The result is a combination of quantity and quality, since a blog only gets a share if I like it and if there is new content. Someone could have one fantastic post and it would only get one vote, while another might have lots of mediocre but still good enough posts and get lots of votes. I’ll take this risk.

Now that you’ve read this, go vote on your own top picks!

Stephen’s Stance

It would be a shame for people to vote based on a hunch or guess when they could do it much more scientifically. I’ve been “voting” on these blogs all year, and my votes are based on the quality of their content over time, as judged by yours truly.