Why does the SPI library not work on an Attiny?...

Why does the SPI library not work on an Attiny?.. I found some code on gethub to get around this but... Can anyone point me to a good reference (guide, reference book, etc) for programming that might answer these strange truths that I am oblivious to. My background is Mechanical Engineering and Arduino. thanks!

this picture is from randofo's helpful arduino ISP attiny programming instructable.

Picture of Why does the SPI library not work on an Attiny?...
SPI in most ATXXX processors is done with special hardware - basically push a byte into a register and leave it. After a period determined by the clock speed, a little flag comes up and says "OK I sent it", and you can either ignore it, or use it to say "Ready for NEXT byte"

In the ATtiny, there is no dedicated SPI, so you have to use "Bitbanging", where you have to decompose the byte into individual bits, stick the bit onto a port pin, toggle another port pin as a clock, then go back for the next bit of the byte.

You have to handle bit order, clockspeed and polarity all on your lonesome......