Skip Navigation

InitialsDiceBearhttps://github.com/dicebear/dicebearhttps://creativecommons.org/publicdomain/zero/1.0/„Initials” (https://github.com/dicebear/dicebear) by „DiceBear”, licensed under „CC0 1.0” (https://creativecommons.org/publicdomain/zero/1.0/)F
Posts
1
Comments
706
Joined
2 yr. ago

  • One example is creating an interface for every goddamn class I make because of “loose coupling” when in reality none of these classes are ever going to have an alternative implementation.

    Sounds like you've learned the answer!

    Virtual all programming principles like that should never be applied blindly in all situations. You basically need to develop taste through experience... and caring about code quality (lots of people have experience but don't give a shit what they're excreting).

    Stuff like DRY and SOLID are guidelines not rules.

  • It must be python3 then.

    Except on Windows! Actually it depends on if you installed Python from the Microsoft store or the official download. What a mess.

    They don't want to fix it because it might be confusing temporarily, so instead they're going to leave it broken forever.

  • IMO it's completely insane that they're doing this. Same with Python packages.

  • Thanks for highlighting your username - made me notice that you post a lot of nonsense here so I can easily block it!

  • Yes that's true, but the point is you should have to opt in to surprising or risky behaviour.

  • The non-strict versions also panic by default, but only in debug mode. So if you were willing to use abs() you should be willing to use strict_abs().

    Arguably a bit of a mistake to have the "obvious" function names be surprisingly unsafe, but I guess it's too late to fix that.

  • They're released on a schedule so they are often quite boring.

  • AI AI blah blah AI.

    Also why is HCL supposedly the 9th most popular "programming language" (which it isn't anyway)?

  • It's a fairly inevitable reaction to cancel culture. This was predicted and warned against when left-wing cancel culture was at its height, but people didn't listen. Now we have right-wing cancel culture instead.

  • I wouldn't recommend the Gang of Four book. Many of the design patterns they espouse are way over complicated from the days of peak OOP. You know, FactoryFactoryVisitor stuff. Usually best avoided.

  • Yeah, I use Claude/ChatGPT sometimes for:

    • Throwaway scripts: "write me a bash script to delete all merged git branches starting with 'foo'"
    • Writing functions that are tedious to look up but I can fairly easily evaluate for correctness: "write a C function to spawn a process and capture stdout and stderr merged"
    • Doing stuff in systems I'm not very familiar with: "write an OCaml function to copy a file"

    I haven't got around to setting up any of that agentic stuff yet. Based on my experience of the chat stuff I'm a bit skeptical it will be good enough to be useful on anything of the complexity I work on. Find for CRUD apps but it's not going to understand niche compiler internals or do stuff with WASM runtimes that nobody has ever done before.

  • I think you misread my comment. I didn't say it was a non-commercial project.

  • I still don't think it's fair to say it's not open source. It clearly is. What you mean is it's not a non-commercial project.

  • I think it's a perfectly reasonable license. You can also use it for free with closed source projects, except embedded projects (where most of the money is), which I think is generous.

    I don't think everything has to be completely free. I'd much rather they had a viable business model and actually continue existing than just fizzle out because they have no funding source. Writing a high quality GUI toolkit is an enormous task so it's not really going to happen otherwise.

    As much as I'm following egui, Xylem, Dioxus, Makepad etc. and hope they succeed I'd put my money on Slint being the first to make a Rust GUI toolkit of the same quality as Qt.

  • He's right, zstd is incredibly popular, quite widely used and also generally believed to be the best compression algorithm overall.

  • They use QAM and similar because it's the best way to transmit data over a small number of long wires. Exactly the opposite of wires inside a CPU.

  • This video confuses at least three different concepts - quantum uncertainty, ternary computers, and "unknown" values.

    Ternary computers are just not as good as binary computers. The way silicon works, it's always going to be much much slower.

    "Unknown" values can be useful - they are common in SystemVerilog for example. But you rarely just have true, false and unknown, so it makes zero sense to bake that into the hardware. Verilog has 4 values - true, false, unknown and disconnected. VHDL has something like 9!

    And even then the "unknown" isn't as great as you might think. It's basically poor-man's symbolic execution and is unable to cope with things like let foo = some_unknown_value ? true : true. Yes that does happen and you won't like the "solution".

    High level programming concepts like option will always map more cleanly onto binary numbers.

    Overall, very confused video that is trying to make it sound like there's some secret forgotten architecture or alternative history when there definitely isn't.

  • I disagree. That's how Python works but it sucks because it means instead of a C++ (for example) project with some Python utility scripts scattered inside it, you have to turn it into a proper Python project, when it isn't a Python project; you just have some Python scripts in it.

    Basically it throws away the ad-hoc scripting use case entirely.