Live data from Hacker News

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

chess.com

301–310 of 338 posts

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

#301
post #215

Earlier quoted context omitted.

Wikipedia says one cause of dandruff is yeast-like fungus. Perhaps PH plays a role in that. Also vinegar has cleansing properties and may be less drying than detergent, and dry skin is another cause of dandruff.

> _may_ be less drying than detergent (Emphasis mine) Did you miss the part where GP asked people to stop spreading pseudo scientific falsehoods?

"harsh soaps, detergents, and perfumes, [...] tend to dry the skin"

https://www.urmc.rochester.edu/encyclopedia/content.aspx?con...

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

#302
post #176

Earlier quoted context omitted.

Ha! Rebuilding the code. The source will be lost and the binary will be irreplaceable in many circumstances.

Embed the source code in the binary.

Wow, these libraries are way too large

strip a.out

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

#303
post #3

How many other examples like this have occurred throughout computing history?

IIRC the whole "Gandhi is gonna nuke the rest of the world" meme came from such a bug occuring in the world-domination strategy game Civilization 2.

They had meant to give him the lowest aggression rating possible, but accidentally inputted -1, which then looped back the other way to the highest rating possible. Nukes soon followed.

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

#304
post #110

> For f sake how are we supposed to Anderstand that. I suppose your French fry maker is broken ? Didn't expect Chess.com and YouTube to have a crossover of users? Surprised there isn't active moderation on a site this size.

In my experience the chat on chess.com harbors a similar demographic to that of most video games. You'd think that chess would attract a more mature player base, but nope.

Chess played on a computer fits the literal definition of a video game, and one that has near infinite replay value.

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

#305
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…

Systems from this era were probably using BCD rather than base-10 strings. A BCD date would take up 24 bits.

Running a complicated date routine to convert to/from 32-bit timestamps would also have cost a huge amount. These machines had speeds measured in thousands of operations per second, and the division operations needed to do that sort of date work would take ages, relatively speaking. All on a machine that cost dozens of times the average yearly wage at the time, and accordingly needed to get as much work done as possible in order to earn its keep.

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

#306

Earlier quoted context omitted.

Your link discusses 2^64, which applies to languages that have native integer types. The 2^53 problem was for Javascript, which has no native integer type, and is thus limited by the mantissa size of Number (which is defined as an IEEE double-precision float). Twitter ids are unsigned 64-bit, since they're generated using Snowflake. That link must pre-date the move to snowflake ids, and is speaking to the count of tw…

I'd be incredibly surprised if they overflowed 9 quadrillion tweets. That's like a million tweets per person on earth.

In the dystopian future where everyone's IoT devices communicate by tweeting at each other this might become a real issue.

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

#307

Earlier quoted context omitted.

We can help you understand how and why! Computers set limits internally on how big numbers can be when they're keeping track of stuff. Your developers had given each game a number to identify it. So your first game was #1, the 40th game was #40, and so on. The limit for how big the number could be was a bit over 2 billion, and your players have just now played a bit over 2 billion games, and so that id number suddenl…

Yes - I understand HOW it happened, just not sure WHY. Meaning, I'm not sure what the developer was thinking, and at this point, I'm not going to track down exactly who it was and point fingers. I think everyone has learned enough through this highly interesting bug. It certainly was interesting to see the slack room exploding with theories and debugging. A new iOS client has been submitted to Apple (hurry plz!!!), a…

> Meaning, I'm not sure what the developer was thinking, and at this point, I'm not going to track down exactly who it was and point fingers.

As a developer, this sentence made my skin crawl.

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

#308
post #303

Earlier quoted context omitted.

IIRC the whole "Gandhi is gonna nuke the rest of the world" meme came from such a bug occuring in the world-domination strategy game Civilization 2.

They had meant to give him the lowest aggression rating possible, but accidentally inputted -1, which then looped back the other way to the highest rating possible. Nukes soon followed.

Was it exactly that? I remember it being that you had to create a senate or something (that decreased character aggression by 2 points). Gandhi started with 1, so if you did it with Gandhi, then it'd underflow to the highest possible aggression.

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

#309
post #171

Earlier quoted context omitted.

For those, like my, that didn't recall off the top of their heads: BLOB in MySQL can usually only hold ~64KB. EDIT: Though I am curious why MySQL doesn't throw an error when you try to store more than 64KB in BLOB?

Huh, I thought BLOB was a backronym for Binary Large OBject, not Binary Medium Object.

There are LONGBLOB, TINYBLOB, etc just like the equivalent TEXT fields

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

#310

Earlier quoted context omitted.

- Who among us is writing code today worried about how it will be used in 2052? The good programmers who are fortunate enough to be working on software that matters.

I doubt that's true, unless you mean it tautologically. There are plenty of good programmers working on software that matters that should absolutely not be trading off hazy possible benefits in 2052 for significant costs now. It's occasionally necessary. When I wrote the code for Long Bets [1], I took a number of prudent steps to make sure things would have a good shot at surviving for decades. But I only took the ch…

> There are plenty of good programmers working on software that matters that should absolutely not be trading off hazy possible benefits in 2052 for significant costs now.

I guess it's not obvious, but I think there's really a continuum here. You don't necessarily need to write software that will run perfectly in 2052, but it'd be good if you wrote software that can be comprehended, adapted and altered later on. Maintainability is never a "hazy benefit." (If the problem isn't a total throwaway.)

Post reply on HN