Boojum's recent activity

  1. Comment on US Supreme Court unanimously backs law banning TikTok if it’s not sold by its Chinese parent company in ~tech

    Boojum
    Link Parent
    Are you thinking of this?: Reverse Engineering Tiktok's VM Obfuscation (Part 1) (At least that's the blog post that I remember from a few years ago that made the rounds.)

    Are you thinking of this?: Reverse Engineering Tiktok's VM Obfuscation (Part 1)

    (At least that's the blog post that I remember from a few years ago that made the rounds.)

    13 votes
  2. Comment on Nintendo Switch release reactions in ~games

    Boojum
    (edited )
    Link Parent
    The staff roll on the ending after you beat it has my all-time sure-fire "happy place" music (video game or otherwise): Happy Parade, Delightful Parade (SNES) Happy Parade, Delightful Parade...

    The staff roll on the ending after you beat it has my all-time sure-fire "happy place" music (video game or otherwise):

    Happy Parade, Delightful Parade (SNES)
    Happy Parade, Delightful Parade (Switch) (by the original composer!)

    (Music-only on those links, so they shouldn't really be spoilery, but of course they're best in context.)

    Even before the remake, all these years after the SNES version, it tends to be my instinctive go-to for random whistling. And whenever I'm glum, listening to it is guaranteed to cheer me up at least a bit, if not put a smile back on my face. It's one of the most unironically cheerful pieces I've ever heard.

  3. Comment on Nintendo Switch release reactions in ~games

    Boojum
    Link Parent
    I really enjoyed the Super Mario RPG remake (I'll admit that there's some nostalgia factor, having beaten the original on the SNES). And Echoes of Wisdom, though short and based on the Link's...

    I really enjoyed the Super Mario RPG remake (I'll admit that there's some nostalgia factor, having beaten the original on the SNES). And Echoes of Wisdom, though short and based on the Link's Awakening remake engine, was a Switch original that I had a lot of fun with.

    1 vote
  4. Comment on Nintendo Switch release reactions in ~games

    Boojum
    Link Parent
    That was such a dumb decision. I'd been prepared to insta-buy AC:NH on release day as pandemic relief for my kids until I discovered that the islands is shared and only one gets to be the admin. I...

    That was such a dumb decision. I'd been prepared to insta-buy AC:NH on release day as pandemic relief for my kids until I discovered that the islands is shared and only one gets to be the admin. I immediately foresaw major fights between them over how to run the island, and decided not to get it.

    Some time later, my teen went ahead and bought it with his own allowance. Sure enough, it proved the apple of discord that I'd feared it would be. E.g., he liked everything planned and ordered on a sort of urban grid, while his younger sisters preferred a more naturalistic look. As the admin, he also unilaterally restarted the island one day without discussing it with anyone else -- ooh boy, that was a row.

    The idea of a shared island is actually pretty cool. But forcing that, not so much. If they'd allowed, say, three shared island slots per Switch, I think it would have worked much better.

    11 votes
  5. Comment on If your games library disappeared, which games would you repurchase? in ~games

    Boojum
    Link Parent
    Spotted the 90's-era Apogee and Epic shareware fan.

    Spotted the 90's-era Apogee and Epic shareware fan.

    2 votes
  6. Comment on What are your favourite comfort re-reads? in ~books

    Boojum
    Link Parent
    Yes, it could definitely provoke some discussion. It's got some big ideas in it about human nature. I've described it before as something of a jeremiad, and I'd say that elegiac is a fitting...

    Yes, it could definitely provoke some discussion. It's got some big ideas in it about human nature. I've described it before as something of a jeremiad, and I'd say that elegiac is a fitting description of the general mood.

    It's definitely not a comfort read in terms of warm fuzzies, though there are certainly some comic scenes within it. Instead, it's more of a consoling read -- yeah the world sucks, people are generally awful and self-destructive, but there will always be some small sparks of light in the darkness, aiming for something higher.

    3 votes
  7. Comment on What are your favourite comfort re-reads? in ~books

    Boojum
    Link
    Ooh, good question! I definitely have some that I love to re-read from time to time and keep close to hand (many of these are on my bedside bookcase). The great thing about re-reading is that I...

    Ooh, good question! I definitely have some that I love to re-read from time to time and keep close to hand (many of these are on my bedside bookcase). The great thing about re-reading is that I can just flip open to a random page and start enjoying it and then put it down again a little later. I also find it great for when I'm tired or otherwise distracted and don't really have the concentration for trying to attentively follow new stories.

    • A Wrinkle in Time (or generally any of the Time Quartet)
    • The Horse and His Boy (or generally any of the Chronicles of Narnia)
    • The Fellowship of the Ring (Book 1, especially)
    • The Eye of the World
    • A Canticle for Liebowitz
    • The Master and Margarita
    • The Player of Games
    • Pride and Prejudice (or Sense and Sensibility, Emma, or the others)
    • Ficciones (and other short story collections by Borges)
    • Meditations (Aurelius)
    • The Merry Heart, A Voice from the Attic, Happy Alchemy, or One Half of Robertson Davies

    In my family, we just completed our annual read-aloud of A Christmas Carol, so I suppose that might count too.

    14 votes
  8. Comment on What's something new you started doing this year? in ~talk

    Boojum
    Link Parent
    Ouch. I had a long gap between dental visits while in grad school, then was suffering a bit afterwards. Ever since, I've been doing quarterly cleanings/checkups, even if I have to pay out of...

    Ouch. I had a long gap between dental visits while in grad school, then was suffering a bit afterwards. Ever since, I've been doing quarterly cleanings/checkups, even if I have to pay out of pocket (or from an HSA) for the later ones in the insurance year. I don't relish them, but I've been stable for a long time when I used to be much more cavity prone, so I can't really complain.

    4 votes
  9. Comment on Armchair governing dictator - new rule for 2025 (fun) in ~talk

    Boojum
    Link
    If I were dictator of the world, or at least the US, I'd start a Manhattan project/moonshot type program to get us off this rock. Colonizing Mars, asteroids, and viable moons within the solar...

    If I were dictator of the world, or at least the US, I'd start a Manhattan project/moonshot type program to get us off this rock. Colonizing Mars, asteroids, and viable moons within the solar system would be a good first step, but I'd also want the program to massively fund advanced physics research to brainstorm any remotely plausible hypothetical FTL mechanisms. I'd expect that advanced energy production (e.g., fusion) would be a nice by-product of this program.

    Basically, I want all the cool optimistic sci-fi stuff I read about or watched as a kid, and I'd like some redundancy in case anything catastrophic happens to Earth.

    3 votes
  10. Comment on 180bpm+ music recommendations? in ~music

    Boojum
    Link
    I generally listen to video game music if I listen to anything while working. I'm not a good judge of BPM, but the main thing that comes to mind that, on checking, has a 180+ BPM as far as I can...

    I generally listen to video game music if I listen to anything while working.

    I'm not a good judge of BPM, but the main thing that comes to mind that, on checking, has a 180+ BPM as far as I can find, are the battle themes from Bravely Default.

    And while I can't say if they'd meet the BPM criteria, the soundtracks to Falcom's Ys games often have a lot of up-tempo energy (the game mechanics tend to encourage blasting through monsters as quickly as possible). Some that come to mind:

    1 vote
  11. Comment on Day 12: Garden Groups in ~comp.advent_of_code

    Boojum
    (edited )
    Link
    I've been posting heavily over on /r/adventofcode, but figure I can start sharing here too. I'm pretty happy with how clean my solution ended up, especially for Part 2. Explanation For the first...

    I've been posting heavily over on /r/adventofcode, but figure I can start sharing here too. I'm pretty happy with how clean my solution ended up, especially for Part 2.

    Explanation

    For the first step, segmentation into regions, I used a disjoint-set structure. (I borrowed the implementation from SciPy, though I've written my own a few times.) I add all the individual cells to it as single-element sets, then make a pass over the them and wherever a cell has the same letter as one of its neighbors to the right or below, I merge the two subsets they belong to. After that, the disjoint set contains one subset per region and the elements of those subsets are the cells of that region.

    Then I do a scan over each cell in each region:

    • For area, I obviously just count one per cell.

    • For the perimeter, I count one each if the cell above, to the left, to the right, or below isn't in the region.

    • For the sides, the key observation that I eventually realized is that there is a one-to-one correspondence between sides and corners. So I can just count the corners. There are two classes of corners:

      • Outer corners. If the cells above and to the left aren't in the region, then I have an upper-left outer corner. Picture it like this with X for cells in the region, O for cells outside the region, and ? for don't-care cells.

        ?   O   ?
          +--
        O | X   ?
        
        ?   ?   ?
        

        And of course I do the same for the other three outer corners by symmetry.

      • Inner corners. If the cells above and to the left are in the region, but the diagonal cell isn't, then I have an upper-left inner corner:

        O | X   ?
        --+
        X   X   ?
        
        ?   ?   ?
        

        And of course, here too, I do the same for the other three inner corners by symmetry.

    So it's possible to count the area, perimeter, and sides just by scanning over the cells in each region and looking at the 3✕3 neighborhood around each cell.

    I posted a visualization of this in action over on Reddit.

    Code
    import fileinput, scipy
    
    g = { ( x, y ): c
          for y, r in enumerate( fileinput.input() )
          for x, c in enumerate( r.strip( '\n' ) ) }
    
    d = scipy.cluster.hierarchy.DisjointSet( g )
    for ( x, y ), v in g.items():
        for n in ( ( x + 1, y ), ( x, y + 1 ) ):
            if g.get( n, None ) == v:
                d.merge( ( x, y ), n )
    
    t1, t2 = 0, 0
    for r in d.subsets():
        a, p, s = 0, 0, 0
        for x, y in r:
            # Area
            a += 1
            # Perimeter
            p += ( x - 1, y ) not in r
            p += ( x + 1, y ) not in r
            p += ( x, y - 1 ) not in r
            p += ( x, y + 1 ) not in r
            # Outer corners
            s += ( x - 1, y ) not in r and ( x, y - 1 ) not in r
            s += ( x + 1, y ) not in r and ( x, y - 1 ) not in r
            s += ( x - 1, y ) not in r and ( x, y + 1 ) not in r
            s += ( x + 1, y ) not in r and ( x, y + 1 ) not in r
            # Inner corners
            s += ( x - 1, y ) in r and ( x, y - 1 ) in r and ( x - 1, y - 1 ) not in r
            s += ( x + 1, y ) in r and ( x, y - 1 ) in r and ( x + 1, y - 1 ) not in r
            s += ( x - 1, y ) in r and ( x, y + 1 ) in r and ( x - 1, y + 1 ) not in r
            s += ( x + 1, y ) in r and ( x, y + 1 ) in r and ( x + 1, y + 1 ) not in r
        t1 += a * p
        t2 += a * s
    print( t1, t2 )
    
    2 votes
  12. Comment on Anyone interested in trying out Kagi? in ~tech

    Boojum
    Link
    I've been curious, if invites are still available.

    I've been curious, if invites are still available.

  13. Comment on How to get used to spicy food? in ~food

    Boojum
    Link
    Milk helps because capsaicin, the main chemical that contributes to spiciness, is fat-soluble (but not water-soluble). So consuming dairy, preferably from whole-milk, or anything else high in...

    The only thing I have found that remedies it is drinking milk as it passes my digestive tract.

    Milk helps because capsaicin, the main chemical that contributes to spiciness, is fat-soluble (but not water-soluble). So consuming dairy, preferably from whole-milk, or anything else high in lipids, with the spice helps to break it down more quickly.

    5 votes
  14. Comment on Inside the war against excessive headlight brightness in ~transport

    Boojum
    Link Parent
    What I've long wanted to mount in my windows is an octahedral retroreflector, similar to the octahedral radar reflectors like this or this used on boats, but with highly polished mirrored surfaces...

    What I've long wanted to mount in my windows is an octahedral retroreflector, similar to the octahedral radar reflectors like this or this used on boats, but with highly polished mirrored surfaces for optical reflection instead of radar.

    Basically, eight optical corner reflectors joined into a ball so that they'll throw light back 180 degrees no matter where it comes from.

    No need for an active countermeasure when a passive one can do the job perfectly well.

    2 votes
  15. Comment on What’s your “I didn’t know I needed that” item? in ~life

    Boojum
    Link Parent
    I'll second good slippers. My spouse gifts me a pair of sheepskin slippers from L.L.Bean every few years as I wear through them. I like to take my shoes off at the door when I get home to avoid...

    I'll second good slippers.

    My spouse gifts me a pair of sheepskin slippers from L.L.Bean every few years as I wear through them. I like to take my shoes off at the door when I get home to avoid tracking dirt and mud into the house. As soon as the shoes go off, the slippers go on. (I WFH, so I get to spend most of my day wearing them.)

    2 votes
  16. Comment on What’s your “I didn’t know I needed that” item? in ~life

    Boojum
    Link Parent
    My spouse and I jokingly refer to one of our cats as this. We have a cat that sometimes likes to climb under the covers between us and then crawl down the length of the bed to curl up by my feet...

    Hot water bottle

    My spouse and I jokingly refer to one of our cats as this. We have a cat that sometimes likes to climb under the covers between us and then crawl down the length of the bed to curl up by my feet to sleep. Bonus: soft fur under my toes at night. Malus: sometimes I overheat.

    2 votes
  17. Comment on Day 5: Print Queue in ~comp.advent_of_code

    Boojum
    Link Parent
    I'd also posted a visualization on Reddit showing the graph structure and the cycle in my input. (I'd tried topo sort on all the rules for my first approach and, like you, failed due to the cycle.)

    I'd also posted a visualization on Reddit showing the graph structure and the cycle in my input. (I'd tried topo sort on all the rules for my first approach and, like you, failed due to the cycle.)

    3 votes
  18. Comment on Holiday season playlist in ~music

    Boojum
    Link
    I tend to favor older, more traditional carols rather than the newer, more pop stuff (i.e., more contemplative, less syrupy). I also find instrumental brass works well for Christmas. Here's a...

    I tend to favor older, more traditional carols rather than the newer, more pop stuff (i.e., more contemplative, less syrupy). I also find instrumental brass works well for Christmas. Here's a couple albums in my playlist:

    4 votes
  19. Comment on Lilo & Stitch | Official teaser in ~movies

    Boojum
    Link Parent
    For watercolor animation*, The Red Turtle also comes to mind. Like Lilo and Stitch, it too is mainly set on a tropical island. The animation is gorgeous. * I believe much of the animation was hand...

    For watercolor animation*, The Red Turtle also comes to mind. Like Lilo and Stitch, it too is mainly set on a tropical island. The animation is gorgeous.

    * I believe much of the animation was hand drawn, but on digitizing tablets instead of paper. So I'd guess the watercolor is simulated. It still looks great.

  20. Comment on Fallout's Timothy Cain talks about encumbrance in games in ~games

    Boojum
    Link Parent
    A big issue for me is that for games with randomized stats on a gear, I quickly get into a state where nearly everything is somewhere on the Pareto frontier because of the high dimensionality of...

    A big issue for me is that for games with randomized stats on a gear, I quickly get into a state where nearly everything is somewhere on the Pareto frontier because of the high dimensionality of the stats. It the beginning it's not too hard to find an upgrade that Pareto dominates something I already have and makes it a no-brainer to sell off the old thing. But towards the end, the stats can cover such a range that this is difficult. That feeling that I might want a different point on the Pareto frontier is what leads to me being a pack-rat with analysis paralysis.

    I kind of like the old days of the early, simpler RPGs -- This character fights with a sword. He is using the Silver Sword. I now have access to the Gold Sword. The Gold Sword is strictly better than the Silver Sword, so I buy the Gold Sword and sell the Silver Sword. The End.

    4 votes