No Time To Play
newsletter archive

Weekly Links #48

I was going to write a big rant about programming languages for this week, but I tried and it's just not coming together. Suffice to say, people keep inventing new ones to fix what they perceive as wrong with the old ones. And invariably, the newcomers turn out to miss the point entirely. These days everyone is gushing over Go and Rust. Bwahahaha! Remember Vala? I didn't think so. Or D, for that matter? Hint: the idea of "fixing C++" wasn't born this decade. Heck, Java was born from the same misguided good intention. And we all know how that worked out.

More recently, people are inventing a bewildering array of libraries, frameworks, preprocessors and compilers with the goal of fixing what they find wrong with Javascript. Just earlier today, someone linked to a big list of them on Twitter. Turns out, I'd never heard of most... and now it's too late because nobody uses them anymore. Already. After less than five years. While good old jQuery is still going strong.

Pro tip: technologies that endure are those that build on the past and work with it. Because if you keep tearing everything down and starting anew, you're never going to make any real progress.

In unrelated news, Raph Koster muses about game cloning and its importance for advancing the art. Don't be put off by all the ludic theory, the idea is actually pretty simple: step-by-step changes is how game designers explore the possibility space, and therefore how games evolve into completely new genres. Besides, it could be argued that literature had much more time to run out of original ideas, and I don't see fiction writing slowing down, on the contrary. Not to mention that how you tell a story (or present a game) matters as much as the core of it. I'd say that's part of what makes art be art, but having read and written plenty of non-fiction myself I know all too well how much style matters anyway.

Speaking of story and presentation, another thing I was pointed at last week was this critical analysis of Bioshock Infinite. Having seen this game but not the previous ones in the series, I found the write-up quite enlightening. Yes, I did notice how annoyingly linear the game is, despite efforts to hide it — basically two steps above an interactive movie. And I was profoundly disturbed by the fictional world, but I thought that was the point. Then I stumbled upon this paragraph in the article:

The game suffers from the AAA problem of having been successful in the past. All of the climactic moments are there to impress you, unlike the "stumple upon" splendor of the original. For whatever reason, game designers in high places see themselves more akin to filmmakers, and their work suffers because of it. These heavily scripted events, while impressive, aren't interactive, aren't true to the form of videogames.

Oh no, not again. Not this problem again. Doesn't anyone know how to write stories anymore? Just theme park rides with set-piece scenes that are present only because they're supposed to be?

Last but not least, this autumn I've been writing a lot about interactive fiction, procedural generation, and their intersection. Apparently I wasn't the only one who noticed things moving and shaking in this area. Here comes Rant, a domain-specific language for procedural text generation — kinda like regular expressions in reverse, maybe? Too bad it's written in C#, but if people find it useful we'll see alternate implementations soon enough.

Now, if only I could design something like that for vector graphics. Oh well. See you next week, 'cause I'm still weakened after my cold.