• 0 Posts
  • 14 Comments
Joined 1 year ago
cake
Cake day: August 28th, 2023

help-circle

  • The metric standard is to measure information in bits.

    Bytes are a non-metric unit. Not a power-of-ten multiple of the metric base unit for information, the bit.

    If you’re writing “1 million bytes” and not “8 million bits” then you’re not using metric.

    If you aren’t using metric then the metric prefix definitions don’t apply.

    There is plenty of precedent for the prefixes used in metric to refer to something other than an exact power of 1000 when not combined with a metric base unit. A microcomputer is not one one-thousandth of a computer. One thousand microscopes do not add up to one scope. Megastructures are not exactly one million times the size of ordinary structures. Etc.

    Finally: This isn’t primarily about bit shifting, it’s about computers being based on binary representation and the fact that memory addresses are stored and communicated using whole numbers of bits, which naturally leads to memory sizes (for entire memory devices or smaller structures) which are powers of two. Though the fact that no one is going to do something as idiotic as introducing an expensive and completely unnecessary division by a power of ten for every memory access just so you can have 1000-byte MMU pages rather than 4096 also plays a part.


  • If it averages several instances, with enough signal you could decompose a linear combination (e.g. average) of different patterns back out into its constituent parts.

    A smarter system won’t just take the mean of the votes from different instances but rather discard outliers as invalid input (flagging repeat offenders to be ignored in the future) and use the median or mode of the remainder. The results should also be quantitized to avoid leaking details about sources or internal algorithms; only the larger trends need to be reported.

    Of course you could always just keep the collected data private and only provide it to customers willing to pay $$$ for access, which handily limits instance operators’ ability to reverse-engineer the source of the data. And nothing prevents you from using separate instances for public and private data sets.


  • The fact that you’ve made it impossible to roll an 8 by replacing 2d4 with 1d6+1 might impact the game just a bit. Also with 2d4 a 5 is 4x as likely (1+4, 2+3, 3+2, 4+1) as a 2 (1+1) or 8 (4+4); with 1d6+1 all outcomes from 2 to 7 are equally likely, so you’re far more likely to get a critical hit or critical miss (if the game has that sort of thing, and you adjust it for the reduced range).






  • “Off topic” is a legitimate reason to downvote a post or comment, even one made respectfully and in good faith.

    I do sometimes wish more sites had adopted something like the system Slashdot used, with multiple categories of up or down votes (insightful, informative, off-topic, flamebait, etc.) which users could weight according to their own preferences. The simplistic “either up, down, or neutral” model is a rather blunt instrument.


  • nybble41@programming.devtoMastodon@lemmy.ml*Permanently Deleted*
    link
    fedilink
    arrow-up
    7
    arrow-down
    10
    ·
    1 year ago

    The more users spread out into smaller, more easily censored instances, the more the remaining fragmented bits of the Lemmy ecosystem still talking to each other will turn into echo chambers full of groupthink. This low threshold for defederation is the Fediverse’s greatest weakness. Sure, it’s possible to work around it—but how many separate Lemmy accounts are users expected to create? Even if you have accounts on every instance of note you’d need to manually cross-post messages to each balkanized server and their comment sections wouldn’t be shared—exactly the sort of thing federation was meant to avoid.

    Email, another federated system, has this same weakness. It’s why it’s increasingly difficult to run your own (outgoing) email server which other systems will accept messages from without going through a well-known third party like Google. Especially when trying to push content to a large audience (e.g. mailing lists), which happens to be Lemmy’s core function.


  • Examples of local commands I might run in tmux could include anything long-running which is started from the command line. A virtual machine (qemu), perhaps, or a video encode (ffmpeg). Then if I need to log out or restart my GUI session for any reason—or something goes wrong with the session manager—it won’t take the long-running process with it. While the same could be done with nohup or systemd-run, using tmux allows me to interact with the process after it’s started.

    I also have systems which are accessed both locally and remotely, so sometimes (not often) I’ll start a program on a local terminal through tmux so I can later interact with it through SSH without resorting to x11vnc.


  • Not the GP but I also use tmux (or screen in a pinch) for almost any SSH session, if only as insurance against dropped connections. I occasionally use it for local terminals if there is a chance I might want a command to outlive the current graphical session or migrate to SSH later.

    Occasionally it’s nice to be able to control the session from the command line, e.g. splitting a window from a script. I’ve also noticed that wrapping a program in tmux can avoid slowdowns when a command generates a lot of output, depending on the terminal emulator. Some emulators will try to render every update even if it means blocking the output from the program for the GUI to catch up, rather than just updating the state of the terminal in memory and rendering the latest version.



  • Unreal is “source available”, not Open Source. There’s a big difference. With any Open Source project you can legally fork the project, distribute your custom version of the code, create a community around your variant… “source available” has none of that. The Unreal EULA is more permissive than most game engine licenses (with the obvious exception of Godot) but it still comes with plenty of restrictions. For example:

    You are permitted to post snippets of Engine Code, up to 30 lines of code in length, online in public forums for the sole purpose of discussing the content of the snippet or Distribute such snippets in connection with supporting patches and plug-ins for the Licensed Technology, so long as it is not for the purpose of enabling third parties without a license to the Engine Code to use or modify any Engine Code or to aggregate, recombine, or reconstruct any larger portion of the Engine Code.

    Which pretty clearly does not satisfy the Open Source Definition.