Big Brother and Kill Switches

It’s being fiercely opposed and is a far way from reality anyway, but every now and then my tinfoil hat quotient is elevated.

I haven’t bought anything, don’t plan to do so too immanently, and won’t talk publicly about it if I do, but I’d just like to put a few things out there:

  • Good-enough 1U servers are a dime a dozen on eBay. If you need virtualization support, gobs of RAM, or really good disks, the prices are a bit higher, but if dual 3GHz Xeons, 2GB RAM, and a pair of 36GB SCSI disks (mirrored for redundancy) work for you, you have a wealth of options for under $200.
  • prq.se is famous for hosting The Pirate Bay and Wikileaks, two sites that a lot of powerful people would like to go away. Their colo plans for 1U start at $80/month. (Dedicated servers start at $123, though there’s also a $200/month setup fee.) They offer tunnel services for much lower prices, but if you’re building a tinfoil-hat encrypted international tunnel, you’d probably do well to not trust anyone.
  • OpenVPN is free, easy enough to use, and supported (in userspace) on all major platforms. (ssh tunneling would work, but it’s kind of a hassle if you want to tunnel everything through it.)
  • Disk encryption is nothing new. I think, ideally, you’d set the box up so that it could be booted unattended, but the ‘privileged’ data (e.g., /home, anything chrooted, and any logging you did) would require that someone log in and provide a passphrase to mount the secure partitions. (Important: don’t log connections to an unencrypted partition if you can help it.)
  • Squid is a nice proxy if there will be more than a couple concurrent users.
  • Tor exit node. Plausible reliability. Tor seems to provide it natively, but iptables can throttle bandwidth too.

I get about 120ms pings to PRQ. Not wonderful, but not so shabby given the distance.

Emailing Mistakes

Thunderbird and GMail both now provide a fairly intelligent feature that catches when you say “attached” or similar and will stop you if you try to send the message without an attachment. (And it’s not too annoying if you said “attached” or “attachment” without meaning to attach anything: “The cable is attached to the rotor” doesn’t mean that I’m attaching a cable to my email.)

One thing I really want, though, is the ability to ‘lock’ an email so I don’t accidentally send it. There’s some keyboard combination that means “Immediately send this email,” and, on several instances, have somehow bumped it in the middle of sending an email. (For what it’s worth, I’ve done this on every mail client I’ve ever used, so it’s not specific to one email.) I’d love to be able to click a little lock that would lock out the email from sending until I clicked it again.

The way I normally get around this is to fill in the “To:” field last. (If I made an email client, I’d move it to the bottom.) This doesn’t work for replies, though. If I’m replying to one person and have a long email, I’ll pull out their email address and re-add it when I’m ready to done. But when you’re doing Reply-All, it’s not practical to do this. And Reply-All to a sizable list is exactly when you want to be very careful that the email isn’t sent unless you explicitly mean to.

The other option is to write the body in a text editor and paste it in when you’re done and it’s proofread, but I think this is fundamentally broken.

(If you take nothing else away from this, though, take the tip I picked up about making the To: field be the last one you fill in.)

Firing Squads

Utah recently executed a man by firing squad, which, it turns out, has been a wee bit controversial.

At the end of the day, though, I can’t figure out why the use of a firing squad is controversial. Every argument I have against it also applies to lethal injection or electrocution, which seem to be perceived as more “civilized” means of killing people than firing squad. But if I were going to be put to death, I think I’d probably most prefer to be summarily shot in the head than strapped down and slowly injected with chemicals or electrocuted.

An interesting aside: Canada and Mexico have both banned capital punishment. Mexico was later to the game than Canada, banning it in 1976. Costa Rica banned it in 1877 and no, that’s not a typo. Israel in 1954, South Africa in 1997. Cambodia in 1989. Vatican City in 1969. Makes it seem kind of strange that it’s still considered an important part of American law.

Photoshop CS5 in 60 Seconds

With a new machine, I thought it’d be fun to try out the trial of Photoshop CS5. The content-aware fill feature is the one that really draws everyone’s attention, and was indeed something I was psyched about trying.

For one, let me state that content-aware fill is terrible at some things. It’s probably things it was never meant to do, like filling in huge swaths of an image, or taking a set of photos of people and “content-aware filling” them with recognizable human forms. But it’s borderline-magic at filling in small patches with good-enough content that looks right.

So here’s a quick photo series showing what I did after a couple minutes of tinkering. I show a couple of my favorite tricks, too. I should note that there are several other images I tried that didn’t come out well, so don’t take this one example as representative. (But I thought my mishaps created without reading any documentation or even fully understanding the precise purpose of content-aware fill would be unfair to Adobe, too. “Hey, look, if I misuse a tool I don’t understand, I get terrible results!”)

Here’s an image that started out life as a magnificent vista up in the White Mountains area, shot from a car window, which practically guarantees that it will come out terribly. Indeed, it did:

Content Aware Fill - Mount Washington Vista

For one, like every photo ever shot through a car window, it’s horribly washed out, which is generally somewhat irreparable. And two, you’ll note that I got a highway stake in the middle of the shot. Hard to plan those at 65mph when you’re on an old digital camera with tremendous shutter lag. In short, if I took a shot like this today, I’d probably have deleted it as soon as I saw how it came out on-screen. As you can see, I took the first step already and drew a really rough outline around the highway reflector/stake. I made no attempt to be precise.

Next, I selected Edit -> Fill, and took the default settings, which use the Content-Aware Fill. It worked pretty well:

Content Aware Fill Applied in Photoshop CS5

If you really scrutinize it and compare to the original, you might note that it’s not perfect, but to a casual observer, it’s really not apparent that something’s been cloned out. Sure, you could have cloned it by hand; it’s not even that tricky in this case. But why bother if the computer can do just as good of a job for us? You might want to circle back and do a little manual-cloning, because there are some really distinctive elements that are notably duplicated, but they’re really not notable to casual observers.

The next two alterations aren’t specific to CS5, but they’re two of my favorite tools, and, coupled with Content-Aware Fill, really helped to save this image:

Shadows and Highlights in Photoshop CS5

I think the image directly above actually looks worse than the one before it, but that’s because this is an intermediate step. I used an old favorite cheat of mine, Shadows & Highlights, to bring out some of the details in the shadows, and, to the tiniest degree, the highlights. This tool needs to be used with caution, because it’s easy to get carried away and push things to outrageously-artificial levels. You can ultimately push the dynamic range out a bit, but if you push it more than a little, the result is a monstrosity. That’s okay here, though, because the next image is going to make everything alright. Or, at least, as alright as it can be given the horrible starting point we had.

Photoshop - Curves and Levels

The above image is after the Levels tool. This image won’t win any awards; it’s really quite mediocre. But if you scroll back up and compare it with what we started with, it’s really pretty remarkable. If I weren’t playing with a new Photoshop trial at the time, I’d have considered the image hopeless.

Of course, the ultimate question at the end of this pseudo-review: Is it worth $700? To a professional, it’s a no-brainer, I’m sure. But $700 is a lot for a hobbyist photographer.

Burger King

Having worked in customer service in the past, I’m privy to a little bit of knowledge most people don’t have: the people working behind the counter are humans. I just got back from Burger King, where the woman in line in front of me clearly had never worked in customer service, or for that matter, had a single friend. “You’re not going to forget the cream this time, are you?” she taunted, before turning to someone else and talking about how outrageous it was that her coffee wasn’t made just to her liking. Then she barked “I’m watching you!” She turned to her friend* and said, “I should contact the regional manager.”

And that’s how I got the idea: I was going to find and contact the regional manager and mention the staff’s prompt and attentive service and their amazing professionalism even with the crazy lady who was overtly insulting them.

But my plans were foiled. For one, the regional manager doesn’t have a website or anything. For that matter, neither does the local restaurant. Burger King, of course, has a website, so I went there to see if I could somehow find the information. Nope. And then, a, “Why didn’t I think of this sooner?!” idea, I decided I’d email the corporate office and ask for contact information for the regional manager. Except, whoops, you can’t. You have to write them snail-mail.

So then I turned to my favorite resource ever, the Secretary of State’s website. (Googling “mass sos” is sufficient to find the Massachusetts Secretary of State, by the way.) Three companies are filed with the state: “Burger King Corporation” out of Florida, “Burger King Limited Liability Partnership” out of New York, and “Burger King Operating Limited Par” out of Florida. The latter two list “Corporation Service Company” as their resident agent; the main organization lists “CT Corporation System” which appears to be CT Advantage now. Looking them up with the Secretary of State, they’re a Delaware corporation that seems to provide legal services and resident agent services to corporations.

In other words, they’re not set up to want to hear from anybody, ever.

  • I use the term “friend” here to mean “an individual who was with her and with whom she seemed familiar.” This lady couldn’t have had any friends, but I wasn’t sure how else to describe the other person.

Divulging and Disseminating Scanner Communications

One of those laws that everyone thinks they know, but no one can really identify, is supposed to make it illegal to divulge or disseminate information you hear on the scanner.

RadioReference seems to have thoroughly debunked it, though, using an obscure technique known as “Looking the law up and seeing what it says.” In fact, the oft-cited law refers to anyone transmitting or receiving (or assisting therein) “any interstate or foreign communication by wire or radio,” which automatically rules out most scanner communications. But then, as if that weren’t enough, it has a giant exception, clarifying that it’s entirely legal to intercept anything received “through an electronic communication system that is configured so that such electronic communication is readily accessible to the general public,” and also explicitly permits interception of any signal which is “for the use of the general public, or that relates to ships, aircraft, vehicles, or persons in distress,” or any transmission “by any governmental, law enforcement, civil defense, private land mobile, or public safety communications system, including police and fire, readily accessible to the general public.”

On Florida ham radio operator, who streams his scanner audio over the Internet, asked the FCC for clarification. Their response is here, and unambiguously confirms that what he is doing is not illegal under FCC law. (Additionally, it clarifies that the “readily accessible to the general public” references encryption.)

Both of these links are discussed in this thread on RadioReference, started to call attention to an article describing a California police department which issued a memo warning officers about smartphones with applications that stream online feeds of police scanners. (There are several for the iPhone, most (all?) of which work by streaming the Live Audio section of Radio Reference. Boston PD is conspicuously absent; a few people have discussed hosting one but it’s yet to come to fruition.)

Solved: ‘configure returned error 77’ in Mac Ports

I’m posting this in the hopes that the next person stumped by this will find it…

Using Mac Ports, I just tried to install mtr, but received a cryptic error during compilation:

Error: Target org.macports.configure returned: configure failure: shell command " cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_net_mtr/work/mtr-0.75" && ./configure --prefix=/opt/local --without-gtk " returned error 77

This didn’t convey much information to me. I then tried installing wget for something separate, only to get this:

Error: Unable to execute port: can't read "build.cmd": Failed to locate 'make' in path: '/opt/local/bin:/opt/local/sbin:/bin:/sbin:/usr/bin:/usr/sbin' or at its MacPorts configuration time location, did you move it?

Ah-ha! No, I didn’t move it. I don’t have it. The real fix is to install XCode, which is on your Snow Leopard install DVD. (I believe it can be downloaded from the Internet, too, if need be.) After installing XCode and restarting,

TuneUp Reviewed

TuneUp is a program that works in conjunction with iTunes to go through all your generic music and clean it up: fixing metadata and grabbing cover art. I tried a free trial and found that it worked, so I bought it when I found it on sale a while ago.

I have copious amounts of unidentified music, because, uhh, I imported all of my legally-acquired music and lost the metadata. Lots of others have the same problem. Here’s a pretty good sample of what Cover Flow in iTunes looks like for me:

Before treating with TuneUp

You’ll also notice that the album is called “Unknown Album,” but at least the artist is identified. I have more “Track 01” by “Unknown Artist” albums than is reasonable, and still more songs that are correctly labeled but that lack cover art.

I haven’t finished running my whole library through it yet, but here’s how it’s looking. For one, here’s a shot of it in action:

TuneUp in Action

(Why on Earth aren’t my images being resized?!) As you can see, TuneUp is a sidebar that sits on the side of iTunes. You drag songs into TuneUp, and it’ll go off and try to identify each of the songs. Incidentally, this screenshot shows a pet peeve: the song it’s identifying is definitely not “Gotta Get That Money Mayne.” It’s really easy to understand how these things happen, but it’s still an annoying experience.

More annoying, though, is its tendency to correctly identify songs, but place them on strange albums. Compilations / mixes, such as the “NOW! 456” CDs are prime candidates. “A Long December” is apparently from a “Buzz Ballads,” by “Various Artists.” I have some really obscure songs, but Counting Crows aren’t among them. Oftentimes, I find that it’s correct, but in an annoying way. My copy of “Stairway to Heaven,” for example, is apparently a version recorded for the BBC that’s a bit longer than the ‘normal’ one. And although rare, it seemed to guess totally-incorrect songs here and there. (One song, whose name I don’t actually know, was named something in a foreign language from an artist of a very different genre.) Another time, I mistakenly let it name a song who was named completely correctly, it with something by “Various Artists.” Boo. I think these things come with the territory, though — taking audio files saved in lossy formats and uniquely identifying them can’t possibly be an exact science. Although sometimes, the mistakes are unforgivable, like renaming a Jay-Z song to a Dino song. Another song was correctly labeled but given cover art for “Inde – Rajasthan: Musiciens professionnels populaires” appearing to show a bunch of Indian musicians in traditional attire, which is not the cover art I would have chosen for a Jesse McCartney song.

Still, at the end of the day, it’s accurate a lot more than it’s wrong, so I’m willing to let it go. For $29.95, I think it’s worthwhile. If you’re feeling less sure, you can always give their free trial a go; it’s capped at 100 songs or so. But remember that it’s not perfect, and that you can’t just accept all its results unless you’re willing to have it give some of your songs incorrect names.

A Resolution

Yesterday, I realized something: by givings a thumbs-up to songs that were mildly tolerable, I was encouraging Pandora to play more tolerable music. In an instant, my whole strategy changed. Instead of givings a thumbs-up to anything that was okay, I only give a thumbs-up to a song if I’d consider buying it. And a thumbs-down is no longer reserved for truly awful songs, but for anything that would have caused me to change the station if I were listening in my car. (Which is to say, well over half of what’s played.)

I think there’s a good life less in here somewhere.

Password Requirements

I know I’ve ranted about this before, but people who implement password requirements should really be beaten with a clue stick:

That’s me trying to create an account on PhotoBucket. (Just for testing something at work. I prefer Flickr for real stuff.) Seems legitimate enough, right? But what if I wanted to use a dot as part of my password? What if I wanted spaces? Quotes? @#@$^#$& symbols? Why on Earth can’t I?

And don’t even get me started on the maximum password length at American Express of eight characters. No, I didn’t mean to say minimum. Your password can’t exceed 8 characters. For one of the world’s largest financial institutions. Yes, I’ve complained. No, they don’t seem to care.

Really, how does this happen? Minimum restrictions may have some value, but the only way I can think of prohibited characters coming in is if you’re not hashing passwords, or if you deliberately write code to reject certain characters for no good technical reason.