During a Laravel meetup last night the issue of timezones came up; I had seen this video before but it’s still entertaining and very poignant. This is why you do not want to deal with timezones when programming.
For what it’s worth, I have been lean on UTC unix timestamp and leave the timezone adjustments to the client when displaying the date and time. It’s not perfect but it covers the majority of cases.
Also, you should subscribe to the Computerphile’s Youtube channel.