27

SOREP will be taken offline this month. SOREP V2 now lives on StackUsers.com

SOREP V2: Ranked and aggregated flair

SOREP V2 is a flair service that is built upon the StackUser platform that provides ranked flair, both in standard layout and themes as well as custom aggregations.

Since early this year, before the advent of the API, SOREP has been providing ranked flair for the big 4 trilogy sites. With the advent of the API and improved access to data (so long screen scraping!) the groundwork for SOREP V2 with an improved api and layout was put into motion with the Soapi.CS client library upon which the StackUser data platform is built.

See SOREP V2: Ranked Flair Take 2 for more info.

You may also be interested in the other tools available on stackusers.


Default flair layout

alt text

Small flair layout

alt text

Tiny aggregated flair layout

alt text

I see a few questions on meta.stackoverflow.com regarding user ranking. There are several existing lists but they are focused primarily on users with higher scores.

So, I wrote a small applet that, via a trickle pull, indexes all users for the trilogy and meta down to the 100 rep mark, in order of appearance.

The 100 rep cutoff seems reasonable. On StackOverflow, the vast majority of users are < 100 and pulling that data seems over the top frivolous.

You may access this data in several ways

INTERACTIVE:

http://skysanders.net/tools/sorep/default.aspx (detailed usage information here)

AUTOGET: (for you Benjol)

http://skysanders.net/tools/sorep/default.aspx?site=stackoverflow.com&userId=1

JSON:

http://skysanders.net/tools/sorep/SEStats.ashx?site=stackoverflow.com&userId=1

JSONP:

http://skysanders.net/tools/sorep/SEStats.ashx?site=stackoverflow.com&userId=1&callback=foo

Flair

An example of using ranking in Flair is available on the interactive page.

16
  • 1
    Must...catch...up...NickCraver...willbeatyousomeday! shakes fist ..... incoherent mumbling
    – Aarobot
    Mar 25, 2010 at 4:14
  • Damn ... It's true ... I do need to know. Mar 25, 2010 at 4:52
  • vote to close as 'should-be-on-ego-overflow'
    – Antony
    Mar 25, 2010 at 5:04
  • +1. Guilty as charged :)
    – Benjol
    Mar 25, 2010 at 5:44
  • 2
    Any chance of allowing the userid as 'Get'? Thhat way I can bookmark my rank directly :)
    – Benjol
    Mar 25, 2010 at 5:50
  • @Benjol - yeah, this is the prototype. am refactoring to enable all stackexchange sites and you will be able to pull your rank via REST. Thinking of a Flair addin. Mar 25, 2010 at 16:46
  • @Sky - You dah man. Just one thing, do you think that the x in Rank: n of x should be also based on your 100-rep cut-off?
    – Benjol
    Mar 26, 2010 at 7:37
  • @Benjol - yes, although I am only indexing > 100, the total counts all users. Mar 26, 2010 at 8:15
  • In your calculations, maybe you can remove users with rep 1. This will give you a more accurate ranking.
    – jjnguy
    Mar 26, 2010 at 17:36
  • Why does the interactive page resets your id when you change the site combo?
    – juan
    Mar 26, 2010 at 18:23
  • @Downvoter - because your ID is different for each site. You will notice that after a successful result for a particular site, the id for that site will be persisted via cookie. e.g. select mso, enter id, get results, select so - id box cleared, select mso - mso id present. viola. unfortunately the cookie is only session based right now. When I open the project back up, I will persist the cookie. IOW- this is a feature, not a bug. Mar 26, 2010 at 18:29
  • @sky, I had never noticed that... my SO and META ids are the same, so I assumed that was the case for every site
    – juan
    Mar 26, 2010 at 18:31
  • 1
    @Justin - I don't really do any calculations, except for the flair example. I just index users in order of appearance on the users tab of each site. The rank is your ordinal position in that list. For the flair, it might widen the aperture a bit if only > 100 are used for calculating the percentile. I will take a look at it. Those that agree that a percentile calculation should only include > 100 can upvote this comment or leave feedback on the interactive page. Mar 26, 2010 at 18:46
  • The vast majority of the people who will care about this are all Top 1% (which is not exactly hard to get), so this is pretty much meaningless. Sep 18, 2010 at 17:07
  • @null - thanks for your kind evaluation of my offering. the comment alert reminds me to update this post to the new version. Sep 20, 2010 at 13:38

9 Answers 9

5

Stack Overflow users are programmers, so they should all know better than to make a linear search through the users pages. With a modest extrapolation to bracket your position by score and a binary search you can nail it down in O(logN) time...

8
  • 4
    You'd be surprised how habitually programmers lean on linear search.
    – Jimmy
    Mar 25, 2010 at 4:06
  • true. but I think it might not be an uncommon scenario. Mar 25, 2010 at 4:07
  • 2
    I've no sympathy whatsoever for programmers who use a linear search in this context. Their suffering can be as a lesson unto them... Mar 25, 2010 at 4:38
  • 2
    To perform binary search you need a random access iterator. The Users page has buttons "1" "2" "3" "4" "5" "4307" "next". If you know how to open page 2153 in O(1) time please tell me. Mar 25, 2010 at 11:30
  • 5
    @Tadeusz Kopec: stackoverflow.com/users?page=2153
    – mmyers
    Mar 25, 2010 at 15:24
  • @mmyers Thanks. But admit it's not too convenient. Mar 25, 2010 at 15:29
  • @Tadeusz: Why? It beats having to hunt down the right number in a little list on the page. Left hand on keyboard, right hand on mouse, works pretty well. (But it's true that it isn't that noticeable if you haven't seen it before.)
    – mmyers
    Mar 25, 2010 at 15:31
  • 5
    Premature optimization is the root - oooOOOOoooh! Shiny algorithm!
    – Pollyanna
    Mar 26, 2010 at 17:36
2

Very nice.... now for a bit of feature creep; show how many ranks you could climb if you a) got an answer upvoted, b) got an answer upvoted & accepted, c) hit the repcap for the day

That could provide a bit more motivation for some, especially lower on the rep ranking the separation between ranks is just a couple of points, and some are shared by users with the same number of points.

3
  • 5
    umm... sorry, I put on scopecreep block this morning - SCF 75 to be exact. ;-) thanks for the feedback. Mar 25, 2010 at 15:30
  • awwwwwwwwwwwwwwwww.............. :)
    – retracile
    Mar 26, 2010 at 1:17
  • and.... i don't really want to be doing any crazy analytics. Just provide an api for pulling current user stats. see the new api posted. Mar 26, 2010 at 4:37
2

Ok, the asp.net cache based autoupdate strategy I had implemented failed miserably, as did the ability of the update to run from my host for some reason so I switched to a task running locally.

The data is now reliably updated daily if anyone cares.

1
  • Nice work!-----
    – Pekka
    May 5, 2010 at 14:04
1

Already exists? Easy Way to find out what your user rank is?

1
  • Can now say 'nope.' ;-) Mar 26, 2010 at 5:43
1

I was going to say that this had already been done... but then I realized that there's no ranking in those stats! For shame!

As to how often one does the 35*page + position calculation, I have to say I'm guilty. I have a bookmark in my toolbar (actually under the SO folder, which is in the toolbar) to my current page on SO, as well as the stats page for my main tag (as you can see I'm in a race to claim the 7th gold perl badge).* I look at both of these a few times a week.

*I also used to have a bookmark to my meta user's page, but now that I'm on page 1 I can just click "Users" at the top of any page.

3
  • That one only shows the > 10k users though, I like Sky's one better... although I only have 115 StackOverflow rep, so both aren't very useful to me Mar 25, 2010 at 3:55
  • @Ether - is there a public path to the tag pages, such as the one you linked to? I don't seem to see an obvious path... Mar 25, 2010 at 4:29
  • 1
    @Sky: Stats tab on any tag's page. i44.tinypic.com/30tovps.jpg
    – Gnome
    Mar 25, 2010 at 5:36
0

If you're on the front page it's easy :)

Also, where's the ServerFault/SuperUser/Meta version? ;)

6
  • 3
    If you're Jon Skeet .. it is even easier. Mar 25, 2010 at 3:49
  • Aint that the truth Mar 25, 2010 at 3:51
  • I am going to give this a few days to settle and see how it is received. Mar 25, 2010 at 4:03
  • You'd be surprised. It isn't easy being Jon Skeet. Mar 25, 2010 at 6:10
  • Does anybody care about their ranking on Meta?
    – APC
    Mar 25, 2010 at 15:14
  • @Sky, my SO id is 69683 Mar 26, 2010 at 5:49
0

I'm guessing that it doesn't include the association bonus in the count towards "100 points"? I officially have 121 points on ServerFault, but you haven't generated a rank for my account on it.

1
  • @Sky Sanders: Literally a minute later it appeared. Odd.
    – Margaret
    Mar 26, 2010 at 5:52
0

Here is another way to access the data:

Get your flair with a ranking...

<!-- Requirements - jQuery and an SO style sheet -->
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js" type="text/javascript"></script>
<link rel="stylesheet" href="http://sstatic.net/so/flair-Default.StackOverflow.css" />


<!-- 

script tag to include on your site 

key: so  - stackoverflow, sf  - serverfault, su  - superuser, mso - meta stackoverflow
userid: the numeric portion of your profile url
-->
<script src="http://skysanders.net/tools/sorep/YourFlair.aspx?key=so&userid=242897" type="text/javascript"></script>

<!-- container into which script will render -->
<div id="flair">
</div>
-1

Minor bug with the "Interactive" version:

Enter an incorrect user number, and the "User does not exist" message comes up. If you then enter a valid user number, the previous message stays there.

Screencap http://img40.imageshack.us/img40/6191/userdoesnotexist.png

(Yes, I know, no hand-drawn circles. How dare I?)

1
  • 1
    Yes, I noticed that too. a problem with the prefix selector or the way I was using it. should not happen again. You can send bugs to the feedback link at the bottom of the page to keep this 'question' from devolving into a bug report. ;-) p.s. THANK YOU. your suggestions and feedback are welcomed. Mar 26, 2010 at 6:16

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .