AVR ISP programming via Arduino

It's because there are STANDARDS. In the case of AVR, there are two major standards for ISP programming interfaces.

The Arduino shield emulates the STK500 standard ISP programming header. It looks like ist supports 6 and 10 pin cables. The Second board in the path of the ISP cable is sort of similar of the Sparkfun AVR ISP programmer break out board. The Spakfun device converts the 10-PIN STK200 and the 6-PIN STK500 connectors to Single inline pins fro insertion into a solder-less breadboard.

It all makes sense when you know some history of AVR programmers.

Pete