Michael Jackson is dead

Posted June 25, 2009 by Brandon Zylstra
Categories: Uncategorized

Tags: , ,

CNN is not reporting it yet, Google News is not reporting it yet, but I have inside sources.
CNN is late with Michael Jackson news


How to Update All Your Ruby Gems At Once

Posted November 29, 2008 by Brandon Zylstra
Categories: Uncategorized

If you want to update every gem on your system, and don’t want to sit and do it one-by-one (and why would you want to do it one-by-one!?), here’s one way to do it. (I’m sure there are better ways, and I’d love to hear about them in the comments.)

sudo gem update `gem list | cut -d ' ' -f 1`

The gem list part, of course, lists all of your local (installed) gems. This list is passed to the cut command, which splits the output into columns (delimited by spaces) and takes the first column. The whole list of gems then become the arguments for gem update, and of course sudo runs the whole thing under administrator rights.

Oh, and, of course, this only works on systems like Mac OS X and Linux. If you’re on Windows you don’t need the sudo, and cut won’t work (unless you’ve got Cygwin installed—in which case it might work).

One Flash intro worth watching…

Posted September 2, 2008 by Brandon Zylstra
Categories: Uncategorized

You won’t want to skip this intro

Overcome Heroku’s “Permission denied publickey” problem

Posted August 29, 2008 by Brandon Zylstra
Categories: Rails, Ruby, Web Development

Tags: , ,

Heroku is awesome on paper (or screencast) but after following the directions it never worked for me. I couldn’t figure out why, and the Heroku discussion forum didn’t have any answers. But I think I’ve finally figured it out. (In the very least, I’ve finally gotten it working, which is the next best thing!)

Heroku (before today) would let me do everything except clone my remote apps to my local machine, which is more convenient, and in some cases essential (as when doing Rails apps with Hobo). Observe this:

$ heroku clone hobocookbook [/Data/Rails] [DrTeeth]
Initialized empty Git repository in /Data/Rails/hobocookbook/.git/
The authenticity of host 'heroku.com (' can't be established.
RSA key fingerprint is 8b:48:5e:67:0e:c9:16:47:32:f2:87:0c:1f:c8:60:ad.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'heroku.com,' (RSA) to the list of known hosts.
Permission denied (publickey).
fatal: The remote end hung up unexpectedly
/usr/local/lib/ruby/gems/1.8/gems/heroku-0.3/bin/../lib/heroku/command_line.rb:37:in `clone': could not clone the app. Is git installed? (RuntimeError)
from /usr/local/lib/ruby/gems/1.8/gems/heroku-0.3/bin/../lib/heroku/command_line.rb:6:in `send'
from /usr/local/lib/ruby/gems/1.8/gems/heroku-0.3/bin/../lib/heroku/command_line.rb:6:in `execute'
from /usr/local/lib/ruby/gems/1.8/gems/heroku-0.3/bin/heroku:36
from /usr/local/bin/heroku:19:in `load'
from /usr/local/bin/heroku:19

If I may cut to the chase…it appears that the Heroku setup process assumes that the public key you give it will be your default or only public key, while in fact I made a key pair just for Heroku. So once I added some details to my ~/.ssh/config file:

Host heroku.com
Hostname heroku.com
Port 22
IdentitiesOnly yes
IdentityFile ~/.ssh/id_heroku
TCPKeepAlive yes
User brandon

So far as I know, this solution isn’t listed anywhere else on the web, but I found a tiphere that mentioned changing your default public key, which tipped me off as to what the problem was. (Of course now that I know the solution, I could much more effectively Google to see if anyone else has found it–one of the shortcomings of current search technology as a strategy for finding answers. The keywords you really want to use are the ones in the answer, but of course you don’t know those until you know the answer.)

Anyway, I hope this helps the legions of other people out there who would love to use Heroku but can’t because their use case was overlooked by the set up program.


Posted August 19, 2008 by Brandon Zylstra
Categories: Random Nonsense

It’s odd to see even very smart people who seem to believe that .zip is a PC archive format and Stuffit is a Mac archive format. This is clearly not the case, at least not for the last (oh, say, about) ten years. Zip is pretty much universal, and Stuffit archives can easily be opened on a PC. You just download the right utility, and you’re set, which for many years was the same situation you’d be in with a Zip file. (Until, of course, Microsoft Windows started to offer some limited .zip support built-in.)

Whenever I see this sort of thing, I always download the Stuffit format, just so that anyone who is comparing stats won’t think there are no Mac users out there.

Windows Mojave is all about deception

Posted August 18, 2008 by Brandon Zylstra
Categories: Uncategorized


Microsoft got a bunch of users to take a look at “Windows Mojave” (which they dishonestly told them was an upcoming version of Windows) and lo and behold, they liked it.

Since sophisticated users have generally given bad press about Vista, Microsoft had to find a way to make unsophisticated users have a voice. Which would you prefer to listen to?

Designing User Experience Across Media

Posted August 7, 2008 by Brandon Zylstra
Categories: Uncategorized

Priceline is in the cruise business, and they have (what look like) some pretty cheap cruises.

They also have a usability problem.

If you heed their urging and call 800-735-8000, because “vacation consultants are available 24 hours a day, 7 days a week to help you plan your next cruise”, don’t expect to actually reach a vacation consultant. Instead you’ll get a voice-mail menu asking you to press 1 if you know the extension of the party you’re trying to reach…. Know the party’s extension!? How would I know the party’s extension!? I’m responding to an appeal on your web site to get help from these consultants who are standing by 24 hours a day. Press 2 if (blah blah blah)…

The problem here is not merely that voice-mail menus are inherently much harder to use than menus we can read, although that contributes to the user’s difficulty. The problem is that no one has designed the user experience across media1. The phone number is not set up specifically for the purpose of taking someone to these “vacation consultants”, but rather is a more general-purpose phone number for Priceline.

The creation of incoming phone numbers needs to be considered as part of the user’s navigation of a company’s information space. This includes web navigation and phone voice-mail navigation, and ties them together as one single multi-media web of information.

When I’m promised that calling a number will take me to these “consultants” (salespeople, really), I expect it to take me directly to them, and being faced with a series of decisions based on vague information is frustrating to me and going to kill the process and therefore likely kill the sale. (Since I’ve never been on a cruise, I want to be able to talk to a real person about what to expect, rather than sift through carefully presented marketing material which will tell me almost nothing of what I need to know to make an informed decision as to whether this is something for me.)

This is almost identical to what some news sites do when you click on a link on the home page that purports to take you to the complete news story, but instead takes you to another page full of links to other stories, amongst which is a link to the story you wanted to read2. It’s frustrating when the user makes a request (by clicking on a link or by calling a phone number) and then is faced with a whole new set of options, and must once again find their way to the thing they’d already requested. Those who do it may think you’re going to “buy” more of their product this way, like grocers who put their milk in the back of the store so you have to walk by all the other junk food they sell. But maybe you’ll just go shop somewhere else3.

  1. Yes, yes, of course I realize that the word mediausually refers (most of all) to the journalist-industrial complex, and (secondly) to their collection of materials used for propaganda, but hey let’s think this through together. Media is the plural of medium, and in Brandon’s Collegiate Dictionary medium is defined as the substance or (metaphorically) the conduit through which information passes.
  2. I think netscape.com used to do this, but it seems they’re not doing it now. Perhaps that changed when netscape.com began simply forwarding to netscape.aol.com.
  3. For my part, I prefer Trader Joe’s over Meijer any day, even though I feel some faint connection to the latter by way of my Dutch-ness. TJ’s doesn’t pull this kind of shenanigan, they have healthy products at lower-than-Meijer prices (and way lower if you compare prices with Meijer’s “health food” section), and it doesn’t require miles of walking to find anything in the store. (So much for an economy of scale!)