Program Arduino with Raspberry Pi GPIO?

Hey Guys,
I've done a good amount of googling on this subject but haven't found any answers, so here I am!

So I've noticed a few things:
1 - You can program an Arduino with an FTDI cable through the RX and TX serial lines on the Arduino. Any PC with a USB port can do this.
2 - You can communicate with the Arduino through the RX and TX lines using the GPIO headers on a Raspberry Pi, but it doesn't seem like you can program it using this method.

It's odd to me because the FTDI cable programs through the RX/TX lines on the Arduino, but that doesn't seem to be possible with the GPIO setup of the Raspberry PI. Even though those same ports are used for programming with the FTDI cable.

So my question is simple: How would you not just talk with an Arduino through the GPIO serial, but actually install Arduino software without the FTDI cable on something like the Raspberry Pi.

It seems the only thing the FTDI cable is doing is converting the Serial RX/TX to USB, with the Raspberry PI you can skip that whole process and communicate Serial to Serial between the two devices. I guess I'm confused as to what additional steps would be needed to go beyond just sending messages between the two devices.

It's strange how using slightly different search terms actually gets you results. :stuck_out_tongue:

If anyone finds this from google, here are some good resources: