this post was submitted on 07 Jul 2025
1467 points (99.0% liked)

Microblog Memes

8514 readers
2761 users here now

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:

  1. Please put at least one word relevant to the post in the post title.
  2. Be nice.
  3. No advertising, brand promotion or guerilla marketing.
  4. Posters are encouraged to link to the toot or tweet etc in the description of posts.

Related communities:

founded 2 years ago
MODERATORS
 
top 50 comments
sorted by: hot top controversial new old
[–] prime_number_314159@lemmy.world 145 points 6 days ago (19 children)

Numbers guy here, I can confirm 256 is an evenly specific number, and not an oddly specific number.

[–] BuboScandiacus@mander.xyz 20 points 6 days ago (2 children)

Oh you are the numbers guy ? Name every number

[–] kameecoding@lemmy.world 24 points 6 days ago (3 children)

0, 1, 2, 3, 4, 5, 6, 7, 8, 9

[–] prime_number_314159@lemmy.world 12 points 6 days ago (1 children)

I'm going for the boring but practical answer: {x | x ∈ A} and {x | x ∉ A}. Obviously the second set is doing the heavy lifting.

load more comments (1 replies)
[–] banazir@lemmy.ml 5 points 5 days ago

But is it Numberwang, Mr. Numbers Guy?

load more comments (16 replies)
[–] jsomae@lemmy.ml 92 points 6 days ago (10 children)

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.

[–] AnarchistArtificer@slrpnk.net 36 points 6 days ago

"I inspected RAM to double check."

That's an unhinged level of commitment. Respect — I dig it

[–] JackbyDev@programming.dev 9 points 6 days ago (1 children)

I hate this. I love this.

If I ever make a game I might put stuff like this in it.

load more comments (1 replies)
[–] Nalivai@discuss.tchncs.de 8 points 6 days ago (2 children)

Maybe they keep some other data in the same space using bitmask?

[–] jsomae@lemmy.ml 32 points 6 days ago (1 children)

plausible, but my experience from dissecting these kinds of games is that they tend not to be as space efficient as you'd think they could be if they were the kaze emanuar type. The fact that they opted to have 257 distinct values for the laurels suggests to me that they weren't prioritizing space efficiency.

My best (wildly speculative) guess is that a designer, knowing 256 is a common limit, wasn't thinking carefully and said the maximum value should be 256 (instead of 255), and then an overly pedantic coder implemented this to the letter while rolling their eyes.

[–] chimp@sh.itjust.works 13 points 6 days ago

Currently in the industry - it's exactly this. It's a communication issue between the programming team and other teams, where designers freely speak for design, artists freely speak for art, etc. but it's much harder for programmers to speak for implementation since it's usually in reference to somebody else's work, and when designers get offended or defensive or dismissive of the non-designer requesting 256 be changed to 255, then it stops being worth it.

For example, we made an absolutely mint UI backend, it was data driven with editors so anyone could whip up a new UI for the next feature without needing programmers. The design team were like "damn, I hear how complicated this thing was to build, so let's make the programmers lives easier by not using it and only asking for simple bespoke stuff". Telling them "the investment has already been paid for so please use it" was tantamount to telling them how to do their job while being ungrateful they had considered us, furthering the communication breakdown.

Yes I'm bitter and tired. It's easier to use a short for 256 instead of arguing to have my opinion considered

load more comments (1 replies)
load more comments (7 replies)
[–] rarbg@lemmy.zip 58 points 6 days ago (4 children)

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.

[–] JackbyDev@programming.dev 15 points 6 days ago

It's a pretty succinct explanation that links what it is to something most people have heard of (a byte).

[–] Outbound7404@lemmy.ml 13 points 6 days ago

Their definition is a lot better.

load more comments (2 replies)
[–] phantomwise@lemmy.ml 50 points 6 days ago (1 children)

Yep very weird, should have been 255.

[–] deltapi@lemmy.world 56 points 6 days ago (9 children)

No, you can't have a group of zero, so the counter doesn't need to waste a position counting zero.

[–] 10OhmResistor@aussie.zone 39 points 6 days ago (1 children)

0 is reserved for the FBI agent listening in.

[–] dragonfucker@lemmy.nz 12 points 6 days ago (1 children)
[–] JcbAzPx@lemmy.world 19 points 6 days ago (1 children)

Nah, ICE agents don't care about evidence.

load more comments (1 replies)
[–] HereIAm@lemmy.world 12 points 6 days ago (1 children)

If you ever create a system where the number of users is "group.members - 1" everywhere in the code, I'd be very disappointed in you and deny that PR.

On another note; I doubt WhatsApp are so concerned with performance they are actually limiting the number of group members by the data type.

[–] BillBurBaggins@lemmy.world 10 points 6 days ago (1 children)

But it wouldn't be like that though would it. It would be public group.members() and the u8 would be private.

If all the millions of groups are saved on a central database then making the size a u8 isn't really that weird

load more comments (1 replies)
load more comments (7 replies)
[–] tired_n_bored@lemmy.world 11 points 5 days ago (2 children)

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

[–] Valmond@lemmy.world 3 points 5 days ago

Or some binary search tree with an artificial height lol.

[–] NigelFrobisher@aussie.zone 3 points 5 days ago

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.

[–] BilboBargains@lemmy.world 23 points 6 days ago (3 children)

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?

[–] JackbyDev@programming.dev 18 points 6 days ago (2 children)

Powers of two are the roundest of numbers.

[–] cook_pass_babtridge@feddit.uk 10 points 5 days ago (2 children)

They're not round, they're square!

load more comments (2 replies)
load more comments (1 replies)
[–] some_guy@lemmy.sdf.org 7 points 6 days ago (1 children)

They just do it to look cool in front of their developer friends.

load more comments (1 replies)
load more comments (1 replies)
[–] synapse1278@lemmy.world 22 points 6 days ago* (last edited 6 days ago) (2 children)

Still odd, I very much doubt they use a 8bit variable to set this limit. What would this bring ?

[–] Alaknar@sopuli.xyz 19 points 6 days ago

Still odd

Actually, it's even.

[–] qaz@lemmy.world 7 points 6 days ago* (last edited 6 days ago)

When the program is running it's probably stored with 32 or 64 bits, but that probably isn't the case for the network packet layout. I can imagine them wanting to optimize network traffic with over 3 billion users even if it's just a small improvement.

Also TIL that Erlang's VM apparently stores strings as linked lists of chars. Very strange.

data representation of string 'phi'

[–] Zachariah@lemmy.world 7 points 5 days ago

evenly specific

[–] echodot@feddit.uk 13 points 6 days ago

That's a super old article as well.

They got rightfully roasted in the comments for not knowing even the most basic things about computing.

[–] ObsidianZed@lemmy.world 9 points 6 days ago

I remember thinking something similar when I was a kid modding Starcraft. Max levels/ranks in researching was 256 and I always wondered why such a weirdly specific number.

[–] sirico@feddit.uk 9 points 6 days ago (1 children)

What's app starting from 1 the scrubs

load more comments (1 replies)
load more comments
view more: next ›