Is a Follower

Sep 2013 update -
Dribbble has now added native support for this. Took them long enough, duh :)
___________________________________________

A a piece of Javascript that adds the "is a follower" status to the Dribbble user's profile and shot pages.

Homepage: http://swapped.cc/iip

---- (original comment) ----

I'd like to announce a pet project of mine - a piece of Javascript that adds the "is a follower" indicator to the user's profile. Various indicator states are as attached.

--

Firefox users with Greasemonkey - isFollower.user.js

Chrome extension - isFollower.crx

Everyone else - proceed to this page for the bookmarklet.

Checked to work in recent Firefox and Mobile Safari. It should work in all modern browsers that support localStorage. Pretty much guaranteed not to work in IE :)

--

It works by pulling off your Followers list via Dribbble API and comparing user's ID from the currently viewed profile page against this list. The code does decent job at trying to stay really fast. For one, it caches the list locally. For two, it updates the list only if the number of your followers changes or if it were a week since the last update (in case if some people followed and the same number of people un-followed). For three, when it updates the list, it does so incrementally, stopping once it picks up all the changes.

That being said, on the first run it needs to download the entire list. The API allows querying the list in 30 follower increments, and it imposes a cap of 60 requests/min. The code therefore implements request throttling - sending first 30 requests back to back, next 30 - 500 ms apart and spacing out the rest in 1 second intervals. Dumbed down, this means that if you have a lot of followers (in thousands), your first update may take few seconds (minutes). Consider it a social wealth tax :) Be patient, there is always a dynamically updated progress indicator in a tooltip to entertain you.

--

The code is on Github. The copyright is mine, but otherwise feel free to do what you want with it.... debug it on IE, for example (because I am not doing that for sure).

--

Lastly, a Chrome extension would be nice to have, but I don't have time for it. The code is well structured and it should be easy to wrap into an extension. The bookmarklet and the GM script are 99% the same, differing only in few lines at the top.

Posted on Feb 21, 2012

More by Alexander Pankratov

View profile