I did one as well, only I'm using both the Pi and an Arduino Mega.
The Pi is mostly used for user IO and I'm using the Mega for the actual control.
The entire Pi app is written in python using Kivy for the gui. Every 5 minutes I upload current stats to my web server.
In the event the app crashes or the Pi locks up, the Arduino will continue running on it's own.
I have two pH probes, a temp probe, 5 float switches and 10 outputs (2 lights, 4 pumps, heater, chiller, co2, and ocean's motions (wavemaker)).
current development state.
http://reef.wallings.net/index.php/equipment/electronics/
except I have ph working now