Has anyone experienced this phenomenon? You'll have this problem...maybe in coding...maybe in life, you won't know what to do about it, maybe it's puzzling you for several days, and then one day you're in the John, and BAM! it hits you, and you just know that you have it. You run out (but don't forget to wash your hands first), and test the hypothesis, and sure enough, you are right.

Let me give you some examples...

In assembly language I had an extra credit portion of a project (this was several years ago, so I'm hazy on the details. Bear with me). We were coding a poker game, and each card had to be stored in 8 bits. It was all about bit-shifting, etc. Anyway I forget what the extra credit was (exactly), but I remember that the problem was there was this extra piece of data that needed to be stored (to be used later) but there was no more room in the 8 bits, and storing it some other place seemed problematic and also a lame hack. In the John at work I realized that there was a way to solve the problem--you don't bother to save the data! For various reasons, the data wasn't really needed, although on the surface it appeared that way.

Another case was a chess puzzle that was a mate in 3 problem, but was incredibly hard. It was posted at the local chess club, and nobody was able to solve it. I realized like 2 weeks after I first saw it that there must exist some Knight move, that was not a check, but would force the opposing king onto a light square, and then the mate would be trivial. It turned out to be right. It also turned out....you guessed it, I was in the John.

Now, fast-forward to today. I just had another revelation. This one is about how to make the reputation work better on CBoard. I was just reading the post referencing the quote, "Compilers don't support programmers with 4 red squares." Then I go to the John, and BAM! I get this idea.

We should assign negative reputation differently depending on the reputation of the poster that is trying to assign a red square. Here is my proposal:
1) If the person giving negative reputation has a Gray square, they are really only assigning 1/5 of a red square, and they are only able to contribute 1/5 towards 'red squaring' somebody. So you need 5 distinct gray square people to label you a 'red squarer'.
2) If the person giving negative reputation has a green square, they are assigning 1/2 of a red square, but can contribute as many red squares as they feel necessary.
3) If someone is 'in the red', and they try to add negative reputation to a gray or single green, it is simply ignored (because everyone knows that this guy is an idiot anyway), but the person he tried to 'red square' is notified, and possibly encouraged to give the person another bad mark.
4) If someone 'in the red' is dumb enough to try to add negative reputation to someone with more than 1 green, I say that the person 'in the red' is immediately given two more red squares, and is sent a message to the effect of, 'Hey Bozo, who do you think you are?! Everyone know that 'Darkness' would never do anything to deserve a red mark (and especially not from you)! Why don't you go stand in a corner, think about what you've done, and come back to talk to us when you can act like an adult."

Okay...okay...maybe some of the details above wouldn't exactly fly, but in it was just sort of a funny thing that occured to me in the John just now, and I thought I would share it.

And regardless of what you think of the last idea, I stand by my assertion that great insights may be gained while taking a leak. Has anyone else observed the same phenomenon?