Another method I've heard: person 1 picks a large random number, adds their salary to it, writes down the resulting number, and passes it on to person 2. Person 2 adds their salary to the number, writes down the new sum, and passes it on to person 3. This continues until the result gets back to person 1. You end up with the large random number plus the sum of everyone's salary. Person 1 then subtracts the large random number and reports the sum of all the salaries.
This depends on people being able to do arithmetic after a few beers, though.
That reminds me of a technique for randomly selecting someone in a small group. Suppose that there are 6 people. On the count of 3 everyone has to hold out 0-5 fingers. Add the numbers mod 6, and that selects the person.
The funny thing about it is that as long as anyone picks randomly, the answer is perfectly random. But everyone can feel some sense of control.
This is better because it determines the average but not distribution. Imagine what would happen if there were five $70k salaries and one $165k salary for six people doing the same work. People would suddenly get very uncomfortable.
One technical gripe: you forgot that the arithmetic needs to be modular to guarantee anonymity. Let's just say the large random number is chosen between 0 and 9,999,999. (You need a range because there's no such thing as a "random uniform" integer.) Now let's say that Person 1's salary is 100,000 and that large random number is 9,999,935. Now Person 2 gets handed 10,099,935 and knows that Person 1 makes at least $99,936, because the "large random number" couldn't have been any higher than 9,999,999. If modular arithmetic is used, with the modulus being the upper bound on the "large random number", then nothing like this is ever given away. Person 2 gets handed 99,935... which could be 9,999,935 + 100,000, or 4,935 + 95,000, or 9,099,935 + 1,000,000, or 99,934 + 1. (Of course, the modulus needs to be big enough that there's no doubt that it's going to be larger than the sum of the salaries.)
>Imagine what would happen if there were five $70k salaries and one $165k salary for six people doing the same work. People would suddenly get very uncomfortable.
Isn't that the entire point of the first exercise however? If the 165k salary isn't completely obvious, then it should make people feel uncomfortable - they are being shafted.
If you're getting the $165k, you're not going to be very enthusiastic about this exercise.
The modular-arithmetic alternative is better, at least in terms of political stability: they figure out that there's an average of $86k. Then the people making $70k all negotiate up to $90k and, even if getting shafted, people are happier.
> If you're getting the $165k, you're not going to be very enthusiastic about this exercise.
Why not? I'd be completely fine being the odd one out, especially if it helped to encourage my lower-paid co-workers to renegotiate their salaries.
The whole point of this exercise, IMO, is to determine if there's inequity, and how much. I'd want to know the full salary range, not just the average. Companies rely on you knowing very little about your peers' salaries; more information can only help you, even if it might make you feel a little bad.
Because you have to actually work with those other people?
Of course other employees should aim angst about unfairness at management. But they won't. Not entirely. And that overflow can be enough to nudge relationships from friendly to strained/tense-professional, or not-particularly-friendly-but-professional relationships straight into unproductive-leaning-towards-toxic territory.
I was in a group of developers who had the hat method essentially performed for them [1]. Relationships changed [2]. Even after the discrepancies were largely corrected, the relationships remained strained.
[1] The short version goes: the comptroller's office was compiling stats on salary ranges for comparison to regional averages (back during the bubble, when management was paranoid about being behind the curve on pay and losing talent). Someone either needed help with a formula from, or just directly leaked the data to, a developer friend. That developer, upon seeing the wide variance, shared with the group.
And let's just say it was surprisingly trivial to map the outlying data points to names.
[2] Which is why I'd recommend the calculated average method over the hat method. It's better to see your position relative to the group, than to see the raw data that can impact interpersonal relationships.
You could get the same effect just by not defining an upper bound for the number, or if he really wants it to be secret, the first person could just not choose a number that close to the upper bound. It's not like this is something so out of the participants' control that we need to overcomplicate the math.
Umm...what? The first person just picks a number, there's no RNG involved, no need to tell anyone a range. I know we're taught to plan for edge cases, but I find this pretty silly.
edit: Nevermind the second point, I basically echoed what run4yourlives said - I think the averaging somewhat defeats the purpose. "Political stability" is the whole reason they ask not to disclose salaries in the first place.
I'd be more comfortable with a real random (at least pseudorandom) number. Humans are terrible at generating random numbers and information could be given away on account of this. For example, people tend to favor 5s and 6s when generating "random" large numbers.
This depends on people being able to do arithmetic after a few beers, though.