Link to a Specific Line in a File from Org

A nice tip from Robin Green:

Posted in General | Tagged , | Leave a comment

The Magic Story

Years ago, I had a printed copy of The Jargon File and spent many happy hours reading through it. If you haven’t browsed through the file, you should. It’s full of screamingly funny tidbits about our Hacker Culture and Language.

My favorite entry, by far, is A Story About Magic that tells the tale of a seemingly magic switch glued to the frame of a PDP-10 in the MIT AI Lab. One day, Guy Steele happened upon the switch that had its two positions labeled “magic” and “more magic.” The switch was in the more magic position but had only one wire attached to it and was therefore electrically non-functional.

Go read the story to find out what happens when Steele flips the switch. To this day it’s still not definitely known how it worked.

Posted in General | Tagged | Leave a comment

Happy Birthday…

Dark Side of the Moon. The iconic Pink Floyd album was released 42 years ago today. One of the most successful albums of all time, it, even today, pops on and off the Billboard 200. Last week (March 7) it was 196. It’s off the list on the latest (March 14) list but will doubtless be back.

“Money” and “Time” were the two hit singles from the album but everybody I know considers the last two songs, “Brain Damage” and “Eclipse”, to be the enduring masterpieces of the album.

Posted in General | Tagged , | Leave a comment

Why?

Words fail me. Why would anyone do this?

Posted in General | Tagged , | 4 Comments

Moving The Custom Data Out of init.el

I never use the Emacs custom facility. It puts cryptic (alright, not too cryptic) entries into the custom-set-variables and custom-set-faces lists that are far away from all the rest of the customizations for a given package. Even worse, some packages—I’m looking at you bookmark+—take their existence as license to write data into the lists that they want to preserve across Emacs invocations. That’s particularly annoying because I have my init.el under version control and this causes merge conflicts when I update my other machines.

Happily, Ryan McGeary over at M-x all-things-emacs has the solution. He shows you how to move the custom lists out of init.el (or .emacs) and into another file. You can then load it separately if you like or just ignore it and whatever rogue packages put in it. It’s probably best to load it just in case but it is nice to be able to get it out of init.el.

Posted in General | Tagged | 13 Comments

Where’s Your Emacs Initialization File?

TIL: The Emacs variable user-init-file contains the file path of the current initialization file. (via Daniel Ehrman).

Posted in General | Tagged | Leave a comment

Seriously Paper Free

I’ve written before that I’m rigorous about avoiding paper, pens, and pencils. I’m pretty good about doing everything digitally but nowhere near as good as these guys. Their feat is even more impressive when you realize that they’re doing it in an office setting.

They waged a war on paper and essentially drove it completely from their office. At the end of the day anyone can dispose of any paper they see lying around whether or not it’s theirs. They moved the printer to a location so remote and inconvenient to the rest of the office that people stopped using it and they were able to get rid of it. They have a strict prohibition against signing paper contracts. So strict that the CEO was sentenced to a full day of customer support for signing a paper contract. The company also prohibits taking notes in notebooks in meetings. Instead, they bought each employee an iPad to take notes with.

As you can see, they are serious about doing without paper. So serious that they also got rid of the toilet paper. I’ll let you head on over to the post to see how they managed that.

As I found out when I first started trying to collect all my information digitally, it’s mostly a matter of culture and habit. At first it’s hard and seems limiting but soon you don’t notice the lack of paper and writing implements. Especially since everything is so easy to access and search for and you don’t have a bunch of documents waiting to be filed and taking up room once they are.

Posted in General | Tagged | Leave a comment

Do As I Say…

An almost too delicious piece of hypocrisy.

Posted in General | Tagged , | Leave a comment

What Happens When You Build In Backdoors?

They end up biting you in the butt. Matt Green’s post is a nice explanation of the FREAK exploit. You can read his post for the technical details, which, really, aren’t that interesting except that they show how making it easy for governments to defeat crypto systems will inevitably end badly.

Back in the 90’s the U.S. government classified crypto systems as munitions and prohibited their export. It was entirely unworkable, of course1. Foreigners wishing to download crypto-enabled applications easily skirted the simple checks used to verify they were in the U.S. and domestic companies moved their crypto development off shore and imported the results—the government had no problem with importing crypto. Nevertheless it was illegal to export systems with an effective key length greater than 40 bits2.

That meant that browser makers had to use weak SSL encryption for exported browsers. To handle those browsers, servers could negotiate with their clients to use the weaker encryption if necessary. Eventually, even the government saw the futility of trying to control software-based encryption and relented. The weak encryption option was forgotten and everyone assumed it was just a slightly silly piece of history.

Sadly, lots of servers having the option are still around (36.7% of servers still support it according to a recent scan) and that’s what the FREAK exploit uses in its man-in-the-middle attack. It sits in the middle and negotiates the weak encryption. It’s a bit more complicated but only a bit. Again, see Green’s post for the details.

The point is that this exploit is possible only because the government insisted on a backdoor years ago. Such things always fall victim to the law of unintended consequences and that’s something we should remember when some nosy Parker comes along insisting that the government needs a window into our communications.

Footnotes:

1

Phil Zimmermann, the author of PGP, famously avoided the export restrictions by publishing the source code as a dead tree book, which enjoyed first amendment protections.

2

For browsers, this implies an RSA key of 512 bits. Numbers that size are easily factorable in a few hours and since the keys are often reused for the life of a server invocation, represent very little security.

Posted in General | Tagged , | Leave a comment

Customizing the Ace-Window Selection Face

Abo-abo has made a slight enhancement to ace-window that makes it possible to customize the face of the selection character of each window. Take a look at the example in abo-abo’s post to see what I mean. It makes the character much easier to see and looks very nice.

If you’re trying to squeeze the last drop of efficiency from your key bindings, notice how abo-abo has mapped the selection characters to be a s d f g h j k l rather than the default 1 2 3 4 5 6 7 8 9. That means the selection keys are on the home row and very easy to reach. Another micro-optimization that helps make Emacs use as frictionless as possible.

Posted in General | Tagged | 4 Comments