• 0 Posts
  • 100 Comments
Joined 1 year ago
cake
Cake day: June 11th, 2023

help-circle
  • Melmi@lemmy.blahaj.zonetoProgrammer Humor@lemmy.mlOff by one solitude
    link
    fedilink
    English
    arrow-up
    1
    ·
    edit-2
    2 months ago

    Yeah, fair enough. To my mind I guess I don’t think of array indexes as an example of actual zero based numbering, simply a quirk of how pointers work. I don’t see why one starting from zero has anything to do with the other starting from zero. They’re separate things in my head. Interestingly, the article you linked does mention this argument:

    Referencing memory by an address and an offset is represented directly in computer hardware on virtually all computer architectures, so this design detail in C makes compilation easier, at the cost of some human factors. In this context using “zeroth” as an ordinal is not strictly correct, but a widespread habit in this profession.

    That said, I suppose I still use normal one-based numbering because that’s how I’m used to everything else working.


  • Melmi@lemmy.blahaj.zonetoProgrammer Humor@lemmy.mlOff by one solitude
    link
    fedilink
    English
    arrow-up
    1
    arrow-down
    1
    ·
    2 months ago

    Indexes start from zero because they’re memory offsets, but array[0] is still the first element because it’s an ordinal number, not an offset. It’s literally counting each element of the array. It lines up with the cardinality—you wouldn’t say ['A', 'B', 'C'] has two elements, despite array[2] being the last element.



  • Yes, but only if your firewall is set to reject instead of drop. The documentation you linked mentions this; that’s why open ports are listed as open|filtered because any port that’s “open” might actually be being filtered (dropped).

    On a modern firewall, an nmap scan will show every port as open|filtered, regardless of whether it’s open or not.

    Edit: Here’s the relevant bit from the documentation:

    The most curious element of this table may be the open|filtered state. It is a symptom of the biggest challenges with UDP scanning: open ports rarely respond to empty probes. Those ports for which Nmap has a protocol-specific payload are more likely to get a response and be marked open, but for the rest, the target TCP/IP stack simply passes the empty packet up to a listening application, which usually discards it immediately as invalid. If ports in all other states would respond, then open ports could all be deduced by elimination. Unfortunately, firewalls and filtering devices are also known to drop packets without responding. So when Nmap receives no response after several attempts, it cannot determine whether the port is open or filtered. When Nmap was released, filtering devices were rare enough that Nmap could (and did) simply assume that the port was open. The Internet is better guarded now, so Nmap changed in 2004 (version 3.70) to report non-responsive UDP ports as open|filtered instead.



  • The “make a fork” thing is part of the issue, I think. In general there’s this culture in the open source community that if you want a feature, you should implement it yourself and not expect the maintainers to implement it for you. And that’s good advice to some extent, it’s great to encourage more people to volunteer and it’s great to discourage entitlement.

    But on the other hand, this is toxic because not everyone can contribute. Telling non-technical users to “make it yourself” is essentially telling them to fuck off. To use the house metaphor, people don’t usually need to design and renovate their houses on their own, because that’s not their skillset, and it’s unreasonable to expect that anyone who wants a house should become an architect.

    Even among technical users, there are reasons they can’t contribute. Not everyone has time to contribute to FOSS, and that’s especially notable for non-programmers who would have to get comfortable with writing code and contributing in the first place.


  • Google destroys their own search engine by encouraging terrible SEO nonsense and then offers the solution in the form of these AI overviews, cutting results out of the picture entirely.

    You search something on the Web nowadays half the results are written by AI anyway.

    I don’t really care about the “human element” or whatever, but AI is such a hype train right now. It’s still early days for the tech, it still hallucinates a lot, and I fundamentally can’t trust it—even if I trusted the people making it, which I don’t.


  • Just because you can work with one monitor doesn’t mean multiple monitors isn’t more comfortable though. You can have multiple windows open at once, at full size, and glance between them freely. No need for them to share the limited real estate of a single monitor.

    I run Sway on my laptop because it lets me take full advantage of my single monitor, but on my multi monitor desktop setup I use a regular floating DE.



  • Melmi@lemmy.blahaj.zonetoSelfhosted@lemmy.worldReverse proxy
    link
    fedilink
    English
    arrow-up
    5
    ·
    7 months ago

    It definitely encrypts the traffic, the problem is that it encrypts the traffic in a recognizable way that DPI can recognize. It’s easy for someone snooping on your traffic to tell that you’re using Wireguard, but because it’s encrypted they can’t tell the content of the message.








  • Most things should be behind Authelia. It’s hard to know how to help without knowing what exactly you’re doing with it but generally speaking Authelia means you can have SSO+2FA for every app, even apps that don’t provide it by default.

    It also means that if you have users, you don’t need them to store a bunch of passwords.

    One big thing to keep in mind is that anything with its own login system may be more involved to get working behind Authelia, like Nextcloud.


  • Melmi@lemmy.blahaj.zonetoLinux@lemmy.mlHow do you say SUSE?
    link
    fedilink
    English
    arrow-up
    5
    ·
    7 months ago

    Except GNU is a great example of an acronym that is pronounceable. It’s even in the dictionary. The GNU mascot is a gnu, in fact.

    LGBTQIA+ is essentially unpronounceable, thus we treat it as an initialism. Not that that’s a requirement, there are examples like VIP where even though we could pronounce it we pronounce each letter individually.


  • But hey, instead of killing everyone, eugenics could lead us to a beautiful stratified future, like depicted in the aspirational sci-fi utopia of Brave New World!

    I agree with you, ultimately. My point is just that “good for humanity vs bad for humanity” isn’t a debate, there’s no “We want to ruin humanity” party. Most people see their own viewpoint as being best for humanity, unless they’re a psychopath or a nihilist.

    There are fundamental differences in political views as well as ethical beliefs, and any attempt to boil them down to “good for humanity” vs “bad for humanity” is going to be inherently political. I think “what’s best for humanity” is a good guiding metric to determine what one finds ethical, but using it to categorize others’ political beliefs is going to be divisive at best.

    In other words, it’s not comparable to the left/right axis, which may be insufficient and one-dimensional, but at least it describes something that can be somewhat objective (if controversial and ill-defined). Someone can be happy with their position on the axis. Whereas if it were good/bad, everyone would place themselves at Maximum Good, therefore it’s not really useful or comparable to the left/right paradigm.


  • I don’t think that “everyone is inherently equal” is a conclusion you can reach through logic. I’d argue that it’s more like an axiom, something you have to accept as true in order to build a foundation of a moral system.

    This may seem like an arbitrary distinction, but I think it’s important to distinguish because some people don’t accept the axiom that “everyone is inherently equal”. Some people are simply stronger (or smarter/more “fit”) than others, they’ll argue, and it’s unjust to impose arbitrary systems of “fairness” onto them.

    In fact, they may believe that it is better for humanity as a whole for those who are stronger/smarter/more fit to have positions of power over those who are not, and believe that efforts for “equality” are actually upsetting the natural way of things and thus making humanity worse off.

    People who have this way of thinking largely cannot be convinced to change through pure logical argument (just as a leftist is unlikely to be swayed by the logic of a social darwinist) because their fundamental core beliefs are different, the axioms all of their logic is built on top of.

    And it’s worth noting that while this system of morality is repugnant, it doesn’t inherently result in everyone killing each other like you claim. Even if you’re completely amoral, you won’t kill your neighbor because then the police will arrest you and put you on trial. Fascist governments also tend to have more punitive justice systems, to further discourage such behavior. And on the governmental side, they want to discourage random killing because they want their populace to be productive, not killing their own.