Miskatonic University Press

Robert Hughes on Seneca

quotes stoicism

From Rome (2011) by Robert Hughes, a marvellous book, full of wonderful insight and wisdom:

Coming from Spain, Lucius Annaeus Seneca (d. 65 CE) was Nero’s tutor, and a stupendously voluble writer: his surviving prose works alone run to over a thousand closely printed pages. He took great pride in his Stoicism, but no Stoic was ever longer-winded or more self-infatuated. He could argue both sides of a case—when Claudius died it was Seneca who compose the eulogy delivered on him by Nero, his successor, but also Seneca who wrote a satire on the departed emperor, the “Apocolocyntosis” or “Pumpkinification” of Claudius, who was imagined as turning into a dim-witted, sententious vegetable god. Seneca was a hypocrite almost without equal in the ancient world. He sang the praises of moderation: “To be a slave to self is the most grievous kind of slavery; yet its fetters may easily be struck off…. Man needs but little, and that not for long.” Fine words, which unhappily bear little relation to the real facts of Seneca’s life: he was a mercilessly greedy usurer. Few can have mourned him when, on direct orders from Nero, he committed suicide by opening his veins in a hot bath.

Fungi Town episode on lichen

cryptogams podcasts

Episode 04: Lichen or Not is the most recent in the Fungi Town podcast, hosted by Jen Parrilli. Fungi are wonderful—where would we be without yeast?—but when they’re combined with algae or cyanobacteria to form lichen, well, that’s when things get even more exciting.

Xanthoparmelia Cumberlandis
Xanthoparmelia Cumberlandis

Ursula K. Le Guin on H.P. Lovecraft

literature quotes

Seen in the 02 February 2018 Times Literary Supplement, which reprints Ursula K. Le Guin’s 26 March 1976 review of L. Sprague de Camp’s biography Lovecraft.

H.P. Lovecraft of Providence, Rhode Island, the author of such works as “The Dunwich Horror” and “Fungi from Yoggoth,” is the object of a small but tenacious cult. It would be fun for anyone allergic to cultism to go through Lovecraft’s work selecting a nosegay of fungi, collecting bigotries and infelicities, perhaps enlisting a computer to determine how many times he used the word “eldritch.” Fun, but far too easy. One could quote almost at random. Lovecraft was an exceptionally, almost impeccably, bad writer. He was not even originally bad. He imitated the worst bits of Poe quote accurately, but his efforts to catch Dunsany’s sonorous rhythms show an ear of solid tin. Derivative, inept, and callow, his tales can satisfy only those who believe that a capital letter, some words, and a full stop make a sentence.

But also:

But Lovecraft’s feebleness gave his writing its one strength: his tales can be frightening. Read late at night and alone, they give the genuine chill. The house creaks: the cat stares fixedly at something about three feet tall which you cannot quite see, there behind the armchair. Is there, perhaps, a webfooted person in the basement?

Also reprinted are short reviews of four SF novels from the 30 July 1976 issue where she says (about The Stochastic Man) Robert Silverberg is “a superpro … probably the most intelligent science fiction writer in America,” and (about The Space Machine) Christopher Priest “is a versatile, autonomous writer from whom we can expect nothing expectable.”


mathematics podcasts

I really enjoyed the latest episode of the My Favourite Theorem podcast, with Jayadev Athreya.

JA: So when trees are planted by a paper company, they’re planted in a fairly regular grid. So imagine you have the plane, two number lines meeting at a 90 degree angle, and you have a grid, and you plant a tree at each grid point. So from a mathematician’s perspective, we’re just talking about the integer lattice, points with integer coordinates. So let’s say where I’m standing there’s a center point where maybe there’s no tree, and we call that the origin. That’s maybe the only place where we don’t plant a tree. And I stand there and I look out. Now there are a lot of trees around me. Let’s say I look around, and I can see maybe distance R in any direction, and I say, hm, I wonder how many trees there are? And of course you can do kind of a rough estimate.

Now I’m going to switch analogies and I’ll be working in flooring. I’m going to be tiling a floor. So if you think about the space between the trees as a tile and say that has area 1, you look out a distance R and say, well, the area of the region that you can see is about πR², it’s the area of the circle, and each of these tiles has size 1, so maybe you might guess that there are roughly πR² trees. That’s what’s called the Gauss circle problem or the lattice point counting problem.

But you can’t see every tree in all directions, because some are behind each other in your line of vision.

JA: A point (m,k) is visible if the greatest common divisor of the numbers m and k is 1. That’s an elementary exercise because, well maybe we’ll just talk a little bit about it, if you had m and k and they didn’t have greatest common divisor 1, you could divide them by their greatest common divisor and you’d get a tree that blocks (m,k) from where you’re sitting…. We call these lattice points, they’re called visible points, or sometimes they’re called primitive points, and a much trickier question is how many primitive points are there in the ball of radius R, or in any kind of increasingly large sequence of sets…. And miraculously enough, we agreed that in the ball of radius R, the total number of trees was roughly the area of the ball, πR². Now if you look at the proportion of these that are primitive, it’s actually 6/π².

This is another way of talking about the “probability of coprimality” (see coprime integers on Wikipedia): pick any two integers at random, and the probability that they are coprime (have no prime factors in common) is 6/π². Primes and pi coming together! Beautiful.

Sorting LCC call numbers in R

code4lib r

Here’s the easiest way to sort Library of Congress Classification call numbers in R:

call_numbers <- c("QA 7 H3 1992", "QA 76.73 R3 W53 2015", "QA 90 H33 2016", "QA 276.45 R3 A35 2010")
## [1] "QA 7 H3 1992"          "QA 76.73 R3 W53 2015"  "QA 90 H33 2016"        "QA 276.45 R3 A35 2010"

gtools is part of standard R. The docs says about mixedsort and mixedorder:

These functions sort or order character strings containing embedded numbers so that the numbers are numerically sorted rather than sorted by character value. I.e. “Asprin 50mg” will come before “Asprin 100mg”. In addition, case of character strings is ignored so that “a”, will come before “B” and “C”.

(I don’t know why “Aspirin” is misspelled.)

If you have a data frame (df) with column call_number then you would use mixedorder to sort the whole thing by call number thusly:

df[mixedorder(df$call_number), ]

I asked about this on Stack Overflow and on the Code4Lib mailing list last July, then I went on vacation and sort of forgot about it. Nine months later, I thanked Li Kai, who pointed me to a Stack Overflow that solved my problem and let me then answer my own question.

Unrelated library sign.
Unrelated library sign.

Let's Encrypt


A quick note to say I had no idea Let’s Encrypt is so easy to use. I followed these instructions, but the EFF’s Certbot gives instructions for many sorts of systems.

I thought the tool would generate some confusing configuration file I’d need to edit and move and tweak, but all I had to do was this (on an Ubuntu system where I host a web site): three commands to install the tool, then one to say, “Make this site work with HTTPS.”

sudo add-apt-repository ppa:certbot/certbot
sudo apt-get update
sudo apt-get install python-certbot-apache
sudo certbot -d hostname.library.yorku.ca

I answered one or two yes/no questions and then it just worked.

This is really admirable work. My congratulations and thanks to everyone involved.

Two stories about Betty at the library

archie libraries

There are two back-to-back Riverdale Public Library stories about Betty in B&V Friends Jumbo Comics Digest 258 (March 2018).

First is “Keep Those Library Doors Open,” written by George Gladir, pencilled by Jeff Shultz, inked by Al Milgrom, lettered by Jack Morelli and coloured by Barry Grossman. It originally appeared in Betty and Veronica Double Digest 186.

Here’s the first panel, where Betty, Veronica and Nancy ask the librarian, Ms. Alvarez, about the situation.

First panel of Keep the Library Doors Open
First panel of Keep the Library Doors Open

This is a branch library, not the central one (in fact this is the first time I’ve seen a mention that the Riverdale Public Library has more than one branch). Mr. Lodge knows what’s going on, as Veronica learns: “Our city’s tax revenue is down drastically—and the special bond issue to fund the library was voted down! However, our city’s main library will remain open.” Veronica is not satisfied: “It won’t be enough! I’m told demand for library services has never been greater!”

They all go to city council (apparently Mr. Lodge is powerful enough in Riverdale to have an item immediately added to the agenda), where Ms. Alvarez pleads for more time. “All we ask is the opportunity to try some measures to stall the closing of our library … like reducing hours and recruiting volunteers!” It works: a month later, because of the cost-cutting measures, the library is allowed to stay open.

This kind of situation happens regularly, sad to say, but in a real city there would be more long-term planning (a city council wouldn’t allow one branch to stay open for one more month on the spur of the moment) and the chief librarian would also be involved. However, for the sake of the story, narrowing the focus works well. Of course, it’s great to see a story of public activism successfully keeping a library open.

On the other hand, the solution presented is not sustainable in the long term. A better one would be to raise taxes, especially on families like the Lodges.

The second story is “Check It Out,” written by Kathleen Webb, pencilled by Stan Goldberg, inked by John Lowe and lettered by Bill Yoshida (there is no colouring credit). I’m not sure when it originally appeared, but it looks like the 2000s. (This is not the same as another “Check It Out!”, which I haven’t seen, where Archie and Reggie join the library club because there’s an attractive librarian.)

This is a delightful story all about a wonderful visit Betty takes to the library. Unlike the “Keep Those Library Doors Open,” here Veronica doesn’t care about the library at all: she says, “I just don’t see what she gets in that mausoleum for nerds!”

Panel from Check it Out
Panel from Check it Out

Betty searches the library catalog (an OPAC) for books to help with a school assignment, then notices some new fashion history books and some new style magazines. She uses the library computers to do research on the web, too. While she’s working the librarian, Ms. Dewey, comes over and does some reader’s advisory.

Another panel from Check it Out
Another panel from Check it Out

Next, Betty sees a DVD of a movie Archie hasn’t seen, and takes out it and a cookbook so she can make a new dish for an evening together. She seems some little kids she babysits and reads them a story, then gets a CD, then runs into a tough-looking motorcyclist she knows who happens to be getting Crocheting Doilies Made Easy, which he claims is for his mother.

After Ms. Dewey checks out her books, Betty says, “There’s nothing like an afternoon at the library!” This is great story about all the things public libraries have to offer.

Easy Reader


When I was a little kid in the early ’70s, I liked watching The Electric Company. My favourite character was Easy Reader, and even though Morgan Freeman has had a great career since then, that’s how I always think of him. I just realized today that Easy Reader must have been a play on Easy Rider. I didn’t clue in at the time, but after all, I wasn’t even in grade one yet.

Here’s Easy chatting up a librarian and having fun with words:

List of all blog posts