Coderific

rss feed

blog - in defense of anonymity

posted by witten on March 08, 2007

Fairly regularly I receive emails from employers upset with their ratings on Coderific. And inevitably these employers express a rather marked distaste for the ratings being posted anonymously. Some employers even go so far as to suggest that I banish anonymous ratings altogether by requiring email validation, confirming that rating authors work for the companies they're rating.

There are a number of issues at stake here, so allow me address each one individually. Firstly, there's the question of whether rating authors should be restricted to current employees of the employer being rated. By requiring email validation matching the employer being rated, all former employees would be barred from posting ratings.

This is a horrible idea, and here's why. When you're actively developing software for an employer, you have a very limited perspective about that employer. The heady days of successful product releases are too new, and the wounds you have from mismanaged projects are too fresh. It's only some time after a job ends that you can even somewhat objectively begin to analyze what went well and what didn't.

Think about being in a relationship. And imagine for a moment there's a Relationshiperific site. You could rate a person you're dating or had dated, and so could everyone else. Now imagine that you had just gotten in a big fight or had a wonderful, romantic evening, or perhaps both. You could go on this hypothetical Relationshiperific and write a passionate review of your boyfriend, girlfriend, or spouse. If you had a big fight, then it might be a vitriolic, rage-filled post. If you had just gotten home from a romantic date, then it might instead take the form of a flowery love poem, glossing over any personality faults.

Fast-forward a few years. You're no longer dating that person. You go back and read your rage-induced review or your embarrassingly emotion-filled poem. You'd laugh at your former self for not seeing the big picture, for not seeing both the good and the bad. With your increased perspective, you would be able to write a much more thorough, well-reasoned rating.

Employer ratings are not all that different from relationship ratings. You, as a software developer, have a relationship with your employer. That relationship might be friendly, trusting, distant, or even abusive. And only after the relationship ends do you have sufficient perspective to make rational judgments on the matter.

Now this isn't to say that ratings by current employees are not valuable. These ratings tend to be more passionate, emotional, and in-the-moment. Much like that love letter, a rating by a current employee captures their feelings at a snapshot in time. Their opinion of that employer might very well change over the years, especially as they move on to other employers that they can hold up for comparison.

It's also important to point out that although leaving a job doesn't immediately heal all employer-inflicted wounds, and some ex-employees might maintain a certain level of bitterness for some time, that bitterness becomes more tempered with time. Even bitter ex-employees will only write bile-filled employer ratings for so long after their employment ends.

So abolishing anonymity and only allowing ratings by current employees is pretty clearly a bad idea. But what about ratings written by people who didn't even work at the employer being rated, or didn't write software there? Wouldn't some sort of validation scheme prevent these fake ratings?

Okay, time for another thought experiment. Let's say we established some sort of magical mechanism for ensuring that every person who writes an employer rating on Coderific is a current or former employee of that employer, and actually wrote code there. (Let's put aside for the moment the minor fact that this sort of validation would be slow, cumbersome, and well out of the range of Coderific's budget. Some employers also won't tell random, unidentified callers anything about your job description.)

So suppose you're considering writing an employer rating on the alternate reality version of Coderific, and you find out that we require identity validation, a resume, and calls placed to your former place of employment. How many milliseconds would it take for you to close the browser window in disgust? Would you seriously consider jumping through those hoops just to review your former employer? Perhaps more importantly, would you feel comfortable giving all of this private information to some random web site? Would you trust your employer not to retaliate when they realize that they confirmed your dates of employment around the same time that an "anonymous" rating of them appeared on Coderific?

Think of the chilling effect that banning anonymity would have on ratings being posted. You think Coderific has only a few ratings now? Imagine Coderific without any ratings containing anything even slightly critical of any employers. Now, of the handful of glowingly positive ratings that remain, cut out all those written by busy developers who don't like jumping through invasive validation hoops. The three ratings that remained on the entire site would be highly validated, assiduously fact-checked, and thoroughly useless.

I have a lot of fun watching Coderific web server logs as people access the site. (Don't worry, these logs are rotated away into oblivion fairly quickly.) By looking at the site URLs that a particular IP address accesses, I can get a rough idea of how a particular user is browsing the site.

One common navigation pattern is a user clicking on "browse employers", and then clicking through all the individual letters of the alphabet. Man, people really like their alphabet. I often see logs like:

GET /employers/browse_letter/a
GET /employers/browse_letter/b
GET /employers/browse_letter/c

... And so on, all the way to z. Some people even like browsing backwards, from z to a. Maybe they're practicing for the next time they're pulled over for a suspected DUI.

Anyway, occasionally someone clicks a link that requires an account, and so redirects to the login page. That shows up in the log like so:

GET /employers/new
GET /users/login_page

Quite often that's enough to make a prospective rating author leave the site. No more hits show up in the logs from that IP. I can just imagine the thought process, "What, I need an account to write a rating? Lame."

Sometimes the user is brave enough to click the user creation link from the login page, and I see this:

GET /users/signup

But then the prospect of having to come up with a username, a password, and optionally enter an email address is simply too much. Goodbye, Coderific! No more log entries from that IP. It's the rare user that makes it past the login page, through the signup page, and finally gets up the courage to type in an employer rating.

What I'm getting at here is that every additional impediment that you throw up in front of prospective rating authors dramatically reduces the number of people who will actually perform all the hoop jumping and write a rating. Require a username? Cut out, say, 50% of potential posters. Require a password? There goes another 25%. What, I need to submit my resume? There goes everyone but one guy in Idaho. And the only reason he puts up with it is because he thinks Coderific is a job site.

With any sort of site containing primarily user-provided content, you've got to strike a careful balance between putting restrictions on your users and ensuring quality content. If you clamp down on your users too much, you won't have much content. If you don't have any controls in place (such as a flagging system), your content will consist of posts like "HAHA NOOB U R SO LAME." I'm simply claiming that the right balance for Coderific is struck when anonymity is allowed.

Much of this post has dealt with the cost of removing anonymity from employer ratings. But an equally interesting topic is the cost of keeping anonymity. When anonymous ratings are allowed, we do run the risk of people engaging in the internet equivalent of hiding behind a mask and shouting insults. However, we're not powerless to sit idly by when this does happen. Through the magic of flagging, the Coderific community has the ability to delete those ratings that violate the Terms of Service, such as ratings full of insults.

Anonymity also allows people to post the aforementioned fake ratings, written by non-developers or even people who have never worked for the subject of the rating. Fortunately, anyone has the ability to post responses to ratings or even write their own ratings. The hope is that any false ratings will be answered by posts pointing out the falsehoods and that they will be drowned out in the sea of legitimate ratings. Sure, any reader will have to do a bit more work to decide which ratings to believe for themselves. But this is as it should be. You don't read product ratings on Amazon or Froogle without evaluating their opinions and objectiveness, and you shouldn't do so on Coderific either.

1 comment

Write a comment!
  • Re: in defense of anonymity posted on March 09, 2007 02:25 PM

    I thank you for the website, and I agree with you. While begin anonymous can cause problems I don't see anyone treated unfairly because they have a chance to respond.

    I am a computer programmer for about 10 years now, and I've seen extreme management practices first hand. Recently, I've commented upon reviews that I thought were questionable but for a company I myself haven't worked for. There were 2 reviews were completely negative followed by 3 or 4 highly flowerly reviews and then a review that was another flowerly review with an attack on the first 2 negative reviewers.

    I questioned why it seemed that in the opinion of the reviewer the problem was 100% non-management staff, while I got replies the bad thing about anonymity was becoming clear, nobody who nobody else was.

    I like this site greatly, because it tries not to be a gripe about workplace site but warn others about what they may encounter from specific companies site. I think those trying to get you to stop may have quite a deal to hide but that's just my opinion and I cannot claim to be non-partisan I'm on the programmer side of the argument.

    reply | quote