Bare Arduino + Serial

Hello,

I have been working on some real cool arduino projects using the duemilanove, but now i want to start making smaller boards and etching my own pcbs with bare bones (arduino + resonator + voltage regulator + sensors im using). I got the bare bones working great, i program my own chips, but now i was hoping to have the ability to communicate with the serial monitor.

I have been reading and most people use the usb-ftdi cable, but i was wondering if there are any alternatives (cable is $16 a pop), which would not be economical for multiple chips... Some people have been hacking some nokia cell phones, or using max 232 chip. What is the best way of communicating with the serial monitor that is easiest and cheapest? Is the max chip the best?

Forgive all these questions, i am a mece so i am learning lots here everyday, but can someone give me a quick description and comparison between the various ways of communicating with the arduino. Specifically, what is the difference between SPI, i2c, TTL, and serial (using software serial). Where would you use things like i2c and spi?? I know that ttl is used for arduino interfacing with serial monitor... What about regular serial? Once again, sorry for all these questions, i was just hoping someone could give a overall simple comparison between those...

Cheers

Another (not great) solution for getting a homemade arduino to talk to a computer would be simply sending it through another arduino. I know, I know, this is stupid, why not just use the official one, yeah yeah. The only reason I could think of why to do this would be if you have several homemades in a single project and you could route them all through the one.