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

help-circle
  • BitSound@lemmy.worldtoLinux@lemmy.mlIdiomatic awk
    link
    fedilink
    arrow-up
    9
    arrow-down
    1
    ·
    11 days ago

    Does anyone here actually use awk for more than trivial operations? If I ever have to have to consider writing anything substantial with bash/awk/sed/etc, I just start writing a Python script. No hate to the classic tools, but Python is just really nice.





  • Probably my favorite set of stories is by qntm, who writes lots of short fiction you can check out at his site. He wrote There Is No Antimemetics Division, which I think is best described by the intro he wrote for it:

    An antimeme is an idea with self-censoring properties; an idea which, by its intrinsic nature, discourages or prevents people from spreading it.

    Antimemes are real. Think of any piece of information which you wouldn’t share with anybody, like passwords, taboos and dirty secrets. Or any piece of information which would be difficult to share even if you tried: complex equations, very boring passages of text, large blocks of random numbers, and dreams…

    But anomalous antimemes are another matter entirely. How do you contain something you can’t record or remember? How do you fight a war against an enemy with effortless, perfect camouflage, when you can never even know that you’re at war?

    Welcome to the Antimemetics Division.

    No, this is not your first day.

    There’s a lot of other good entries too. They generally take the form of a wiki entry at https://scp-wiki.wikidot.com/, as a classified file describing some anomalous thing or event. They have a shared canon but only loosely, individual stories can conflict with one another. Here’s a couple good ones:

    I’ll post over in !scp@lemmy.world too, to see what other people recommend for getting into it







  • BitSound@lemmy.worldtoLinux@lemmy.mlThe Dislike to Ubuntu
    link
    fedilink
    arrow-up
    12
    arrow-down
    1
    ·
    edit-2
    1 month ago

    Canonical lives and dies by the BDFL model. It allowed them to do some great work early on in popularizing Linux with lots of polish. Canonical still does good work when forced to externally, like contributing upstream. The model falters when they have their own sandbox to play in, because the BDFL model means that any internal feedback like “actually this kind of sucks” just gets brushed aside. It doesn’t help that the BDFL in this case is the CEO, founder, and funder of the company and paying everyone working there. People generally don’t like to risk their job to say the emperor has no clothes and all that, it’s easier to just shrug your shoulders and let the internet do that for you.

    Here are good examples of when the internal feedback failed and the whole internet had to chime in and say that the hiring process did indeed suck:

    https://news.ycombinator.com/item?id=31426558

    https://news.ycombinator.com/item?id=37059857

    “markshuttle” in those threads is the owner/founder/CEO.



  • For your bullet points:

    • Yeah, GNOME can be flakey with extensions. Almost no regular users will install extensions though. Windows also has tons of bugs and issues that users just ignore because it’s the “default”
    • Regular users won’t care about desktop scaling. I’ve seen people using the blurriest, weirdest aspect ratios on Windows because they liked it that way
    • Bluetooth sucks on all hardware and with all software, to various degrees.
    • Syncing files is trivial with Syncthing
    • MacOS keeps breaking my coworker’s setups with every update.

    GPU issues can be hard, but that’s not really Linux’s fault. There’s a reason this image exists of Linus giving nvidia the middle finger:

    That being said, it’s getting better. As of this year, nvidia has started putting some real effort into making things work with wayland.

    EDIT: I’ve found nirvana with NixOS, speaking of GPU drivers. I just add a few lines to /etc/nixos/configuration.nix and it goes off and ensures that the nvidia drivers are present. I also run lots of CUDA stuff on top of that and it all works about as seamlessly as possible.



  • Not the person you’re asking, but I’d say yes. Don’t bother charging for bits, except for something like the bandcamp model, i.e. “yes, i could pirate this but i want to support the creator and it’s really easy to do so”.

    We have better funding models now that we’ve solved the problem of copying at zero cost. Patreon is a good and popular one, as well as kickstarters. You can’t pirate something that doesn’t get made, which is the perfect solution. Other art like music also makes money off of things like live performances that can’t be digitized.

    Note that the one aspect of copyright that I like is attribution requirements. I think it’s perfectly fine to hand out information to anyone, as long as you say “here’s this cool thing, this is who created it, and this is how you can give them money”.


  • I’d be fine with copyright going away altogether. People sometimes object to this on the grounds of “But Disney will just steal your ideas and make money off of them”. If their works don’t have copyright though, you can do the same right back to them.

    This is also one reason that I appreciate generative AI. Short-term, yes it will help Disney and the like. Slightly longer-term, why would anyone give Disney money if you can generate your own Marvel movie yourself?

    The genie also isn’t going back in the bottle. Copyright is a dead man walking. If you dislike what large companies like Disney are doing/going to do with generative AI, push for anyone training a model to be forced to let anyone whose work went into that model for free.


  • The original duration in the U.S. was 14 years, plus the option of a renewal for another 14. IMO we should move back to something close to that. One idea I’ve seen is that there’s an initial cost of however much for 7 years, and then the price doubles for every 7 year extension beyond that. Not even Disney can beat exponential growth, and it would force them to pick what they actually care about.

    I’d also prefer explicit registration. We’re losing too many works because nobody’s sure who owns the copyright, and nobody knows if it’s safe to archive them.

    I’d say that the original Star Wars trilogy should be public domain by now, for a concrete example. Disney can make new stories and characters in the universe and make money off of them, but everyone else should be able to as well.

    Also as an aside, here’s Richard Stallman on why the term “intellectual property” shouldn’t be used. It’s an umbrella term that doesn’t really make sense, and more explicit terms like copyright or patents or trademark should be used.



  • For a direct replacement, you might want to consider enums, for something like

    enum Strategy {
        Foo,
        Bar,
    }
    

    That’s going to be a lot more ergonomic than shuffling trait objects around, you can do stuff like:

    fn execute(strategy: Strategy) {
        match strategy {
            Strategy::Foo => { ... }
            Strategy::Bar => { ... }
    }
    

    If you have known set of strategy that isn’t extensible, enums are good. If you want the ability for third party code to add new strategies, the boxed trait object approach works. Consider also the simplest approach of just having functions like this:

    fn execute_foo() { ... }
    fn execute_bar() { ... }
    

    Sometimes, Rust encourages not trying to be too clever, like having get vs get_mut and not trying to abstract over the mutability.


  • Unfortunately there isn’t one easy source that I’ve found. This is based on reading the stuff you linked to, as well as discourse/matrix discussions linked to from those sources. I compare it mentally to Guido van Rossum as BDFL of Python (though not any longer). He did a much better job of communicating expectations, like here

    It made some people unhappy that there was no Python 2.8, but everybody knew what was happening. The core Python team also wasn’t surprised by that announcement, unlike with stuff like Anduril or flakes for the nix devs.

    There was also a failure to communicate with stuff like the PR that would switch to Meson. The PR author should have known if Eelco broadly agreed with it before opening it. If there was a process that the PR author just ignored, the PR should have been closed with “Follow this process and try again”. That process can be as simple as “See if Eelco likes it”, since he was BDFL, but the process needs to be very clear to everyone.