• BilboBargains@lemmy.world
    link
    fedilink
    English
    arrow-up
    16
    arrow-down
    1
    ·
    13 hours ago

    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?

      • BilboBargains@lemmy.world
        link
        fedilink
        English
        arrow-up
        1
        ·
        1 hour ago

        Much later in my career I came to appreciate the beauty of this system and the link with hexadecimal. I had to debug a network transmitted CRC that was endian flipped and in that process learned that in the Galois Field of two, 1+1=0 which feels delightfully nonsensical to a luddite.

    • Worx@lemmynsfw.com
      link
      fedilink
      English
      arrow-up
      9
      arrow-down
      1
      ·
      12 hours ago

      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.

      • Scubus@sh.itjust.works
        link
        fedilink
        English
        arrow-up
        9
        ·
        11 hours ago

        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.

  • rarbg@lemmy.zip
    link
    fedilink
    English
    arrow-up
    35
    ·
    15 hours ago

    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
      link
      fedilink
      English
      arrow-up
      5
      ·
      4 hours ago

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

    • thisisnotgoingwell@programming.dev
      link
      fedilink
      English
      arrow-up
      2
      ·
      edit-2
      10 hours ago

      It used to be a way bigger deal when computers were very memory scarce, if you needed to say, represent 1024 values, that means you’d use 10 bits or 2 bytes, the remaining 6 bits could be used to store other related information like flags but more often than not it would be waste (unused values that still have to be represented as 0s)

      These numbers are pretty arbitrary nowadays but they still show up a lot in computing. They didn’t choose 256 so they could represent it in a byte, the real reason is probably that groups larger than 256 can’t realistically be managed by users.

      That’s my 2¢ anyways.

    • InternetCitizen2@lemmy.world
      link
      fedilink
      English
      arrow-up
      2
      ·
      10 hours ago

      Tbf saying it that way brings a visual metaphor. Simply giving it as a mathematical definition would leave it feeling just as arbitrary.

  • jsomae@lemmy.ml
    link
    fedilink
    English
    arrow-up
    77
    ·
    18 hours ago

    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.

      • jsomae@lemmy.ml
        link
        fedilink
        English
        arrow-up
        28
        ·
        17 hours ago

        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
          link
          fedilink
          English
          arrow-up
          10
          ·
          16 hours 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

    • deltapi@lemmy.world
      link
      fedilink
      English
      arrow-up
      54
      arrow-down
      1
      ·
      22 hours ago

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

      • HereIAm@lemmy.world
        link
        fedilink
        English
        arrow-up
        11
        ·
        21 hours ago

        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
          link
          fedilink
          English
          arrow-up
          9
          ·
          20 hours ago

          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

          • HereIAm@lemmy.world
            link
            fedilink
            English
            arrow-up
            3
            ·
            18 hours ago

            I hadn’t thought about it on their server side tbf. But the more i think about it maybe there are other compounding reasons to keep group sizes small, such as the exponential number of links in a growing network and such. But, that is all beyond my knowledge area.

      • seejur@lemmy.world
        link
        fedilink
        English
        arrow-up
        1
        ·
        15 hours ago

        You cannot also have a group of 1, therefore either is 255 or 257. 256 is oddly specific (or the code was made by an intern)

  • Echo Dot@feddit.uk
    link
    fedilink
    English
    arrow-up
    13
    ·
    18 hours 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.

  • Synapse@lemmy.world
    link
    fedilink
    English
    arrow-up
    22
    arrow-down
    1
    ·
    edit-2
    18 hours ago

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

    • qaz@lemmy.world
      link
      fedilink
      English
      arrow-up
      7
      ·
      edit-2
      14 hours 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'

  • ObsidianZed@lemmy.world
    link
    fedilink
    English
    arrow-up
    9
    ·
    17 hours 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.

  • 18107@aussie.zone
    link
    fedilink
    English
    arrow-up
    55
    arrow-down
    6
    ·
    24 hours ago

    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.

  • Chozo@fedia.io
    link
    fedilink
    arrow-up
    157
    arrow-down
    4
    ·
    1 day ago

    Source.

    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

    • markz@suppo.fi
      link
      fedilink
      English
      arrow-up
      83
      arrow-down
      1
      ·
      24 hours ago

      That weird ass explanation with switches and “one of the most important numbers” still sounds absolutely clueless.

      • wabasso@lemmy.ca
        link
        fedilink
        English
        arrow-up
        17
        ·
        edit-2
        20 hours ago

        I liked the switches analogy! Generally about binary though; I agree it doesn’t connect back to the number of users application.

        And yeah most important number…sounds like they were quoting an LLM.

    • AFK BRB Chocolate (CA version)@lemmy.ca
      link
      fedilink
      English
      arrow-up
      12
      ·
      19 hours ago

      That quote really is the problematic part. The part about switches is fine - it’s an attempt to explain tech to a “normie.” But for a tech writer to ever say it’s not clear why they settled on 256 is worse than embarrassing. They had to be corrected by tweets.

      Anyone whose ever had an intro to computers class has had a computing professional explain computers using simple language and analogies. That’s the way this kind of thing should work. It sounds like this author has no more clue about computing than the target audience, which isn’t going to work out well for the reader.

    • sp3ctr4l@lemmy.dbzer0.com
      link
      fedilink
      English
      arrow-up
      5
      ·
      edit-2
      16 hours ago

      It used to be common for uh, writers, journalists, to have at least basic familiarity with what they’re writing or reporting on.

      Its not like this is journalistic malpractice, spreading lies, fabricating a quote, supporting a bs narrative by being very selective with context and such…

      … but it is pretty embarrassing.

      People seem to constantly confuse ‘i use computer technology’ with ‘i understand how computer technology works’.

      Like uh, Gen Z and A are the most digital, online generations yet… but many of them can’t type on a keyboard, have no idea what a file/folder structure is.

      • AnarchistArtificer@slrpnk.net
        link
        fedilink
        English
        arrow-up
        3
        ·
        13 hours ago

        I think you’re highlighting two different problems here.

        I agree that Gen Z and younger are, on average, far worse at basic computer skills than many seem to assume. It makes me reflect on my tech-learning throughout my childhood, as a Millennial. I think that part of it is that many erroneously assume that because Gen Z has grown up online, that this will lead to proficiency, but the kind of tech they’ve been exposed to is largely walled gardens and oversimplified UIs. That assumption of proficiency leads to scenarios where their lack of skill is only discovered when they enter college, or the workplace. I am astounded at the prospect of people not even knowing the difference between “Cut and Paste” and “Copy and Paste”. It’s grim.

        The poor quality of journalism may be linked to this, but I think it’s larger than that. It seems like it’s not a great time to be a journalist at the moment (my writer friends tell me that increasingly, the only work they’re able to find is copy-editing AI shit). Private equity is fucking up so much of the world — journalism included. Polygon is an example of an outlet that was apparently sustainably profitable, before it was sold and experienced mass lay-offs; an individual company’s success doesn’t matter to the big conglomerate that owns it. I know that other journalistic companies have fallen to the same fate too.

        It also seems that tech journalism ends up being especially shit. I didn’t start noticing it properly until I watched this podcast episode from “Tech Won’t Save Us”. The TL;DW of it is that tech journalists like Kara Swisher like to pretend that they speak truth to power, and fire hard-hitting questions at big tech people, when that’s patently bullshit and it’s clear that they only get the access that they do by playing softball with the powerful. We can’t blame a few individuals for the entirety of the tech journalism problem, but I reckon it’s a big part of it when so many of the established, big names in this space don’t seem interested in actually doing tech journalism (and smaller names who want to ask journalistically interesting questions don’t get platforms or access to ask those questions).

        Our information ecosystem is not in a great place. I’ve found it tremendously beneficial to curate the news and information I’m exposed to (praise be RSS), but that has been a gradual process of actively working to notice good journalism in the world and build up my mental “rolodex” of people whose perspectives I trust to be worthwhile (even if I don’t necessarily agree with said perspectives). However, this is an area that I care deeply about, and thus it feels worthwhile to spend that energy to curate my infosphere. Most people won’t have the inclination or energy to do this work, which is unfortunate.

        • sp3ctr4l@lemmy.dbzer0.com
          link
          fedilink
          English
          arrow-up
          1
          ·
          edit-2
          10 hours ago

          I almost entirely agree with what you’ve said here, I just didn’t feel like writing out all the nuances, and was trying to just do a surface level analogy.

          The only part where I even sort of maybe disagree is… there are actually good tech news sources, they just tend to be either fairly or highly specialized, and/or pretty niche, literally just a guy, or a couple people, running a website basically like its still Web 1.0 days.

          But absolutely yes, the broader audience that an outfit appeals to, the broader scope of things they try to cover… its a joke, doing comprehensive reviews of everything would take a whole bunch if teams of specialists, so… most don’t even bother, and just link to somebody else who did that, and try to summarize it … and thats a best case scenario.

          It is truly horrendous with video game journalism.

          Beyond the surface level stuff of seemingly arbitrary and nonsensical review scores, the incestuous access journalism aspect of it that turns most of them into just advertising…

          Almost none of these people offer a meaningful critique of like, the business strategy, the corporate culture, the deals between companies, the astoundingly high usage of contractors and just endemic, obvious galactic levels of incompetence management shows all the time.

          Again, there are a few exceptions to this, they’ll cover some obviously heinous shit like sexual harassment and absurd crunch seasons, they’ll report on unions trying to form, and there are a few actually decent investigators…

          … but by and large, there is basically no investigative journalism into say, an utterly collapsed, decade spanning, $400 million dollar game that just flops in a month… not on the level that I feel is journalistically called for there, which would be roughly ‘this is Enron’, ‘this is Lehman Brothers’.

          They live in this silly nonsense world where the gaming industry is fucking huge and important, but they still mostly cover it like disaffected former fanboys/girls, rather than taking it as seriously as it should be taken.

          Because there is no meaningful dissection of how truly idiotic and evil just now routine AAA corpo game publisher logic works, at like a macro to microeconomic comprehensive analysis level… we instead get the masses dramatically oversimplifying things on that front, and then focusing waaaaay too much on whether or not its ok for characters to have pronouns.

          Like, me, I am the only person I am aware of who has been saying:

          Kernel level anti cheat is not actually necessary, it doesn’t even achieve what it purports to, thus, it just serves as a way to to maintain a corporate grip over the platform (Windows) of the PC gaming market.

          Similarly, the entire real time ray tracing paradigm of Nvidia/Unreal Engine is also a fucking scam, though I am at least seeing more people do comprehensive breakdowns on why that is the case, of course the PC hardware reviewers are very fed up with this by now… but still only a few go into the massive economic impacts of that and thus broad societal implications.

          There, your essay provoked my own rant-essay, lol.

          I could write on this for days if my wrist was so fucked, bleck.

    • wuzzlewoggle@feddit.org
      link
      fedilink
      English
      arrow-up
      56
      arrow-down
      5
      ·
      1 day ago

      One of the most important numbers? I’d argue the most important number in computing is either 1 or 0…

    • AlexanderTheDead@lemmy.world
      link
      fedilink
      English
      arrow-up
      10
      ·
      20 hours ago

      It doesn’t really matter that it’s a “normie article for normie readers”. Writing articles is journalism. Not knowing 256 offhand? Permissible. Being a journalist who wrote an article and didn’t even do the bare bones of research? You’re still a bad journalist, and as callous as it is, you should lose your job and livelihood. Bad journalism is too dangerous to just let it fester like this.

      • Echo Dot@feddit.uk
        link
        fedilink
        English
        arrow-up
        2
        ·
        18 hours ago

        The newspaper he was writing for is a major publication he absolutely could have asked someone.

        The problem here is the newspaper didn’t care enough about the article to put anyone on it who is even remotely familiar with technology. They probably thought of it as just some throwaway piece to fill out a bit of space. Which to be fair it would have been had it not been for that comment.

  • xeekei@lemmy.zip
    link
    fedilink
    English
    arrow-up
    75
    arrow-down
    1
    ·
    1 day ago

    You know you’re a tech nerd when 256 sounds more even than 250 or 300. 😅

    • Krzd@lemmy.world
      link
      fedilink
      English
      arrow-up
      2
      ·
      18 hours ago

      Depends on how they handle groups with 0 members, if they just get deleted once the last person leaves, you shouldn’t run into issues