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/)DO
Posts
1
Comments
30
Joined
2 yr. ago
  • My current laptop I bought used and didn't realize that HD wasn't 1080p, but rather 720p... (1080p is apparently FHD), whoops. I'm currently using a Latitude 7290 for reference and it more than meets all my regular needs (other than the screen resolution...). I have been using a tiling window manager and moving to apps that don't waste as much space on my screen to try to help compensate.

    Assuming Desktop is 1080p is probably reasonable, but there are a ton of good used business laptops that are still 720p, so it's probably going to stick around for a while (also, why encourage e-waste).

    For reference, my laptops specks are:

    1. i7-8650u
    2. 32 GB RAM
    3. 2TB SSD

    As long as I stay out of VM's and do my development in lightweight editors and containers, this hardware could technically last me a while (also, I think the 7x90 series Latitudes are some of my favorite laptops).

  • The concern for code duplication is valid, but as the article mentioned it is also a while off until the Nova project is mainlined. I honestly never thought of how the work to bring in Rust to mainline may in effect lead to a more complete deprecation of older hardware as we start to change API's older/unmaintained components aren't updated. On the flip side, trimming out older stuff might save maintainer work going forward.

  • Guix @lemmy.ml
    Doom4535 @lemmy.sdf.org

    How to configure TMPDIR for Guix System?

    I'd like to change my Guix System to build packages in a different location (/dev/shm/) so that they are built on a tmpfs partition to hopefully speed up builds (defaults to /tmp which is on the / partition on Guix System). The Guix Manual only mentions that this may be done by setting the environment variable TMPDIR.

    I was able to do this for a system that is configured as a foreign install by modifying the SystemD service file (Guix Mailing List), but I haven't been able to figure out how to modify my /etc/config.scm file to do this on Guix System.

  • Honestly, pretty effective, I used to balance the mattresses on my head when working in a dorm. Many societies used this approach to move things, and with three of them the have the definition of a geometric plane.

  • They could then potentially end up spending more time testing every possible combination of input then they would spending compiling with a strongly typed language that prevents the invalid syntax from compiling to begin with...

  • The constraint on memory isn't on the compiler it is in the available ram and flash on ultra-lowcost/power microcontrollers, use can find some with less than 1KByte of ram, so that 32bit int could have been 4 8bit ints in your electric toothbrush. The packing of bits is space effecient, but not compute effecient and takes several extra clock cycles to finish when run on an 8bit microcontroller. It's better to store it in the native 8bit word size for these devices. Further more, on more powerful systems using the smaller size can allow you to optimize for SIMD instructions and actually do multiple operations per clock beyond what you could do with the 32bit size.

    There are reasons for these types to exist; as was mentioned elsewhere, if you don't care you can always just use i32 or i64 for your code and be done with it.

  • Soooo, an int in most architectures is actually signed, usually a 2's compliment signed 32 bit value; but the spec does not require it to be 32bits, some platforms might use an 8 bit or 16bit value instead (think older 8bit microcontrollers). That's why they have 'int32_t', 'uint32_t', etc for C/C++, it just sounds like you haven't used these number types (check stdint.h). Rust just requires you to use the more explicit number format by default (which I personally prefer because I have had to jump between embedded and Linux development).

    The multiple string types are annoying at first, but its probably better to realize that they are more like two types (String and str) with the apperstand (&) ones being references (think pointer in C/C++). A String is like a C++ std::string and a str is more like a C-String (fixed sized array ish of chars).

  • Enter embedded programming, believe it or not there is a ton of low level C code being written; also, try adding a new protocol for networking, there are many cases where bitstructure matters, I recently wrote a small bit of code for a project that used bit packing so that we could fit inside of a single Ethernet frame so that we didn't have to deal with fragmentation and the networking overhead it caused.

    For context, what is your past programming background and what are you trying to do? While rust is a great language, it may not be the right tool for what you're trying to do if these are things that you view as unnecessary

  • A reason to not distribute a library as a binary is for cross platform support, this allows a library to technically be compiled and used in some other platform; with that said, there are assumptions about having the same system calls (or that the library only handles abstract things that don’t hook into a specific architecture), with that said, making cargo smarter and adding in the option to bundle some prebuilt libraries to be pulled for compatible platforms could speed some compile time (at the likely cost of build size, etc).

    Distributing a library as source isn't some weird rust paradigm, take BOOST for example, which is a large library for C++, and is usually distributed as source (but Linux distros may bundle prebuilt binaries; it is generally intended that you will compile it and use it as a shared library), actually a lot of compiled languages distribute their libraries as source, it also allows you to read their source if you need to see exactly how they're doing something). I don't believe there is anything preventing someone from using shared libraries in rust, although they do seem to be less common. Another reason to distribute a library as source is for licensing.

    The unstable versioning..... Ya, that is definitely annoying, and likely tied to the limited resources available for sustainment for various projects. With that said, compared to C/C++ many of these libraries are something that one might role their own or use in house libraries. Now for Tokio... You don't have to use it for async, although you probably will want to (see: https://blog.poespas.me/posts/2024/05/24/rust-async-std-and-tokio-comparison/), I do wish there was a nice way to depend on a library and substitute some of its dependencies (aka Tokio); with that said, part of the cargo idea is that you don't view these libraries as part of your source code for review (although, auditors would likely disagree, so acrediting with the inclusion of many in accredited libraries would probably not be fun)

  • This is so true, heck I've even 'baked' some custom PCB boards in the oven to do some cheap reflow... Every man belongs in the kitchen, that's where all the big boy tools are

  • PDFs

  • Not just this, most (?all?) browsers now support viewing standard PDF documents… So, they shouldn’t even need to installing anything as long as they aren’t using IE…

  • Rust's cargo is great, I'd say it would be best to make the switch sooner rather than later once your code base is established. The build system and tooling alone is a great reason to switch

  • Honestly executives and board members who receive performance bonuses and golden parachutes should carry extra liability, such that these perks can be denied or even clawed back (and used to help the damages) when their decisions have these sort of outcomes. Nothing wrong with making more when things go well, but if you're going to take a larger piece of the pie, then you need to be prepared to take a smaller piece when things go wrong (aka, cut executive pay before layoffs, etc.).

  • Honestly, we need to replace social security numbers if we insist on using them as a form of identification (they never were designed for this); they follow a pattern (which is publicly available) and can be partially predicted without knowing too much about the individual. They were originally for Social Security only (hence their name), but then the IRS decided to use them for ID and then others followed suit, and we got to where we are now

  • what software are you using and how is the class structured? It sounds like this might be a rotating group of students all using the same ipads? Does the school have access to some sort of storage medium that requires unique (per student) login credentials that the students could save their files to?

  • I never received this survey and I fly Southwest specifically because I found their boarding process to be less of a hassle (for a single traveler who doesn't care where they sit). The only way I could see this being beneficial is if they board people in order of assigned seat in such a way as to optimize time to seat, not the BS boarding that other airlines do to try and maximize price of fair, otherwise they will have lost the whole reason I like(d) to fly them... Their simplier, no bs, boarding process.

    P.S. I really don't get people liking to pidgen hole themselves to a specific spot for any of these things, just makes it easier to inflate the prices later