2008/08/13

Put a feather in his cap...

Wikipedia: maccaroni

So that's what the lyrics are about.

2008/08/05

GPS cellphones to unleash gamers onto the streets - tech - 05 August 2008 - New Scientist Tech

GPS cellphones to unleash gamers onto the streets - tech - 05 August 2008 - New Scientist Tech:

"But being able to discover the physical location of other people has downsides. Researchers at Portsmouth University have had to abandon GPS games projects because they cannot get approval from the ethics committee.
'Already there are social networking applications for the GPS iPhone which let you see where other iPhone users are,' says Andy Bain, lecturer at Portsmouth University's School of Creative Technologies. 'If I were a thief I'd abuse that knowledge right away to get myself more iPhones.'
Commercial games developers are not subject to the same ethical scrutiny as academics, he adds. It could be left to their customers to work out how to avoid anti-social gamers."

I don't know anything about gaming or social activities — I'm an old-school geek. But... Given that phone GPS is supposed to be accurate to within a few meters only, it's easy to imagine "wave function" games which rely on GPS. Such games might show the locations of participants as spheres, to indicate the GPS error. It would fall to the players to collapse the wave functions (find the other players).

I could lose a lot of money creating dull GPS-based games. "Never mind whether it's alive or dead, where is Schrödinger's Cat?" "Bohrtherford — Find the electron." Etc.

Best to lie down until the urge goes away.
"But think about this. Supposing you were to introduce a psychic, someone with clairvoyant powers, into the experiment — someone who is able to divine what state of health the cat is in without opening the box. Someone who has, perhaps, a certain eerie sympathy with cats. What then? Might that furnish us with an additional insight into the problem of quantum physics?"
"Dirk, this is complete nonsense."

-- Dirk Gently's Holistic Detective Agency, Douglas Adams

2008/08/03

Compiling subversion 1.5.1 on OS X 10.5.4

I've just tried to compile the subversion 1.5.1 client from its two source tarballs (subversion-1.5.1-tar.bz2 and subversion-deps-1.5.1-tar.bz2). I took care to first hide the /usr/local libraries from my existing subversion installation. Even so, the compilation failed, complaining

/usr/lib/libexpat.a: No such file or directory


The workaround was to temporarily move the system's /usr/lib/libexpat* dynamic libraries, and then to rebuild.

Here's the build script which worked for me:
#!/bin/sh
set -e
VERSION=1.5.1
rm -rf subversion-${VERSION}
tar xjf subversion-${VERSION}.tar.bz2
tar xjf subversion-deps-${VERSION}.tar.bz2
cd subversion-${VERSION}
./autogen.sh
./configure --without-apxs --with-ssl
make
sudo make install
sudo make install-swig-py

2008/08/02

New TextMate bundles

These aren't really new. I just wasn't aware of them.

JavaScript Tools


The JavaScript Tools bundle helps you lint, format and compress your JavaScript code, and convert code to and from JavaScript bookmarklets.

My favorite feature: whenever you save a JavaScript file via Command-S, the bundle automatically runs it through jslint. If any errors or warnings are found, a tooltip appears which shows the number of warnings/errors.

If you run a full validation using Control-Shift-V, you'll get a popup window showing "compilation" results -- complete with syntax errors and clickable links to take you to the offending source code.

Installation


I installed under ~/Library/Application Support/. It may be better to use /Library/Application Support/.
$ cd ~/Library/Application Support/TextMate/Bundles
$ svn export http://bundles.bundleforge.com/trunk/bundles/JavaScript%20Tools.tmbundle/

BTW I'm not sure why export is preferred over checkout.

If TextMate is already running, you can load the bundle by selecting Bundles->Bundle Editor->Reload Bundles.

Sproutcore


I haven't done much with Sproutcore yet, but it does already have its own TextMate bundle which provides a few tab-completion snippets.

Installation

$ cd ~/Library/Application Support/TextMate/Bundles
$ curl --location --get http://github.com/sproutit/sproutcore-tmbundle/tarball/master -o sproutcore-tmbundle.tar
$ tar xf sproutcore-tmbundle.tar


The curl --location option is required, since github will issue a redirect.

The extracted tarfile will have a root directory name of the form sproutit-sproutcore-tmbundle-.*, so a directory rename is needed.
$ mv sproutit-sproutcore-tmbundle-blah-blah.../ Sproutcore.tmbundle