MisterHouse is an open source project for doing home automation. This program is really a mess of Perl with no standard interfaces for anything. Frankly I'm surprised it works; however, it works and it has been working for a year or so.
You can see how it relates visually to the other components in my house layout.
The most useful feature my wife has found from it is that it reads her the weather in the morning. Example to come.