Today, in a shameful display of intolerance and craven concession to wealthy social conservative interests, the California Supreme Court upheld a ban same-sex marriages. This ban, known as Proposition 8 and passed by popular vote last November by a 4-point (52-48) margin, is in direct opposition to a May 2008 decision by the same body that asserted gay and lesbian couples retained the basic civil right to marry.
Typically, I would be expected to endorse such a ban. It is well-known that African-American culture is intensely homophobic, and Caribbean culture even moreso: in places like Jamaica violence against homosexuals is so intense that gay rights groups cannot even publish the address of their headquarters publicly for fear of murderous reprisals. However, I would like to point out an interesting parallel between the events of today and a bit of historical trivia that would directly impact myself along with millions of other black folk; a concept that is so intertwined with both what we endured and that which our homosexual fellow citizens are stalwartly fighting now: discrimination.
Read More »
I recently had need to parse a large (100 MB) CSV file with Python and was pleased with how speedy it was. However, the test machine I was using was strapped for disk space and a 100 MB file was, shall we say, less than welcome. Zipping the file compressed it down to 5 MB, which was far more reasonable.
Parsing CSV in Python is straightforward… and reading file contents from a ZIP archive is as well. Unless you’re using Python 2.6 or higher, though, getting the file contents out of the ZIP archive in a way csv.reader() likes it (as a file-like object) is not as simple ZipFile.open(). All you get in Python 2.5 is ZipFile.read(), which returns the file contents in string form. Since disk space was a premium, unarchiving the CSV even temporarily was out of the question. Using StringIO, it is possible to take the string contents of the CSV within the ZIP archive and make a file-like object that csv.reader() will be happy with.
Read More »
I ran into an interesting discussion at work yesterday regarding SQL and how a sane DBMS would handle the following:
SELECT * FROM a
INNER JOIN b
ON a.id = b.game_id
WHERE a.name = 'wow'
Jeff Atwood has provided a very handy visual guide to how SQL joins work, and I feel I have a good grasp on the basics. What his examples do not show, however, is how these joins are performed when you throw a WHERE clause into the mix. I asked about this on Twitter yesterday, and I’m pretty sure that 140 bytes isn’t enough to clearly state the question.
Read More »
I’m here. I’m around. Been on Twitter a lot, so catch me there if you want to keep up.
Thinking about what I want to do with this place. We’ll see.
I have this habit of concocting “band name”-worthy phrases based on things I read, hear, or discuss in my daily life. I was suggesting to my co-worker Todd that I should get a notebook and write them all down. He suggested something even better: blog them. So, every time I think of a noteworthy name, I’ll throw it up here on the Asides section. Everyone’s invited to critique, discuss, and otherwise flame my choice of names; interaction is the object here, people!
It’s been a long time since we’ve had a bona fide Mario platformer for a home console. Super Mario Sunshine came out for the GameCube in 2002, and seemed to leave critics a tad disappointed. The franchise got some much needed (and well-received) attention in the last year with New Super Mario Bros. for the DS and Super Paper Mario for the Wii. Both were delicious experiences, albeit rather short, but neither seemed to scratch the itch Mario fans have had since the groundbreaking Super Mario 64 over a decade ago. Nearly a year after the release of the Wii, we finally get this console generation’s true Mario offering: Super Mario Galaxy. Did Nintendo manage to find the same inspiration for it that they did for their other recent Mario games? Read More »
I’ve heard tell via 1-UP that Halo 3 multiplayer co-op is solely client-hosted. Tonight’s run with Todd seems to confirm that, ’cause I started the game and it was virtually a slideshow while he reported no issues. If this is true, its a giant step back for the franchise and takes away a big reason I broke with my normal tradition and pre-ordered the game.
An interesting take on the throne from our friends in Japan. I’m sorely tempted to try one of these out myself.
Wil Wheaton speaks for us all (25 MB MP3, NSFW language). I felt like standing up and cheering in the middle of my office as I listened to this. Gamers and non-gamers alike need to hear this, all of it, beginning to end.