iTerm > Terminal

I recently switched from Apple’s Terminal to iTerm. At first, it was just an experiment, to see if iTerm was really usable. I’ve used iTerm before, but it was some years ago, and at the time it was buggy, slow, and unstable. I’m glad to report that it has grown by leaps and bounds, and is now my full-time terminal.

Things I find superior to Apple Terminal:

Real xterm keys

I didn’t realize I was missing these before I had them again. I’ve used xterm and similar (e.g. rxvt) in the past, of course, but it’s been some time. Xterm passes through keys like PageUp and PageDown, and most unix programs know how to use those keys (Vim, for example).

Apple Terminal uses PageUp and PageDown for moving through your scrollback buffer. You can send PageUp and PageDown through to your session, but only by adding Shift to the mix. That works, but I found I never used it. In fact, I didn’t really remember if it worked; I just had to fire up Terminal and test it to be sure it worked.

You can send Home, End, function keys, etc., in this way as well. iTerm lets you define custom key maps if you need to (though I haven’t).

Support for up to 256 colors

Another thing I wasn’t aware I was missing. It took a bit of finagling, and on Solaris systems I needed to add an entry for xterm-256color in my $HOME/.terminfo directory, but I can now support 256 colors in my terminal sessions. I use this for my shell prompts and Vim, primarily, but you can use extended color support in other programs as well, like Emacs or Mutt. Particularly when colorizing code in a text editor, you’d be surprised what a difference this makes. The default palette of 16 colors just doesn’t cut it.

Compare these two editing sessions. On the left is Vim in its default color scheme, using 16 colors. On the right is a 256-color supported session using my favorite colorscheme, zenburn.

Call me crazy, but if I’m looking at something all day, I’d rather it look like the one on the right.

Here are two shell prompts. These use the same $PS1 value in bash, but one uses color and one doesn’t.

It’s very easy for me to spot commands in my scrollback buffer. They stuck out like sore thumbs.

Also, the colors help with certain visual cues. The green (master) is the current branch if I am in a Git repository. The color draws my attention to it.

Next to the $ input prompt are two bracketed numbers. The one on the right is a count of current background jobs. It uses orange to make itself noticeable (and being right next to the place I’m typing doesn’t hurt either). The number to its left is the value of $? (the exit code of the last command). If it’s anything other than zero, it turns bright red to draw my eye to it.

This prompt packs a lot of useful information into a small area, and uses color to help draw my attention where I want it to be drawn. The numbers go gray when they aren’t of any use (when they are zero). The git branch vanishes if I’m not in a git repository.

Vertical zoom

iTerm has an option to set the zoom button to maximize the window vertically only. I used to have to do this with an Applescript, but now all I need to do is click the green bubble in the title bar, or hit a key combo that I’ve bound to the Zoom menu command. Perfect.

Visible status for background tabs

When you have multiple tabs in an iTerm window, they will show you an indication of what’s happening using color. Normally a tab’s title is black. If the session dies, it turns gray. If there is output coming through, it turns violet, and if that new output stops, it turns red.

This turns out to be very useful to keep track of things going on that will take a while, or output intermittently. For instance, running a long make, or tailing a log file.

iTerm is free, so why not give it a try?

Dr. Schreber, I presume?

I’m a big fan of the movie Dark City. I’ve watched it dozens of times.

(Mild spoilers below.)

Kiefer Sutherland’s portrayal of Dr. Schreber is arguably, in my opinion, the best of his life. Sure, he’s now known for playing Jack Bauer, and for various roles past, stretching back to “Lost Boys.” But for me, Kiefer’s mastery of his craft is best shown by his performance as the one lucid human in a city living in eternally forced delusion; a quiet, damaged hero.

I never attached any significance to the name of his character. Today, I stumbled into its origin quite by accident, while reading a review of a book about hypochondria.

Daniel Paul Schreber is the least known of Dillon’s subjects, and we may fairly regard him as the one plunged deepest into the pit of hypochondriac delusion, since it was definitely not true that 240 Benedictine monks were living in his skull. Freud wrote him up in 1911, but his own account was given a few years earlier in Memoirs of My Nervous Illness. Born in Leipzig in 1842, Schreber became an eminent jurist and a heroic sufferer. He was subject, he felt, to assaults on his body which he called ‘miracles’, though they were of a malign type. Dillon describes an array of ‘extraordinary amputations, evacuations and disappearances from within the unguarded precincts of his body’. He was bombarded by rays. Sometimes his stomach vanished and his food went straight down to his legs. He had survived so much he feared he might be immortal. He was also turning into a woman, who would be impregnated by God and found a new race (he was the sole survivor of the old one, since all the people walking about in the world were dead already). From time to time Schreber was able to corral his delusions and live among the well. But after five years during which his symptoms remitted he became subject to the appalling conviction that his body was dead and rotting, while his head was still alive.

If you haven’t seen the movie, you probably won’t see how completely fitting the character’s name is.

Dr. Schreber lives in a nightmare landscape, an ever-changing world where the buildings of the city change routinely, and even the people around him change their identities and personalities. The entire city is unaware, and he alone sees the machinations of the world. His own memory has been torn from him; all he has left is a working knowledge of psychiatry. One has to wonder if he chose this name for himself, given his background and present circumstances.

He is the only human who is not walking around in a false reality (the sole “survivor” of his kind). He is the only living (wakeful) man in a city of the dead (the denizens, who live in a dream, or the Strangers, who inhabit the bodies of the dead).

I think I’ll dig out the DVD and watch it again soon.

Aside from this enlightening tidbit about a beloved film, the article itself is a review of a book profiling hypochondriacs from history. An interesting read, especially if you are, like me, so afflicted.

What is going on in there? - London Review of Books

On the nature of tiny magic ponies

When I was a kid, I loved magic.

There is a picture on display in my mother’s living room. David Copperfield sits at a table signing autographs. My brother and I are next to him, while he signs our event posters. I’m slack-jawed, literally the picture of awe. I had a magic set, so I knew how simple illusions worked. But Copperfield’s work was so far beyond what I understood, he may as well have been Merlin. Or Jesus.

Only kids really believe in magic. When you’re an adult, you can see a Copperfield show and enjoy yourself, but the whole time you’re trying to figure out the trick, and that’s not really believing anymore. You’re all too aware that you’re watching an illusion, that it’s just a show. As a kid, I only knew the word “magician”; it was only years later that I heard “illusionist.”

Science fiction is like a variant of magic. It’s a genre based completely on premises that could, maybe, happen someday, but not yet. Enjoying science fiction requires you to temporarily ignore what you know about how the world works and try to imagine the story is feasible. Sci-fi fans even have a term for this: “suspension of disbelief.”

You watch characters on the Enterprise wander around huge environments in a Holodeck, then the program stops and they’re in a 20×20 foot room. You’re suddenly left wondering if they just walked like a mile during the program, why didn’t they walk into the walls? That’s poor writing, because it’s too easy to drop out of your suspension of disbelief. But when you watch The Matrix, and Trinity explains the true nature of déjà vu to Neo, what you think is that it makes perfect sense. So that’s what déjà vu is; of course, what else would it be?

I realized recently that a number of things now exist which, in my childhood, would have been pure science fiction. I’m not talking about extravagant things, like the Large Hadron Collider or space tourism. I’m talking about things I can simply walk into a store and purchase, as an average guy off the street.

Like so many people, I carry an iPhone. Really think about this device for a moment. In a form factor about the size of a deck of playing cards, it has more power and communication capability than several of the computers I’ve owned in my life, combined. It can do everything from simple text-based applications like email, to fast-paced first-person shooters, and you can put entire feature-length movies on it.

Watch old episodes of Star Trek: The Next Generation from the 80s, and you’ll see characters walking around using tablet-shaped computers, no keyboards, nothing but a slate and a finger. 25 years later, we have the iPad. They even have a similar name: on the Enterprise, they used PADDs.

More of a Disney fan than a Trekkie? That’s fine, just think of iPad as the magic mirror instead. A smooth plate of glass whose power you can call forth. Ask it something—anything—and it can tell you instantly.

I’m an avid reader, and have been for as long as I can remember. I have shelves and shelves of books. Too many to even keep in bookcases anymore. Ignoring storage needs, some books are just damn heavy, and big. Holding them for a while is a pain, and carrying them around with you is inconvenient. But now, I have a Kindle. Dozens of books in a package the size of a Superman comic.

Do you remember the erasable PaperMate pen? It sucked, didn’t it? Well, the Sharpie Liquid Pencil isn’t a whole lot better, but it’s still like magic because it doesn’t use ink; they figured out how to make liquid graphite.

I am old enough to remember having to get up and change channels on the TV by hand. I remember when you could still buy a black-and-white set. Channels were not all equal: some were VHF and some were UHF. The UHF channels always seemed a little bit ghetto, didn’t they? Somehow the mere fact that they were on that second (usually lower) dial made them inferior, regardless of what was actually on.

My wife complains all the time about the DVR doing things like deciding to record something at its 2AM run instead of the first run, forcing her to watch it a day later than expected (or not recording a show at all). And I think, does she even realize how much better this is than everything that came before? Would she really want to go back to using a VCR, or (gasp) watching things live? She’s grown up now, and forgotten how to believe in magic.

Frank Chimero wrote about an experience in the Apple Store. There was a horse in the store, and as he looked around, nobody seemed to see it except for him. He coined the term “tiny pony,” which refers to anything that is fairly exceptional on its face, but for whatever reason, nobody seems to notice.

Cell phones and the ability to make a phone call to anyone from anywhere is a tiny pony. The instant gratification provided by being able to have almost any question answered immediately is a tiny pony. Airplanes are tiny ponies. A black president, whose father is from Kenya and mother is from Kansas, being elected President of the United States is a tiny pony.

My wife looks at the TV and DVR and doesn’t see it for what it is: a tiny pony. Its fairly minor flaws seem major, but only when its larger context is ignored.

Do you remember life before the things we have today? I mean really remember. How things were before you had a DVR, a laptop with a home wifi router, an iPhone, a TV remote, XM radio, or a microwave oven? When you had to open your car windows with a hand crank, and unlock the door with a metal key? Can you imagine going back to the time when your everyday life was still science fiction?

I, for one, cannot.

The FAAN Food Allergy Walk (in photos)

Yesterday we participated in the 1st Annual FAAN Walk for Food Allergy, held at Jacobs, er, Progressive Field in downtown Cleveland. My mom, my in-laws, and others joined us.

This event being in its first year, there were a few rough edges. The emcee was barely audible because she wasn’t talking into her microphone loudly enough. There weren’t any signs directing people to the proper gate at the stadium. But it all worked out in the end.

I was afraid that nearly nobody would show up. I thought that we’d arrive to find two or three other families, and the whole thing would feel rather pitiful. It wasn’t quite that small, but it wasn’t the enormous crowd that the Race for the Cure draws every year, either. Still, I thought: it is the first year.

My wife and I found the choice of venue a little strange. A baseball stadium, notorious for serving tons of peanuts every season, hosting a food allergy event? Really? I wonder whether the venue kept some people from participating in the walk.

After sitting around for a while listening to the emcee ramble and give a plaque to some guy (I don’t know who, due to the aforementioned lack of audibility), we were finally ready to walk.

The walk was billed as being one mile, but it feels like we walked much further. We had to wend our way through the parade route tunnel leading down to the ball field, do one circuit around the field itself, then take the tunnel back up to street level. Then once around the stadium exterior, back to the gate. Even that felt like more than a mile, but there was an optional second leg around the field (entailing two more trips through the lengthy parade tunnel).

Half of our group headed for the seats after the main walk, including the kids, but a few of us went back down to the field. I started later than the rest because I walked my daughter down to the front row first. For some reason, I felt compelled to catch up to the others, which I did, just before home plate (about halfway around the perimeter). Today, my shins are begging me to explain exactly why I did that.

I wish we had managed to raise more money for the event, but all things considered, it went well.

It was interesting to see some of the innards of the stadium. To be honest, I could care less about baseball, or sports in general, but seeing the hidden areas of huge buildings like stadiums fascinates me.

Exiting the parade tunnel.

Photographer’s pit.

18 very exclusive parking spaces.

We walked for my three-year-old son, who (little does he know) deals with multiple food allergies on a daily basis. He’s allergic to several basic ingredients that you probably eat every day, like dairy, eggs and soy. He’s also allergic to that Big Daddy of food allergies, peanuts. Which, if I didn’t mention already, are everywhere at baseball stadiums.

My son, in the seats at Progressive Field.

My son, walking in the FAAN Food Allergy Walk.

He walked through the tunnels and almost halfway around the field before he decided the stroller was a better option.

If you care about someone who has food allergies, consider donating to The Food Allergy & Anaphylaxis Network.

Sharpie Liquid Pencil

First, a confession: I’m a pen nerd.

I recently read about Sharpie’s new Liquid Pencil, and was excited about it. A pencil with no leads to break? An erasable writing instrument that becomes permanent after a day or so? It seemed like the perfect pocket pen (er, pencil). Sign me up!

Just over a week ago I saw a two-pack at Officemax and bought it. I’ve been carrying one in place of my usual Pilot G-2, as an experiment.

Sadly, I must report that I’m not impressed. Maybe Sharpie will perfect the technology over time, but this initial version is a dud.

Here’s a sample page using several pens and pencils I have around on my desk.

Contrary to the claims on Sharpie’s blog, the Liquid Pencil writes anything but smoothly. It lays down the graphite unevenly; it’s choppy and inconsistent. It also feels kind of rough on the paper, at least compared to the pens I normally use.

Even the super-cheap Bic Round Stic wrote more smoothly and consistently.

Now let’s talk about erasing. Or rather, not erasing.

The Techniclick using regular graphite erases fairly well. You can sort of see what was written, if you squint at it. The Liquid Pencil, on the other hand, leaves a lot behind. I wrote “Something I regret writing” and then erased. I probably should have added “with” to the end of that sentence.

The pencil-to-ink conversion is also a bit overstated. I have seen claims ranging from one to three days. Okay, I’m willing to accept that there’s a variable or two here: paper type, humidity, etc. But after a week, I’m still able to half-erase what I wrote. Not very “permanent” even compared to a dime-a-dozen ink pen.

Verdict: I’m switching back to the Pilot G-2.

Ye old Facebook

If you use Facebook, you’ve undoubtedly seen this at least once.

I hate the new Facebook! Join my petition group! Let’s bring back the old Facebook!

It happens any time Facebook changes anything significant. People are enraged for a while. After a few weeks, it peters out and things go back to normal. Until the next change, at least. Rinse, repeat.

Think about this. What are they really saying?

I have learned how this site works. You changed it, so now I have to learn it all over again. I’m pissed off.

This isn’t what people think they’re saying. People don’t like to think of themselves as incapable or inflexible, so they resist the idea that it’s not the new design they dislike, but that a change has occurred at all. Yet time after time (after a short adaptation period), users figure out where things are, and the gripes recede.

Fast forward to the next change. Even though people had bemoaned the previous version, they now eagerly jump to its defense, apparently having even more hatred for the newest design. There’s a certain sort of amnesia at work.

Sites like Facebook face the constant problem of keeping users coming back, and adding new features is a big part of that task. They also need to keep their interface both useful and desirable to average people. This butts up against a huge problem: most people don’t have much flexibility in their habits when it comes to using computers. They don’t understand the fundamentals building blocks of interfaces, the way technical people do; they learn by rote. Any time something changes, confusion and resentment result.

I wonder what these people would think if Facebook really did stop developing the site. No new features, no evolution. Would they start complaining that they want to do x or y, creating petitions asking Facebook to enable new features?

A Hallmark moment

Attached to a gift from my brother this afternoon.

No comment

Joe Wilcox challenged John Gruber to allow comments on Daring Fireball. Gruber explained why comments aren’t enabled. Wilcox responded by turning off comments on his site for two weeks (an experiment).

I recently disabled comments on this site. It’s not widely read, and what readers I have don’t often comment. The level of attempted spam finally decided it. Readers can still remark using my contact form. The ones who know me personally know how to find me using Twitter, Facebook, or email.

But the truth is that spam isn’t the only reason I turned off comments; that was just the catalyst.

Of the many blogs I read, two do not have commenting systems: Daring Fireball and Marco Arment’s blog. I have a certain sense of relief when I read those sites, and it feels like a different level of quality. Is it entirely due to the content, or is part of it that the cacophony of the unwashed masses isn’t waiting below to spoil the experience?

These two blogs are not like most blogs I read. They are platforms, or to borrow Gruber’s term, soapboxes. Somehow it feels better to read them.

My theory is that when you write for a site with a commenting system, everything you write is tainted by the expectation that there will be a response, and that the response will be attached. Like letting random strangers add footnotes to your thoughts. As I write these words, I feel a certain level of freedom, not caring what anybody might say or think about it. Sure, people can email me. There’s a slight possibility that someone will write a response on another site. But what I write here will stand as published, its message not driven in other directions by outside forces.

Blogs are often hailed as a participatory medium, where readers and authors can engage in a conversation. On a carefully managed site, I suppose that might be possible. But anyone who has managed a blog in recent history can tell you that a non-curated site will quickly become a link farm, peppered with flamewars. On popular sites, especially those with a technical or political bent, comment threads devolve rapidly.

Don’t even get me started on the “First!” idiots.

What is a comment, really? In rare cases, perhaps a thoughtful contribution to the initial statement or question. More commonly, it’s ego-stroking; people pick up their megaphone and shout into the darkness, simply because they can.

Sorry, but I’ll skip it. When I wear my writer’s hat, I’ll say what I want to say, and none of you out there get to slap a post-it note on the side with your brilliant observations. If you want a voice, get your own soapbox.

Improving Instapaper in Fever° part deux

I recently wrote about improving the Instapaper function in Fever°.

It occurred to me that a small pop-up window would be much better than having a full-size browser window come up just for a second. Then I wondered if I could put a javascript: URL into the Fever° settings. And whaddya know, it works!

The new link I’m using (wrapped for readability):

1
2
3
4
5
javascript:window.open(
  'http://mysite.com/instapaper.php?url=%u&title=%t&selection=%e',
  'instapaper',
  'width=300,height=200,toolbar=0,scrollbars=0,resizable=1'
);

Right-click this link to copy it: Instapaper