Sure, I get that it's complex. But most systems have things that are so counter-intuitive that I think the only description you could give would be "they did it wrong"
Take for example, a common problem in python. Say I do this:
Code:
>>> d1 = datetime(2017, 1, 1, 0, 0, tzinfo=pytz.timezone('US/Central'))
This is completely wrong. The reason it's wrong is because python does it in the wrong order. It picks the time zone first and then sets the time. Since there is a history of time zone info for US/Central, it picks the *first* time zone entry in it's list. If instead it instantiated the datetime first, it should have a reasonable crack at picking the "right" version of US/Central for this time.
Instead the way you need to do it is like this
Code:
pytz.timezone('US/Central').localize(datetime(2017, 1, 1, 0, 0))
Personally, I think that's broken. And they aren't going to fix it, because it's been there so long that people may be relying on broken behavior. C'est la vie.