Skip to content


Zed Shaw is a parody of himself

Zed Shaw is about as close as computer programmers get to being stars without first becoming billionaires. People in my industry know who he is and respect what he does. Unfortunately, they also listen to what he has to say about things like software usability, and he’s so far off the mark it’s almost tragic.

The first thing you have to understand about Shaw is that he accomplished something that most people thought was impossible at the time — wrote a scalable web server in Ruby — and that this has made him justifiably famous among people who care about that sort of thing. The second thing you have to understand about Shaw is that he personally believes himself to be the greatest human being who has ever lived. And honestly, I can’t really blame him.

I’m not being ironic right now: he really does seem to be an incredibly intelligent and accomplished person. Speaking as another intelligent and accomplished person (not to the same degree), I’ve always secretly believed that all humility is false, that humility is actually the greatest possible conceit. It seems unreasonable to me to expect intelligent people to somehow not be aware of their own gift, or to at least feign obliviousness in polite company.

But even with that outlook, at first I thought that Shaw was a braggart. He titled his old blog “Zed’s so Fucking Awesome” (now offline). He wrote an essay about the Ruby community called “Rail is a Ghetto,” in which he posted a chat transcript where he was rude to a fellow developer, who then called him a dick (because he was kind of being a dick), as evidence of the immaturity of the community (post now offline, although mirrors can be found). He complains about the burden of his fame, while at the same time lamenting the fact that he’s not as famous as he deserves to be. He casually drops facts about how many martial arts he has studied:

These days I’m not as into working out and studying martial arts as I used to be, instead focusing on yoga, meditation, and simpler activities. When I was younger I was incredibly fit, and still am because of habits and practices I ingrained in myself from an early age.

First a quick list of martial arts I’ve studied for various periods of time: Ninjitsu, Aikido, Judo, Muay Thai, Wing Tsung, Capoeira, and Arnis in no particular order. I would say only Muay Thai is the one I studied most consistently, for probably about 6 years. The others I studied for about 1 or 2 years if I could.

The thing is, though (and it took me a while to realize this): Shaw isn’t bragging. He’s just stating the facts as he sees them, whenever he feels they are relevant to the opinion he’s trying to express. He has an incredibly high, mostly justified, opinion of himself, and he doesn’t see anything wrong with letting his audience know that. And if I’m being completely honest, the largest part of me cheers him on for having that courage.

But in his latest post, his own sense of self-worth seems to get in the way of his faculties for reason. Titled “Products For People Who Make Products For People,” it’s a passioned rebuttal of the idea that programmers shouldn’t do UI design. He reserves the lion’s share of his ire for a book I recently read by Alan Cooper called The Inmates are Running the Asylum. You can read my complete review here, but the basic thesis of the book is that user interaction design and software development are two discrete skills that should be performed by separate individuals, in that order. I’ve read a lot of criticism of this thesis, and Shaw’s is pretty representative:

… the assumption (either explicit or implied) that if you could code hard core stuff like web servers then you couldn’t make a decent product. There was even an implied offensive insult that technical competence meant you had autism. You didn’t know people and it’s only the Product People who deserve the rewards and credit for anything, not nerds.

In other words, Cooper dared to imply there was something that Zed Shaw wasn’t great at.

A lot of programmers reacted negatively to Inmates, taking it as a hit job blaming them for all the evils of bad interaction. I get that sentiment, but it misses the point. To return to Cooper’s thesis, it’s that 1) software production needs to begin with interaction design, done by professional designers, then move on to development, and 2) when this doesn’t happen, the “design” which takes place is done after the fact by engineers. In other words, Cooper is on the side of the nerds, and argues that they are being ill-served by the lack of resources dedicated to interaction design.

Shaw too takes offense at being made to take the blame, complaining that in many cases programmers are just following orders and have no real control. But he even admits, in the same section, that professional designers aren’t part of the process.

Alright, where’s your designer? In every mega-corp and government agency I’ve worked for there has never been a staff designer of any kind. If there was one he or she was barely capable and totally out of touch with modern design. How can a programmer possibly make a good visual design without any help from a professional designer?

Shaw seems to be saying, look, it’s not the engineers’ fault, we were just following orders. It’s the business’s fault because we didn’t have access to a professional designer or else they were incompetent. And that’s basically Cooper’s point. I have to wonder if Shaw even read the book. Or maybe he did, but he’s so entrenched in the business of writing software for other software developers that he cannot fathom what it’s like to be a normal human being that has to use difficult software. He doesn’t seem to understand the difference between writing a web server to be used by other engineers and writing a GUI for non-technical end users that want to accomplish a particular task. And again, that’s kind of Cooper’s point: if you’re too close to the problem of producing software, you’re literally incapable of placing yourself in the shoes of the poor schlub who will have to use it. You’ll write a brilliant but unusable mess that makes perfect sense to you and infuriates almost everyone else — but not engineers, who happen to think the way you do.

This is what Shaw thinks is meant by “usability”:

Here, take a look at Paypal and compare it to Heroku. Paypal looks like ass compared to Heroku, but back when Alan Cooper wrote his book, Paypal was the height of sexy product interfaces. Now it looks like junk compared to today’s graphic design, but today’s design is only possible because browsers got better and competitors to IE6 came out.

[When reporting an error] I also try to include the file:line location so people can hunt down exactly where the error is and possibly fix it.

So, “sexy” looking GUIs and error messaging that is only useful to software developers. To be fair, he’s talking about his experience writing a backend software product whose users are themselves software developers. And, once again, that’s Cooper’s entire point: that software developers make terrible judges of what normal people will find usable.

It seems like Shaw’s real motivation for writing this screed is that he feels slighted by “Product People,” that the software he makes doesn’t “count” to them:

… to them a web server isn’t “product”, it’s infrastructure. It’s not even a toilet, it’s the rusty pipe that feeds water to the toilet.

To a Product Person the things I make are laughable. They aren’t products because people don’t use them, only programmers. To make a good web server you just have to code. There’s no design, no usability, no human elements at all. The all superior Product(TM) has design, usability, and is used by humans. “Your web server is just used by geeks and it’s just code.”

The crux of the Product Person’s belief system is this idea that unless the product has a graphic component then it’s not a product and it has no elements of usability.

There’s a good reason software developers have long been divided into “plumbers” and “painters.” The analogy with a sewer system is apt: with backend software, like web servers or Java, the only time an end user cares it exists is when it breaks. As an author of backend software, maybe that reality makes you sad, but it’s the truth. As a plumber myself, I find users’ ignorance of my work incredibly liberating — but then, I don’t put as high a premium on recognition as Shaw seems to. I mean really: who cares whether interaction designers deem your backend code worthy of recognition? At the end of the day the business can’t run without it, no matter how intuitive and easy to use the frontend is. That’s why we make as much money as we do, despite the fact that most of us can’t design a usable product to save our lives. Cooper has real respect for the difficult task of software engineering, although you wouldn’t know it to listen to Shaw.

Maybe I’m way off base here and Shaw is actually an interaction design expert, in addition to his extensive musical ability and martial arts training. I wouldn’t be that surprised. But for the rest of us mere mortals in the trenches of software development, I think it’s downright insane to toss Inmates to the curb for the sake of pride.

Posted in Coding.


What’s in a game? Would Samus Aran in any other genre still be as sweet?

I liked Metroid: Other M, but it isn’t a Metroid game. It’s a pretty good action game starring Samus Aran.

To explain what that statement could possibly mean, I’ll have to break down what makes a game a “Metroid” game. It’s more complicated than you, or Team Ninja, might think. Upon first glance, Other M seems to have many of the functional elements of Metroid in place. These include:

  • Samus Aran in her battle armor, morphing into a ball
  • Upgrades for weapons and equipment
  • Shooting energy beams and missiles at space monsters (many from past games in the series)
  • Secret passages and other basic environmental puzzles

On the third point above, Other M really shines: I would argue that Team Ninja elevated the combat, traditionally on the easy side, to the same level of challenge and engrossment as other modern, “hardcore” action games. On the other points, Other M seems be going through the motions without any real enthusiasm or clarity of purpose. I wouldn’t be surprised if, somewhere early in development, someone wrote a variant of the above list on a whiteboard somewhere, and the developers dedicated themselves to checking off every item before shipping a game.

But Metroid, like many Nintendo properties, is more than the sum of its parts.

Imagine that someone who had never played Super Metroid was given the task of watching a speed run of the game on YouTube and taking meticulous notes to figure out what made the game such a beloved classic of the 16-bit era. Their final analysis might be a more detailed version of the above list, including such elements as:

  • Different suits for resisting heat and the effects of water
  • An ice beam that will freeze enemies in place and allow you to touch them unharmed
  • A wave beam that passes through walls
  • A speed booster that lets you run faster and break through certain barriers
  • A grappling beam that allows you to swing from special hooks

And so on, ad nauseum, until they had cataloged every functional element of the gameplay and design. They would still be missing the point. As I mentioned earlier, Team Ninja faithfully reproduced all these elements, but they still ended up with a poor Metroid game. This paint-by-numbers approach to game design is an attempt to gloss over a fundamental failure to understand what makes Metroid fun.

fuck yes

It’s exploration, idiots.

Metroid games have always featured twitch-reflex gunplay and big, over-the-top boss encounters, but it’s no more “about” this combat than oil painting is about covering the white part of the canvas with colors. You do it, sure, but it’s not an end in itself — it’s in the pursuit of an auxiliary goal. In Metroid, the space critters that get in my way aren’t there because they’re fun to kill (although they often are). They’re there to impede my progress through the vast alien wilderness I’m mapping, and my reward for becoming better at fighting them (and for collecting power ups) is that they impede me less.

Super Metroid is my favorite game, even all these many years later, because of the clarity of its design around the theme of exploration. Every other functional element of the game is subservient to this dominant theme: the penalty for dying is lost progress; the responsive and flexible movement controls encourage experimentation to get around the environment more efficiently; collecting power-ups grants access to new, unexplored regions (often through ingenious mechanisms); hidden power-ups encourage prying into every nook and cranny. All these elements reinforce one another, and all of them reward the player’s skill with new places to explore.

I should give team Ninja a little more credit — they do seem to understand the importance of exploration, but rather than designing a game around it they tried to staple it onto a quick-paced, linear action game. The net result is lots of locked hatches that the player knows they can’t get into until later, once they’ve collected an upgrade. Behind these hatches there are no new regions of the ship to explore, only a little cubby hole containing a feel-good missile expansion. Even worse, the game has an obnoxious tendency to corral the player toward their next linear goal by conveniently locking doors that aren’t on the current main path, reducing the player’s freedom whenever it becomes inconvenient to the story progression. Call it Metroid on Rails — just don’t call it a Metroid game.

I have some other gripes about Other M, but they’re minor compared to its basic design flaw. For example, Samus starts the game with all the power-ups she earned by the end of Super Metroid, but then disables all of them out of respect for her ex military commander. She re-enables them at key points in the story, as he orders her to do so. Besides being out of character (and vaguely misogynist), this tactic robs the player of the satisfaction of having discovered these upgrades on their own in some twisted, labyrinthine passage.

Maybe I’m too old; maybe today’s player needs their hand held or they quit in frustration, and any game that dares to buck this trend, offering the player an entire world to explore at their leisure, is begging for bad reviews and poor sales. But I still hold out hope for a new generation of action-exploration games, beautiful modern creations that learn from the mistakes of their ancestors but retain the respect those old games had for the player, their skill, and their curiosity. Shadow Complex was a bright, shining promise of what the genre could be, but Other M is a big step backwards. I’m waiting.

Posted in Games.


My T-Mobile bill and what’s wrong with American democracy

It’s 2010, and that means that a hip yuppie like myself doesn’t bother to open, let alone read, something as mundane as my cellular phone bill. Why would I, when I can establish automatic recurring billing from my checking account with around five clicks? They still send the paper bills, though — I haven’t opted out of them yet, because for some reason I can’t shake the feeling that paper is somehow more authentic and reliable than an electronic record (although my entire livelihood depends on this not being the case). Today I finally sifted through the drift of these bills and similar detritus on my desk, and upon reading one of them became so incensed that I felt moved to write this post. Below is an excerpt from the bill in question, on which I have helpfully outlined the object of my anger in red:

what's wrong with this picture?

Let’s leave aside, for now, the fact that T-Mobile feels justified in differentiating text-message data from all other types of data, and charging separately for it. Enough has been written about that elsewhere (although I’ll return with my own screed later). I want to concentrate on the bottom weasel-text, reproduced here for the googles of the internet, which as of this writing don’t search inside images for text.

Fee we collect and retain to help cover our costs related to funding and complying with government mandates, programs, and obligations. [Oxford comma mine]

Let’s get something straight: despite the best efforts of Ronald Reagan and his idolaters of the last 30 years, every company must comply with government mandates, programs, and obligations. I’m talking about wasteful and oppressive regulations that cripple our job-creating small businesses, such as:

  • Don’t dump carcinogens into rivers (ok, but not too much or we’ll fine you)
  • Don’t charge an interest rate above 300%, no matter how dumb your mark (or if you do, at least call it a “payday loan” and make sure they’re a poor racial minority)
  • Don’t employ children to mine coal (we know, their small hands can get more places, but people kind of hate child labor)

Every company must find a way to deal with the increased cost of doing business that regulation imposes, which may include passing the bill onto customers in one form or another. But few companies would be so gauche as to bill me a line-item for it. And it really does make my blood boil. In one asterisked footnote, T-Mobile has managed to neatly invoke 30 years of discredited free-market claptrap, that zombie ideology that just won’t die, no matter how many bullets to the head it takes. Their buck-passing reinforces this ideology’s central tenet, that government regulation of any sort is an unnecessary evil that raises prices for customers and fetters business. And of course, as with all invocations of this ideology, the potential benefits of such regulation aren’t mentioned, and certainly not in the same paragraph as the costs.

I don’t exactly envy T-Mobile and the other telcos their fate as the maintainers of expensive data lines with cutthroat operating margins, but that doesn’t excuse this kind of behavior. And in any case, their billing practices makes it hard to sympathize with them. Consider what I paid for voice, text, and data last month:

texts are expensive

So for 138.37 MB of data (internet access), I paid $30.00. That comes out to $0.22 / MB. For the voice, assuming the most generous audio codecs in existence, I paid $39.99 for 222.89 MB of voice data, a rate of $0.17 / MB. For texts, I paid $10.00 for 0.015 MB of data (98 messages at 160B each), a rate of $668.73 / MB. It should be noted that since I spend nearly every waking moment in easy reach of a broadband connection and don’t have any friends, I use far less voice and data than most smart-phone owners, so the typical rates for those two types of data would be even lower. In summary, T-Mobile has no problem charging me:

  • $0.17 / MB, if it’s a phone call
  • $0.22 / MB, if it’s a webpage
  • $658.73 / MB, if it’s a text message

Yessiree, nothing illogical or unethical about this pricing scheme, government regulators! Now go pick on the logging industry before we add some more anti-government propaganda to our next billing statement.

Posted in Politics, Technology.


Coding corner

I ran in the Beat the Bridge 8k today, and I was getting frustrated waiting for the online results to get posted. So I fired up a little script.

#!/usr/local/bin/perl

use strict;
use warnings;

while (1) {
    eval {
        system ("wget 'http://onlineraceresults.com/race/view_race.php?race_id=14261' -O race");
        my $results = system ("grep 'There are currently no results posted for this race' race");
        if ( $results ) {
            system("/usr/bin/mail -s 'Race results' xxxxxxxxxx\@tmomail.net < /home/zachmu/results") and die "can't send mail";
            exit 0;
        }
    };
    sleep 60;
}

By the way, if you know my mobile phone number, you can use the email address template above to send me text messages via email. Please don’t script this.

Anyway, the above didn’t work because of a subtle bug. See it? I didn’t, and so I didn’t get a text when the results were posted. Turns out that wget -O file won’t overwrite an existing file, so after the first one it was a no-op. Grr. Always read your man pages! This can be fixed with a little call to rm inside the loop.

Next I wanted to see how I did compared to the rest of the pack, and wanted to view a histogram of times. The online results site doesn’t support such a thing, of course, so I ginned something up:

#!/usr/local/bin/perl

use warnings;
use strict;

use Data::Dumper;

my $seenDiv = 0;
my $runner;
my $cell = 0;
my $runners = [];
my $cellProcessors = [
                     simpleFieldExtractor('link'),
                     simpleFieldExtractor('first'),
                     simpleFieldExtractor('last'),
                     simpleFieldExtractor('division'),
                     simpleFieldExtractor('place'),
                     simpleFieldExtractor('divplace'),
                     simpleFieldExtractor('genderplace'),
                     timeExtractor('guntime'),
                     timeExtractor('time'),
                     timeExtractor('pace'),
                     ];

while (<>) {
    my $line = $_;
    chomp($line);

#    print "DEBUG $line\n";

    if (!$seenDiv && $line =~ m/DIVISION:/) {
        $seenDiv = 1;
    } elsif (!$seenDiv) {
        next;
    }

    if ($line =~ m/tr class/) {
        $runner = {};
        push @$runners, $runner;
    } elsif ($line =~ m/td class.*>(.*)<\/td>/) {
        $cellProcessors->[$cell]->($runner, $1);
        $cell = ($cell + 1) % scalar @$cellProcessors;
    } elsif ($line =~ m/block-footer/) {
        last;
    } elsif ($line =~ m/<\/tr>/) {
        $cell = 0;
    }
}

my @filteredRunners = grep { defined $_->{'time:sec'} } @$runners;
$runners = \@filteredRunners;

analyze();

sub analyze {
    my @sortedByTime = sort {
        $a->{'time:hrs'} <=> $b->{'time:hrs'}
        || $a->{'time:min'} <=> $b->{'time:min'}
        || $a->{'time:sec'} <=> $b->{'time:sec'}
        || 0;
        } @$runners;

    my $bucket = 0;
    my $bucketCnt = 0;
    my $STEP = 60;
    foreach $runner ( @sortedByTime ) {
        next if (not defined $runner->{'time:sec'});

        my $totalSec = $runner->{'time:hrs'} * 3600
            + $runner->{'time:min'} * 60
            + $runner->{'time:sec'};
        if ($bucket == 0 || $totalSec > $bucket + $STEP) {
            use integer;
            my $label = "";
            $label .= $bucket / 3600;
            my $min = ($bucket % 3600) / 60;
            $min = "0$min" if ($min < 10);
            $label .= ":" . $min;
#            $label .= ":" . $bucket % 60;
            print "$label:";
            for (my $i = 0; $i < $bucketCnt / 10; $i++) {
                print "*";
            }
            print " $bucketCnt\n";
            $bucket = $totalSec - ($totalSec % $STEP);
            $bucketCnt = 1;
        } else {
            $bucketCnt++;
        }
    }
}

#print Dumper $runners;

sub simpleFieldExtractor {
    my $fieldName = shift;
    return sub {
        my ($runner, $field) = @_;
        $runner->{$fieldName} = $field;
    };
}

sub timeExtractor {
    my $fieldName = shift;
    return sub {
        my ($runner, $field) = @_;
        my ($hrs, $min, $sec) = split(/:/, $field);
        if (not defined $sec) {
            $sec = $min;
            $min = $hrs;
            $hrs = 0;
        }

        $runner->{"$fieldName:hrs"} = $hrs;
        $runner->{"$fieldName:min"} = $min;
        $runner->{"$fieldName:sec"} = $sec;
    };
}

When you feed this the race results page, it spits out the following histogram. Each asterisk represents 10 finishers with the time indicated, discarding seconds.

0:24: 2
0:25: 7
0:26:* 14
0:27:* 12
0:28:* 12
0:29:** 20
0:30:** 28
0:31:*** 38
0:32:**** 41
0:33:***** 51
0:34:******** 83
0:35:********* 90
0:36:************ 128
0:37:************* 137
0:38:****************** 180
0:39:********************* 216
0:40:********************* 210
0:41:********************** 228
0:42:************************ 243
0:43:***************************** 296
0:44:************************* 257
0:45:*********************** 238
0:46:****************** 187
0:47:********************** 221
0:48:************************ 241
0:49:******************** 209
0:50:******************* 192
0:51:*********************** 231
0:52:******************* 190
0:53:****************** 187
0:54:************ 129
0:55:*************** 151
0:56:************ 126
0:57:*********** 111
0:58:********* 98
0:59:******* 77
1:00:********* 97
1:01:****** 66
1:02:***** 55
1:03:***** 54
1:04:****** 66
1:05:*** 36
1:06:** 27
1:07:*** 32
1:08:** 27
1:09:* 17
1:10:* 18
1:11:** 26
1:12: 8
1:13: 7
1:14: 8
1:15: 8
1:16: 6
1:17: 9
1:18: 8
1:19: 7
1:20: 1
1:21: 3

So, my 37 minute time puts me well above the modal hump there. That’s what I wanted to know!

I should be able to use these same tools on other race results posted on that site, provided they don’t change their format significantly and break my screen scraping. Provide an API, you yokels! I hereby release the above software into the public domain, so if you’re of the running and coding persuasion feel free to use it!

Posted in Coding.


The return of scientific racism

Scientific racism is the proposal of significant, usually cognitive, differences between ethnic groups justified by (usually sketchy) scientific research. Navel-gazing European colonialists, eager to understand their race’s effortless domination of the new world, published many essays speculating about biological causes of their own racial superiority; in the antebellum South (and on contemporary white supremacist sites), racists eager to justify their own prejudices obsess over skull volume diagrams.

“Scientific racism” is a slur in the academy, roughly analogous to calling something “psuedoscientific” in the mainstream scientific community. Largely because there are observed differences in the results of IQ tests of different races, it is politically correct in many academic circles to refer to general intelligence under the euphemism “whatever it is that IQ tests measure.”

And, in fact, it’s solid science that performance on such tests is strongly influenced by individuals’ own perceptions of their ability. Blacks taking a test that is presented as a “laboratory exercise” outperform those taking the same test presented as an exam. In Predictably Irrational, Dan Ariely relates an even more intriguing experimental result. Researchers seeking to understand the effect that stereotypes have on math test performance decided to see if they could study the interaction between two conflicting stereotypes: that Asians are good at math; and that women are bad at it. They tested a large sample of Asian women, subconsciously priming a third of them to think about their womanhood (by asking questions about child birth, motherhood, etc.), another third to think about their Asian-ness (by asking questions about the language spoken at home, immigration, etc.), and leaving a final third as a control group. Perhaps not surprisingly, they found that each test group lived up to the stereotype they were primed to think about — the Asian group did better, and the woman group worse, than the control group.

As a society, we find the very idea of cognitive differences between races so vile and reprehensible that anyone making such claims does so at the risk of their academic and scientific career. The Bell Curve, a book on intelligence distribution that includes a chapter on the black-white achievement gap and suggests it cannot be explained by social factors alone, has received more refutation (and its authors, more ostracism) than any other modern, mainstream scientific text.

I’m currently reading How the Mind Works, an aptly named treatise about how evolution designed the human brain to fill the “cognitive niche” that no other species does. The author, Steven Pinker, understands that any discussion about innate human behavior, no matter how polite, raises the hackles on many of his more critical readers, and so he spends the first couple chapters of his book hammering home the point that we, as a society, need to separate the concept of what is right from what is true. He warns about the dangers of the twin logical fallacies applied to this area of research: the naturalistic fallacy (because something is natural, it must be good); and its opposite, the moralistic fallacy (because something is good, it must be natural). He notes that in the 1980s UNESCO proactively refuted any scientific study that claimed humans have an innate, evolved tendency towards violence and war, asserting that it is “scientifically inaccurate” to make such claims.

But with the genetic revolution, any ethnic differences that do exist are inevitably going to come to the forefront. Jonathan Haidt of the University of Virginia is concerned about our ability to keep this discussion civil:

The most offensive idea in all of science for the last 40 years is the possibility that behavioral differences between racial and ethnic groups have some genetic basis. Knowing nothing but the long-term offensiveness of this idea, a betting person would have to predict that as we decode the genomes of people around the world, we’re going to find deeper differences than most scientists now expect. Expectations, after all, are not based purely on current evidence; they are biased, even if only slightly, by the gut feelings of the researchers, and those gut feelings include disgust toward racism…

The protective “wall” is about to come crashing down, and all sorts of uncomfortable claims are going to pour in. Skin color has no moral significance, but traits that led to Darwinian success in one of the many new niches and occupations of Holocene life — traits such as collectivism, clannishness, aggressiveness, docility, or the ability to delay gratification — are often seen as virtues or vices. Virtues are acquired slowly, by practice within a cultural context, but the discovery that there might be ethnically-linked genetic variations in the ease with which people can acquire specific virtues is — and this is my prediction — going to be a “game changing” scientific event…

I believe that the “Bell Curve” wars of the 1990s, over race differences in intelligence, will seem genteel and short-lived compared to the coming arguments over ethnic differences in moralized traits. I predict that this “war” will break out between 2012 and 2017.

It’s getting harder every year to profess the standard social science model of the “blank slate” embraced by Piaget and Freud (and many others). The more we learn about genetics and the brain, the more we learn that major aspects of our personalities and minds are determined at birth or earlier. For example, recent research suggests that executive function — one’s ability to control one’s thoughts and behavior — is almost entirely heritable. As time passes, the number of cognitive and behavioral traits in the “almost entirely heritable” list is guaranteed to grow, seriously challenging long-cherished beliefs about justice, merit, and agency.

Since this result is inevitable, it’s imperative that we begin, as Pinker suggests, to separate our moral disgust from our notion of scientific truth. It’s certainly proper to be passionately skeptical about results indicating inborn differences between groups of humans; but it’s not proper to rule out, a priori, the possibility that such differences could exist, as is the current fashion in the academy.

Posted in Politics, Science.


Tea Party: definitely not racist

You guys, all those bigoted posters showing Obama with the bone through his nose, even the protest signs that talked about white slavery and called various people niggers, were just outliers. The tea party movement is about one thing, and one thing only: getting gubmint off our backs! The fact that the president happens to have dark skin has nothing to do with it.

Yeah! We’re against the expansion of the federal government and fiscal irresponsibility! Seriously, we didn’t even notice that the president was of the negro persuasion until someone pointed it out to us, and then we were all “whaaa?” We’d be saying the same things about a white president — that’s why we were so overwhelmingly opposed to the Bush tax cuts and deficit spending, and the creation of the DHS, the single largest expansion of the federal government in a generation.

We wanted to show up to protest the Bush administration, too… well, about that. Jim’s grandma got real sick, and Lou there was busy with overtime at the slaughterhouse. Also, we couldn’t find any black markers or paint stirrers to make our signs. By a total coincidence, when Obama was elected we overcame these obstacles just in time to warn America about how the gubmint takeover of health care was gonna death-panel Jim’s grandma after putting her Medicare in the hands of some Washington bureaucrat.

You see, this movement is all about freedom, not racism! That’s why when Arizona passed a law to allow police officers to demand that anyone they suspected of being an illegal immigrant show their papers or face indefinite detention, we showed up in mass to protest this Nazi-like intrusion into American liberty. Actually hold on… in this case, we’re sure those government officials will not abuse their powers (we trust them), so we showed up to protest the overwhelming protests of the new law. You see, this law keeps America America-er. Any real American has nothing to fear. There’s no way that brown-skinned people are going to be targeted by this law; if they’re here legally, they’re one of us.

Approximately 45% of Whites either strongly or somewhat approve of the [Tea Party] movement. Of those, only 35% believe Blacks to be hardworking, only 45 % believe Blacks are intelligent, and only 41% think that Blacks are trustworthy. Perceptions of Latinos aren’t much different. While 54% of White Tea Party supporters believe Latinos to be hardworking, only 44% think them intelligent, and even fewer, 42% of Tea Party supporters believe Latinos to be trustworthy.

Ok, yeah, if you’re talking about all black, and all latinos, sure. But the ones we know personally are great, and those other ones could be great too, if only they just applied themselves and quit looking to the gubmint for a handout.

Our movement welcomes all people of color! There’s no reason to imagine things would be any different if we were all negroes ourselves.

Imagine that hundreds of black protesters were to descend upon Washington DC and Northern Virginia, just a few miles from the Capitol and White House, armed with AK-47s, assorted handguns, and ammunition. And imagine that some of these protesters —the black protesters — spoke of the need for political revolution, and possibly even armed conflict in the event that laws they didn’t like were enforced by the government? Would these protesters — these black protesters with guns — be seen as brave defenders of the Second Amendment, or would they be viewed by most whites as a danger to the republic? What if they were Arab-Americans? Because, after all, that’s what happened recently when white gun enthusiasts descended upon the nation’s capital, arms in hand, and verbally announced their readiness to make war on the country’s political leaders if the need arose.

Hey, who are you going to believe, us, or the Jew-run liberal media? Now for the last time, quit calling us racists!

Posted in Politics.


Dammit, Girls Scouts

You had to know that I would end up calling them Samoans by mistake all the time. There is no plural of Samoa!

Posted in Musings.


Almost everyone is wrong about video games

There’s been quite a bit of noise on the intertubes lately about the nature of video games. What are they, exactly? Are they art (yes, idiots, JESUS)? What do they do to us as animals and people?

First, they are big. How big? Bigger than both the music industry and Hollywood.

just kids huh

That didn’t answer any real question about the nature of video games, but it does give you a sense of scale. Regardless of how you feel about them, video games are an essential part of modern society.

However, mainstream society dismisses them as a juvenile waste of time, in some ineffable but furious way a graver vice than other isolated, passive forms of entertainment like television, film, or reading (not that anyone reads, just saying). I recently found the following pseudo-anonymous screed:

The average video-game player is thirty-fucking-four years old. Every other generation had a career and a family by then. Get your shit together, us! We’re basically the explosive diarrhea generation.

This kind of critique is easily dismissed, and should be, as the self-hating whining of an underachiever trying to scapegoat their failure. I guess when you lack even a basic understanding of the topic you’re criticizing, it’s not hard to be this wrong. Yes, the average gamer is 34. My older brother is, in fact, the average 34-year-old gamer. He has a solid career and 3 children. He and his kind (and mine, for that matter) are quickly entering the mainstream, although you wouldn’t know it to listen to the dang liberal media*. An entire generation is playing video games, but the mainstream is content to treat gaming, the most ascendant and important cultural trend since the television itself, with a slack-jawed mixture of condescension, befuddlement, and fear. You might be surprised how often they hit the trifecta in a single story, actually — pretty much happens whenever a white teenager shoots someone.

With only mad jibbering coming out of the mainstream on the topic, people who care about this kind of thing look inward for insight. Jesse Schell recently gave a talk at a gaming expo, worth a watch even if you don’t have any interest in gaming as a hobby. He gets the importance of gaming, really gets it, on a level that most people don’t. He sees gaming-like activities permeating every aspect of our society within a decade, and from where I’m sitting it looks like he’s right.

The aspect of gaming that Jesse Schell thinks is migrating to the real world is the same one we exploit when we wire up a rat’s reward center in its brain to a switch on the floor of its cage, and it steps on that switch over and over until it keels over from exhaustion. We know from scanning live brains that this region lights up equally readily in response to getting fed for a hungry person, looking at porn for a man, hitting a jackpot for a gambler, and incrementing the Xbox Live gamer score for a gamer. The neural mechanism that is ultimately responsible for all addiction literally cannot tell the difference between biting into a cheeseburger when ravenous and getting a sweet frag on Live. Almost all successful games exploit this mechanism to some extent, and some of the most successful ones effectively wire into the brain directly, just like we do to those poor (but happy) lab rats.

A few months ago I poured about twelve hours into an indie game called Miner Dig Deep. There’s no reason anyone should call the activity in this game, which involves tediously digging thousands of feet underground and then riding elevators back to the surface, “fun.” But it is fun. It’s so fun it’s hard to put down. It’s fun because it randomly but consistently rewards you with ever more valuable gems as you delve deeper underground. You can sell the gems for money, which you can use to buy better equipment, which lets you dig deeper or faster or longer, which is how you recover even more valuable gems, completing the cycle. I found this pointless cycle so incredibly rewarding that I always, always had to make an effort to put the game down, to not head back down to the bottom of the mine for one last haul before bed. In the game’s defense, it’s a charming piece of cottage art, complete with an original guitar score. But to call its gameplay mechanics Pavlovian would be generous.

As Schell mentions, the largest part of the Zeitgeist is harvesting virtual tomatoes in Farmville. I haven’t gotten on board; not because I wouldn’t like it, but because due to experiences like Miner Dig Deep I know I would, and I don’t have the spare time to get involved with it. There’s quite a lot of scholarship on Farmville being written, such as this one out of SUNY. It’s interesting because it accurately assesses the role that social obligation plays in Farmville’s success, and then absurdly concludes that this obligation is the only reason anyone plays. I love picking apart this kind of academic drivel, because it sounds so plausible to read if you’re willing to settle for appeal to authority over actual observation; for semantic niggling over real debate.

Farmville is not a good game. While Caillois tells us that games offer a break from responsibility and routine, Farmville is defined by responsibility and routine. Users advance through the game by harvesting crops at scheduled intervals; if you plant a field of pumpkins at noon, for example, you must return to harvest at eight o’clock that evening or risk losing the crop. Each pumpkin costs thirty coins and occupies one square of your farm, so if you own a fourteen by fourteen farm a field of pumpkins costs nearly six thousand coins to plant. Planting requires the user to click on each square three times: once to harvest the previous crop, once to re-plow the square of land, and once to plant the new seeds. This means that a fourteen by fourteen plot of land—which is relatively small for Farmville—takes almost six hundred mouse-clicks to farm, and obligates you to return in a few hours to do it again. This doesn’t sound like much fun, Mr. Caillois. Why would anyone do this?

True, I did produce this kind of sophistry on demand when I was earning my own liberal arts degree, but that doesn’t mean I can’t call out egregious bullshit when I see it. I don’t have to; Farmville players get it, and this guy doesn’t. Every one of those pumpkins is a bump of coke. The activity is its own reward. If you don’t understand this about the medium, you shouldn’t attempt to form an opinion.

Successful writer Tom Bissell recently spent three entire years doing nothing but snorting coke and playing Grand Theft Auto 4, which is about as perfect a complementary activity as I can imagine.

The coke sailed up my nasal passage, leaving behind the delicious smell of a hot leather car seat on the way back from the beach. My previous coke experience had made feeling good an emergency, but this was something else, softer and almost relaxing. This coke, my friend told me, had not been “stepped on” with any amphetamine, and I pretended to know what that meant. I felt as intensely focused as a diamond-cutting laser; Grand Theft Auto IV was ready to go. My friend and I played it for the next 30 hours straight.

There are times when I think GTA IV is the most colossal creative achievement of the last 25 years, times when I think of it as an unsurpassable example of what games can do, and times when I think of it as misguided and a failure. No matter what I think about GTA IV, or however I am currently regarding it, my throat gets a little drier, my head a little heavier, and I know I am also thinking about cocaine.

Last week Roger Ebert returned to a statement he made years ago: that video games can never be art. Again, it’s possible to imagine a way for a person to be this wrong; I think in Ebert’s case it’s a combination of advanced age and a profound misunderstanding of the medium he tries to critique. For example, he believes he can experience a game without playing it. For a better, more nuanced rebuttal to this absurd position than I could write, see Mike Thomsen’s at IGN.

The reason football is not art is because its rules were designed with the primary goal of competition. Competition is only one of a great many different experiences that a videogame can create. Games can also be about losing, and not competing at all. They can be about love, the impossibility of relationships, the beautiful indifference to our individual life choices, urgent intimacy in the shadow of death, sexual anxiety, and confrontation with life choices to which there are no right answers. There are games that, using the language of authored interaction, invoke all of these ideas, and many more beyond.

For myself, I simply know they’re art. I can’t feel otherwise; too many gaming experiences have affected me deeply, too many to count, in ways that only the finest non-electronic art ever has. And so I know they’re art the same way I know I love looking at naked ladies. The fact that they’re also a lot like a slot machine doesn’t change that in the least.

*The term “liberal media” is used here ironically and is not meant to imply the existence even of a centrist media.

Posted in Games.


Lawrence Lessig on saving democracy from money

Lawrence Lessig is the rare political luminary who transcends partisanship. It’s not that he’s not a filthy progressive at heart; it’s that he thinks the only way to achieve a progressive agenda in this country is by removing the influence of money from Congress — a goal that, in itself, has broad popular support across party lines. He outlines the problem, and how he thinks we should address it, in this talk to the Reboot Democracy conference in Bend, OR.

I don’t know if calling a Constitutional Convention is a realistic goal, but I agree with Lessig that’s it’s probably our best shot of fixing the system.

Posted in Politics.


I probably shouldn’t have found this so amusing

Posted in Musings.