• "Everyone seems to be compiling lists of the best games of the decade, so here, with minimal special pleading or argumentation, is mine." Steven Poole's list is good, though two entries for the MGS series is one too many, IMHO. I'd swap one of them for something Harmonix-flavoured.
  • "This is a list of old game releases. These games were priced at nearly $50 a year ago, now probably a lot less. Why buy a new game when there are plenty of fun games out there worth renting or buying for less?" Games released twelve months ago this week, by Andre Torrez. He's right, you know – games don't have to be about nowness all the time.
  • "It’s pretty difficult to talk about what you’ve got wrong. When you’ve been working on something like School of Everything very intensely for two years you can’t really blame the mistakes on anybody else. But the truth is that we need to rethink because we haven’t managed to make the idea financially sustainable yet." And so they're doing out loud. It's a big move; I hope it works out OK for them, because they're definitely Good People.
  • "In the desert 100 miles northeast of Los Angeles is a suburb abandoned in advance of itself—the unfinished extension of a place called California City. Visible from above now are a series of badly paved streets carved into the dust and gravel, like some peculiarly American response to the Nazca Lines (or even the labyrinth at Chartres cathedral). The uninhabited street plan has become an abstract geoglyph—unintentional land art visible from airplanes—not a thriving community at all."
  • "On the contrary, the quick wins of some big ticket consulting sessions sell our discipline short by pretending that design is some magical elixir that can be poured into a situation and zammo everything is fixed up. Like accounting, medicine, and just about every other profession, design is a practice which is persistently useful at regular intervals. If anything, during this transitional period where business and government are slowly coming to terms with the potential yield of having design as an integral part of the conversation it behooves us to collectively seek longer engagements, not shorter." Some excellent stuff from Bryan Boyer.
  • "As a real-life pro skater, you might spend three hours out of every day practicing. Three hours trying new tricks, screwing up and the ground abruptly slipping out from under you. Imagine living your life in that fog of frustration, embarrassment, adrenaline and pride. Now let's imagine you got really sick, swallowed, like, nine Paracetamols and passed out in bed. THPS2 is what you'd dream." Quinns goes misty-eyed over THPS2, and he is right to do so. It was wonderful.
  • "It’s pretty common to want SQL queries against a particular table to always be sorted the same way, and is one of the reasons why I added the ordered scope to the utility scopes gem… Well now you can specify default ordering, and other scopes, in edge rails directly in your ActiveRecord model." Hurrah!
  • "With the recent addition of dynamic scopes, however, you now have a way to both quickly specify query logic and chain further conditions. The naming works in the same manner as dynamic finders and the chaining works in the same fashion as conventional named scopes." Ooh. New in Rails 2.3, and passed me by a little.
  • Really rather good series of tutorials on the FCE4 basics.
  • "So here's my theory: WoW doesn't resemble a film. It resembles, rather, a medieval cathedral. And a magnificent one: it is the Chartres of the video-game world. Like a cathedral, it is a supreme work of art that is, on a brick-by-brick basis, the creation of hundreds of artisans and craftsmen, many of whom will be long gone by the time it comes to completion; indeed, since WoW is in a state of permanent expansion, it may not ever be "complete". All those programmers are the modern-day equivalent of stonemasons, foundation-diggers and structural engineers."
  • "This December, the Eisner-winning artists behind such acclaimed projects as "Sugar Shock," "Umbrella Academy," and "BPRD: 1947" will present "Daytripper," their first original title from DC Comics' Vertigo imprint… The comic, which jumps around moments in the life of Brazilian aspiring novelist and newspaper obituary writer Brás de Oliva Domingos, will follow the main character as he explores and evaluates his own existence and attempts to discover the answer behind the mystery of the meaning of life itself." Oh. This sounds good!
26
April
2007

Textmate command of the day: (slightly) better Ruby test definition

As a Rubyist and Textmate user, you’ll probably be aware that def will tab-expand to stub out a method definition. You might also be aware that, for the purposes of Test::Unit, deft will tab-expand to a test method beginning def test_, allowing you to append the name of your test.

But that’s not much more help, because if we’re naming our tests properly, they’re probably going to have very_long_names, and hitting underscore all those times is a bit of a pain. So I rectified that, with this command (and it’s a command, rather than a snippet, because of all the processing it does). Pull up the commands dialog (Command-Opt-Control-C), create a new command in the Ruby bundle, and give it the following code:

#!/usr/bin/env ruby

name = STDIN.read.strip
testname = name.gsub(" ", "_").downcase
print <<OUTPUT
	def test_#{testname}
		\$0
	end
OUTPUT

The command’s Input should be “Selected Text” or “Line”; its Output should be “Insert as Snippet”. The scope should be set to source.ruby. And give it whatever key definition you want; I’ve got it on ctrl-opt-shift-t.

Usage is easy. On a new line in your test file, type the name of your test in plain English with no punctuation, eg:

get to index should list all items

and then hit your shortcut. You’ll get the following out:

def test_get_to_index_should_list_all_items

end

and your cursor will be slap bang in the middle of the test, indented, ready to write. That’s what I really want from a test definition snippet – something more than deft supplies. It’s another minute or two’s work to make it strip punctuation, so you can convert real sentences to test cases. I just decided to condition myself to save on coding on this morning’s commute.

Links & notes for this month

Endnotes