Time Zone Minutes uses the same sign as Time Zone Hours. I've really no idea which way is better but that's the usual algorithm.
Zero is (mathematically) neither positive nor negative. So... if Time Zone Hours are 0 and Time Zone Minutes are 30, what then?
If you don't adjust the time when DST starts or ends, what happens if you unplug your clock to move it (or the power fails) and then plug it back in again? Wouldn't the time be wrong until the next time your code checks it?
I live in Connecticut. Here, in the winter we use UTC-5h (henceforth referred to as "winter timekeeping"). In the summer, we use UTC-4h (henceforth referred to as "summer timekeeping").
My clock's Chronodot
uses winter timekeeping the whole year round.
The software to display
the time and date never ever displays anything without first checking if Daylight Saving Time is currently in effect. If it is in effect, then the software does the arithmetic to convert to summer timekeeping for display
; otherwise, the winter timekeeping is displayed unchanged.
Calendar stuff is hard and is only recalculated upon a change of date, that is when winter timekeeping starts a new day, and/or seasonally appropriate local timekeeping starts a new day.
Please take a look at what I have running on my clock, attached here.
(please change file extension to .pde)
Note: my code for the alarm is buggy around Daylight Saving Time changes; I don't really care enough to fix it.