As a software engineer: actually there is no need for a number of people as a power of 2 unless you need exactly 1 byte to store such information which sounds ridiculous for the size of Whatsapp
Microblog Memes
A place to share screenshots of Microblog posts, whether from Mastodon, tumblr, ~~Twitter~~ X, KBin, Threads or elsewhere.
Created as an evolution of White People Twitter and other tweet-capture subreddits.
Rules:
- Please put at least one word relevant to the post in the post title.
- Be nice.
- No advertising, brand promotion or guerilla marketing.
- Posters are encouraged to link to the toot or tweet etc in the description of posts.
Related communities:
Or some binary search tree with an artificial height lol.
It’d make sense at protocol level. Otherwise, yeah, even bit-size database columns end up being stored as a word unless the engine compacts it.
Numbers guy here, I can confirm 256 is an evenly specific number, and not an oddly specific number.
But is it Numberwang, Mr. Numbers Guy?
evenly specific
Shout out to Castlevania II, where you can hold anywhere from 0 to 256 laurels. Yes, you read that right -- 256, not 255. I inspected RAM to double check. It's a 16-bit word on an 8-bit system with a maximum value of 0x100
. They could have used 8 bits instead of 16. But no, they really did choose this arbitrary number.
"I inspected RAM to double check."
That's an unhinged level of commitment. Respect — I dig it
I hate this. I love this.
If I ever make a game I might put stuff like this in it.
Having made a few games back in the day, this isn't something you add on purpose, this is something that you screwed up, are going to "fix later", then realize it's too much hassle to rewrite 45% of your code and you just raise the minimum spec requirements a bit to compensate.
A previous version of this article said it was "not clear why WhatsApp settled on the oddly specific number." A number of readers have since noted that 256 is one of the most important numbers in computing, since it refers to the number of variations that can be represented by eight switches that have two positions - eight bits, or a byte.
Lol, weird way to say that 256 is a power of two, and computers operate in base two.
Their definition is a lot better.
It's a pretty succinct explanation that links what it is to something most people have heard of (a byte).
This isn't a "tech article", it's an article about tech. This is a normie article from a normie news outlet for normie readers.
Also from the article:
A previous version of this article said it was "not clear why WhatsApp settled on the oddly specific number." A number of readers have since noted that 256 is one of the most important numbers in computing, since it refers to the number of variations that can be represented by eight switches that have two positions - eight bits, or a byte. This has now been changed. Thanks for the tweets. DB
That weird ass explanation with switches and "one of the most important numbers" still sounds absolutely clueless.
One of the most important numbers? I'd argue the most important number in computing is either 1 or 0...
I remember being puzzled by this and many other numbers that kept cropping up. 32, 64, 128, 256, 1024, 2048... Why do programmers and electronic engineers hate round numbers? The other set of numbers that was mysterious was timber and sheet materials. They cut them to 1220 x 2440mm and thicknesses of 18 and 25mm. Are programmers and the timber merchants part of some diabolical conspiracy?
32, 64, 128 etc. are all round numbers, counting in binary. They are powers of two. Since computers work in binary, they make logical sense.
1220mm is 4ft, and 18 and 25mm are three-quarters of an inch, and an inch respectively.
They were making a joke. That being said, im not familiar with lumber or imperial<->metric conversions so their second point was lost on me, so thanks.
Yep very weird, should have been 255.
No, you can't have a group of zero, so the counter doesn't need to waste a position counting zero.
You know you're a tech nerd when 256 sounds more even than 250 or 300. 😅
It kind of is "more even".
256 is just 2⁸
250 is 2x5³
300 is 2²x3¹x5²
Any division of 256 with an integer and integer result will be even. Most divisions of 250 and 300 with an integer and integer result will be odd.
In this case the limit was entirely arbitrary.
The programmers were told to pick a limit and they liked 256. There are issues with having a large number of people in a group, but it wasn't a hardware limit for this particular case.
But it's still not oddly specific, they picked a nice round number
Still odd, I very much doubt they use a 8bit variable to set this limit. What would this bring ?
Still odd
Actually, it's even.
So, I get that 256 is a base 2 number. But we're not running 8-bit servers or whatever here (and yes, I understand that's not what 8-bit generally refers to). Is there some kind of technical limitation I'm not thinking of where 257 would be any more difficult to implement, or really is it just that 256 has a special place in someone's heart because it's a base 2 number?
Because 256 is exactly one byte. If you want to add a 257th member, you need a whole second byte just for that one person. That's a waste of memory, unless you want to go to the 64k barrier of users per chat.