30
Jan 09Unique shell helper for Emacs
To launch a shell in Emacs, you can use M-x shell. However, when you want to launch another one, you have to name the second shell. More…
To launch a shell in Emacs, you can use M-x shell. However, when you want to launch another one, you have to name the second shell. More…
Here’s a fun diversion, especially if you enjoyed Mr Potato head — Veer’s Unusual Suspects has a face builder with some odd features.
Trivia of the day – one funny thing you might find as you share data verbally across cultural boundaries is that names for bits of punctuation aren’t as universal as names for letters. Heck, even with letters I remember my British physics Mech Engineering teacher referring to “z” as “zed” (”zed zed 9 plural zed alpha!”).
Anyway, what do you call this mark: @ ?
I’ve always called it the at sign, but I suppose “asperand” is less ambiguous. I get how “at the rate of” makes sense, but it threw me for a loop. You can run into some fun trying to transcribe voice messages that are full of special characters. Imagine: “My email address is foo dot bar at the rate of gmail dot com…”
It’s intriguing to see how far CG animation has come. More…
Why is it that most of the people making music that I like tend to disappear for long periods of time? Well anyway, Telefon Tel Aviv have finally released something new – a preview track off their new album for their new label – German producer Ellen Allien’s BPitch Control. The first beat had me thinking, ‘A Ha!’:
Telefon Tel Aviv: Helen of Troy
I’ve been experimenting for a while with Flash, Processing, and Ruby-Processing – making particle systems and various interactions and animations. I started a new page to collect these experiments – visuals.
I’m generally annoyed by the precautions designers take against shoulder surfing (Windows WEP key entry, anyone?), but this is clearly a mistake:
Really, there’s no need to protect a CAPTCHA from shoulder surfing.
From Ariel Malka, this typewriter visualization allows the rendering of the text path to be affected by the act of typing – inter-keystroke timing affects the curvature of the path.
While it’s important to listen and respond to user feedback, it’s often a mistake to treat arbitrary or isolated instances as a roadmap for enhancements. This post about lessons from Livejournal reinforces this. The idea is not new (see Jakob Nielsen, for example), but it’s useful to be reminded from time to time. Users are generally better at pointing out and exhibiting their problems than solving them. That’s why listening to their problems and observing their activity is valuable.
However, I think that there is value in communities that aggregate user feedback and requests, such as Dell’s Ideastorm and My Starbucks Idea, both of which leverage Salesforce’s Force.com platform. UserVoice is another service that shows promise for user feedback aggregation.
As part of some Ruby-Processing work I’m doing, I needed a random number within a specified range. Processing has its own random function, but I wanted to use Ruby.
I needed a random number in the interval (-range, range). I immediately thought, “specify the max value range*2 as a param to rand, and then subtract range to get it into the interval -range to range.” My autopilot first attempt yielded:
num = rand(range*2.0) - range
However, I didn’t read the documentation for Kernel#rand closely. According to the docs, the max parameter is converted to an integer:
max1 = max.to_i.abs