I'm time traveling to make this post

Page 2 of 3 [ 34 posts ]  Go to page Previous  1, 2, 3  Next

roadracer
Veteran
Veteran

User avatar

Joined: 9 Nov 2008
Age: 42
Gender: Male
Posts: 778

08 Mar 2009, 11:21 pm

lau,
Actually there are to many things to factor into this to be able to blame microsoft for it all. It is just that every time when something goes wrong everyone is quick to blame it on microsoft and not think of the problem any further. If the board software cant display the date correct because people are using different operating systems, in different time zones, ect., then that is a problem with the software that should be changed to accommodate this. Saying everyone should use a certain OS inorder for there website to display correct is just backwards. If I was going to make a website that only displayed on one browser and didn't work with others, it would be dumb to tell people it was a problem with there browser.
BTW, I am not a fan of MS, but everyone is to quick to blame all there problems on them.



Last edited by roadracer on 08 Mar 2009, 11:23 pm, edited 1 time in total.

sinsboldly
Veteran
Veteran

User avatar

Joined: 21 Nov 2006
Gender: Female
Posts: 13,488
Location: Bandon-by-the-Sea, Oregon

08 Mar 2009, 11:23 pm

t0 wrote:

My point is that you're exhibiting a "bash Microsoft first" mentality with no evidence to back it up. In this case it is one of the many non-MS layers that is the limiting factor and not the OS. The BBS (not Microsoft) is using PHP (not Microsoft) which provides its own functions for accessing the current time and timezone settings on the server. If these non-Microsoft products can't handle #1,3,4,5 above, it's not Microsoft's fault.


Instead of people correctly stating they don't have a clue of what Microsoft products may be or how to work with same, they immediately just denigrate the platform. I suppose they live in such rarified circles that sort of attitude is considered proper and they are being polite, but in the real world it just looks like they are only good in what they do and don't have a clue about other OS and are just putting down what they don't know.

Merle


_________________
Alis volat propriis
State Motto of Oregon


SleepyDragon
Veteran
Veteran

User avatar

Joined: 28 May 2007
Age: 70
Gender: Female
Posts: 2,829
Location: One f?tid lair or another.

09 Mar 2009, 1:09 am

It's all way too complicated for this little green lizard to follow. I'm just gonna kluge around it in the Edit Profile > Forums Timezone until the time displays correctly, and not worry about it further. :)

P.S. I'm using an iMac. :apple:



Orwell
Veteran
Veteran

User avatar

Joined: 8 Aug 2007
Age: 36
Gender: Male
Posts: 12,518
Location: Room 101

09 Mar 2009, 1:51 am

SleepyDragon wrote:
It's all way too complicated for this little green lizard to follow. I'm just gonna kluge around it in the Edit Profile > Forums Timezone until the time displays correctly, and not worry about it further. :)

P.S. I'm using an iMac. :apple:

I'm "lucky" enough to be in the US and not to have my time settings adversely affected. But I don't think whether you are on a Mac or not makes much difference- I'm running GNU/Linux from my MacBook here and it seems to be handling the time change just fine.


_________________
WAR IS PEACE
FREEDOM IS SLAVERY
IGNORANCE IS STRENGTH


lau
Veteran
Veteran

User avatar

Joined: 17 Jun 2006
Age: 77
Gender: Male
Posts: 9,798
Location: Somerset UK

09 Mar 2009, 8:58 am

t0 wrote:
Therefore, the BBS should be able to:
1) Provide a comprehensive list of timezones for users to choose from (it does not).

This should be a fairly minor change to WP. For some reason, phpBB2 didn't accept the full range of possible time differences. phpBB3 does so. However, this is not done by identifying the time zone, but merely by storing the offset time in the profile, which unfortunately loses its connection to DST rules.

t0 wrote:
2) Retrieve the current time in UTC from the OS (Microsoft supports via Win32) when a post is submitted.

Here is one of the underlying problems with Microsoft's OSes. They all like to have their hardware clocks set to local time. A simple approach, that works, provided you don't much care about time. Getting the time in UTC immediately involves a conversion from local time, with DST making this ambiguous, one a year, for an hour.

t0 wrote:
3) Store it in a database (probably MySQL - not a Microsoft product).

What is the relevance of where the data might be stored?

t0 wrote:
4) Retrieve the time in UTC from the database.

Relevance?

t0 wrote:
5) Perform basic math to convert the time from UTC to the local time of the user reading the post.

And here is where you completely gloss over the problem. MS does not supply such a basic thing as this.
For a start, you skip over the whole question of determining whether the user (client - remote) might be on DST. In phpBB3, this is handled tolerably by the user themselves saying so. By having that as a toggle option, it reduces their involvement to a simple click, twice a year.
In a system that recognises time zone information correctly and comprehensively, the BB system could easily handle this itself. To lift the example from the GNU command line utility "date", we can do:
Code:
$ export TZ="America/New_York"
$ date --date='TZ="Europe/Paris" 2004-10-31 06:30'
Sun Oct 31 01:30:00 EDT 2004
(Which I just typed in on my command line.)
I.e. direct conversion from a time specified in one time zone to a completely different time zone.
The library routines are there. The comprehensive time zone database is there and is maintained. All standard stuff. Part of the OS.

t0 wrote:
I agree with you that #5 is somewhat complicated in that you would need to keep a list of all time adjustment rules for all eternity to be able to properly display a time in the past. But the BBS doesn't even handle the current set of rules correctly.

You miss the point again. It is not the fault of the BBS software, if the underlying OS can't handle time zone data. Writing code and maintaining databases of time zone information is NOT the business of every program that runs on a system. They should not be maintaining such data, each in it's own buggy way. It is a obvious function of an OS, to maintain this (and to do all this without bugs, one hopes).

t0 wrote:
My point is that you're exhibiting a "bash Microsoft first" mentality with no evidence to back it up. In this case it is one of the many non-MS layers that is the limiting factor and not the OS. The BBS (not Microsoft) is using PHP (not Microsoft) which provides its own functions for accessing the current time and timezone settings on the server. If these non-Microsoft products can't handle #1,3,4,5 above, it's not Microsoft's fault.

As I say, it is not the business of individual programs to re-invent, re-implement and re-maintain the wheel. But of course, within the proprietary paradigm, that is exactly what happens (or rather, doesn't). Why build something into the OS if you can sell it as a feature to every application program?

In conclusion, I refer you to:
http://en.wikipedia.org/wiki/Time_zone# ... ft_Windows
Note the final: "By default, this feature is disabled."
Feature?


_________________
"Striking up conversations with strangers is an autistic person's version of extreme sports." Kamran Nazeer


0_equals_true
Veteran
Veteran

User avatar

Joined: 5 Apr 2007
Age: 44
Gender: Male
Posts: 11,038
Location: London

09 Mar 2009, 9:04 am

they need to use the tz/olsen database PHP 5 has it.

putenv('TZ=Europe/London');

or

$tz = new DateTimeZone("Europe/Prague");



Maditude
Veteran
Veteran

User avatar

Joined: 7 Dec 2008
Age: 61
Gender: Male
Posts: 850
Location: New Jersey, USA

09 Mar 2009, 12:09 pm

WordPress maintains GMT as its base with no adjustment for DST. The user has to manually adjust it him or herself. I am in the Eastern time zone (-5 EST or -4 EDT)


_________________
"Everything was fine until I woke up."

"Vortex of Freedom" Radio Show
Saturdays 6PM Eastern - 5PM Central
http://www.blogtalkradio.com/maditude


t0
Veteran
Veteran

User avatar

Joined: 23 Mar 2008
Age: 52
Gender: Male
Posts: 726
Location: The 4 Corners of the 4th Dimension

09 Mar 2009, 2:19 pm

lau wrote:
t0 wrote:
3) Store it in a database (probably MySQL - not a Microsoft product).

What is the relevance of where the data might be stored?


The relevance is that you claim MS has problems storing time data and in this case the data is not stored by an MS product. I'll drop it since you think it's irrelevant.

lau wrote:
t0 wrote:
5) Perform basic math to convert the time from UTC to the local time of the user reading the post.

And here is where you completely gloss over the problem. MS does not supply such a basic thing as this.
For a start, you skip over the whole question of determining whether the user (client - remote) might be on DST.


This was part of #1. Having the BBS present the list of timezones and allow the user to choose a proper one rather than using bogus timezones solves this problem. Windows allows querying of timezone information via Win32. It seems that your complaint has shifted from "It's Microsoft's fault the BBS time is broken" to "Microsoft makes it too hard so we shouldn't expect the BBS to get it right."

lau wrote:
To lift the example from the GNU command line utility "date", we can do:


date is an application. Not an API provided by the OS.

lau wrote:
The library routines are there. The comprehensive time zone database is there and is maintained. All standard stuff. Part of the OS.


As it is in Windows.

lau wrote:
Why build something into the OS if you can sell it as a feature to every application program?


One man's feature is another's bloat.


lau wrote:
In conclusion, I refer you to:
http://en.wikipedia.org/wiki/Time_zone# ... ft_Windows
Note the final: "By default, this feature is disabled."
Feature?


You also seem to have skipped over this part from the article:
Wikipedia wrote:
Application software is able to calculate the time in various zones


Thanks for proving my point.



lau
Veteran
Veteran

User avatar

Joined: 17 Jun 2006
Age: 77
Gender: Male
Posts: 9,798
Location: Somerset UK

09 Mar 2009, 7:03 pm

No, t0. I gave a perfectly good reference, from which you trucated a quote. The full text is:

Quote:
Application software is able to calculate the time in various zones, but there is no standard way for users from multiple zones to use a single server and have their own local times presented to them other than with Windows 2003 Terminal Server.


My example using "date" was just an example - although there is no reason not to directly employ "date" from an application. You can, of course, look at the source code of "date" to see how it uses the GNU libraries to do all the hard graft.

As 0_equals_true pointed out, the tz/olsen stuff (not MS) is available and can be used on MS - via PHP5 (not MS), or maybe via the 3rd party .NET API I found (not MS). See http://en.wikipedia.org/wiki/Zoneinfo

If you would like to show me how the code in the Windows 2003 Terminal Server allows time zone data to be used, please go ahead.


_________________
"Striking up conversations with strangers is an autistic person's version of extreme sports." Kamran Nazeer


t0
Veteran
Veteran

User avatar

Joined: 23 Mar 2008
Age: 52
Gender: Male
Posts: 726
Location: The 4 Corners of the 4th Dimension

09 Mar 2009, 9:39 pm

lau wrote:
No, t0. I gave a perfectly good reference, from which you trucated a quote. The full text is:
Quote:
Application software is able to calculate the time in various zones, but there is no standard way for users from multiple zones to use a single server and have their own local times presented to them other than with Windows 2003 Terminal Server.


Your quote refers to the Windows shell. The clock will display the same time and date (and time zone) for all users logged onto the server. This is irrelevant to the BBS application software. The BBS application software can calculate time in various zones and print out the results similar to your date application.

I understand that you think the Windows approach to storing time on the system is inferior to the methods used by other OS. I understand how it is useful for 2 users to log onto the same machine and have time represented to them differently by the shell. However, it is irrelevant to the problems in the BBS. You're using this new argument as a distraction from my original point. The point being that you blame Microsoft for incorrect results provided by the non-Microsoft BBS application software.

lau wrote:
If you would like to show me how the code in the Windows 2003 Terminal Server allows time zone data to be used, please go ahead.


Starting with Win2k, any application can call GetSystemTime() to retrieve the current time in UTC and SystemTimeToTzSpecificLocalTime() to convert UTC to local time of a specified time zone. You do have to go into the registry to pull out a list of timezones and their relevant data - which I agree seems like more work than it should be. But the information is there and accessible to the application.



lau
Veteran
Veteran

User avatar

Joined: 17 Jun 2006
Age: 77
Gender: Male
Posts: 9,798
Location: Somerset UK

10 Mar 2009, 6:10 am

So, as SystemTimeToTzSpecificLocalTime is part of Kern32, I guess your earlier comment about "bloat" was directed at MS's operating systems?

MS wrote:
The SystemTimeToTzSpecificLocalTime function may calculate the local time incorrectly under the following conditions:

* The time zone uses a different UTC offset for the old and new years.
* The UTC time to be converted and the calculated local time are in different years.


http://en.wikipedia.org/wiki/Daylight_s ... ft_Windows

The more you mention, the worse it gets to look, for MS's attempt to handle time zones. As Vista seems to already be getting it wrong, will Windows 7 be getting it right?


_________________
"Striking up conversations with strangers is an autistic person's version of extreme sports." Kamran Nazeer


t0
Veteran
Veteran

User avatar

Joined: 23 Mar 2008
Age: 52
Gender: Male
Posts: 726
Location: The 4 Corners of the 4th Dimension

11 Mar 2009, 12:21 pm

lau wrote:
So, as SystemTimeToTzSpecificLocalTime is part of Kern32, I guess your earlier comment about "bloat" was directed at MS's operating systems?


I think you could call any feature not used by 98% of apps bloat - regardless of the OS. APIs to represent UTC in multiple local times may fall into that category.

As for the rest of your post - it's just more irrelevant information. I'm aware of the limitation of the API when it comes to date conversions that cross multiple years with different rules. I'm aware that different versions of Windows have different limitations when it comes to storing historical timezone rules. None of it has anything to do with why the BBS isn't showing correct times.

I feel that I've given you ample opportunity to back up your original statement that Microsoft is to blame for the incorrect times in the BBS and that you've used these opportunities to deflect the issue with criticisms of Microsoft on other barely-related topics. Feel free to continue. I find it no longer worth the time to read these responses any further.



lau
Veteran
Veteran

User avatar

Joined: 17 Jun 2006
Age: 77
Gender: Male
Posts: 9,798
Location: Somerset UK

11 Mar 2009, 8:26 pm

So, in summary, as t0 has prompted me to find out the details....

phpBB software runs on MS OSes.
It makes no sense for the phpBB software itself to implement time zone handling.
MS do not supply any library that correctly handles time zones.
There is a perfectly good public domain time zone handling system: tz/olsen.
Most OSes (but not MS) use this.
It is available via PHP5 and, to an extent, via an independent .NET library.
phpBB2 (which forms the basis of WP) is not really supported any more.
phpBB3 uses PHP5, and will probably eventually start to use tz/olsen via that.
Currently, WP is set up to work fairly transparently for USA based members.


_________________
"Striking up conversations with strangers is an autistic person's version of extreme sports." Kamran Nazeer


eddiedog8
Veteran
Veteran

User avatar

Joined: 1 Aug 2007
Age: 27
Gender: Male
Posts: 1,431
Location: not in my house not in my street not in my shool but in my own world

12 Mar 2009, 10:42 am

mine to and im in the uk


_________________
(.?´¸.?*¨) ¸.?*¨)
(¸.?´ (¸.?´ .?´ ¸¸.?¨¯`?.)
Ill be back in 1 year (mabey)


0_equals_true
Veteran
Veteran

User avatar

Joined: 5 Apr 2007
Age: 44
Gender: Male
Posts: 11,038
Location: London

12 Mar 2009, 11:48 am

lau wrote:
It is available via PHP5 and, to an extent, via an independent .NET library.

It is available in countless other things but it not relevant here.

You can do in php4 either use server/system/shell which is not too practical/viable for obvious reasons, or this library:

http://www.psyon.org/projects/tzphp/index.php

MySQL is also system dependent so if you are using their timestamps on insert/update/etc, rather than your own, then it will use the what the system supports.

However they offer an alternative is the operating system doesn't use zoneinfo:
http://dev.mysql.com/downloads/timezones.html

In a way it makes sense to do your own, then you can make sure it get synchronised and updated as you wish. I mean some countries ares still sorting out thier daylight savings.



lau
Veteran
Veteran

User avatar

Joined: 17 Jun 2006
Age: 77
Gender: Male
Posts: 9,798
Location: Somerset UK

12 Mar 2009, 1:31 pm

0_equals_true wrote:
...
In a way it makes sense to do your own, then you can make sure it get synchronised and updated as you wish.

I disagree about this. If the display of time were a critical part of your application, then you should make sure it works. Even then, any sensible person would look to finding an existing package that did what they required. Only if such a package was not available (or required a ridiculous fee for using a proprietary form of it) would one even contemplate writing one's own code. One must also budget for the ongoing support that code would need, forever after.

In the case of the phpBB software, none of this applies. Displaying the times is purely cosmetic. The phpBB code should contain virtually nothing in support of the date display. It should just work round the problem (which is what phpBB3 does tolerably well, but phpBB2 was somewhat lax about) and/or access external code to perform the needed work (which it hopefully will eventually do).

0_equals_true wrote:
I mean some countries ares still sorting out thier daylight savings.

This is not a correct description of the state of affairs. There is no ongoing "sorting out" happening. The rules just get changed. The ones that applied in the past still apply to those dates and times in the past. What my parents did at 10pm on a summer evening when Britain last had double summer time in force (think about having conceived me, I'd guess, but at exactly what time, I can't be sure) was still done at 10pm (local time) on that day. The fact that Britain does not have double summer time periods any more, doesn't change that event.

One day, hopefully, the entire world might come to its senses, and abolish daylight saving time completely. That would help get rid of the problems.

But, countries even change their time zone.

At least tz/olsen seems to handle most of this, in a fairly robust way. Plus it attempts to be "future proof", in that it provides for new time zones, etc. And... most importantly... it is public domain, and NOT maintained by me!


_________________
"Striking up conversations with strangers is an autistic person's version of extreme sports." Kamran Nazeer