Answer by Justen Robertson:
The quality of your code has nothing to do with your personal schedule. Some people are night owls, and some are early birds. It's in your genes. There's solid science behind this. The important thing is to know what you are and work in an environment that is conducive to taking advantage of your natural schedule. If you can write code while you're well-rested, at the time of day where you're most alert and focused, you'll write better code – whether that's 8:00am or 11:00pm or anywhere in between.
There is one problem night owls run into, though: most of the business world runs on the early bird schedule. If you're a night person and you're getting dragged out of bed at 7am every day, with meetings in the morning and the afternoon, chances are you're going to be tired and/or otherwise occupied in the afternoon when you'd otherwise be able to do your best work. Every once in a while you'll find the inverse (one early bird in an office full of night owls), but that's the exception rather than the rule.
The ideal scenario is that you end up working with a bunch of people who are on your schedule. A less ideal scenario is working remotely with a bunch of people who are on the opposite schedule but also in an opposite timezone.
For me personally, about 2:00pm-8:00pm is my golden time. When I used to work in an office I'd try to come in a little late, get meetings done in the late morning, and spend the afternoon on the most challenging code. Now that I'm working at home I can make myself available for calls in the day and get the code written in the afternoon/evening without causing too many hassles for myself or my client. Fortunately my immediate family are all night people like me so it all works out pretty well.
Do good coders code in the morning or late at night?