Boojum's recent activity
-
Comment on "Other Hand" font by Cheetos in ~design
-
Comment on Single most useful program you daily use? in ~tech
Boojum I learned it decades ago before Doom and Spacemacs existed. So my advice may be a bit dated, but if you're interested in vanilla Emacs, I'd suggest: (This got long, so I'm putting this here so...I learned it decades ago before Doom and Spacemacs existed. So my advice may be a bit dated, but if you're interested in vanilla Emacs, I'd suggest:
(This got long, so I'm putting this here so people don't have to scroll past it)
- Print out a copy of the cheatsheet and keep it handy on your desk.
- There's a built-in tutorial which is decent. Press
Ctrl-h
thent
to start it. - Learn to read the notation for Emacs keybinds: e.g.,
C-x C-f
means Ctrl-x followed by Ctrl-f.M-
for "meta" maps to Alt, andS-
is for Shift. Sequences of keys are space delimited (except when they're ordinary alphanumeric keys).RET
is return,SPC
is space bar, etc. You'll see this sort of notation everywhere in Emacs-land. - Learn to use the help system.
C-h i
brings up a detailed manual; I definitely recommend giving it a glance.C-h b
shows you keybindings.C-h k
tells you what a key is bound to, andC-h w
(where) tells you the opposite if you know a function name.C-h f
lets you look up information on internal functions, andC-h v
does the same for variables. - Keep the menubar and toolbar on for now. A lot of Emacs users turn them off, and I do as well. But I recommend against doing that at first. They're not half bad for feature discovery, so keep them on and poke around in them to see what's there. Once that's all ingrained, then go ahead and turn them off.
- If you keep them on, you can basically treat Emacs as like a better notepad, nano, gedit, kate, etc. at first, and I think that's a reasonable way to start. I'd suggest just using it for small edits at first, nothing too fancy, then poke around experiment when you can, and slowly build up your repertoire.
- Understand the zen of Emacs. At its core, Emacs is an idiosyncratic Lisp interpreter with bindings to a bunch of built in functions and datatypes (implemented in C) for manipulating buffers of text, plus displaying them to a window and handling input. Layered on top of that, the majority of Emacs is implemented in that Lisp. It basically runs a loop where it displays the buffers, waits for keypresses, looks up the function their bound to and then calls that. There's no namespacing, no private functions, no plugin API, etc. Everything is open for inspection and for rebinding or redefining. Your config is just code that it executes at startup that defines new functions and variables, replaces bindings, and/or monkeypatches things. The help system is "live" and based on reflection, so
C-h f
,C-h v
,C-h b
,C-h w
, and all will reflect the current state. - That said, there is a customization system that can write the code for you to set many of the variables that control Emacs' behavior. You can activate it with
M-x customize RET
. Exploring this is another good way of discovering what Emacs can do. - Ask for help on /r/emacs if you need it or get lost.
-
Comment on Single most useful program you daily use? in ~tech
Boojum Emacs. I pretty much live inside an Emacs window. I've hit triple-digit day Emacs uptimes at work before. I could replace others like Firefox with Chromium (though I'd greatly miss NoScript), or...Emacs. I pretty much live inside an Emacs window. I've hit triple-digit day Emacs uptimes at work before.
I could replace others like Firefox with Chromium (though I'd greatly miss NoScript), or maybe the Linux kernel and GNU userland with the BSD kernel and userland, or return from Zshell to Bash. And I swap back and forth between GCC and Clang for testing all the time. I definitely have some favorites among the various programs that I use.
But if I interpret "most useful" as the program that would hurt the most if it magically vanished off the face of the Earth, that's going to be Emacs, hands-down.
-
Comment on You can change ONE thing about a game. What do you change? in ~games
Boojum Not the GP, but personally, I hated the weapon degradation in BotW and TotK where it basically turned all weapons into consumables, and where it often felt like a weapon would barely last through...Not the GP, but personally, I hated the weapon degradation in BotW and TotK where it basically turned all weapons into consumables, and where it often felt like a weapon would barely last through a few encounters.
On the other hand, I didn't really mind the the gear durability in WoW, where it was pretty much a gold sink. It was also slow enough that topping it off was just something I did whenever I was in town rather than having to worry about in the middle of a dungeon.
-
Comment on You can change ONE thing about a game. What do you change? in ~games
Boojum Better yet, allow it to be changed on the fly! I was trying the new Metroid Prime Remastered recently (I never played the original), and enjoying it on normal difficulty right up until I got to...add difficulty options or preferably simply open configuration where reasonable
Better yet, allow it to be changed on the fly!
I was trying the new Metroid Prime Remastered recently (I never played the original), and enjoying it on normal difficulty right up until I got to the Phazon Mines. I'd kind of like to be able to drop to casual difficulty just for that one section, but no dice. That, or having an open save system, as you mentioned, would work too so that I'm only retrying shorter segments.
(I'm pretty decent with tight FPS combat, but I grew up playing it with K+M on PCs; controllers just feel clunky by comparison.)
-
Comment on You can change ONE thing about a game. What do you change? in ~games
Boojum (edited )LinkNo big missables (in as much as possible)! When playing a game, I like to do everything in one big play through then move on to the next game. I prefer to play blind, but I'll use a guide if it...No big missables (in as much as possible)!
When playing a game, I like to do everything in one big play through then move on to the next game. I prefer to play blind, but I'll use a guide if it become clear I might miss things that way. I appreciate games where I don't need that - where the reward for playing "perfectly" is more about resource efficiency via free items, time efficiency for not having to run back through an area to scoop them up, or early access to things that become more available later.
As an example, I played through Horizon Zero Dawn last summer. I really appreciated the devs' foresight in that, for certain sections that became locked off once I've finished them, all of the collectables were moved to an accessible spot outside afterward. It may not be strictly "realistic", but it alleviates the FOMO and lets me relax when playing through.
-
Comment on What are some favorite books with themes of grit, endurance, resilience, living through hostile circumstances? in ~books
Boojum Might be a pat answer, but how about The Lord of the Rings? Lots of examples there of facing almost certain doom (Rohan at Helms Deep, Gondor at the siege of Minas Tirith, the army of the west...Might be a pat answer, but how about The Lord of the Rings? Lots of examples there of facing almost certain doom (Rohan at Helms Deep, Gondor at the siege of Minas Tirith, the army of the west marching to the Black Gates, Sam and Frodo going alone into Mordor...) and yet persevering on.
Samwise Gamgee
"But I suppose it's often that way. The brave things in the old tales and songs, Mr. Frodo: adventures, as I used to call them. I used to think that they were things the wonderful folk of the stories went out and looked for, because they wanted them, because they were exciting and life was a bit dull, a kind of a sport, as you might say. But that's not the way of it with the tales that really mattered, or the ones that stay in the mind. Folk seem to have been just landed in them, usually - their paths were laid that way, as you put it. But I expect they had lots of chances, like us, of turning back, only they didn't. And if they had, we shouldn't know, because they'd have been forgotten. We hear about those as just went on - and not all to a good end, mind you; at least not to what folk inside a story and not outside it call a good end. You know, coming home, and finding things all right, though not quite the same - like old Mr. Bilbo. But those aren't always the best tales to hear, though they may be the best tales to get landed in! I wonder what sort of a tale we've fallen into?"
-- "The Two Towers" (The Stairs of Cirith Ungol) J. R. R. Tolkien
(The Peter Jackson trilogy might apply as an aswer to your movie question, too.)
-
Comment on What are some passages or quotes that inspire your creativity or encourage your creative process? in ~creative
Boojum I definitely have a big file of quotations that I've copied from things I've read; I think of it as my digital common place book. I mainly write code, so a lot of the quotations tend to revolve...I definitely have a big file of quotations that I've copied from things I've read; I think of it as my digital common place book. I mainly write code, so a lot of the quotations tend to revolve around either that or perhaps more philosophical things that speak to me. (Some of favorites on the code side are when I come across someone writing about something that has nothing to do with computers, but makes a great analogy anyway. Like Dr. Seuss and recursion. I collect them for epigraphs in case I ever write a textbook or teach a class.) Anyway, here are a couple that might fit to inspire writing:
"Stale water is a poor drink," said Annlaw. "Stale skill is worse. And the man who walks in his own footsteps only ends where he began."
-- Taran Wanderer Lloyd Alexander (the very first quote I ever copied down in my file)
"True followers of Kater Murr."
"Hadn't thought of him as a religious teacher."
"Oh, you wouldn't have heard of him. He was a creation of our E. T. A. Hoffman. A tom-cat. His philosophy was, 'Can anything be cosier than having a nice, secure place in the world?' It is the religion of millions."
"Indeed it is."
"Hulda is an artist. How good or how big, who can say? But an artist, certainly. Kater Murr is the enemy of all true art, religion, science -- anything of any importance whatever. Kater Murr wants nothing but certainty, and whatever is great grows in the battleground between truth and error. 'Raus mit Kater Murr!' That is what Hulda says now."-- The Lyre of Orpheus Robertson Davies
"Do we really have to go through?" groaned the hobbit.
"Yes, you do!" said the wizard, "if you want to get to the other side. You must either go through or give up your quest. And I am not going to allow you to back out now, Mr. Baggins."-- The Hobbit J. R. R. Tolkien
This might not quite be what you're looking for (though it might work in the sense of inspiring one to write to pass an image on to others), but this is one that has really stuck with me ever since I read it:
In the course of time there was one day that closed the last eyes that had looked on Christ; the battle of Junin and the love of Helen died with the death of one man. What will die with me the day I die? What pathetic or frail image will be lost to the world?
-- The Witness Jorge Luis Borges
I'll stop there, because I apparently have 228 quotations in my file right now and could easily go on. :-)
-
Comment on US Supreme Court unanimously backs law banning TikTok if it’s not sold by its Chinese parent company in ~tech
Boojum 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.)
-
Comment on Nintendo Switch release reactions in ~games
Boojum (edited )Link ParentThe 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.
-
Comment on Nintendo Switch release reactions in ~games
Boojum 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.
-
Comment on Nintendo Switch release reactions in ~games
Boojum 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.
-
Comment on If your games library disappeared, which games would you repurchase? in ~games
Boojum Spotted the 90's-era Apogee and Epic shareware fan.Spotted the 90's-era Apogee and Epic shareware fan.
-
Comment on What are your favourite comfort re-reads? in ~books
Boojum 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.
-
Comment on What are your favourite comfort re-reads? in ~books
Boojum 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.
-
Comment on What's something new you started doing this year? in ~talk
Boojum 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.
-
Comment on Armchair governing dictator - new rule for 2025 (fun) in ~talk
Boojum 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.
-
Comment on 180bpm+ music recommendations? in ~music
Boojum 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:
-
Comment on Day 12: Garden Groups in ~comp.advent_of_code
Boojum (edited )LinkI'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 )
-
-
Comment on Anyone interested in trying out Kagi? in ~tech
Boojum I've been curious, if invites are still available.I've been curious, if invites are still available.
Oh, that was fun! Thanks. I'm with you on generally hating ads, but this one just nails the satire and the production value to the point that I think it would stand on its own as a fun to watch video.
Thematically, i.e., being a spoof about typography, I'm reminded of the SNL "Papyrus" sketch.
As for other unique ads that you can tell they had fun with, I'm reminded of the William and Kate wedding T-Mobile ad