So transparent as to be invisible

I imagine one of the things our great-grandchildren will find quaintest about us is how we had all these different, function-specific devices. Their fridges will remind them of appointments and the trunks of their cars will, if need be, keep the groceries from thawing. The environment itself will be smart, rather than various function-specific nodes scattered through it. Genuinely ubiquitous computing spreads like warm Vaseline. Genuinely evolved interfaces are transparent, so transparent as to be invisible.

- “Up the Line” by William Gibson. Found in his collection Distrust That Particular Flavor.

Foo Fighters, October 19, 2011: Oakland, CA

Foo Fighters

It’s inevitable: as you grow older, your taste in music changes. There are bands that come to symbolize times in your life, soundtracks to niches in your memory.

There are rare bands that transcend time, ones that grow with you and mark the important internal changes with their music. For me, Dave Grohl is a man who has crossed this divide, first with Nirvana and later with the Foo Fighters. I love the Foo Fighters and Grohl because he will forever live in the parenthetical shadow of Kurt Cobain, yet he has accomplished so much more. Cobain created a rebellion, yet Grohl lives in the world that changed after it. His songs have grown like Nirvana’s never did. And in the wake of the martyrdom and iconification of Nirvana, perhaps this is what I was the band I truly wanted to love.

Their October 19, 2011 show in Oakland, CA also featured Mariachi El Bronx and Cage the Elephant, but let’s not kid ourselves here – those bands were, respectively, mediocre and decent, but it was the Foo Fighters that brought the house down in a blistering two-and-a-half hour set.

Rarely do bands – especially ones as popular as this – show the zeal that the Foo Fighters show. Grohl strutted, pranced, headbanged, and ran all over the stage and general floor area. He was, in short, every bit the frontman you want from a world-famous, arena-headling rock band. And amidst the theatrics, he was always in control, exchanging occasional witticisms with drummer Taylor Hawkins (one of the world’s hardest-working drummers in a band formed by an ex-drummer), commenting upon his thoughts upon “machines” making music (you can guess what those were), and playing the crowd as skillfully as he would an instrument.

The highlights of the show were the incredible energy of the opening numbers: “Bridge Burning”, “Rope”, and “The Pretender”. But it wasn’t just newer stuff – many of the classics were mixed in the setlist, including “Learn to Fly”, an amazing version of “Monkey Wrench” that included a 3+ minute guitar jam session with the lights turned off, “Stacked Actors” (a surprising choice; I never knew it to be popular though I personally love it), and – of course – “Everlong”.

One of the cooler moments was Bob Mould jamming with the band on “Dear Rosemary” (an absolutely underrated and beautiful song from the new album Wasting Light) which morphed into a groovy cover of Tom Petty and the Heartbreakers’ “Breakdown”.

Even the softer songs were played loud; Taylor Hawkins’ singing on “Cold Day in the Sun” was dominated by crunchy guitar riffs and his own pounding drumming. “Everlong”‘s lyrics weren’t indecipherable because of the heavy guitar distortion and Grohl’s tired voice after two-and-a-half hours… but the crowd ate it up all the same. For a song that iconic, lyrics are purely optional. Even in the handful of acoustic songs after the encore, this was firmly a ROCK show, written in glowing capital fire-branded letters across the sky.

If a rock concert is about learning to love the band even more, the Foo Fighters succeeded wildly beyond my expectations.

Angry Movie-Going Purist

It’s been a long time since I’ve written about a random occurrence in my life, but here’s one.  My friend and I went to watch Drive last night in the theaters.  (Excellent movie, by the way.)

We got there a bit early, so about 20 minutes before the movie’s start time, we found ourselves in a mostly empty theater discussing some fairly highbrow issues (cultural norms and prejudices, and the like).  I’ll allow that we were slightly loud, but not much.

All of a sudden, a guy one row down and a few seats to the right gets up, leans away from the woman he was with and tells us angrily, “You know, if you’re going to spend $22 for a movie and are going to talk, why don’t you do it somewhere else?”

Both my friend and I were a bit too stunned to say anything at first.  Keep in mind this is not during the movie.  This is not during the trailers.  This is not even in the formal pre-trailer advertising.  This is during Fandango commercials.  I gesticulated at the screen and said, “Sorry, the movie’s not on yet.”

“That’s not the point,” he countered angrily.

“Well, yes… it is.  You’re getting mad at us for talking during a Fandango commercial,” I replied.  ”When the movie starts and we’re still talking, you can tell us to keep quiet.”  My friend chimed in with something similar as well.

“Everybody around you is distracted by you!”

“Umm, no, no one has said anything except you.  Again, sir, the movie is not on yet.

At this point, he grew livid.  My rational explanations sometimes do that to people.  I call those people “insane”.  He pointed at me and said, “You want to fight?  Let’s take it outside.  We can go right now!”

This entire exchange had me wondering: had we fought, where would we have done it?

  • The stairwell
    • Pros: Nearby; don’t get to miss any Fandango commercials
    • Cons: Nearby; might spill some popcorn
  • Outside the hall
    • Pros: Less chance of splash damage; ready access to dumpsters and displays to hit each other with
    • Cons: Might get seen by theater security and kicked out; might end up smelling like popcorn if thrown near popcorn machine
  • The bathroom
    • Pros: Out of sight of theater attendants
    • Cons: You’re brawling with another dude in a bathroom; I hope your life can’t go lower than this
  • Outside the theater complex
    • Pros: No chance of being thrown out
    • Cons: They probably won’t let you back in since you’ve already used up your ticket

My friend laughed out loud and said, “No, we’re not going to fight you, dude.”

I was fascinated – I hadn’t been challenged to a fight in maybe 20 years, since I was in elementary school.  I looked closely at the man, who in his 50s and – given that we are in the Silicon Valley – was probably some kind of an engineer or tech-head.  He didn’t seem like the kind of man to get so angry to challenge people to fights.  Some anger issues, perhaps?  His wife didn’t even look at us – she was resolutely staring straight ahead, probably too ashamed of this ordeal.

I decided to be annoying.  ”Is this your deal?  You go around challenging people in movie theaters to fights?  How’s that working out for you?” I asked loudly to some guffaws from the few people in the audience.

“Assholes!” he hissed.

My friend and I exchanged delighted grins.  His irritation was a source of amusement to us.  ”Why don’t you switch seats?” I asked politely.  ”For your Fandango commercials, I mean.”

“Assholes!” he repeated.  Apparently his favorite word.

“You know, you could go find an attendant and have him try to kick us out?” I suggested helpfully.

“Assholes!” he said sitting down and glaring at us.  My friend and I were in stitches.

I will admit, the movie was great but not nearly as good as this exchange.  As we walked out afterwards, I made sure to tail him and asked loudly, “So how did you enjoy your moviegoing experience, sir?”

“Good,” he mumbled confusedly.

“Quiet enough for you?”

“Yes,” he replied, finally recognizing me.

Good!” I enthused.  ”I’m so very glad that you had an enjoyable moviegoing experience!  I wouldn’t want anything to ruin it for you!  Have a great night!”

I walked off to some more laughter from others, leaving behind an incensed Angry Movie-Going Purist.

Android Comic-Con 2011 App

A while ago, I started working on an Android app for the 2011 San Diego Comic-Con, which starts off today.  I never got a chance to polish the app or submit it, so I’m throwing it up here in case anyone wants to download it and push it to their phone.  Instructions for doing this are available online; I don’t really have time to link to them as I’ve got a flight to catch.

Keep in mind the app is pretty unpolished but everything you see should be functional.  Enjoy the programmer art too; I wrote this in a couple of days while learning Android so it could be a lot better – but I think it’s pretty feature-complete for now!

Download here.  Enjoy Comic-Con, everyone!

On Data Caps

Most major internet service broadband providers sell their services as follows: you pay them a certain fee per month, and in return you get:

  1. A theoretical maximum bandwidth.
  2. Up to some pre-defined amount of total data usage.

There is no reason that you as a consumer should be subject to both for internet access.

Let’s say your data cap is 100 GB per month. If you download that much data at a constant rate over the month, your bandwidth is less than 0.31 Mbps. Considering a normal ISP will advertise bandwidths of 10 Mbps or more, this is perfectly acceptable usage… yet you will either get charged overages or get severely throttled bandwidth if you download another byte of information.  It’s an even more glaring problem when you consider that most people never receive the theoretical bandwidth that is promised to them by their ISPs. They don’t even get close, because too many people are sharing the pipe.

It doesn’t make sense to sell internet access this way. The fact of the matter is, you should pay for internet access by bandwidth alone. Each ISP knows its total throughput – that is, its maximum bandwidth. Consider it like a series of tubes. Think of water flowing through a pipe. The width of the pipe determines the bandwidth of water flowing through it. ISPs know the width of their pipes and, thus, they know the maximum amount of data that can flow through them in a given amount of time.

The second thing that ISPs know, or can reasonably estimate, is the number of users they have today and can have in the near future. Do some fairly trivial math and you can have the maximum bandwidth per user. That is what users should pay for: a guaranteed bandwidth.

Installing data caps is a flawed model based on selling things that have an intrinsic, known value. When you sell water, it makes sense to charge for how much water someone consumes. After all, water is a limited resource and has a known value. It’s the same with petroleum. I’d argue that, yes, digital data is a resource – but its value is not knowable when examining an arbitrary stream of bytes. To charge money by the byte and by bandwidth makes no sense.

The Failures of L.A. Noire

This week, I finished playing through L.A. Noire, the latest Rockstar game.  It had everything I love – a film noir vibe, clue-based gameplay, and hard-boiled gumshoes who probably refer to women as “dames”.  How could it possibly fail me?  And yet it did.

Let it be said for the record that I don’t intend this to be a review.  Let it also be made clear that I am not a very big fan of Rockstar’s flagship franchise – Grand Theft Auto.  Given that this game is not meant to be much like GTA, I would add that the fact has little to no bearing on my thoughts – but I thought I’d reveal it in the interest of full disclosure.  (I am, incidentally, a huge fan of Red Dead Redemption, a game that I will frequently mention below.)

Also, there will be spoilers below.

The simple way of describing the problem with L.A. Noire is to point at the characters and the plot.  The heart of the matter, however, is in what L.A. Noire aspires to be – an interactive movie.

The Characters

The player is charged with playing as Detective Cole Phelps, decorated World War II hero returning home to Los Angeles to join the police force. Within the first few cases, it is apparent that Phelps is unlikable at best and unrelatable at worst.  Partway through an early case, a drive-time conversation with Cole’s partner reveals that Cole has a wife and child.  But we never see them.  The player is only Cole Phelps when he is solving crimes.  It is an impersonal view of the character.  Compare this to Red Dead Redemption which, more than anything, was a game about John Marston’s family (and perhaps secondarily about the death of the Old West).

All we see of Cole is an uptight man with the occasional flashback to the war, where it is gradually revealed that he was a rather incompetent officer. When Cole inexplicably cheats on his wife 3/4 of the way through the game and his career spirals out of control, we are left wondering why he did this.  We never get an answer.  To be clear, this isn’t a “life is complicated and some questions have no good answers” moment.  This is a “the writers didn’t make this character real enough for me to even allow me to guess what his motivations were” moment.

So for most of the game, we control Cole, a man who does things beyond our comprehension.  And I ask you: in a game about solving mysteries, to be presented with a character so flimsy that you can’t even understand him at the end of the day despite being him, is there a greater sin?

When the player’s point of view suddenly shifts to Jack Kelso, it came as a relief to me.  Jack fell pretty flat to me as well, but was as a whole more well-realized than Cole. In fact, the most real characters in the entire narrative were Cole’s partners and associates, who at least had their own personalities and mannerisms.  Roy Earle’s flippant off-the-books attitude and James Donnelly’s fiery biblical conviction showed that there were interesting characters and ideas to be had.  Unfortunately, each partner is only present for a few hours of gameplay at most and is then discarded by the wayside as the player moves to a new department within the LAPD.  At the end, when controlling Jack, the player is without a partner entirely, resulting in a lonely existence.

The Plot

In a game that chooses to style itself as letting the player be able to solve mysteries, the plot and pacing is surprisingly weak and laughable at points.  While in the homicide division, Cole runs into a gruesome murder that he solves.  In his next case, he encounters a similar killing and the characters in the game chalk it up to a copycat killer.  When they see a third such killing, they once again do the same thing – even though the player is well aware by now that this is not the case, the entire LAPD never admits it.

Each time, Cole arrests and charges someone with a murder based on the evidence. I reached my breaking point in one case where I investigated all possible clues and arrived at the conclusion (in my own head) that both of the suspects were equally likely to have killed the victim.  There was identical evidence on both sides, with nothing to suggest which one was the real killer.  Yet the game didn’t recognize this option, nor did its characters – I was forced to charge one, even though it was abundantly clear that neither committed the crime because of the way the previous killings were reoccurring.

Believe it or not, there were six such cases before the characters finally found the real killer instead of charging an innocent who fit the clues the killer left behind.  At some points, Cole seemed to show an inclination that he knew all these killings couldn’t be copycat killings, but his captain dismissed the idea and Cole, despite being a by-the-books officer, chose to forget all about his qualms.  Worse, he and everyone else appear to be genuinely shocked at the end that it wasn’t a string of copycat killings.

This may be the most egregious example of terrible writing in L.A. Noire, but it is sadly not the only one.  The player is expected to turn off part of his brain in a game about solving mysteries.


Many reviews of L.A. Noire talk about how it is the closest thing yet to an “interactive movie”; I disagree.  The writing is careless, the characters are flat, and the gameplay (which I didn’t cover) is mediocre.  If this was a movie out in theaters, it would get terrible reviews.

This is not L.A. Confidential, much as it aspires to be.  Truth be told, writing in most games is so terrible that it would get laughed out of serious literary or film circles.  Whatever Holy Grail the industry aspires to in this sense, it is not there yet.

In thinking about this goal, it seems we often forget that it is hard to overcome inferior gameplay, and impossible to get someone to truly love something that does not regard the player as intelligent. Desire and ambition are qualities to be applauded in L.A. Noire.  But perhaps Rockstar only had to look to its hit last year to find this quote: “It’s wantin’ that gets so many folks into trouble”.

End-User License Agreement

1. The Relationship

The Relationship between You and The Girlfriend is governed by this Contract and other documents that may be presented at various times during the tenure of the Relationship.  In agreeing to have a Relationship with The Girlfriend, You agree to be bound by these terms.

The Relationship is non-binding and may be cancelled by The Girlfriend without notice.

2. Rights and Communications

The Relationship gives The Girlfriend certain irrevocable rights during its tenure including, but not limited to, music and videos, articles of unisex clothing, the contents of refrigerators, and the usage of computers and other electronic equipment.

The Girlfriend reserves the right to initiate Phone Calls about How the Day Went.  Not fulfilling this duty may make You subject to a Penalty.

Both Parties may ask for Public Displays of Affection.  In private, You may ask The Girlfriend for (1) Cuddling and (2) Quality Time.  However, (3) Sex will be rate-limited and doled out solely at the discretion of The Girlfriend.  You have unlimited Phone Calls about How the Day Went privileges.

You are subject to a one Chick Flick per month requirement.  In the case of Sex and the City or Dancing with the Stars is on TV, you may not change the channel to sports or anything that might be construed as entertaining or substantive.

3. Birthdays and Gifts

Birthdays, anniversaries, and Special Dates must be remembered and celebrated.  For a complete list of Special Dates, please consult your Manual.  A partial list is printed below for Your perusal:

  1. Birthday
  2. Anniversary
  3. Half-Anniversary
  4. Monthly Anniversary
  5. Lunar Monthly Anniversary
  6. Release Dates of Sex and the City Media

At no point during the Birthday must You mention Age.

4. Surveillance

In the course of the Relationship, The Girlfriend may at times monitor your third-party communication.  In the event of unsatisfactory performance, abuse of communication privileges, or general Unhappiness, The Girlfriend reserves the right to terminate said Relationship and optionally Air Dirty Laundry in Public.

5. Other Rights and Requirements

From time to time, The Girlfriend may add other Rights and Requirements to this Document.  The Girlfriend is not required to send You a notification in such an event, so please check this Contract regularly.

Sign below to accept.

_________________________ (Signature)

_________________________ (Full Name)

Version 5! Codename: Talia!

Codename: Talia

Well, what you see here is the beginning of mediocre minds version 5. It’s been a very long time since the site was updated; I am not totally sure what it shall become in the future. I think I might spend more time writing about personal projects and the like, with the occasional rant thrown in.

As to what’s been going on with me in the last year or so since I updated?  I changed jobs and am working at a large software company that I like a lot.  It’s challenging but enjoyable.  It’s not game development, but I came to realize that maybe I wanted to make games on my own terms.  So I don’t really miss game development per se… but I do miss some of my old coworkers.

I was also hoping that moving away from games would give me a chance to enjoy games as games once again.  I’m not sure this has happened yet.  I think I know too much and I’m wired too differently now to just sit down and play like I used to 10 years ago.  But here’s hoping!

(For those curious, since I used to make codenames for the previous versions [linked on the side] while I was working on them, there is indeed one for this version. It’s Talia, after the awesome Batman character.  Batman seems to have some of the best female characters among the mainstream comic book lines.  Like many of you familiar with her, I first encountered Talia in the animated series.)