Which time zone should I set for my server?

This was the question I was faced with last week. I was configuring a VPC image in Sydney, that I was later going to load on to a physical box in San Diego, then use it from anywhere in the world. So which time zone to use?

I decided upon UTC, and now, the more that I think about it, I don’t know why all servers aren’t configured that way.

Advantages to using UTC:

No weird shifts/jumps around daylight savings

Accidental usage of DateTime.Now in server-side code returns that same value as DateTime.UtcNow anyway

Migrating applications and their data, or entire VMs across physical locations becomes easy

Disadvantages to using UTC:

Everything is stored in UTC, and thus hard for most humans to deal with mentally. The solution: tools like the Windows Event Viewer and SQL Management Studio should allow you to apply a time zone offset to visible results.