• 2 Posts
  • 224 Comments
Joined 1 year ago
cake
Cake day: June 11th, 2023

help-circle

  • You can always combine integer operations in smaller chunks to simulate something that’s too big to fit in a register. Python even does this transparently for you, so your integers can be as big as you want.

    The fundamental problem that led to requiring 64-bit was when we needed to start addressing more than 4 GB of RAM. It’s kind of similar to the problem of the Internet, where 4 billion unique IP addresses falls rather short of what we need. IPv6 has a host of improvements, but the massively improved address space is what gets talked about the most since that’s what is desperately needed.

    Going back to RAM though, it’s sort of interesting that at the lowest levels of accessing memory, it is done in chunks that are larger than 8 bits, and that’s been the case for a long time now. CPUs have to provide the illusion that an 8-bit byte is the smallest addressible unit of memory since software would break badly were this not the case, but it’s somewhat amusing to me that we still shouldn’t really need more than 32 bits to address RAM at the lowest levels even with the 16 GB I have in my laptop right now. I’ve worked with 32-bit microcontrollers where the byte size is > 8 bits, and yeah, you can have plenty of addressible memory in there if you wanted.








  • Falsehoods About Time

    Having a background in astronomy, I knew going into programming that time would be an absolute bitch.

    Most recently, I thought I could code a script that could project when Easter would land every year to mark it on office timesheets. After spending an embarrassing amount of…er…time on it, I gave up and downloaded a table of pre-calculated dates. I suppose at some point, assuming the code survives that long, it will have a Y2K-style moment, but I didn’t trust my own algorithm over the table. I do think it is healthy, if not essential, to not trust your own code.

    Falsehoods About Text

    I’d like to add “Splitting at code-point boundary is safe” to your list. Man, was I ever naive!


  • Many renewables are stuck in the “interconnection queue,” a long line of projects waiting to get connected to the grid. According to Lawrence Berkeley National Laboratory, more than 1,500 gigawatts of power, mostly renewables, are waiting for approval to connect. (That’s more than one-third of all the power produced in the United States.)

    That is really unfortunate. I’m in Canada, but it wouldn’t surprise me if we are in the same boat. Where I live, there is a lot of wind and solar going in, but my understanding is that this is in part because it’s one of the rare areas with an under-capacity grid that is not too far from several major urban centres.

    And you can see how important the grid layout is in that solar farms are popping up mostly along large transmission corridors, presumably to allow for easier connection. This is less evident with wind, since geography plays a bigger role in where you want to put a wind farm for optimal results.

    It makes me speculate that renewables like wind and hydroelectric (including pumped hydro storage) which are less negotiable in terms of location compared to solar are more likely to be waiting a long time on this interconnection queue? I don’t know if that is actually the case though.






  • I think I could get very nervous coding for the military, depending on what sort of application I was working on. If it were some sort of administrative database, that doesn’t sound so bad. If it were a missile guidance system, on man! A single bug and there goes a village full of civilians. Even something without direct human casualties could be nerve-wracking. Like if it were your code which bricked a billion-dollar military satellite.

    Speaking of missile guidance systems, I once met someone who worked a stint for a military contractor. He told me a story about a junior dev who discovered an egregious memory leak in a cruise missile’s software. The senior dev then told him “Yeah, I know about that one. But the memory leak would take an hour before it brings the system down and the missile’s maximum flight time is less than that, so no problem!” I think coding like that would just drive me into some OCD hell.




  • So you’re saying the comments themselves get cached on the local instance where the user is registered before being synced with the remote community-hosting instance?

    I honestly don’t know how these things work internally, but had assumed the comments needed to go straight to the remote instance given the way you can’t comment once said instance goes down? You can still read the cached content though.


  • When I first heard the term “fediverse”, it immediately made me think of some sort of vast interplanetary network. And let’s face it: a fediverse-like model is really what you would need if you had settlements scattered throughout the solar system. A monolithic, centralized service would be awful, given the reality of communication lag and likely limited bandwidth.

    So let’s say lemmy (or more generally activitypub) were to go interplanetary. How would that work out? You set up your first instance on Mars. Any content that’s posted there will be immediately available to your fellow Martians. Earthlings who subscribe may also be able to view it as their instances cache the content, albeit after some delay.

    But the trouble starts when Earthlings want to start contributing to the discussion. If they have to wait the better part of an hour to get a single comment lodged, it’s going to get old fast.

    So you would need to allow the Earth side to branch off to some extent from what’s happening on Mars. Then eventually, something like a git merge would try to bring it all back together? I wonder if that would work?