I've been using one for a few years and think it's great. And no, it's not hard to program.
If you get it, bite the bullet and buy aquanotes. It will allow you to change all the settings and programming through your PC (much easier than doing it on the unit directly) and it will also run as a web server and allow you to access your settings remotely.
Also think about getting the direct connects instead of using X-10. It costs more, but it's worth it. X-10 is a major headache! It worked fine for me for about a year and then went absolutely crazy. It drove me nuts!