For the RasPi, I just use C (gcc). Since it's a full Linux device, there's tons of stuff out there for free.
512MB of RAM, but a good chunk of that is for Linux. I usually have 32GB micro SD cards.
I write all of my own code, except the GPIO stuff (digitalRead, digitalWrite) is thru wiringPi.
It is handy, though, because I can just login to the RasPi from anywhere to do software development work, and I never need to plug-in cables, etc.
For FPGAs, I mostly use the Altera EP2C5 (25USD) , and sometimes the EPM240 (12USD). Both are available on PCBs on Ebay.
The Quartus software is free for compiling the FPGA code, and I use Modelsim for simulating the FPGA code (Verilog). I do have to physically plug the JTAG programmer into the USB port on my Linux server to update the FPGA code, but I try to minimize FPGA code changes (essentially freeze the "hardware"), and make all changes thru software. Sometimes that's not possible.
The RasPi + FPGA can do anything imaginable, but as I said, the main drawback is the boot time. Fortunately, our electric utility is pretty reliable, so unplanned reboots happen less than once per year.