One of our key decisions when we set up my (architectural) firm was flex time. We allow it. Everybody's got their own individual routine - some are morning people and some are NOT. For everybody's sanity the non-morning people don't grace us with their presence until they're tolerable to be around, and the
I handle all the firm's IT stuff, so I prefer to be in the office by 7:00 or so. Early risers are here by 7:45 or 8:00 (we have a couple more of them) - most of our people get in somewhere between 8:30 and 9:30, so that gives me at least an hour of 'quiet time' to get my systems maintenance tasks done before the rest of the gang rolls in. Most days are quiet (I'm running a standard LAN so there aren't alot of kinks) but I like to leave 8:30(+/-) to 10:00 time free of meetings to handle anything that may come up. We're in the center of downtown, within walking distance of at least two dozen restaurants. I like to eat around 11:00 or so (earlier than most), so I personally take short lunches (my average lunch time is 30 minutes, even less if I bring something from home). I work until 4:00 on most days. Most of our other people are here until 5:30 or 6:00. My average workday is 9.25 hours per day (as it has been for years) - most of our people are averaging 8.5 to 9.0 hours per day. When we have major project deadlines we'll bump up to 10 to 12 hours a day as we need to to get the work done.
KAMommy works a few blocks away so we're usually driving together. We have a 45 minute commute back home and it's another 45 minutes to pick up both kids. We're usually home by 6:00pm.
I have remote access in to our server so I can do 95% of my tasks from home (or wherever I happen to be), if need be. On days when I have a very pressing deadline or I'm really behind on something, I do work from home (with nobody else in the house). At home I can devote my attention to the task at hand without being interrupted every 20-30 minutes.