On my laptop, any time that isn't the current time in my hometown is the wrong time.
And it is moronic for the OS to do this change behind my back (I don't know how OS X present this but thankfully Windows 7 doesn't do this madness by default).
How do I know that my OS got the time right? (did it perhaps get the time from my VPN location? was the network I connected to badly configured?) Since a laptop isn't connected to the net at all times I also have to consciously be aware of whether I've even been connected yet in this particular time zone.
So if you travel to Tokyo for a week, you still want your laptop displaying the time from your hometown? That seems rather unusual.
And for the record, OS X does it by sniffing for wifi access points. The particular access points available at any given location is a pretty reliable means of tracking location, assuming that there are any (if there are no access points, it can't find your location, and therefore won't touch your clock). The only exception are access points that themselves move, e.g. wifi on planes. I would assume that these access points are disregarded.
This is the same system that iOS uses to enhance the GPS (especially on iPod Touches and Wifi iPads, where you have no cell towers).
if there are no access points, it can't find your location, and therefore won't touch your clock
This is the part that scares me and has gotten me into trouble in the past. Basically it means I do not know if my clock is local time, home time, time of the last timezone I visited or something random and thus I cannot trust it.
This isn't just a hypothetical, but has bitten me in the past. Fortunately it lead to me showing up for my train an hour too early rather than an hour too late. But after that I never let my OS play around with my timezone settings.
OSX doesn't use IP geolocation to determine location... they use wifi triangulation. VPN connection-state shouldn't make a difference one way or another.
In one out of the one trials I've expected OSX to automatically set the clock ("automatically change time zone") it hasn't.
This touches on to the relevant point of DST. I no longer have to worry about changing clocks; the worry has been replaced by the confusion over whether all my clocks have changed or none have.
At a bare minimum I'd expect any change of time zone to prompt the user.
Yes, DST is a pain as well (and completely unnecessary, just ditch DST already).
Especially when you set the alarm for the next morning - and you know that DST kicks in but you have no way of knowing whether your phone knows that. And you can't change time beforehand because you don't know whether the phone will respect that or change the time back or make the change twice...
I found out that the stock android alarm app solves this (somewhat), when an alarm is set a notification tells you how many hours (and minutes) remain until the alarm goes off and this takes DST changes into account so you can see that it got it right.
Apple has succeeded in getting this wrong several years in row with the iPhone, quite embarrassing - and made much worse by the fact that you as a user can not prepare for it.
I feel that you are taking a narrow-minded, absolutist view here.
"How do I know that my OS got the time right?" Well, have a look. I've often changed the DST switch manually after noting it not being correct. It wasn't then overridden by the OS "knowing better".
Why should I have to "have a look". If I know that the time zone is always the one from my hometown I never have to look or worry about it being wrong. I'd rather calculate the time difference in my head (or take a look on my watch/phone) than "have a look".
So, I have never ever (after the OS installation) changed the time zone for any of my computers and knowing that the OS doesn't do this behind my back I've never had to look or worry about it.
But even if it were perfect, why would you want your laptop to reflect the time zone you are currently in? Shouldn't the time on your laptop be the time you are the most familiar with and that you most deal with? For your day-to-day needs you have your phone and/or watch anyway, if anything a reference to the home time would be preferable instead of having all devices say the same thing.
And it is moronic for the OS to do this change behind my back (I don't know how OS X present this but thankfully Windows 7 doesn't do this madness by default).
How do I know that my OS got the time right? (did it perhaps get the time from my VPN location? was the network I connected to badly configured?) Since a laptop isn't connected to the net at all times I also have to consciously be aware of whether I've even been connected yet in this particular time zone.