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

help-circle

  • You can update your version of Fedora through the updater software as well but it’s a very clear separate process that is initiated manually.

    Distro version updates bring major updates to key packages - the one you’d notice most would be to Gnome, the desktop environment. There will be other things too that get only bugfix and security updates during the life of that version, and then after a while that version will lose support and you won’t get any updates at all (https://docs.fedoraproject.org/en-US/releases/lifecycle/).

    Updating is very safe and reliable. I’ve had my Fedora install at work for 3 years, updating periodically and it’s working extremely well.



  • One more note on learning Rust: what Rust does is front-load the pain. If you write something in another low-level “direct control of memory” language you can often get something going much more easily than Rust because you don’t have to “fight the borrow checker” - it’ll just let you do what you want. In Rust, you need to learn how all the ownership stuff works and what types to use to keep the compiler happy.

    But then as your project grows, or does a more unusual thing, or is just handed over to someone who didn’t know the original design idea, Rust begins to shine more and more. Your C/C++/whatever program might start randomly crashing because there’s a case where your pointer arithmetic doesn’t work, or it has a security hole because it’s possible to make a buffer overrun. But in Rust, the compiler has already made you prove that none of that is possible in your program.

    So you pay a cost at the start (both at the start of learning, and at the start of getting your program going) but then over time Rust gives you a good return on that investment.


  • Context: I am an embedded software engineer. I write a lot of low level code that runs on microprocessors or in OS kernels, as well as networking applications and other things. I write a lot of C, I write some Rust, I write Elixir if I possibly can, I write a lot of Python (I hate C++ with a passion).

    I don’t think you want Rust. Python is unbeatable on “idea to deployment” speed. Python’s downsides:

    • Painful packaging/distribution if you want to get a load of people who don’t have Python installed to run your thing (e.g the GUI program we currently maintain for talking to our hardware)
    • Performance under some circumstances. There are some things that are not quick in Python. They’re not always the things you expect because Python actually drops down to C modules for a lot of the number crunching that you might do. E.g. for ML you are basically using Python to plug a load of bits of fast C code together

    Rust is good when you need at least one of:

    • High speed
    • Control over use of memory
    • Low level systems programming (drivers etc.)
    • Can’t cope with a Garbage Collector
    • Compiling to a microcontroller

    If you’re doing one of those and so have become expert in Rust, then it is actually excellent for a lot of other things. E.g. you might build your data processor in it, and then distribution is easy because it’s just a single binary.

    One option you might look at is Go. You get a lot of performance, you get good parallelism if you need it, it’s designed to be easy to learn, and it also compiles programs to a single binary for easy distribution.








  • I personally think that a sign of a healthy technology platform is one where some people can make money from it, while the platform itself remains open. To use Linux as an example, it’s wonderful that it’s open source, and it’s great that Red Hat can be a profitable company based on Linux. It’s a good sign and it helps the Linux ecosystem thrive due to RH’s contributions.

    For Lemmy there are plenty of free apps - no-one is being forced to use Sync. I’m happy to pay for something that provides some more polish to my Lemmy experience, and doesn’t require anything of anyone else.





  • Gaming laptops are really just portable PCs. If you’re playing on them on in the usual “Keyboard and Mouse” way then you need to put it on a table to make that work properly. Maybe you could do it on a sofa but it’s very quickly going to get uncomfortable.

    Handhelds on the other hand are extremely portable and happily usable anywhere. They’re also a lot cheaper than a gaming PC! I’m a big fan of my Steam Deck and recommend it a lot, but I should admit I also have a Gaming PC which I use for multiplayer stuff with my friends





  • I bought Tametsi recently based at another recommendation thread. It’s really good - it eliminates the big issue with minesweeper which is that sometimes you have to guess. In Tametsi you always have enough information for your next move which completely changes how it feels. It almost ends up feeling more like Sudoku with the “ok so if that’s true then that can’t be true” type steps in logic.