How do you get around the annoying pin spacing on the Arduino?
Where pin 7 and pin 8 are not standard spacing.
Why is it set up like this?
I got to meet Massimo at Flourish Conf in Chicago this year... and I actually asked him this same question. What is up with the odd pin spacing?! This had been a subject of debate among friends, with the general agreement being that it help you from putting shields on backwards.
Turns out, the actual reason for the odd pin spacing was an error in the original CAD/gerber file. So yea, the odd pin spacing was completely unintentional. Massimo also mentioned that there was a proposal to remove the odd pin spacing starting with the Duemilanove, Mega and future models (a so called "restart"), but was voted down in favor of reverse compatibility with old shields, etc.
Hope this helps with the odd pin spacing question.
I actually noticed a side benefit to it. I made my own Arduino compatible with standard spacing everywhere and promptly put the shield on backwards. That odd spacing means that you cannot physically put the shield in backwards (never mind that you have the wrong number of pins on both sides).
That said, I'm not redoing my board to prevent doing that. I'm just going to be more careful :)
I found a couple of interesting points on the adafruit forum on this when i started looking into it.
On this one the guy soldered another header on to the arduino as an 'outrigger' - so that the new header lines up.
And this one.... the guy has created his own bent header which slots in so that you can make your own shield.