• 16 Posts
  • 745 Comments
Joined 1 year ago
cake
Cake day: August 4th, 2023

help-circle






  • Honestly, this isn’t much of a hypothetical for me. At work, my choices are Windows, Mac, or Ubuntu. I’m quite happy with Ubuntu, though I’ve switched away from the default desktop environment to i3.

    I use Arch (BTW) on my personal systems. And Ubuntu isn’t as bad as I worried it would be.

    My main gripe is snaps. Firefox is practically unusable as a snap. And my employer forbids installing any software (save for a select list of exceptions) not via the officially-supported Ubuntu way of doing things. Chrome is available without snap, so I use it on my work machine. Which annoys me, but if I’m less efficient in my job as a result, it’s their own fault.


  • Honestly, “browser engine” and “lightweight” currently don’t belong in the same sentence. Unless you’re going for something with very little functionality compared to Webkit or Gecko or whatever. We can hope that changes with time, but I don’t think there are a lot of prospects.

    As far as “little functionality” options, there’s the Dillo browser. I’m not sure its engine is really easily “seperable”, so to do so might be some work. It’s surprisingly maintained. Its latest release is from 3 months ago. It’s definitely extremely lightweight. (Unless you’re comparing it against, say, elinks or something.)

    As for somewhat promising projects that are not yet anywhere near ready for prime time, there’s the Ladybird browser. Again, I don’t know how seperable the engine is. And I don’t know how lightweight this one is either.











  • Yeah, #2 is both more space efficient and more time efficient.

    How I’d generally do something like that:

    1. Create an empty linked list.
    2. Generate a random integer between 0 and 51 inclusive.
    3. Iterate over the linked list and increment the random integer by one for each integer in the linked list less than or equal to your newly-generated random integer. You can break out of that loop as soon as you hit the first integer in the linked list greater than the newly-generated integer.
    4. Binary insert that integer into the sorted linked list.
    5. For the denomination, output the newly-generated integer modulus 13 plus one. Translate 1 to ace, 11 to jack, etc.
    6. For the suit, output floor of the newly-generated integer divided by 4 plus one. (Translate zero to “hearts”, one to “diamonds”, etc.)
    7. Loop back to step 2 51 more times.

    Step 3 can definitely be optimized much more with a B-tree and a little thought. If you want jokers included, it’s pretty straightforward. (Just change step 2 to generate a random integer between 0 and 53 and tweak steps 5, 6, and 7.)


  • “Dysautonomia.” Which my doctor hasn’t stuck his neck out so far as to say was from COVID, but it was. Heh.

    I was an “early adopter” of COVID, so there weren’t tests yet when I started having symptoms, so I guess take it with a grain of salt because I don’t have a positive test result. But all the weird symptoms I had match up with COVID – though to be fair it’s really wild the range of different things COVID can do to you – and there were visitors from the London office at my workplace just a few weeks before I had that syncope and subsequently got long-term sick. (I’m in the U.S.)