• 2 Posts
  • 37 Comments
Joined 1 year ago
cake
Cake day: September 1st, 2023

help-circle



  • I am increasingly disheartened by the obsession over “Desktop SteamOS”. People don’t want Linux or even “a desktop computer”

    My guess is that people how the installation will be made easy enough for noobs that they aren’t even aware they’re installing an OS, or it will be the default on devices. The latter is much much stronger than forcing some poor sod to deal with installing an OS and Valve also makes money in the process, which they can hopefully dump into Linux.

    My hope is that the linux community wises up and learns about the power of defaults + not estranging noobs. The elitist “oh eternal september” and “but muh terminal” users can get fucked. Linux needs more people, not less.

    Anti Commercial-AI license











  • nobody is really dependent on Github

    If that were true, moving away from github would be ezpz.

    The features like searching might not be optimal

    Requiring an account to find a project = not optimal is an understatement, IMO.

    I’m also just a little guy who does scripting and small CLI tools. So it does not matter at all what I do

    That sounds an awful lot like a fallacy. If you wait longer, then when something does drive you to say “I should switch”, you’ll run into the sunken cost issue. If you think you’re unimportant, that’s great for github because they have thousands of people that think they are unimportant but it adds up. You could be part of the solution, no matter how small.

    Anti Commercial-AI license






  • data NonEmpty a = a :| [a]
    

    Note that NonEmpty a is really just a tuple of an a and an ordinary, possibly-empty [a]. This conveniently models a non-empty list by storing the first element of the list separately from the list’s tail: even if the [a] component is [], the a component must always be present.

    Wat? How can I “store the first element of the list separated from the lists tail” when the list is empty? Whether a list is empty or not is a runtime possibility, not a compile-time possibility.

    Someone care to explain this part? It does not compute at all for me.

    Anti Commercial-AI license



  • Why are we doing this again?

    We’ve experienced some pain with C++. In short:

    • tools and compiler/platform differences
    • ergonomics and (thread) safety
    • community

    Preach. make install is the biggest source of “works on my machine” ever. (obviously exaggerating). You could point me at 99% of all C++ projects that have dependencies and it ./configure && make install wouldn’t work on any of my machines. “Oh of course you need to install the dependencies, just sudo apt get” let me stop you right there, I don’t have debian. And with that you’re on your own with C/C++ projects.

    Everything else in that chapter plays a big part in my departure from C++. ~30 years of existence and they have barely learned from their missteps.

    We’ve succeeded. This was a gigantic project and we made it. The sheer scale of this is perhaps best expressed in numbers:

    • 1155 files changed, 110247 insertions(+), 88941 deletions(-) (excluding translations)
    • 2604 commits by over 200 authors
    • 498 issues
    • Almost 2 years of work
    • 57K Lines of C++ to 75K Lines of Rust 5 (plus 400 lines of C 6)
    • C++–

    Wow. What an amazing job 👏

    Anti Commercial-AI license