If you want to write software probably you are looking for customized solutions, you have imagination and you don't mind to do it yourself.
I suggest you try search with google: Arduino + Watering( for example look at this document: THE GARDUINO GARDEN CONTROLLER
It is a simple open-source platform with which many hobbyists have already ventured and you can find a community willing to help.