Sunday, January 28, 2007

Google Mapit bookmarklet

Here's a simple bookmarklet that I cobbled together because I got tired of copying and pasting addresses from the browser into Google maps, and then having to do it twice because the multi-line copy/paste didn't work. You should be able to drag this right onto your toolbar:


Then you just highlight an address and click it, or setup a hotkey for it. I haven't tested it across all browsers yet, but it's working fine in Camino, Firefox, and Safari on my mac.

Here's a prettier version so you can see what it does:

javascript:var url = '';
if (window.getSelection) {
var sel = window.getSelection() + '';
url += sel.replace(/\n/g,%22, %22);
} else if(document.getSelection) {
url += document.getSelection();
} else if (document.selection) {
url += document.selection.createRange().text;

Saturday, January 27, 2007

Humvee Driving in Iraq

I had a friend who once drove trucks for a US base in Poland, and he mentioned that when he was driving in town, he was instructed not to stop for anything. Once, when some protesters congregated in front of his truck, a group of Polish police zoomed in on motorcycles and started beating the protesters. Anyway, enjoy this clip of soldiers driving a humvee in Iraq.

Thursday, January 25, 2007

Zoinch! Zoinch? And The Art of the Circus Bow!

The games. Boy, the games. They were hilarious.

Tuesday evening was a first for me. Improvisation 101, my first class. Going in, I was both excited and nervous. I love to laugh and I love to make people laugh. I knew this was going to be fun. But I was worried that I wouldn't be able to pick it up -- that I wouldn't be able to think quickly enough.

Why take improv? Well, besides loving comedy, an article I read over Christmas break about improving communication for technologists suggested taking improv classes (I wish I could find the link). A week or so after that, I was talking to my friend Tim, and he mentioned that he was taking a highly recommended improv class in Austin. That was it -- I was in.

The classes are at the State Theatre School of Acting. Our teacher, Shana Merlin, or "Shapely Shana", as she came to be called in our alliterative adjective name game, led the class in a series of games designed to challenge common tendencies that are barriers to developing improv skills.

A big one is the fear of failure. Early on, Shana gave us a technique to deal with this, called the circus bow. You raise your arms, exclaim, "I have failed!", and take an extravagant bow. It's great for turning failures into celebrations, and the class would burst into laughter and applause every time. And there were many times, though I never obliged, partly because I kept forgetting.

One of the early games was the invisible ball. Everyone is in a circle tossing around a make-believe ball that makes a sound when you throw it. The thrower makes up a sound and throws it, and the catcher has to repeat the thrower's sound upon catching it. Then the catcher becomes the thrower, and must voice the ball's sound as it is thrown. It may sound simple, but it's surprising how easy it is to mess this up. Bows abound. There's also that desire to plan out your sounds, instead of reacting in the moment. That must be tempered in order to develop spontaneity.

Slow-motion samurai got us moving around. Each person's first two fingers are samurai swords, and their outer forearms are shields. A sword to any other part of the body means instant death. Oh, and everyone moves really slow. Lesson learned: It's hard to fight the temptation to speed up to dodge or block an incoming blow. This was about learning generosity: by dying, you're playing a part in the scene. Instead of making it about competition, it becomes about contributing to the scene -- dying becomes a great chance to express yourself and make people laugh!

And how can you not crack up when someone says, "Slow motion -- it's a bitch!", or someone else lets fly the first "fucktard"? There were quite a few games, and it was interesting to see the class grow more comfortable with failure and commitment with each one. I found myself thinking, 'If all we do is play these games, then this is a great time.' But Amateur Andy's developing mad new skillz at the same time!

Shana's Rule #1: Have fun. No problem!

Color-based search

I love this product search by colors. I haven't figured out the wider uses for it, but for coordinating clothes or housewares, it seems pretty cool.

A step up would be to match photos uploaded with products whose colors match the photo content. Variable lighting conditions for user-submitted photos could be a problem, but I think you could achieve some decent results.

Sunday, January 21, 2007


Peaches @ funfunfun fest

Testing the Moblog

This is the new sign in our front office.

The Quest for the Rest

Seen on digg: This simple game has pleasant artwork and an interesting design. You have to figure out how the parts of the environment interact to move your party along.

Annoying: After I passed the octopus-submarine level, it crashed Camino. Luckily I've got CaminoSession.

Thursday, January 18, 2007

Interface Gripe #1

I'm fond of complaining about user interfaces. Isn't it everyone's right to be an armchair interface designer? Here's an example that's temporally relevant (to me) if not very significant in its severity.

A casual look at the graph above leaves me thinking that the x axis for the main graph is the one with the years marked out on it. I think this happens for several reasons:
  • The actual x axis doesn't pop out at me (it has more marks and less contrast)
  • There's not enough vertical separation between the two graphs - I think even having a thin line of separation would help.
  • The year-scale graph at the bottom is so faint it's hard for me to see that it's there.
  • The year labels on the x axis for the year-scale graph are above the graph, instead of below it.
I appreciate what they're doing with the moving zoom window. Maybe they could separate the two graphs just a bit more, and maybe show a zoom-like indicator, such as this (forgive the aliasing and general poor mod job):

This is a beta (but hasn't that term suffered a meaning decay?), so they're actively making changes. They've done some interesting things to it recently in which they annotate the graph with news stories that were released at the associated point in time. They've also got a handy management view where you can quickly find out about the recent stock activity of the executives.

Wednesday, January 17, 2007

OpenID Mashpit in Austin

We're here at the Austin OpenID Mashpit at Cafe Caffeine. The connection is lousy right now, but I'm trying to post pics up on Flickr here.

Tuesday, January 16, 2007

Captivating Sun

I caught a clip of this installation at the Tate Modern in London on tv. It's called the Weather Project, it's by Ólafur Elíasson and it looks awesome. I wish I could have experienced it firsthand. I was there a little too late, in October of 2005.

There are some videos up on YouTube:


The HeadOn Imperative

Commercials really annoy me. I don't know if I have some aural equivalent of an eidetic memory or what, but when I get some jingle in my head, it's hard to get it out, and it occupies much of my passive cycles.

I have no eyelids on my ears, so I can't keep jingles out. When I'm bombarded with something on TV or the radio, I feel like I'm being disrespected. Instead of appealing to my conscious mind with reasoning, the perpetrators are attempting to embed associations into my long-term memory. I've noticed a few tactics recently that particularly bother me:
  • Terrible music - why would I ever want to hear a song some hourly studio musician wrote extolling the virtues of some laundry detergent? Some songs should not be written.
  • Commandeering classic music - I can't listen to Led Zeppelin's "Rock and Roll" anymore without picturing a Cadillac motoring down a dusty road.
  • Repetitive commands - Anyone seen the HeadOn commercials? They're shameless. Why don't you just point a gun to my head and get me to memorize your stupid application instructions? That's what it feels like. I won't buy that stuff specifically because of those commercials. And of course, they have to fold in on themselves by releasing a new commercial that has an actor state, "I can't stand your commercial, but your product is amazing!"
  • Rapid-talk legalese - This is an old one that's used on radio a lot. If you have to double the duration of your spot by adding in disclaimers read by John Moschitta, you should rethink your approach.

A simple request: Please, just respect my intelligence and tell me what your product does and what its strong points are. I know, I know, I'm asking way too much. As on Slate:
Maybe a small percentage of us will snootily refrain from buying HeadOn—as an act of protest against an ad we find irritating—but this is a small price to pay when millions of other folks are now familiar with HeadOn, curious about it, and unlikely ever to forget its name.

It's the same reason spam works -- some small clueless percentage of us think it's a good idea to buy some "v1agara" or "Codeinee no dr lvisit".

Monday, January 15, 2007

Crass Chic

I find these vulgar cards humorous. I've been drawn to the whole crass chic thing recently.

For Christmas, I got my family some of those funky notepads at Urban Outfitters with salutations like, "This is fucking urgent ...", and "Hey Shithead ...". Cheap, I know.

I also can't get over this shirt:

Sunday, January 14, 2007

A 3D Diversion

Here's a rendering of a wireframe design I did in Blender -

I built it up by repeatedly extruding and then deforming some simple geometric shapes.

RARFF - A simple ARFF library in Ruby

RARFF is a very simple ARFF handling library for Ruby that I wrote for kicks. ARFF is a file format popularized by Weka, the machine learning toolkit.

I've had a couple of cases where I collected some data using Ruby and I wanted to analyze it with Weka. This makes it a bit easier.


It's so easy to become desensitized to death when you read about it or see it on TV all the time. When I hear about strange circumstances like death by water intoxication while trying to win a Nintendo Wii, I try to go through a little exercise where I humanize the situation. I may not develop a historically accurate picture of the actual events, but I think it's a valuable diversion anyway.

"She was telling me about her family and her three kids and how she was doing it for her kids," said one of the contestants.

Before I begin an activity or competition like this, I usually have to make the case to myself that I can succeed. I have to mentally prepare myself with reasons why I can accomplish my goal, in order to summon the motivation I need. The type of preparation required differs based on the nature of the feat. Imagine the mental preparations that go into a lengthy task like climbing Mount Everest or running a marathon (I did a slow 5:16:31 in the 2004 Motorola Marathon). Now contrast that with the type of mental preparation that people like the cast of Jackass undergo when performing most of their stunts. I think the latter is usually both much quicker and more . It involves more phrases like, 'If I can just sit still, it will be over.' Witness the riot control test stunt from Jackass Number Two, in which the guys are hit with a blast of small rubber balls going 500 feet per second. Johnny Knoxville says something to the others like, "It's gonna hurt like hell, but you just have to stand there ..."

This woman had to have been thinking, 'I just have to drink a lot of water, and I win this toy for my kids -- I can do that.' She couldn't have imagined that death was even a possibility when she took this on (maybe in contrast to the Jackass cast). I try to imagine the moment when she realizes that she is in trouble. Does she have time to think of her kids? Does she think about the fact that she might have just given her life to win a toy?

Saturday, January 13, 2007


A stroller plus a wireless laptop equals this. TUAW called it "wartoddling", but the voice synth should be pitched up a few octaves.

Transactive Memory Systems

Daniel Wegner talks about the concept of transactive memory, a memory system that spans individuals. I first encountered this concept while reading The Tipping Point, and I couldn't help thinking about how my laptop forms part of my transactive memory system. Why should I remember appointments, account information, emails, phone numbers, addresses, or anything else that a machine is better at? Of course, I have no end of gripes about the current capabilities of machines in this area. I wonder if the iPhone will help ...


I think we'll just have to see how this turns out.