Monday, May 23, 2022

Abraham Lincoln, Vampire Hunter: a very short review

Wow, it's been a really long time since I wrote on the blog. Bad Bryan!

Seth Grahame-Smith's quite bizarre Abraham Lincoln: Vampire Hunter followed just a few years after his earlier (and better known?) sensation: Pride and Prejudice and Zombies (which I didn't read).

Abraham Lincoln: Vampire Hunter has several things going for it:

  • It's a quick read, with (unsurprisingly) lots of action!
  • The decision to suspend your disbelief is not complicated here: you either accept the basic premise or (and I'm sure this is common) you just don't bother with the book.
  • Grahame-Smith actually turns out to be much more interested in Abraham Lincoln than he is in Vampires
  • And, perhaps most importantly, the premise is actually quite an interesting metaphor.

It's that last point that is surely arguable, and I'll concede it is not to be taken too seriously. The two hundred and fifty years or so during which North America experienced the horrors of human slavery are surely among the most evil period of modern human history, and anything which deflects from that evilness can be criticized and rightly so.

On the other hand, it is all too easy for modern Americans in their easy chairs to look away from that time, close their eyes, and try to avoid thinking about it entirely. For how can we easily come to grips with the sheer monstrosity; it is so dreadful that we cannot even bear to contemplate it, and yet, undeniably, Abraham Lincoln did contemplate it, and did come to grips with it, and did do something about it, and did pay for that with his own life.

It's a story worth telling, and if Grahame-Smith's bizarre mash-up of history and horror novel manages to provoke even some people to stop and consider and imagine what it must have been like in those times, and how hard it must have been to completely re-shape the country into a totally different result, I'm willing to grant him considerable latitude in trying to take steps in that direction.

Wednesday, May 4, 2022

Death and Judgement: a very short review

Donna Leon's Death and Judgment is the fourth Guido Brunetti novel.

But rather than becoming formulaic and predictable, Leon's books are progressing nicely, becoming richer, more compelling, and more fascinating.

Indeed, at this point we can perhaps say that Leon has solidly found her footing, and Death and Judgment is perhaps the first complete work of the Guido Brunetti series.

What evidence can I present for this claim? Well, here's a sampling:

  • The plot is sharp. The criminals are despicable, and the villains are truly horrific. The three page segment late in the book in which Brunetti finally connects all the dots when he views a short video of one of the crimes is one of the most gripping sequences I've read in years. After I got through it, I had to put the book down and go for a long walk in the sunshine and look out over the ocean and try to recover: it was that vivid and terrifying.
  • The supporting characters become richer and more fascinating. Previously we've learned a lot about Brunetti's wife Paola; in Death and Judgment it is his daughter's turn. And this, too, adds depth, as Brunetti observes when he reflects on the consequences of bringing his work home with him:
    His mind flew up and away from the room. He tried to think noble thoughts, tried to think of something to say that would assure his child, convince her that, however wicked what she had seen, the world was a place where things like that were random, and humanity remained good by instinct and impulse.

Brunetti does not so attempt to convince his daughter. Rather, he is straight with her, in a quietly powerful conversation.

Everything is working for Leon: her pacing is excellent, her characters are believable, her evocation of Venice is engrossing, and her plots and tales are just as vivid and compelling now as when she wrote Death and Judgment twenty seven years ago.

Can't wait to read more of Comissario Brunetti's adventures!

Saturday, April 30, 2022

Before the Fall: a very short review

Noah Hawley is perhaps best known for his work in television: first Bones, then the extremely well-received Fargo.

It turns out that he's also written a number of novels. I was looking for something simple to take along with me on a cross-country plane trip, and I ended up with his Before the Fall

Hawley developed his skills as a screenwriter and you can really feel it in his writing. Before the Fall opens with a BANG! and the first 50 pages fly by before you can catch your breath.

The rest of the book careens along like Mr Toad's Wild Ride, but Hawley has a natural sense of pace. Each time I felt my attention about to flag, he'd drop another shoe and hook me for another few chapters.

Overall, the book delivers on its promise: it's an enjoyable time-filler, keeping you just intrigued enough to see it through to its satisfying conclusion.

One detail, though: I think I mentioned I picked this up for a plane trip?

Uhm, perhaps not my most well-considered choice, as the entire book is about a plane crash.

Heh. Serves me right.

Wednesday, April 27, 2022

What does Google have against "exposed"?

I was writing a document using Google Documents, and I wrote:

[Activity X] exposed problems with [Program Feature Y]

Google flagged "exposed" as an undesirable word, and said to me:

Word Choice: These synonyms may make your writing flow better. Try using:
  • uncovered
  • revealed

Elsewhere in my document I wrote:

The precise timeframe for this ...

and Google flagged "precise" as an undesirable word, and said to me:

Word Choice: These synonyms may make your writing flow better. Try using:
  • specific
  • exact

What the heck is up with Google?

Tuesday, April 12, 2022

California COVID progress

From what I can tell, the California state-wide COVID-19 website has now switched to twice-a-week updates.

For many months, the site was updated seven days a week, with only occasional omissions for major holidays.

Sometime last fall, the site switched being updated only five days a week, taking Saturday and Sunday off and bundling those results into Monday's update.

This week, when I look at the website, it says:

Data is updated on Tuesdays and Fridays.

I suppose this is probably progress, as the state presumably feels that it's no longer important to update the site as frequently.

P.S. I think nobody makes the attempt to say "Data are updated..." anymore. I am showing my age.

Release notes done well

In computer industry parlance, Release Notes are a mechanism for communicating change.

A software system typically undergoes a series of development cycles, with the result that, every so often, a new version of the software is released. Each release generally contains a compendium of bug fixes, as well as some number of new features.

For a small piece of software, or for a piece of software that is frequently released, release notes can be boring and mostly inconsequential, simple recitals of bug fixes which are often only of interest to the handful that encountered that particular bug.

For a large and sophisticated piece of software, a long time may have elapsed between releases, and a large team may have been working on the software, and so the scope of the change between releases may be hard, and challenging to communicate.

A common approach is to have a summary listing, embedded with myriad links to details, for example the Linux Kernel release notes tend to follow this format. Another classic example is the Java release notes.

Now, Unreal Engine is a very sophisticated piece of software which is nearing its 25th anniversary.

Unreal Engine 4 was released in 2015. Unreal Engine 5 was released in 2022.

That's a long time, and that's a large piece of software, and so the technical communication challenge is immense.

So it's lovely to see what a stunning job has been done with the Unreal Engine 5 Release Notes.

Although the overall format is very similar to the Linux Kernel release notes, being a single immense listing of changes, each with their own hyperlink to background material with further details, what a difference the presentation makes! The Unreal Engine 5 release notes are lavishly illustrated, with animated GIFs and other illustration techniques throughout.

Of course, this material is not for the novice reader; you have to be prepared to encounter sentences such as

The Shader Complexity view mode shows a heatmap of shader instruction counts per pixel, encompassing all rendered objects. Nanite's existing Material Complexity view mode shows a heatmap of the number of unique materials on Nanite geometry only per 8x8 tile, which is a useful metric for determining material coherency in the Nanite pass.

But my oh my, if this is the sort of stuff that gets you up in the morning, browsing the Unreal Engine 5 documentation will provide many hours of glorious exploration of new and fascinating ways to make computers work magic.

Thursday, March 31, 2022

USMNT is Qatar-bound!

Losing to Costa Rica by a score of only 0-2 turned out to be plenty to retain third place in the CONCACAF World Cup qualification group, and means the US has qualified for the 2022 World Cup, to be held in Qatar approximately eight months from now.

I haven't followed the qualification matches closely, but all accounts seem to agree that the team have recruited some young and exciting talent and hopefully it will be fun to watch!

Actually, the big surprise from this round of matches is the impressive performance of the Canadian team, which finished clear first in CONCACAF. This is the first time in THIRTY SIX YEARS that Canada have qualified for the World Cup, and to do so by taking clear first in the group is remarkable.

Looking forward to November!

Thursday, March 24, 2022

More mysteries of COVID-19

Both from the most excellent Bloomberg Prognosis newletter.

  • From the current Moderna study on vaccination of very young children:
    The drugmaker said Wednesday that its shot appeared effective for kids aged 6 months to 5 years. The trial found it generated a strong immune response, without any serious safety concerns. You could practically hear parents everywhere breathing a sigh of relief.

    But don’t start celebrating just yet. Dive into the data and it gets a bit more complicated: The shot was only around 44% effective in stopping Covid cases in the 6-month to 2-year age range, and around 38% effective for 2- to 5-year-olds. None of the 7,000 children in the trial contracted a severe case of the disease, but it's hard to tell whether the shot was the reason, since no one in a placebo group caught a severe case either.
  • From South Korea, which has a relatively unique COVID-19 policy:
    In just one day, Covid-19 cases jumped by more than 220,000 to a world-topping daily tally of 621,328.

    Normally such a case count would cause shock and panic. But not in South Korea, where government officials were breathing a sigh of relief. Their singular focus — the fatality rate — was still falling, dropping to 0.14%, one of the world’s lowest. That meant Korea’s virus-death rate was less than one-10th that of the U.S. and the U.K.

    Unlike other countries that have given up and stopped tracking the virus, Korea continues to test everyone, at a cost of $1.3 billion so far, which led to the astronomical case counts. But testing diligence, combined with a focus on vaccinations, is credited with keeping hospitalizations and deaths low.

Monday, March 21, 2022

Statistics are looking better, at least close to home

The number of COVID-19 hospitalizations in Alameda County hasn't been this low since December 20, 2021.

And the test positivity rate hasn't been this low in Alameda County since before Thanksgiving of 2021.

Those are nice things to see.

We went to a youth musical theater event this weekend, indoors. They checked our vaccination cards at the door, and we were fully masked for the entire event, which was fine with me.

Overall, nobody seemed to be complaining about the protocols, which doesn't surprise me here in the East Bay. People are still taking things quite seriously here.

But it sure is nice to see the statistics improving.

Saturday, March 19, 2022

Dressed for Death: a very short review

Book 3 in Donna Leon's Guido Brunetti detective series is Dressed for Death.

Having established Brunetti and his cohort as central characters with solid backgrounds, Leon now starts to spend less time on the familiar characters and more time on other topics.

Here, the topic material initially starts as a crime against sex workers in the mainland Mestre borough of Venice, then moves on to a financial crime hidden behind a non-profit organization's front.

Even more shockingly, Leon dispatches one of Brunetti's colleagues suddenly and unexpectedly, in a passage of real drama, making Book 3 considerably more "hard-boiled" than the first two, which could have been written by Agatha Christie 50 years earlier.

I sailed happily through Dressed for Death in a matter of days, hungry for more.

Thursday, March 17, 2022

I got bit by the Docker pid 1 Zombie child reaping problem

Heh, how's that for a hook?

I was having the hardest time porting a collection of test suites to a new testing lab.

In particular, I was struggling with a shell script that does a strange thing:

  • The script is trying to shutdown a server process.
  • After various other steps, the script does a kill -9 to kill the process.
  • Then the script enters a loop where it checks whether the process still exists,
    • And it doesn't exit that loop until the process is gone

And the script was hanging.

Now, I agree, that seems like a strange thing for a script to do, since as we all know, signal 9 cannot be blocked nor caught, and the signal action is to end the process. Why was the script bothering to verify that the signal 9 worked?

But, more curious, why wasn't the signal working?

At first, I followed a wild goose chase, convinced that I was struggling with some sort of security issue which was preventing one process from inquiring about the status of another process. We were using kill -0 [PID] to check to see if the other process existed, so I tried messing about with that. I tried switching that code to use test -e /proc/[PID]. I tried using /bin/kill to see if we were somehow using a Bash with a built-in kill command that was malfunctioning. I tried using various incantations of the ps command to examine the target process, like ps -o pid= -p [PID] and ps -ef | grep \w[PID]\w | grep -v grep | wc -l.

All of these various approaches agreed: the process was still alive.

How could kill -9 not kill the process?

Finally I collected ps -ef output at the point where the termination script was hanging.

And, indeed, the process still existed!

It was in [defunct] state.

At this point, I finally knew what was really going on: the system wasn't reaping Zombie processes properly.

This is the function of the init process, so then I started searching the internet for things like Zombie defunct init Docker and I very quickly found the answer:

  • Docker and the PID 1 zombie reaping problem
    When building Docker containers, you should be aware of the PID 1 zombie reaping problem. That problem can cause unexpected and obscure-looking issues when you least expect it. This article explains the PID 1 problem, explains how you can solve it, and presents a pre-built solution that you can use: Baseimage-docker.

At this point, one (properly) skeptical colleague of mine said: "why are you pointing us at a 7-year-old blog post? Surely that's been fixed by now?".

But it hasn't! It's mostly fixed, but it's still a problem. The "fix" was to document the behavior:

  • Run multiple services in a container
    The container’s main process is responsible for managing all processes that it starts. In some cases, the main process isn’t well-designed, and doesn’t handle “reaping” (stopping) child processes gracefully when the container exits. If your process falls into this category, you can use the --init option when you run the container. The --init flag inserts a tiny init-process into the container as the main process, and handles reaping of all processes when the container exits.

There's a long tortured backstory for people who want to learn the gory details:

  • Zombie Processes
    If like in standard docker container launching a command, there is no proper init process, nobody will care about orphaned processes and they will stay here as zombies also called defunct.
  • Introducing dumb-init, an init system for Docker containers
    Lightweight containers have made running a single process without normal init systems like systemd or sysvinit practical. However, omitting an init system often leads to incorrect handling of processes and signals, and can result in problems such as containers which can’t be gracefully stopped, or leaking containers which should have been destroyed.
  • https://github.com/krallin/tini
    Tini is the simplest init you could think of. All Tini does is spawn a single child (Tini is meant to be run in a container), and wait for it to exit all the while reaping zombies and performing signal forwarding.

Note that tini is init spelled backward. We programmers like that sort of joke.

And buried in that backstory is the odd side-story that bash, if used as --entrypoint, does reap zombie children, which explains why all my simple reproduction tests never reproduced the problem cleanly, so that I could only reproduce it with a two hour complicated full test run (groan).

But the bottom line is: docker run --init is there for a reason.

And kill -9 doesn't always "work", if init isn't reaping processes.

Sunday, March 13, 2022

This is why the Internet exists.

There are important questions.

They are hard to answer.

They NEED to be studied.

And on the Internet there will be, given enough time, someone who will study them.

What literature did Nate and Nora keep on their shelves?

Wednesday, March 9, 2022

One full month after fully recovering from my case of COVID-19...

... about all I can sensibly say about the experience is: if this is what it was like to catch the "mild" variant of COVID-19, after being fully vaccinated and also having my booster shot, and being of generally good health for my age, then I can hardly imagine what it would have been like to catch the "full" variant of COVID-19 with no vaccination protection at all.

All in all, it was mild, I rested a LOT, drank VAST amounts of water and tea and juice, snuffled and sniffed and cleared my throat for about 8 days, then spent about 10 more days just feeling tired and achy and generally low.

But now at last I feel back to my normal self.

(Whatever that is.)

Sunday, March 6, 2022

Disco Elysium: a very short review

Disco Elysium was for quite a while the highest-rated game on the Metacritic PC review aggregator, and justifiably so: it's an excellent game, and I thoroughly enjoyed the 70 hours or so that I spent with the game this winter.

It's a little bit hard to describe Disco Elysium. The overall plot structure is a murder mystery: your character is a police officer, charged with solving the murder of a man who is found dead in the alley outside the local pub. The game is set in a small physical realm, but the gamespace is rich with interactivity: objects, characters, events, etc.

As a Role Playing Game, you find a lot of choice in how you play the game. Initially, you must go through the typical character design step, where you choose some basic characteristics of your character which will establish how the game behaves.

But there are several dozen characteristics!

Some of them are quite obvious, such as Intellect, Endurance, Reaction Speed, etc. Others are uncommon but fairly obvious, such as Perception, Suggestion, Empathy, and Rhetoric. Others still are quite unusual, with names like Inland Empire, Shivers, Savoir Faire, and Half Light.

Given that, over the range of the game, your character might come to have a level anywhere between 1 and 10 for each of these 24 characteristics, the span of possible states is enormous.

In practice, what this means is that each encounter in the game plays out in a very different way depending on how you chose your initial characteristics, and on how you chose to develop your character during the game.

And, of course, depending on how you chose to respond during each encounter. Particularly since the results of earlier encounters and decisions change the odds and outcomes of later ones.

And just to expand the variability still more, there is the traditional RPG element of chance, as the game nearly always throws the dice as part of each particular event.

It's a truly immense pallette of possibilities.

Faced with this, rather than designing my character intricately bit-by-bit, I chose one of the "presets" that the game offered at the start. The preset I picked was "sensitive", which was basically an arbitrary choice on my part. I suspect that the game designers intended this to take me down a particular play style, in which my decisions were emotional, dramatic, perhaps even impulsive.

As the game went on, though, I found myself choosing dialog selections that were perhaps at odds with my character's attributes, as the game kept bestowing honors on me such as "Unbelievably Boring", and "The World's Most Laughable Centrist", and "Literally The Sorriest Cop On Earth".

It's that kind of a game, snarky and yet incisive all at once.

The game was enjoyable from start to finish, and I really enjoyed the conclusion, as it indeed seemed to result in the outcome that my character deserved. Many people talk about the immense replayability of Disco Elysium, and it clearly would reward various replays with completely different approaches that would reveal various other aspects of the game world.

But time is short and I had a very satisfying first play, so I suspect I'm unlikely to find another 70 hours anytime soon, as there are too many other demands on my time.

Friday, February 18, 2022

Statistically speaking...

... I continue to visit the California COVID-19 dashboard, nearly every day.

The total number of cases, total number of hospitalizations, and test positivity rate are continuing to fall very rapidly in the last 10 days or so.

However!

The absolute numbers, both state-wide, and in my county of residence, are STILL higher than they were at the PEAK of last summer's wave.

Be careful out there, everyone! Get those vaccines, get those boosters, wear a GOOD mask when you're in an indoor space, or even in a crowded outdoor space.

Take it from someone who did all that, and is still working to recover from a bout of COVID himself...

Friday, February 11, 2022

Repairing the Tonga cable

Wonderful article on Reuters (with lovely and very informative graphics) about the work to repair the Tonga cable: The race to reconnect Tonga

The 827 km (514 miles) cable from Fiji to Tonga is one of 436 active undersea cables that connect the globe.
...
Most cable damage occurs due to ship anchors or fishing trawlers and occasionally environmental factors such as earthquakes.

Faults are common and typically most traffic would be rerouted to another cable. However, in Tonga’s case, there is only one cable connecting the country.
...
The fibre optic cable isn’t easy to fix. A technician splices the glass fibres and uses glue to attach the new section of the cable. This fibre optic splicing can take up to 16 hours and is the most crucial aspect of the repair work.
...
A remotely operated vehicle (ROV) may descend to the seabed to inspect and help bury the cable, although they can only work to a certain depth. In the case of the Reliance, the vehicle can descend up to 2,500 meters.

Thursday, February 10, 2022

A couple fun gaming articles

Happened across these for various random reasons, and enjoyed them.

  • Meet the hundreds of horse girls running Red Dead Online's kindest posse
    In early 2020, when the global response to Covid-19 mandated national lockdowns and stay-at-home orders, online gaming had a huge boom. Friends celebrated birthdays inside Animal Crossing: New Horizons. Gamers introduced family members to browser party games to keep in touch.

    ...

    "Quarantine happened and a lot of people weren't able to see their horses," Farace explains. She was frequenting a Facebook group of horse-loving gamers at the time, and a post caught her eye. "Red Dead people were like 'let's have online trail rides!'"

    "With RDR2 having some of the most beautiful horse models in video games, topped off with beautiful motion captured animations and a breathtaking wilderness, it's a blast to take pictures in this game." It was by uploading her photos to the Rockstar Social Club that Sunny met another member of The Rift and started joining in on trail rides.
  • The Notorious Board Game That Takes 1,500 Hours To Complete
    The game itself covers the famous WWII operations in Libya and Egypt between 1940 and 1943. Along with the opaque rulebook, the box includes 1,600 cardboard chits, a few dozen charts tabulating damage, morale, and mechanical failure, and a swaddling 10-foot long map that brings the Sahara to your kitchen table. You’ll need to recruit 10 total players, (five Allied, five Axis,) who will each lord over a specialized division. The Front-line and Air Commanders will issue orders to the troops in battle, the Rear and Logistics Commanders will ferry supplies to the combat areas, and lastly, a Commander-in-Chief will be responsible for all macro strategic decisions over the course of the conflict. If you and your group meets for three hours at a time, twice a month, you’d wrap up the campaign in about 20 years.

    ...

    “Every military division has a sheet of paper, and on it you’ve got a box for every battalion. It’ll tell you how many guns you have, but more interestingly, it’ll also list the fuel and water. Every game turn, three percent of the fuel evaporates, unless you’re the British before a certain date, because they used 50-gallon drums instead of jerry cans. So instead, seven percent of their fuel evaporates,” explains Phipps.

    ...

    We’re in the midst of a tabletop renaissance. Global board game sales have boomed over the past few years, and a renewed interest in the hobby has seeped into coffee shops, video game publishers, and publications like ours. Despite that, the classic hexagonal historical war-game—the true bones of the industry—are a dying breed. This is the Catan generation: millennials weaned on the crisp, instinctual gameplay perfected by the German masters. Phipps has fond memories of the late-’70s “the golden age” of war-gaming - where publishers routinely tried to out-convolute each other with their designs, because surely, the more complex a game is, the grander it must be. “After that golden age the designs got better,” he says. “But at the time there’s this sense of excitement, everything is new and possible.”

Monday, February 7, 2022

Cartographer humor

Ah, delightful: Sea Chase.

References, for you mapping nerds out there (pretty sure none of you read my blog anyway):

Saturday, January 29, 2022

Death in a Strange Country: a very short review

Donna Leon's second Guido Brunetti book, Death in a Strange Country followed close on the heels of her first, as she established from the start the pace that has allowed her to write thirty-plus books in barely 25 years.

The "strange country" of the title refers to the uneasy existence of U.S. military troops on European soil, something that was established at the end of World War II and then expanded greatly as the NATO alliance grew and deepened over the following decades.

You could see the "strange country" in either direction, as the American military personnel clearly find themselves in strange country whenever they are posted abroad, or conversely as Brunetti experiences when he visits the base:

The walls held posters of unnamed cities which, because of the height and homogeneity of their skyscrapers, had to be American. That nation was loudly proclaimed, too, in the many signs which forbade smoking and in the notices which covered the bulletin boards along the walls. The marble floor was the only Italianate touch.

The case which Brunetti must solve intricately winds in and out of these two strange countries, Italy and the American military base, sending Brunetti and his colleagues back and forth as leads point this way and that, and in the end the case becomes a tangled knot of corrupt officials, organized crime, and unfortunate happeners-on who found themselves consumed by the consequences.

As is, I expect, a theme with all of Leon's books, Death in a Strange Country features a critical point where Brunetti must make a judgement call of his own, choosing his own path to follow and making his own decisions about where the distinction lies between justice and law.

Though it took me a long time to get through Leon's first book, personal circumstances were such that I flew through the second one, finishing it in only a few days.

However, just as with the first, I ended Death in a Strange Country eager to begin the next Brunetti novel (which is already on its way!).

Saturday, January 22, 2022

Horizon Zero Dawn: a very short review

For much of the last six months, one of my pandemic companions has been Horizon Zero Dawn, the richly-imagined, deeply-realized, beautifully-executed, eerily-compelling video game from the Dutch game developer Guerilla Games.

HZD is five years old at this point, as it was released in 2017. It was a Playstation exclusive at that point, and it quickly became known as one of the signature games for the PS4, and it was credited with substantially boosting PS4 sales.

I originally bought HZD for the PS4, and even tried it once or twice. But I find playing games on the PS4 directly to be hard. I find the Sony controller to be awkward and I've struggled to learn how to use it properly. It often slips out of my hands, and I don't have the coordination, sadly to execute multi-finger combination key sequences with fingers and thumbs of both hands simultaneously, with the result that, sadly, the controller generally ends up in a corner of the room and the (human) controller stomps away in frustration.

Over the years, my kids continued to play the game, and would regularly tell me and show me how wonderful it was, so every so often I'd pick up the controller and try again, only to set it down again.

But in late 2020, Guerrilla released a PC version of the game, and my interest was rekindled.

I don't know, in detail, how the PC version differs from the Playstation version, but I can certainly tell you that the PC version is just gorgeous! It's essentially bug-free, very very stable, very responsive on my six-year-old PC, and oh so very much fun to play.

The overall story arc of Horizon Zero Dawn is quite well known, and you can read about it everywhere, so I encourage you to do so. The game executes that story extraordinarily well, immersing you in a world that is both foreign and familiar, real and yet fantastic, current and yet remote.

As the story is unveiled, and you begin to put the pieces together, the decisions you make as you play take on more and more importance, and you quickly find yourself in something that's much, much more than just a hack-and-slash typical adventure game of quests and monsters.

The story comes to a very interesting conclusion, which will certainly leave you thinking about our modern world, and its modern technology, for quite a long time.

For me, it's hard to decide on a tie breaker, but I think by a slight margin the best quest was Maker's End, where you learn all about Elizabet Sobeck and her relationship with Ted Faro, and the second best quest was The Mountain That Fell, where you learn all the details of the great betrayal and its consequences.

The collectables quests that I most enjoyed were the Banuk figurines, because I loved the mountain climbing and ropes courses, and the Vantages, because again I loved the world exploring. The Vantages quests also provide the loveliest alternate plot line, I think.

And I can't stop without observing that the Frozen Wilds DLC, which came bundled in the PC version I bought, is far and away the most visually appealing of the world landscapes to me. The snowy peaks and valleys and the lovely color pallette of whites and blues and grays combined with some very different background music made that section of the game really immersive to me. The DLC also has the single most appealing location to me, namely the enormous dam and waterworks with its deep underground areas.

Lovely game, through and through. I really, really enjoyed it.

Thursday, January 20, 2022

Death at La Fenice: a very short review

I'm, as usual, exactly 30 years late to the party, but let me just be one of the most recent to tell you about Donna Leon and her lovely series of detective novels featuring Commissario Guido Brunetti of the Venice Police.

The first in the (wow! 31!) novels in the series is Death at La Fenice.

As the first novel, it spends a certain amount of time helping us get to know the major characters, including Brunetti, his wife Paola, and his various other colleagues on the Venice Police.

Death at La Fenice is a lovely detective novel by itself: never rushed, never forced, never awkward or clumsy. Leon's tale proceeds through both time and space as Brunetti's investigation leads him to explore how events in wartime Germany continue to affect Italy today.

As so many other reviewers have remarked, the best part of Leon's books is how Venice comes alive. Leon, an American writer, talks of the city with a tenderness and respect borne of her own many years living there, and lets us see Venice through her eyes.

Thursday, January 13, 2022

Wordle

I really enjoy Wordle.

But somehow, my brain is busted from years of playing games like Jotto and Mastermind as a child, so I keep making dumb mistakes.

Today, for example, I got stuck because I thought that Wordle's word list did not allow repeated letters; that is, that a valid Wordle word was five distinct letters.

I, of course, was wrong. Repeated letters are in fact allowed in Wordle.

And that's true of Jotto, also, I guess, although in my family I recall that we disallowed repeated letters in our secret words (though, importantly, not in the guess words). Wikipedia notes that this was a common "table rules" decision when playing Jotto. And the version that MentalFloss describes was quite strict about the no-repeated-letters rule.

I guess I'm not the only person who sees Wordle in this historical context: Wordle’s massively popular (Jewish) predecessors

I am a child of the 60's, after all (though not Jewish).

My parents played Mental Jotto with me as well; it was quite the mental workout! We didn't take walks to the synagogue, but, living in Southern California, we did often find ourselves going on multi-hour drives (that's what Southern Californians do for fun, after all), and Mental Jotto definitely passed the time! Clearly we weren't the only ones who did this.

Thursday, January 6, 2022

Dead and Company winter tour upheaval

Bill the drummer has a Twitter account? How did I not know this?

Bummer of a way to find out, though.

And John Mayer is ill as well, oh dear.

I'd never heard of Tom Hamilton before, although my tour buddies are quite familiar with him, as they've seen Joe Russo's Almost Dead multiple times.

Chasing those links led me to see that JRAD are headlining the High Sierra Music Festival. This looks great! Maybe I should check it out next summer? (Check out the Guidelines for important Hula-Hoop information!)

I bet Quincy is wicked hot in late June, but I've been there before in the summer and, being at moderate elevation (3500'), it was lovely in the evenings, and even pretty decent in late afternoon.

Gotta keep on truckin...

UPDATE Now they're starting to cancel the shows. They haven't canceled the entire tour yet, but ...