Matt Nordhoff


At npm Inc, we take security extremely seriously… so you know what’s coming next, don’t you? Here’s the TLDR:





chemical reaction

*how to spawn demons: a beginner’s guide to chemistry


Because SCIENCE!!!!!

I was hoping this would end in “13. Chlorine Trifluoride and Anything" and a picture of a nuclear test. :-)

I sometimes reread things that I’ve written in the past (cringing frequently). Doing this to last year’s Mormon missionary atheism rant yesterday reminded me that it deserves a couple small updates/corrections, which I’ve been procrastinating about pretty much from the moment I hit Publish. This is not, uh, going to be an interesting post — I’m going to keep procrastinating about writing one of those — but honesty/pedantry compels me to write it anyway.

Regarding happiness, I wrote:

Elder A’s religion may make them happy, but it’s a path to happiness I find completely uninteresting. I certainly want to be happy — through the truth, and things that are real. Despite its faults, the world is a reasonably awesome place. Building happiness out of it seems practical enough. Even if it weren’t, it’s irrelevant. From my point of view, deluding myself into believing falsehoods is completely alien to how to live my life, and for that reason would never make me happy.

While what I wrote was true, I was papering over the fact that, frankly, I’m not happy. (There is no fascinating, tragic story here — blah blah depression mental health Edward future Jacob LiveJournal young. I have a normal life with a normal amount of bullshit.) Nonetheless, religion, or the lack thereof, is not the cause or the solution of this situation. I am not a Bitter Atheist — I am a person; Bitter and Atheist are just two of the many adjectives that can describe me.

I also wrote:

I’m not a closet atheist, but I normally don’t advertise it. …. (I have no problem saying “the Vatican is totally misogynistic”, but I won’t end it with “oh, and God doesn’t exist, and I hate the Pope”.) …

No, fuck it, I totally am a closet atheist. I mean, I’m obviously not — after all, my name is on this post, and I don’t live in fear of lynching — but I mostly avoid admitting it. That Vatican thing? I would say it, I have said it, but more often I’ve kept my mouth shut and suppressed a grimace. And when I have spoken up, I’ve moderated what I say, which is possibly even more unpleasant than keeping quiet entirely.

There’s very little, or very much, to say on the subject. I might have lingering shame. I don’t want to be a jerk. I’m afraid other people might be jerks. I don’t want to put my foot in it. It’s not a new story.

But what the hell.

(Edit, Sat Jun  1 04:25:14 UTC 2013: I used the word “depression” above. I’ve never been diagnosed with it, so that was irresponsible of me. Incidentally, I do have bipolar disorder. On the one hand, I feel — and I’m not saying that I think this feeling is necessarily correct — that I have some degree of “N word privileges” when it comes to mental health. On the other hand, I should know better than to flippantly misuse terminology.)

Linode, pv-grub and Ubuntu 12.04

Linode’s pv-grub Library article covers Ubuntu 10.04 and 11.04, but not 12.04. Having recently used pv-grub on EC2, and for other reasons, I wanted to try it out. Putting together the Library article, Linode’s old wiki, EC2’s configuration, and the effects of sleep deprivation and caffeine, here’s what I came up with.

Doing this was, surprise surprise, more fun than writing about it, so this post will be as short and nonsweet as I can make it.

$ sudo aptitude install grub-legacy-ec2

$ sudoedit /boot/grub/menu.lst

Edit menu.lst roughly like this:

--- menu.lst~	2013-03-10 00:18:09.000000000 +0000
+++ menu.lst	2013-03-10 00:21:40.000000000 +0000
@@ -17,7 +17,7 @@
 # Set a timeout, in SEC seconds, before automatically booting the default entry
 # (normally the first entry defined).
 # on ec2, with no console access, there is no reason for a timeout.  set to 0.
-timeout                0
+timeout                10

 ## hiddenmenu
 # Hides the menu by default (press ESC to see the menu)
@@ -64,7 +64,7 @@
 ## e.g. kopt=root=/dev/hda1 ro
 ##      kopt_2_6_8=root=/dev/hdc1 ro
 ##      kopt_2_6_8_2_686=root=/dev/hdc2 ro
-# kopt=root=UUID=f63cf0b4-8c2b-4327-a213-e7f5b8634c27 ro
+# kopt=root=/dev/xvda ro
 ## default grub root device
 ## e.g. groot=(hd0)
@@ -83,7 +83,7 @@
 ## additional options to use with the default boot option, but not with the
 ## alternatives
 ## e.g. defoptions=vga=791 resume=/dev/hda5
-# defoptions=console=hvc0
+# defoptions=console=hvc0 rootflags=nobarrier
 ## should update-grub lock old automagic boot options
 ## e.g. lockold=false

Increasing timeout gives you 10 seconds to log into lish and choose which kernel you want while booting.

Changing the kopt line — your filesystem’s UUID will be different — is necessary because Linode might change the UUID (e.g. if you restore from a backup), so it’s safer to specify /dev/xvda.

rootflags=nobarrier avoids a compatibility issue between newer kernels like Ubuntu Precise’s and less-newer Linode hosts that would otherwise make your fs go read-only and ruin your day.

$ sudoedit /etc/fstab

Add barrier=0 to your filesystem mount options, like so:

--- fstab~	2013-03-10 03:45:18.000000000 +0000
+++ fstab	2013-03-10 03:45:23.000000000 +0000
@@ -6,6 +6,6 @@
 # <file system> <mount point>   <type>  <options>       <dump>  <pass>
 proc        /proc        proc    defaults                       0 0
-/dev/xvda   /            ext3    noatime,errors=remount-ro      0 1
-/dev/xvdb   /home        ext3    noatime,errors=remount-ro      0 2
+/dev/xvda   /            ext3    noatime,errors=remount-ro,barrier=0      0 1
+/dev/xvdb   /home        ext3    noatime,errors=remount-ro,barrier=0      0 2
 /dev/xvdc   none         swap    sw                             0 0

This is for the same reasons as the rootflags=nobarrier stuff above. I think you can skip it on the root fs, but it won’t hurt, and you definitely need it on any secondary filesystems.

$ sudo aptitude install linux-virtual

After downloading and installing roughly half of the repository, this will eventually pop up a curses interface asking you to install grub-pc on your MBR. You do not have an MBR. Hit Enter without selecting any of the devices to get through the first screen, then hit Left and Enter to select <Yes> in the confirmation screen.

From here, you can switch to the Linode Library guides for 10.04 or 11.04, starting with the line “Create the file /etc/init/hvc0.conf with the following contents.”. (That file may already exist, but in any case, you do need to follow the later instructions.)

(Caveat: menu.lst includes entries to boot into single-user mode. They are broken. This would not be hard to fix — see defoptions and kopt — but my heart belongs to Finnix, so I don’t care.)

(Edits: Copy editing.) (Edit, 2013-03-10T03:54:43Z: Elaborate on /etc/fstab and barrier=0. Remove note about single-user mode — it seems to work?) (Edit, 04:09:12Z: Wait, no, single-user mode doesn’t work. Elaborate.)

I got a Domain Registry of America letter! YES! I’ve always wanted one!

The letter is addressed to “MATTHEW NORDHOFF MATTHEW NORDHOFF”.

It regards my oldest domain name, a .com. It claims it expires “in the next few months”, specifically 2013-04-19, and suggests transferring it to them. I actually renewed and transferred it (between two other registrars, of course) in 2011 and it currently expires 2015-04-19.

Their prices start at $35/year, and get cheaper for longer terms.

Except for the expiration, all of the information in the letter seems to be technically accurate, emphasising the importance of renewing one’s domain names, not saying that they must be transferred to DROA, but suggesting that it’s a good idea.

Quoting the tiny legalese on the back,

“We”, “us” and “our” refer to eNom, Inc., BRANDON GRAY INTERNET SERVICES INC. (dba “, and DROA

We have found that modern software-based TLS implementations running on commodity CPUs are fast enough to handle heavy HTTPS traffic load without needing to resort to dedicated cryptographic hardware. We serve all of our HTTPS traffic using software running on commodity hardware.




I’ve basically spent an entire day drinking tea while taking copious amounts of notes about ancient Indian cities, old Persian legal precedents, historic assassinations, and lotus ponds.

I feel so fucking jammy. This is the best. Now to draw thumbnails until I fall asleep at my desk.


This makes me feel even more confident in my never-ending quest to drown myself in tea. I’m pretty sure energy drinks are made of gravel and ground-up fairy livers anyway. Bleurgh.

I once spent three days guzzling big (650 mL) mugs of tea* and sleeping for only a few hours. Finally I got kind of hyper and jittery and realized that each mug contained a bit more caffeine than a cup of coffee…

It takes a lot of effort, but it is possible to drink a dangerous amount of tea. Nowadays I’m more careful.

</CBS Cares>

* Yes, mugs. I am a tea heretic, and proud of it.


I’ve basically spent an entire day drinking tea while taking copious amounts of notes about ancient Indian cities, old Persian legal precedents, historic assassinations, and lotus ponds.

I feel so fucking jammy. This is the best. Now to draw thumbnails until I fall asleep at my desk.


Also that reblog of drawings of boobs.

If I ever run for political office, my campaign manager will cry when they see my Tumblr. “Hello World”, “Atheism!”, “Shoplifting!” :-\