How do you stop 50 bad programmers?

Every programmer has it… you know how there’s that one day every couple weeks where nothing works and all your ideas are bad? It’s no more than 5% of your time. In a team of five, you don’t even have 1/4 of a programmer worth of bad ideas, so there’s no power there.

Imagine a floor of 1,000 cubicles.

Even assuming ideal circumstances, statistics would suggest you find, at any given moment, at least 50 people running around generating bad ideas, breaking everything. Fifty — that’s a small army of WTF. There’s just too many of them to fight alone. You need to organize. You need something to slow them down. You do the reasonable thing and create some checks and balances to keep the situation from getting out of control. I mean, we all have our moments.

Congratulations on your new bureaucracy. May it serve you well.

Return again, and take any 5 people from that floor. At most, you’ve got about one toddler worth of trouble. You don’t even need the five. Any one person can keep that toddler in check.

I don’t think this is really how it works, but I put it forward for consideration nonetheless. 🙂

Diversion

A little Python snippet, good for a diversion. I couldn’t fit it into a tweet though:

s=[];op=dict((o,eval('lambda a,b:b%sa'%o)) for o in '+-*/%')
while not any(s.append(op[w](s.pop(),s.pop())if w in op 
else float(w)) for w in raw_input().split()):
 print '=',s[-1]

Just a simple 4-function RPN calculator, accepting input from console:

 1
 = 1.0
 2 2 +
 = 4.0
 1 2 -
 = -1.0
 2 3 * 1 +
 = 7.0
 2 3 1 * +
 = 5.0