BBC Clock Inaccurate - 100 Days To Fix?
mikejuk writes "The BBC home page has just lost its clock because the BBC Trust upheld a complaint that it was inaccurate. The clock would show the current time on the machine it was being viewed on and not an accurate time as determined by the BBC. However, the BBC have responded to the accusations of inaccuracy by simply removing the clock stating that it would take 100 staffing days to fix. It further says: 'Given the technical complexities of implementing an alternative central clock, and the fact that most users already have a clock on their computer screen, the BBC has taken the decision to remove the clock from the Homepage in an upcoming update.' They added, '...the system required to do this "would dramatically slow down the loading of the BBC homepage", something which he said was "an issue of great importance to the site's users".
Secondly, if the site moved to a format in which users across the world accessed the same homepage, irrespective of whichever country they were in, it would be "impossible to offer a single zonally-accurate clock."'"
https://www.google.com/search?q=time
I'm not sure I can trust a source which says "it has been stated that it would take 100 programmer hours to fix" then quotes a paragraph stating 100 staff days. Regardless it is harder than it looks: the BBC doesn't want to get into the business of running a time server, nor trying to automatically determine which time zone any particular visitor to the site happens to be in (by, what, IP address tracing?).
No kidding!!! What do you say at this point?
For a new Time Lord!
I'm not signing anything
When visiting the website of UKs BBC one would expect to see the time from the BBCs location (UK), not from the local PC. Just like when watching a TV station and seeing a clock on the screen it would show the time at the location of the stations studio - what else!?
I think the article mistakenly thinks that the BBC wanted to show "the time at BBC".
They'd been displaying the wrong time, only because users had the wrong time set on their local machine.
What the BBC said was that they would find it difficult and expensive to accurately show the time at the user's location, when the user's time settings were wrong.
You have a javascript time widget on the page, it requests the time - just once - from the server (which has the correct time) using ajax or something, and the widget just increments the time from there. How hard could that be? It sounds like a tutorial exercise more than an actual problem.
Can't they just get the current unix timestamp from the server, get the difference between local time and just display local time + difference? That would only be one extra http call per page load.
Anyone who has ever had to deal with timezones, summer and winter times, in combination with user settings and preferences on the PC / in the browser knows that it is virtually impossible to get a accurate clock in the browser that satisfies all visitors.
It seems a ridiculous to not corret the time, but may be there are technical complexity due to content delivery networks, and caches on servers side.
What's all this nonsense about a "single zonally-accurate clock". The is the British Broadcasting Company. They should be showing the world GMT (Greenwhich Mean Time) all the time everywhere. Oh, and never mind all this British Summer Time nonsense either. Should not take more than a day to put up.
By the time they fix the clock, it'd be 100 days and the clock would be slower by 100 days! Then they'll try to fix again and the clock would be slower by 100 days again! ....ad infinitum...
Better to break that cycle by not embarking on this journey!
Keeping two clocks in sync is VERY easy, especially with the age of the Internet.
Step 1. Ensure your servers have a good NTP source and are updated nightly.
Step 2. Your clock widget makes a tiny Ajax call to a "clock" REST API, getting the current server time.
Step 3. Subtract the local computer's time vs the server time to create your Server-Host Delta
Step 4. Update your widget every second/minute, adding the delta from the local clock to compute the "real" (or trusted) time.
Step 5. Send the AJAX call once an hour or every 5 minutes if needed to keep in sync.
Is it reallly that hard? A web page doesn't need microsecond accuracy. Likely minute level is fine, and the above solution would provide that beyond a reasonable level.
who cares?
BBC cannot use my PC's time, because it is wrong! We don't want their time, because it's not ours!
I would remove the damn clock in this situation as well. Who the hell cares, and for those who do care...buy a damn clock.
took me about 15 minutes...
The BBC home page has just lost its clock...the BBC have responded to the accusations of inaccuracy by simply removing the clock
Just clicked onto bbc.co.uk, the page which declares itself to be the "homepage" in the tab header. Lo and behold, right under the sections menu, is a nice little clock displaying the time.
Is there any other source for this?
It took one large Luxembourgish bank nine months to change SUPPORTED_OS = MAC into SUPPORTED_OS = Linux32 in a configuration file in a jar named LuxTrust_Gemalto_CryptoTI_Adapter_LIN32_1.4.jar (yes, they did indeed accidentally put the Mac config file into the Linux jar... it's that stupid...)
Another bank is celebrating the first year anniversary of this same bug right now as we speak :-) (unfixed yet, of course)
Reason for the slowness (in both cases): when fixing such a mixup, according to their procedures, the entire test suite (... which incidentally, didn't catch this bug in the first place...) needs to be re-run, and this takes weeks, and so they shy away from the expense.
So we end up in the paradoxical situation where the presence doesn't reduce the number of bugs seen in production, but actually increases it. Rather than catching bugs early, the test suite instead perpetuates existing bugs...
The situation is crazy and I have every sympathy with the Beeb. The clock design itself is very nostalgic for those of us of a certain age who have grown up with the BBC. They naturally created a simple clock that reflects the user's local time. A handful of morons who cannot set their computer's clock properly complained that the BBC's clock was inaccurate. The BBC cannot be expected to implement a global solution which cannot rely on the local host having any accurate time information and takes into account time zones, geographical location etc even if the issue of running an accurate server-synchronised clock is trivial. Also note that everything they do is heavily scrutinised by rabid right-wing politicians and licence-fee payers. My only gripe with the Beeb is that that it's acquiesced to these stupid complaints and withdrawn the clock rather than telling the complainants where to go.
100 staff days to fix an innacurate clock?
Oh java-san, How I love you, you perpetual generator of employment ^__^
This sounds like a task for open source. Any accurate clock projects out there?
If Pandora's box is destined to be opened, *I* want to be the one to open it.
Or they could just link to http://wwp.greenwichmeantime.com/, which does not ONLY display GMT, but times for other time zones/daylight savings schemes as well, along with some other country-specific information. It syncs every 15 seconds or so with their time server, and counts down the seconds using JavaScript (it looks like), which is accurate enough for me to set my watch to every now and then, it required.
Free, as in your money being freed from the confines of your account.
"Fuckit... You figure it out user. www.whattimeisit.com "
If their clock is set wrong on their pc... How much can they REALLY care about an accurate time on some webpage?
Sounds like someone was just looking for something to bitch about... Sandy vag musbe.
Gaaaaaaaahhhhhhhhh. I thought this was a website that was supposed to be populated with technical, computer literate people, even programmers.
The end user requirement: "Show the time"
They mean "Show the correct time for my current location"
This is easy: Every (ok, perhaps there's someone still using an old IBM PC computer where you have to set the clock at boot) browser is running on a machine that has a local clock. So we'll use it to display the time.
Some end users then start complaining that the time on the BBC website is wrong.
There's two obvious reasons for this: 1. The user has taken the iphone/ipad whatever on holiday and haven't updated the timezone or 2. Their local clock is just plain wrong.
OK. So we've now established that the end user is incapable of correctly determining and setting the correct time and timezone on their machine. So we, as a programmer, have to do this for them. Cookies, asking the user, etc obviously aren't going to work. If they cannot get their own clock right then they're not going to get the website configuration right either.
This is hard, hard, hard to solve. IMO it's impossible - what do you do about people coming through proxies in different timezones?
The BBC have made exactly the right decision - the old solution was the correct one. PEBKAC. TPTB have decided that the correct solution wasn't good enough. So don't waste any more time or money trying to hack together something just to satisfy end user requirements that are fundamentally broken. End users can use the clock on their machine anyway and they won't complain to the BBC if it's wrong (presumably they complain to Microsoft instead)
Tim.
God said, "div D = rho, div B = 0, curl E = -@B/@t, curl H = J + @D/@t," and there was light.
Now, I know that some people have more time than brains on them, but whoever reported this sure must have taken the cake. High level exec or marketing/PR? Where does the waste of precious oxygen sit that considers this something the BBC programmers' time should be clogged with?
Some people just have no reason to exist and waste precious office space, so they have to notice something as important as this and cause a huge stink about it as if anyone but them cared. "I am a nuisance, hence I exist" seems to be the creed.
We used to have a Bill of Rights. Now, with the rights gone, all we have left is the bill.
Man, I wish there were no such thing as a "show the local computer's time" function. There are so many websites that should damn well know better that do this. Even sites for organizations that are responsible for keeping accurate time pull this crap. Timeanddate.com does a fantastic job, I've no idea why it can't be done elsewhere. Oh, right - 100 hours to fix it and that's not in the budget.
Shutting down free speech with violence isn't fighting fascism. It IS fascism!
It seems quite feasible to create a JS lib that makes a request over HTTP to a server running some time module and receives the exact value in response. The JS could provide APIs to show that time and calculate various timezones. About the trickiest thing would be dealing with the roundtrip delay of the request but a few headers recording the client and server's response time would take care of that just like they do for NTP.
But then again, it's easy for someone to do the "what timezone and preferences are set for the viewer" when the viewer is the only one doing the request.
Doing that on a webpage for everyone who will have various desires, wants and needs isn't trivial.
And since it's implemented already on just about every visitor's computer, they really SHOULD consider removing it.
GMT died in 1972, so can we put this to bed already please?
100 person days have been spent reading and commenting on the ./ article. (101 now)
So I don't think they have it working.
The BBC home page has just lost its clock because the BBC Trust upheld a complaint that it was inaccurate.
How in the world was it inaccurate? If it showed the user's time, and the user's connected to the internet, it is the correct time. Unless there's some OS I don't know about that doesn't use an online time server to set it's own clock.
Given the SNTP network exists and [is] in use by lots of machines there really doesn't seem to be any need for the BBC to reinvent the atomic clock.
Yeah, no kidding. Why is this even a story?
-- sudon't
Air-ride Equipped
Millions of staff days lost by the debate on Slashdot, Reddit etc.
Donte Alistair Anderson Roberts - hi son!
Karma: Chameleon
Require IE6. Install an ActiveX control. Pull the time from the local computer. Done. Everyone's happy.
Time is easy. Until you have to bother with it in your code. Then it becomes a nightmare.
The BBC domestic services only use GMT/BST (Greenwich Mean Time in winter, British Summer Time in summer). One time zone. Although they can be received in other countries in other timezones - for example BBC1 and BBC2 domestic TV channels are provided on cable in the Netherlands - no reference is made to those other timezones.
The BBC's overseas services primarily use GMT but are broadcast regionally (e.g. "Middle East", "West Africa") where they may optionally mention secondary timezones on-air. For example, the BBC World Service's South Asia radio broadcasts may say "It's eleven hours GMT, fifteen-thirty hours in Delhi."
The BBC has no European radio service any more. European relays of the BBC World Service, including the relay on Digital Audio Broadcasting (DAB) radio inside the UK, use the African stream. This primarily uses GMT but occasionally additionally references a secondary timezone in a major African city such as Johannesburg or Lagos. There is a specific African breakfast news programme on the BBC World Service's African stream, presented jointly from London and Johannesburg, tailored around the morning hours across several African timezones.
Live presenters on the BBC World Service may also announce the time as simply "minutes past the hour" without referencing which hour they're referring to, for example "It's twenty minutes past the hour". These are particularly prevalent for African streams. These "minutes past" timechecks are avoided in regions with timezones that are offset by 30 minutes, such as India.
BBC overseas TV timezones fit into two categories; regional and worldwide. Worldwide services such as the BBC World news channel or BBC Entertainment do not usually reference the time as spoken word, but instead represent the time using on-screen graphics. The graphics will show GMT plus a selection of 3-5 timezones appropriate to the region the stream is broadcast to. For example, the European stream of BBC World will use GMT, Central European time and Moscow time. These are typically shown as full-screen text announcements for future programming (e.g. "Hard Talk, Mon-Fri at 08:30 GMT, 10:30 CEST, 12:30 Moscow" for the European stream). Where programming is shared between regions, they may either use opt-outs for regional time displays or use a more general subset of timezones (e.g. GMT, EST, India; very rarely, GMT is omitted in favour of CET).
Regional overseas TV services such as BBC America or BBC Arabic will use whatever timezones that region uses and will cope with it just like local domestic services. They will not generally use GMT.
Andrew Oakley - www.aoakley.com
I have never understood why so many people are so keen on putting a clock onto a website. Everyone has a clock.
Bogtha Bogtha Bogtha
the BBC Trust upheld a complaint that it was inaccurate
OK, so it's inaccurate - that just puts it in the same class as every clock in the world, excluding the global standards (and even they don't agree when you get down to small enough time divisions).
This is a systemic problem with the Beeb. They take every complaint or criticism "personally". If a programme draws a few complaints then an apology gets issued. If an interviewee uses a "bad" word on live TV an apologist instants says sorry. The corporation seems to have this view of itself as being infallible and that every mistake is the cause for some self-flagellation.
Although I can see why they have this view: they are publicly funded from a virtually compulsory source (have a TV? you gotta pay) and have made a whole string of astoundingly stupid blunders in the past - and this pronouncement is just one more. However they really should build a little self-confidence and learn to stand up and say to their critics "screw you - yes, we make mistakes ... live with it".
politicians are like babies' nappies: they should both be changed regularly and for the same reasons
Before the days of affordable accurate clocks [1], the BBC clock [2] kept the country in sync. Accurate timekeeping is vital for radio and TV, so it's no surprise the BBC takes its timekeeping seriously.
1: first, receivers for time signals like DCF77, then NTP
2: in the shape of the time signal on the hour at the start of the radio news, and various clock displays on TV
Combine 'precision master source' from a 'BBC time' server with local time as set by the user. So for example BBC time might be 14:12:03 while the user is somewhere the other side of the Atlantic and their local clock says 10:10:56. The combined display would be 10:12:03. ie the hours sourced locally while the minutes and seconds come from a basement in Broadcasting house. OK this doesn't deal with latency etc but that's not a big issue is it?
Seriously? 100 programmer-hours to re-create NTP? Why wouldn't BBC just use NTP? What for the user-timezone? This is trivial to do and there's even a JS library at http://pellepim.bitbucket.org/jstz/
Maybe I haven' t fully understood the problem...
time.eprci.net. It initializes with the server-side time (the server clock is synced via ntpd) and then uses JavaScript to just increment second-by-second. It's a couple dozen lines of code in PHP and JavaScript. I wrote that in half an hour years ago.
Liberty in your lifetime
It is still there 12 noon BST 6/6/2013. And it is reasonably accurate given that time is a human generated thing anyway. My computer shows 12:03 the clock on www.bbc.co.uk shows 12:03 (ish). It's an analogue look alike so harder to tell.
No problem.
Oh you don't live in the UK or use our time zone... ummmm... tough.
The decision by Microsoft set the system clock to local time, rather than UTC makes me give thanks frequently that the USA has timezones. I hate to think what abhorrent mess would have been created if the USA had a single timezone.
IMO, the quick fix is to use the time on the viewer's machine to determine the approximate time (time zone) but to use the time coming from the server to determine the exact minute/second +/- network latency (ignore network latency for now if that gets complicated).
1. Geolocate the IP, show the local time and mark it with a timezone identifier/city
2. If geolocation data is not available for IP, show UTC time celarly marking it as such
3. Put a button on the side of the clock to acquire the user's coordinates if a GPS is available, mark the timezone as GPS-determined
4. If GPS is not available and user pushes button, use the JS new Date().getTimezoneOffset(), mark the timezone as OS-determined
There are corner cases where this will not work, but this is good enough for 99% of the users.
The user is behind VPN/Proxy? If he cares about the correct local time, he'll push the button.
The user has no GPS and wrong OS timezone? Too bad.
Indicating something like, "your local computer time". Yes, stupidly redundant to the display on a users machine, but it indicates the source of the time as opposed to having users assume that this is some sort of "official" time. But I vote to just remove it and end this foolish debate as it offers no value anyway.
The BBC website does ask you where you are to localise information for you. The sane solution probably would be simply to only show the clock if you a) have given them a location, b) they know they're good with the location and c) make a one time check at page load whether the clock in your computer is totally out of whack or not. If it is out of whack they could either disable the clock or use an offset. A perfect solution might be truly impossible, but a reasonable solution that will work for the vast majority of people (even if they are idiots) most of the time is certainly possible.
As it stands, I still have a little clock in the top left corner when I go to the BBC website.
Not sure if this helps but has anyone tried http://time.is ?
The BBC is full of Left wing Marxist nutcases, who are so convinced that they are right about EVERYTHING that they spend their entire lives silencing any 'dissent' - i.e. the feelings of MOST of the population, who hate them with a passion, and don't want our white country turned into a multi-culti cesspit. So of course, when told that their clock was wrong, the BBC tossers couldn't take such insolence from their 'customers' and refused to believe it! The BBC is always right! Even their clock!
The scum in the BBC have moved their headquarters out of London because their staff were getting MUGGED by non-whites while travelling to work every day! How ironice! And yet the same BBC Lefties go to work and produce endless anti-white propaganda every day, and tell us how lucky we are to have to watch our country being INVADED by the dregs of the third world.
MOST white people want to live in an all white country.
Doesn't NTP handle all of that?
They report news, and do it well.
It is virtualy impossible to, 100% of the time to 100% of visitors, get the time right. The computers time can be wrong. A laptop set to EDT on a business trip tp LA will have the wrong time and the user won't adjust it because he's only going to be there a day or two. Besides, he or she may want to quickly see what time it is at home. How on earth could you adjust for that? IP addresses registered in one time zone may be servicing another, so geolocation of IPs doesn't work. What's left?
It *is* a tough problem and 100 days is probably right and I bet they still won't ever get to 100% of the time, general computers and laptops don't have the technology to maintain locationally accurate time. Removing the clock is a "simplification" that removes an unnessisary work load and no user will be harmed and the service will not be affected.
When the BBC implemented this clock, they were pushing forward technology by being the first large website to use HTML5 canvas. Yes, thats right, there is no flash in that clock...
They didn't make a big fanfare about it, they just implemented it.
Now that canvas is widespread, I would prefer they go push other bits of technology forward.
I'm trying to understand why setting up a script to echo a clock synced to an international time server (using timed) is an unacceptable fix. I'm a shitty programmer myself but I could implement that in a couple of hours.
Does the BBC think they have reinvent the wheel and buy some Microsoft-blessed solution or something?
I am sure BBC News will blame the inaccuracies of their home page clock due to the devastating effects caused by Global Warming as they blame everything wrong with the planet on that ol' scapegoat. Something about excessive Carbons in the atmospheres interferes with the correct calculations of the Maths involved to tell Times.
Also if you can't report accurate time then what does that say about your news reporting abilities?
Finally, as with all well oiled government run tax based enterprises, 100 days to fix an online clock in the 21st century would actually be quite an amazing feat, but probably would cost billions.
I haven't thought of anything clever to put here, but then again most of you haven't either.
Comment removed based on user account deletion
Could they not just use some kind of an offset? Their time is X, users time is Y. Show Y+(Y-X). Simple enough calculation , increment once every 1000ms.
They should have just combined a server-delivered start offset (UTC time, their servers should be using ntp no?) with JavaScript's Date.getTimezoneOffset(). and start the clock. There, you now how timezome specific accurate clock time.
If you're just setting your watch or the kitchen clock, +/- a few seconds to the minute is good enough. You want down to the second / millisecond / microsecond accuracy, go somewhere else.
.
Prisencolinensinainciusol. Ol Rait!
If you want accurate time to fix the time of your watch, use the time displayed by a GPS.
It comes from at least 3 different atomic clocks in satellite and your receiver has algorithms implemented to compute the UTC time very accurately (at least much more than what a website could display).
How long does it take the BBC to wind up a watch?
1000X it takes to Google "Wind Up Watch"
the date formats, THE DATE FORMATS! If only everyone used YYYYMMDD.
ISO 8601, the One True Date Format. Today is 2013-06-06
What timezone do you use? Factor in that the timezone may not be correctly set in the first place, or the machine may be roaming, or accessing via a VPN.
News At 11: Some @$$#@t who doesn't really know what's going on inside the BBC makes a lot of assumptions about what requirements the BBC has in creating an "accurate" clock in a blog post.
Seriously, can't you just link to the ORIGINAL STORY posted by the BBC? This is just lame. But I guess /. has been synonymous with lame for many years.
There are no excuses like programmer excuses.
Luckily the wayback machine has a copy in case anyone hasn't already "borrowed" the file :)
http://web.archive.org/web/20100215073006/http://www.bbc.co.uk/home/object/clock/tiny.swf
timey wimey stuff... it's a BBC specialty.
What part of `yes no` don't you understand?
YYYYMMDD is valid ISO 8601 too.
The simple fix is to do a time exchange between the two machines. This will give you the offset between the central clock and the local computer. If the local OS supports it, do this exchange in UTC so you have an absolute measure of the error of the phase of the local clock. If not, you can use a Heuristic and assume that the local clock is off by no more than 15 minutes, so you can split the error between the local clock being off, and the offset from UTC the timezone of the local computer. Once you have the error in the local clock, you can display the correct time by adjusting the local time by the negative error and have the proper time displayed. Repeat once an hour (or 4x an hour if you get fancy and measure a frequency error > 250ppm).
This technique will give you a display that's within a second for any computer whose local clock's frequency is better than 1000ppm (that is, one minute per day), and will work world wide.
No just show the time in the UK you furiners will just all have to start using GMT - and it would piss the french off :-)
That the french surrendered again.
There is no right to feel safe thru security vaudeville at the expense of everyone's freedom, privacy and tax money.
The hilarious thing about this litany of excuses is that there are several dozen 16-year-olds in the UK that could do the whole thing right in an hour. All the while mouthing-off to his friends.
"You must try to forget all you have learned. You must begin to dream." -- Sherwood Anderson
This isn't a new problem. NTP via javascript has been done.
https://github.com/simonw/json-time/
http://james.padolsey.com/javascript/getting-the-real-time-in-javascript/
I think the developers at BBC simply decided that rather than fight with utter morons, they'd take the clock down completely. Basically, the BBC said; Fuck you ten!
geez that is a lame thing to say -- why would it slow down the web page? utter foolishness.
or are we mocking their engineering department (smartly) from walking away from a stupid issue...
> You're right getting an accurate time is easy... the hard part is figuring
> out a timezone. geoip is unreliable due to proxies, so how else are you
> supposed to guess which timezone the user is in?
On the local site, give London time, whatever zone they're in.
On the international site give GMT/UTC/whatever-they-call-it-now.
Period... end of story. What's so difficult?
I'm not repeating myself
I'm an X window user; I'm an ex-Windows user
Use the same technology that blocks iPlayer outside the UK to decide whether to display Summer Time during summer (in the UK) or all UTC all the time (outside UK).
You could just host a separate server that traces the IP to a specific time zone. Then retrieves it via the NTP protocol and displays the current time. Also you could argue that the default should be in GMT as it after all the BRITISH BROADCASTING SITUATION. Not pull a feature which is extremely useful in evaluating how correct and accurate an article was/ is at a later point in time. I dislike complaints from people who are just moaning but on the other hand from a reputation pov you don't want users being able to change the time to discredit or manipulate information