Archive for April, 2012

When artists cater

April 29th, 2012

When artists cater

Text reads:

Unspecified number of cows (2011; casein)
This dynamic piece helps us recontextualize the disparity between the troubling mouth/non-mouth dichotomy in an ersatz form readily apparent to the non-casual observer (not shown).

Spotted at Obscura Day SF 2012.

Citi celebrates fictional 200th year

April 22nd, 2012

200 Years of Citi

On flipping a page in the April 21st issue of The Economist I came across this year’s funniest April Fool’s joke. This ad has a timeline of a fictional 200 year history for Citi, taking credit for various innovations such as the Panama Canal and commercial jetliners.

As I read through it I was laughing out loud. Whoever did this ad had a keen sense of satire. And the text about how money isn’t all that matters to Citi makes a good punchline.

Then I realized it wasn’t an April Fool’s joke. The people who created this ad actually think people will believe it.

Let’s clear one thing up first. There is no such thing as “Citi.” There’s Citigroup, and a division called Citibank. The ad copyright says “Citigroup.” And if that’s what they’re talking about, I have bad news. Citigroup is a mere 13 years old.

Their banking division, of course, is older. And sure, you could draw a line back to a bank in New York that is 200 years old.

But you can’t draw a straight line. Citi is a poster child for a corporation created by mergers. Drawing its history back to a precursor organization is like if I claimed to be 200 years old because that’s how old my great-grandfather would have been this year.

Here’s a quick summary of their real history: After a series of bank mergers in the mid 20th century, the name “Citibank” was invented in the 70’s to describe the new conglomerate. A parent company named “Citicorp” was established, which was renamed to “Citigroup” in 1998 after they merged with Traveler’s Insurance. That merger didn’t work out and Traveler’s was later spun off. This same process of a corporate marriage and divorce was repeated with an investment company called Smith Barney.

Here in California, Citibank appeared on the west coast practically overnight a mere decade ago. They acquired a regional bank called California Federal (aka CalFed.) Itself the product of a series of corporate mergers, CalFed’s strategy of expansion through acquisition fit well with Citibank, but it makes the bank’s lineage all the more murky.

Look, if this ad was secretly placed by The Onion or something, let me just admit that you got me. I fell for your ruse. But if the folks behind it are just some marketing guys out there who think they’ve convinced people that Citi is 200 years old? The joke is on them.

People love us on Yelp

April 13th, 2012

People love us on Yelp

Don’t tell me I’m the only one who’s noticed the Yelp logo stuck to this painting at Little Star on Valencia. Is this a subtle hint that diners should rate Little Star on Yelp?

Unpainted advent calendars stuck to Four Barrel’s ceiling

April 13th, 2012

Discarded advent calendars Discarded advent calendars

Hey kids, ready for Christmas? Too bad, it’s more than eight months away! Ha ha!

Oh, and what’s that? Yeah, Santa already ate the chocolates from your advent calendars, then I stuck them to the ceiling at Four Barrel. Sorry, the big guy was drunk.

Besides it’s not like the chocolate would last until December anyway. What? Stop crying.

Omni Consumer Products launches sandwich-purchasing app

April 11th, 2012

OCP's new iPhone app

16th and Mission’s The Sandwich Place is littered with signs for a new app for your phone that lets you order (and pay) online.

The app is apparently from Omni Consumer Products, best known for Delta City and their robot police force. Before you can say “I’ll buy that for a dollar!” let me point out that the app itself is free. All you gotta do is place your order, drive your 6000 SUX down to the restaurant and pick it up.

Using an Evoluent VerticalMouse 4 on Linux

April 10th, 2012

Evoluent’s VerticalMouse 4 is one of the better ergonomic computer mice I’ve used. It’s comfortable, it doesn’t take much getting used to, and the price isn’t unreasonable.

While it works great on Windows and Mac, the same can’t be said for Linux. The button mappings cause some truly odd behavior, particularly with the scroll wheel.

Fortunately, there’s a quick fix.

First let’s play with xinput to make sure the settings are what you want. The following command will print out a list of input devices on your system:

xinput list

There should be a line that looks something like this:

Evoluent VerticalMouse 4 id=10

The important thing here is the ID number, which in this case is 10. It will vary from one computer to the next.

Now we can assign a new button mapping. I like to keep it simple, so this will only activate the left and right mouse buttons (on either side of the scroll wheel) and will set the scroll wheel to scroll and act as middle click. If you want a different setup, I recommend reading this and this and playing with these values in xinput until your mouse does what you want.

xinput --set-button-map 10 1 3 0 4 5 0 0 0 2 0 0

Note that I bolded the first parameter: as you may have guessed, that 10 is whatever ID you found above.

Got it working? Good. Thing is, xinput will only temporarily set your mouse buttons. Once you reboot, they’re gone.

To make these changes persist we need to create an Xorg settings file. First we’ll need the USB ID of your mouse. The following command will list all the USB devices on your system:


One of them should look kinda like this:

Bus 004 Device 004: ID 1a7c:0191 Evoluent VerticalMouse 4

The funny text I bolded is the device ID. (Again, it will likely be different on your system.) Now you can create a config file for your mouse. Note that this works on Ubuntu, perhaps your distro stores configuration files elsewhere.

sudo touch /usr/share/X11/xorg.conf.d/90-evoluent.conf
sudo gedit /usr/share/X11/xorg.conf.d/90-evoluent.conf

Copy and paste the following into the file, remembering to swap out your mouse’s USB ID and the button mapping string (if you changed it.)

Also, note that the button mapping string does NOT start with the device ID you used above; that was only for xinput.

Section "InputClass"
Identifier "Evoluent"
MatchUSBID "1a7c:0191"
Option "ButtonMapping" "1 3 0 4 5 0 0 0 2 0 0"

Easy, right? Well okay, not at all. The lack of a good mouse configuration UI is a nasty oversight on modern Linux systems. Someone needs to make one.

Bikes invade furniture store

April 4th, 2012

Bikes invade furniture store

San Francisco based Public Bikes is temporarily taking over part of Harrington, that massive (and pricey) used furniture store on the corner of Valencia and 17th.

To make up for the lack of space, Harrington has opened part of their upstairs space to the public; which makes me wonder if I was supposed to be wandering around up there the other day. That would explain why there’s no prices on anything in that part of the store. Hmm…

No word on exactly when the bike shop will open, but Harrington’s website says it’ll be sometime this spring.

Cyclecide’s Heavy Pedal Crank Art Exhibition

April 3rd, 2012

Bike drum Bike art Smoking bike baby Beer cans. Face punching bike Dragon bike Golden Gate Bridge bike Golden Gate Bridge bike

Nothing says “look what I made for Burning Man” quite like a mutant bicycle. The Heavy Pedal Crank Art Exhibition last weekend was a tribute to such vehicles.

Above are the crappy iPhone photos I took during my visit; click any image for the full-size.

How to setup Rhythmbox 2.95 as an Ampache client

April 2nd, 2012

Ampache, for those who don’t know, is a personal streaming music service. It lets you play your MP3s anywhere there’s an internet connection.

You don’t need anything special to play music via Ampache, just a web browser. But certain music applications integrate full Ampache support, which means you can browse all your MP3s from within the app.

On Linux, I use Rhythmbox to play music. There’s an Ampache client for it, but it’s not as easy to install as it should be with newer versions of Rhythmbox.

Here’s what worked for me.

  1. If you have not done so, on your Ampache server set permission to allow XML RPC (Manual is here for complex setups.) For the most basic setup, log into Ampache as an admin. Click the Admin button, then “Add ACL.” In the box that pops up, enter the following:
    • Name: [whatever you like]
    • ACL Type: RPC
    • Start:
    • End:
    • User: All
    • Remote Key: [leave this blank]
    • Level: Read

    Now hit “Update.”

  2. Make sure Rhythmbox is not currently running.
  3. Install or upgrade to Rhythmbox 2.95 (or 2.96) if you don’t have it already. For Ubuntu Oneiric, you can grab it off this PPA.
  4. If you don’t have it, install Subversion. Check out the code for the Ampache plugin:

    svn checkout rhythmbox-ampache-read-only

  5. Copy the files.

    cd rhythmbox-ampache-read-only/
    mkdir ~/.local/share/rhythmbox/plugins/ampache
    mv * ~/.local/share/rhythmbox/plugins/ampache

  6. Run the installer.

    cd ~/.local/share/rhythmbox/plugins/ampache
    sudo python install

  7. Now open Rhythmbox.
    • Go to Edit -> Plugins
    • Check the box next to “Ampache Library”
    • With Ampache Library selected, click “Preferences”
    • Enter your server info here.
    • Now close the dialog and double-click Ampache in the Rhythmbox sidebar.

It may take some time to sync with your server, but once it does you should be good to go. Personally I find this plugin to work a lot better than the Amache plugins for Amarok and Banshee, but your mileage may vary.

Updated Aug 2012