mlindgren.ca

1989

I’ve been working on my next book review for a few days now, but I’m finding that when I try to work on it, words don’t come quickly or easily to me. So, what the hell—might as well try something different. Music is immensely important to me. I’ve got a fairly large collection spanning over a thousand artists in dozens of different genres; I spent two years working in a record store (back when those still existed) and I consider music crucial to my ability to handle difficult emotions, be productive, and maintain sanity.

However, I’ve always been reluctant to write about it, because I’m basically musically illiterate. I don’t play any instruments; I can’t tell a C from an F; I can barely pick out the individual instruments in a song; I don’t even know the right terminology to use when discussing what makes music good or not. I hope that eventually I’ll be able to take some music lessons and correct this to some extent, because I also believe that you can’t fully appreciate something you don’t understand. But for now, I remain ignorant of the intricacies of musical composition. Thus, I’m not going to be so presumptuous as to call this a review, but… well, keep reading and you’ll see what I’m on about.

I go through periods of obsession with musical artists where I’ll discover someone new and become absolutely, completely captivated by them, usually buying several if not all of their records and listening to them over and over again until I’ve thoroughly “worn out” every single song. Then, if I’m lucky, I find someone new to become obsessed with, and the cycle begins anew.

Last month it was Lana Del Rey: her albums Born to Die and Paradise are absolutely phenomenal, and she herself is just an incredibly talented artist. One thing I find particularly interesting about Lana is how her sound—her voice, in particular—seems to evoke the 1950s; according to Wikipedia, “her music has been noted for its cinematic sound and its references to various aspects of pop culture, particularly that of 1950s and ‘60s Americana.” But Del Rey’s music doesn’t sound dated—lyrically, she manages to capture a timeless quality while also epitomizing modernity and the hollowness of American decadence. It’s a combination unlike anything else I have ever heard, and I still find it almost intoxicating.

Del Rey has announced a fourth album, Honeymoon, which is billed as being more like Born to Die and Paradise than her third album, Ultraviolence, which I have to admit that I didn’t care for as much. Naturally, I’m really looking forward to that. Enough about Lana, though. This month, I’m hooked on Taylor Swift’s latest album, 1989.

Configuring DPI in Lubuntu/LXDE

If you’ve tried to use Lubuntu (or LXDE on another distribution) with a high-DPI display, you’ve probably noticed that fonts and other UI elements are so tiny as to be illegible without a magnifying glass. You’ve probably also noticed that there is no GUI with which to adjust the UI scaling factor. Happily, it is possible to change the DPI settings in LXDE, but this being Linux, it requires editing obscure configuration files. Here’s what you’ll need to do:

  1. In your home directory, create a new text file named .Xresources
  2. In this file, enter your desired DPI in the following format: Xft.dpi: 150
  3. Restart the X server. You can do this by pressing Ctrl + Alt + F1 to enter single-user mode, then running sudo service lightdm stop, and then sudo service lightdm start. (Note that it may be a different service if you are not running Lubuntu. Alternatively, you can just reboot your machine.)

This will scale UI elements in most, but not all, applications. For instance, it doesn’t resize the desktop panel, so you’ll likely want to do that as well. Luckily you can do so easily by right clicking on an empty space on the panel and selecting Panel Settings; from there, just change the height of the panel in pixels to a suitable value.

This is yet another tip that I’m posting mainly becuase it took me an inordinate amount of time to figure out how to do it. I found many suggestions on how to enable scaling, but none of them worked until I stumbled across the above instructions on the blog of bebabi34. His blog is in Italian, so naturally it’s not very searchable for English speakers; hopefully by reproducing his instructions here, I can save others some time.

How to manually send a Pingback

A couple years ago I stopped using WordPress and switched to Octopress, which is a derivative of Jekyll. I continue to be pretty happy with this decision, but there are some downsides to using a static site generator. One issue is the lack of support for Pingbacks, which are a method supported by a number of dynamic blogging platforms to notify another blog when you link to its content. Pingbacks provide a good way to respond to blog posts using your own blog rather than via commenting; thus, they facilitate “conversation” between blogs. Unfortunately, if you’re using Octopress or Jekyll or another framework to generate static HTML pages, you won’t natively have the ability to send or receive Pingbacks.

Luckily, Pingbacks can be sent manually with relative ease. Receiving Pingbacks still won’t be possible, though; that’s a much harder problem to solve, for a variety of reasons which aren’t relevant to this post.

Before I proceed, I want to note that full credit for this information goes to Aaron Parecki; he explains the technique in this GitHub Gist. The reason I’m reproducing it here is because it was surprisingly hard to find Aaron’s Gist, or anything else of relevance, when I was searching for information on how to send a Pingback. Hopefully, by posting about it and adding some extra context, I can make the information more searchable.

First, you’ll need to create a copy of this XML file on your local machine:

pingback.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<?xml version="1.0" encoding="iso-8859-1"?>
<methodCall>
<methodName>pingback.ping</methodName>
<params>
 <param>
  <value>
   <string>http://source/url/here</string>
  </value>
 </param>
 <param>
  <value>
   <string>http://target/url/here</string>
  </value>
 </param>
</params>
</methodCall>

Replace the two URLs as appropriate - the first one is the source (i.e. your blog post), and the second is the target (the post you are linking to).

Now, you just need to POST the request to the target server. You’ll need to know the target’s XML-RPC endpoint URL for this. Usually, it will be /xmlrpc, or for WordPress blogs, /xmlrpc.php. You can find out for sure by inspecting the site’s source for a <link rel="pingback" href="..."/> tag.

You can use cURL to post your request. It’s built into most Unix-like operating systems, but Windows users will have to download it, and if you’re on Mac OS X you probably need to have Apple’s developer tools installed. Just run:

curl -X POST -d @pingback.xml http://example.com/xmlrpc.php

…and that’s it! cURL should print out an XML response from this server with a message indicating that your Pingback was registered. Of course, to be truly sure it worked, you should check the target URL and see if your Pingback was added to the page. (Note that some sites disable Pingbacks.)

Book Highlights: Halo: The Fall of Reach

As the first book set in the Halo universe, Eric Nylund’s Halo: The Fall of Reach describes the training and induction of the first-ever Spartans, including John-117, the Master Chief. It follows the Spartans through some of their earliest missions, depicts humanity’s first contact with the Covenant, and culminates in the battle for planet Reach, a human colony. I don’t often read fiction, and I am not sure I’ve ever before read “expanded universe” fiction for a game or a movie, so Halo: The Fall of Reach was a bit of an unusual read for me. However, since I really enjoy the Halo games, universe, and characters, and since this book came highly recommended by other fans of the series, I figured it couldn’t hurt to give it a try.

Unfortunately, per my review policy, I can’t actually review this book: the Halo series, and indeed the copyright to the book, is owned by Microsoft, by whom I am employed by. Instead, I want to highlight a few things that I found interesting in the book. Be warned that this post will contain some spoilers for the book and other parts of the Halo series.

Book Review: I Am Malala

I expect most people will already have some familiarity with Malala Yousafzai. In case you’ve been living under a rock, though, Malala is a young Pakistani woman who, at the age of 15, was shot in the head by the Taliban for her outspoken support of the right to education of children, including (especially) girls, who are often denied the right due to their gender. Miraculously, she survived the assassination attempt, and following her recovery, has continued to campaign in support of education. Now, at age 17, she has an impressive list of accomplishments and accolades to her name, including most recently becoming the youngest Nobel laureate in history after jointly winning the 2014 Peace Prize with Kailash Satyarthi, another activist for children’s rights.

I Am Malala: The Girl Who Stood Up for Education and Was Shot by the Taliban, written jointly with award-winning foreign correspondent Christina Lamb, is Malala’s autobiography. It chronicles her experience growing up in Pakistan’s Swat Valley, the invasion of the Taliban into the area and her life under their rule, their attempt on her life, and her recovery and continuing efforts in support of education.

Book Review: Lying

Originally published as a “Kindle single” in 2011, Sam Harris’ Lying was republished in a revised and expanded format in 2013, but it remains more of an essay than a book. The entirety of the book weighs in at 108 pages, but the main content takes up only about a third of that. The remaining two thirds consist of a transcript of a conversation between Harris and professor Ronald A. Howard, whom Harris credits as the inspiration for the book, and an FAQ based on feedback received since the original publication. These latter two parts make a worthwhile addendum to the original essay, but they are by no means indispensable: the centerpiece here is Harris’ analysis of the act of lying and all the ways in which it can lead to bad outcomes.

In Lying, Harris attempts to make the case that dishonesty is almost always unethical, and that simply by being truthful, one can avoid “endless forms of suffering and embarrassment.” This might seem like a fairly obvious statement, but Harris explicitly includes (and, in fact, primarily focuses on) “white lies”—those small lies we tell not for our own benefit, but, we think, to spare others from hurt feelings or unpalatable truths. Though white lies are often told by good people for what they believe to be are good reasons, Harris argues that the cost of these lies, in the long term, outweighs their benefit:

Book Review: Free Will

Sam Harris is a controversial figure, to say the least. Personally, I’m a fan of his work, but as one of the “four horsemen” of so-called New Atheism, he has met with much ire since the publication of his first book. This comes not only from religious adherents, but also from secular liberals, many of whom seem to willfully (and sometimes maybe even gleefully) misinterpret him. Although Free Will, published in 2012, courts less political controversy than Harris’ other works, it too will raise the eyebrows of some readers. In fact, earlier this year, it met with a prickly reception from fellow “horseman” and philosophy professor Dan Dennett.