• 1 Post
  • 66 Comments
Joined 1 year ago
cake
Cake day: September 11th, 2023

help-circle

  • I think that change is hilarious because in reality, some lawyer or middle-manager probably just looked at that and went “this is stupid and unprofessional, it shouldn’t be in an official statement” and took it out.

    But it’s so much funnier to think that Google top brass were like

    Yessssss… with this one change, we can do whatever we want and no one can stop us!

    while rubbing their hands together or something


  • The compiler is getting more and more parallel but there’s a few bottlenecks still. The frontend (parsing, macro expansion, trait resolution, HIR lowering) is still single-threaded, although there’s a parallel implementation on nightly.

    Optimal core count really depends on the project you’re compiling. The compiler splits the crate into codegen units that can be processed by LLVM in parallel. It’s currently 16 for release builds and 256 for debug builds.

    This theoretically means that you could continue to see performance gains up to 256 cores in debug builds, but in practice there’s going to be other bottlenecks.

    Compilation is very memory and disk-I/O intensive as well. Having a fast SSD and plenty of spare memory space that the OS can use for caching files will help. You may also see a benefit from a processor with a large L3 cache, like AMD’s X3D processor variants.

    Across a project, it depends on how many dependencies can be compiled in parallel. The dependencies for a crate have to be compiled before the crate itself can be compiled, so the upper limit to parallelism here is set by your dependency graph. But this really only matters for fresh builds.







  • As someone who’s built his own PCs for years, I’ve never really bothered with a BIOS update.

    Then again, one of the main reasons to update BIOS is to gain support for new CPUs, but I’ve been using Intel which switches to a new socket or chipset every other generation anyway. I’ve almost always had to buy a new motherboard alongside a new CPU.











  • Wanting to and actually doing it are two different things.

    The problem is that open source devs also have to be their own project managers, but those two jobs have very different skillsets.

    In regular software development, it’s the PM’s job to deal with the drama, filter the idiocy out and collect concise and actionable user stories, and let the developers just write code.

    In open source, you tend to deal with a lot of entitlement. All kinds of people, who never gave you a dime, come out out of the woodwork to yell at you over every little change. The bigger and farther reaching a project is, the more this happens, and it wears you down. I can only imagine what it’s like working on a huge project like GNOME.

    And the toxicity feeds into itself. Be kurt with one person, and suddenly it gets out that you’re an asshole to users. Then people come in expecting hostility and react defensively to every little comment. And that puts you in the same mindset.

    At the end of the day, you can’t satisfy everyone. Sometimes you gotta figure out how to tell someone their feature request is stupid and you’re not gonna work on it, especially not for free. And a lot of people need to learn to try to fix problems themselves before opening an issue. That’s kind of the whole point of open source.