The FTDI/USB programmer designed for the Mintduino MSRP for $14. I believe that locks you into that programming method and, by extension, the Arduino environment. When you want to leave, you'll need to obtain an SPI programmer. The Arduino can be one.
If you're comfortable not using the Arduino software, get an AVR SPI programmer. Costs about the same and can program any 8 bit AVR that has the SPI pins. Some exceptions include the small 6 pin microcontrollers which aren't very cost effective in most hobbyist applications anyways.
It's almost like you're communicating with me. I recognize most of the words, just not the way you've linked them together...
Seriously though, I know so little about Arduino and things like it that I only half understood what you just said. SPI? AVR? Wanna toss some newbie links my way so I can piece together a clue about what you just told me?
Yeah, sorry. ed12 is right about the ISP programming. I get the two intermixed because the 8 bit AVR (all the ones I've encountered anyways) share the ISP pins with the SPI pins. Gets to be a bit of a headache sometimes but whatever.
The STK500 is a nice board, but it's been discontinued. As an RS232 board it's not much use with modern laptops. If you can find one for cheap and have an actual RS232 port, go for it. The MSRP listed on Atmel's website is $80.
The replacement is the USB based STK600 which supports 8, 8/16 and 32 bit Atmel processors. The MSRP is $200.
An alternative is the AVR Dragon which retails for $50 and has On Chip Debugging. However, the AVR community seems to consider the AVR Dragon a supplement, not a replacement to the STK boards.

If you're like me and comfortable with virtually zero support you can do what I did. I bought the older version of
Robokit USB Programmer. It has some quirks though. So shop around if you want to go down that path.
In a nut shell, the STK/Dragon combination is a no headache solution. Anything else is a cheap solution.
The Rspi can be a programmer, especially since someone over on the Raspi boards finally figured out how to access the GPIO pins more-or-less directly. But I don't have much experience using it as a dedicated programmer.
I generally avoid the Arduino because of the way it adds an abstraction between the code and hardware. If the Arduino platform dies, so does all that code. Before anyone argues with me, Google OOPic and follow the history. All those code samples are no good now but the PIC still lives on.

However, consider that the community is rather large and there are business building products around the Arduino (not just those damn sheilds but real products such as industrial printers and it does stand a chance of surviving long term.