Live data from Hacker News

Chess.com stopped working on 32bit iPads because 2^31 games have been played

chess.com

261–270 of 338 posts

Re: Chess.com stopped working on 32bit iPads because 2^31 games have been played

#261
post #235
post #46

Earlier quoted context omitted.

This is a whole class of problem - I wonder if there's a name for it. More examples include: talking about welfare being unnecessary because no one is starving. Or people on medications stopping because they feel better (while still on them).

Maybe the expression "absence of evidence is not evidence of absence," discussed in https://en.wikipedia.org/wiki/Argument_from_ignorance and https://en.wikipedia.org/wiki/Evidence_of_absence .

With the important caveat (described on the Wiki page) that absence of evidence sometimes is (weak) evidence of absence.

Re: Chess.com stopped working on 32bit iPads because 2^31 games have been played

#262
post #245

Earlier quoted context omitted.

Last time this came up, I ran the numbers and the cost of the RAM saved per date stored was hundreds of dollars. Not per computer, or per program, but per date . Comparing total memory sizes doesn't tell the whole story, because RAM for a whole machine is so much cheaper now. Spending that much money on storing "19" just so your code keeps working in the unlikely event that it's still in use 3+ decades into the futur…

You're calculating what it would cost to store a string representation of a date. Which is silly. You should always convert to a timestamp for storage. You can cram way more info into a single integer than you can with a base 10 string. And the bonus is you verify the date's correctness before storing. Even a 32-bit int could hold 11 million years worth of dates. And if your software is used for longer than that, you…

Silly or not, that's the reality of punch card based technology (BCDIC later extended to EBCDIC). Punch cards pre-date electronic computers, and making a relay tabulator set-up working with binary formats is impractical.

As computer hardware grew out of that, it maintained much of the legacy, down to hardware data paths and specialized processor instructions. It was more than a programming convention.

Re: Chess.com stopped working on 32bit iPads because 2^31 games have been played

#263
post #46

Earlier quoted context omitted.

This is a whole class of problem - I wonder if there's a name for it. More examples include: talking about welfare being unnecessary because no one is starving. Or people on medications stopping because they feel better (while still on them).

This makes me think of a hypothetical scenario proposed in one of Nassim Nicolas Taleb's books where-in some senator gets a bill passed in the weeks before 9/11 requiring reinforced doors on all commercial airplane cockpits. No parade would be thrown for this senator for having prevented 9/11 and likely he'd be castigated for having given airlines an excuse to raise prices due to restrictive government regulations.

that example (while i was reading the book) kind of stuck out with me - I think of it almost as preventative maintenance or good software dev practices - you'll get crap from others for 'wasting' time on it, but they don't realise it might just save your ass when you need it most.

Re: Chess.com stopped working on 32bit iPads because 2^31 games have been played

#265

It's fascinating... the Y2K problem never came to fruition because - arguably - of the immense effort put in behind the scenes by people who understood what might have happened if they hadn't. The end result has been that the entire class of problems is overlooked, because people see it as having been a fuss over nothing. I sometimes think it would've been better if a few things had visibly failed in January 2000.

> the Y2K problem never came to fruition because - arguably - of the immense effort put in behind the scenes by people who understood what might have happened if they hadn't. Except many countries who spent no money on upgrading their system has very few problems too.

[citation-needed]

Re: Chess.com stopped working on 32bit iPads because 2^31 games have been played

#266

Earlier quoted context omitted.

Maybe it's because of how young I was at the time, but I remember media outlets reporting on the Y2K problem, and showing video of hundreds of older computing devices that were being retired (thrown in landfills) because they wouldn't work properly after the date change happened. Maybe this isn't a "real" failure, and the symptom of some IT departments working diligently to solve the problem before it happened. In an…

Y2K was a software issue. In short and very simple terms, some software stored date as DD/MM/YY. It would asume that for year it would always prefix 19. The problem was when you reached /00. Any calculations or software decisions that happened based on that date, it would be off. Way off. Some solutions where expanding the date to YYYY or adding a prefix to the new dates. Dates without the prefix would be 19xx. Date…

the issue was a closed source problem, you could easily add the option to switch between 19 and 20 for calculations. or have a pre 2000 instance of the app and a post 2000.

Re: Chess.com stopped working on 32bit iPads because 2^31 games have been played

#267
post #46

Earlier quoted context omitted.

This is a whole class of problem - I wonder if there's a name for it. More examples include: talking about welfare being unnecessary because no one is starving. Or people on medications stopping because they feel better (while still on them).

This makes me think of a hypothetical scenario proposed in one of Nassim Nicolas Taleb's books where-in some senator gets a bill passed in the weeks before 9/11 requiring reinforced doors on all commercial airplane cockpits. No parade would be thrown for this senator for having prevented 9/11 and likely he'd be castigated for having given airlines an excuse to raise prices due to restrictive government regulations.

That's a very definitive bias we always hold. Praising a player who falls behind and achieves something while not paying much attention to one who does something normally. Chaos gets attention!

Re: Chess.com stopped working on 32bit iPads because 2^31 games have been played

#268
post #264
post #202

Earlier quoted context omitted.

C had this particular feature for decades.

No, and it still doesn’t.

Time to explain the joke, right?

https://stackoverflow.com/questions/2192547/where-is-the-c-a...

Re: Chess.com stopped working on 32bit iPads because 2^31 games have been played

#269
post #264
post #202

Earlier quoted context omitted.

C had this particular feature for decades.

No, and it still doesn’t.

What he means by that is the old definition of auto, which C++11 deprecated in favour of making it do type deduction instead.

auto foo = func_returning_int(); to my knowledge worked in C because 'auto' was the lifetime keyword - like 'register' - and the default type in C is 'int'.

That's why when you miss a definition in C++ the compiler warns you that there's no default int.

Re: Chess.com stopped working on 32bit iPads because 2^31 games have been played

#270
post #152

Earlier quoted context omitted.

If you were watching closely and knew what to look for in the first couple of months of 2000, the failures were there. But they were generally minor and easy to overlook as Y2K problems. I spotted something like half a dozen failures in various systems I interact with which I strongly suspected, based upon the timing, were likely Y2K problems that slipped through testing. For example, I received duplicate bills for o…

in JavaScript, new Date().getYear() returns 117 :)

.getYear() and .setYear() are deprecated in all recent standards [IIRC they were before 2000, I certainly remember them being recommended against as far back as that].
Post reply on HN