« June 2006 | Main | August 2006 »

July 26, 2006

Damage Control

A bunch of people took issue with the previous job posting, in particular where I said:  “Other studies have shown that there can be a ten-fold or thirty-fold difference in productivity between coders.  You guessed it:  we only want the people on the high end of the curve.”  Paul Sinnet said I lacked humility;  some guys offline said it was John Romero-ish; Chris Busse called me a snob...

Woah!

Maybe I miscommunicated.  Maybe everybody's thinking that we only want to hire those one-in-a-million Tiger-Woods-of-programming types – the absolute top of the curve. And that's not what I meant.  All I meant is we want programmers who are above average in productivity. Just like every other studio out there.

And Paul Sinnet has a good point.  People aren't necessarily good at self-assessment. I'd hate to think that somebody's out there going, “Oh, Torpex wouldn't hire me...I mean, I'm productive, but I don't know if I'm that productive.”

We do not think it's “worth rejecting a false negative over accepting a false positive.”  If we fail to hire somebody who would have been great, we've screwed up.  I keep thinking back to all the interviews I did when I was younger, trying to get a job, that I screwed up, where I froze and couldn't say what “SHLD” did, or was overly enthusiastic about Grady Booch's book with a team that only used C – those teams didn't hire me and I'm pretty sure they made a mistake. I turned out to be a pretty good coder.  We don't want to make that mistake.

And Paul's right: by posting a job listing that says, “Only apply if you're above average,” we might be ruling out a whole class of people who are above average but don't realize it. 

So, if you read the job posting, and you thought to yourself, “I'd like to apply but I don't know if I'm good enough,” hey, give it a shot!  Apply!  (Once again, jfristrom – at – torpexgames.com.)

July 17, 2006

Help Build A Start-Up

A project is imminent, and Torpex Games is looking for more coders to join the team.  You could be one of those coders!

I've got to tell you, working at a small company, and watching it grow, is the bomb.  Being in that first tier, Tier One, of employees is great - and not just because of the possible upside later.  In the early days, you can all go out to lunch together - at the same restaurant.  When there's a problem, the whole team chips in and solves it.  There's a flat org chart - you don't have to report to a boss who reports to a boss who reports to a boss. 

The main thing, though is you're helping to form that company's culture - you become part of its genetic code.  You feel like you really make a difference;  you feel ownership

We're going to keep the talent bar high at Torpex, through a combination of testing and rigorous interviewing - so if you're up for a challenge, and you want to work with talented peers, get in touch.

As per the book *Hire With Your Head*, which I recommend (though I think it underestimates the value of testing), I'll be very specific in the job description, focusing on performance and results rather than skills or experience:

- Help us ship fun, addictive games on time.  We're looking at getting two out the door in 2007 - we aren't going to be doing big-budget games at first - we want to ramp up slowly, so we can be extra-selective about whom we hire.  In the long run we'll be back on the big budget titles, though, and if you get in with us now, and you rock, you'll be managing those titles.

- Architect, implement, and improve systems and integrate middleware.  We're not going to pigeonhole coders into boxes like "graphics coder" "sound coder" "network coder" "tools coder" - etcetera.  You'll pitch in to work on whatever's high priority for that iteration - so you'll have to have skills in multiple areas, and be willing and able to learn new skills in new areas.  You'll feel like I did back when I worked on *Die By The Sword* and I worked on the network code, audio, particle systems, GUI, scripting language, AI, and so on - you'll feel like the games are yours.

- Be on par with the rest of the team in both productivity and bug rate.  In other words: keep pace with the rest of us, but don't work so fast you get sloppy.  This shouldn't be a problem, since studies have shown that careful coders are fast coders.  Other studies have shown that there can be a ten-fold or thirty-fold difference in productivity between coders.  You guessed it:  we only want the people on the high end of the curve.

- Participate in planning and estimation meetings.  We're firm believers that the people who do the work should also estimate the work.

- Help us to create and refine the processes and methodology by which we create games, continually improving our productivity and quality.

- Stay current, or ahead of, trends in game and software engineering tech.  At first, you'll have a small, recommended reading list - the Torpex canon of programming books - if you haven't read them already.  And I'd love to read any books you'd recommend.  That's so we can all get on the same page.  And then you'll be on your own, but we expect you to keep learning.

More on promotion:  although I obviously can't promise that you'll be promoted, we're big fans of promoting from within and giving management training rather than hiring outside leads.  So if you rock, you'll get there.  If management doesn't appeal to you, you can grow into a technical savant/guru role, where you'll be doing more R&D, more architecture, and more advising.  If that doesn't appeal to you, you can grow into a "chief gameplay programmer" role, where you'll be doing lots of prototyping and design - good for the wannabe Sid Meiers and Will Wrights out there.

Also, if you're already a lead or senior programmer or technical director, this is still a good opportunity.  Maybe you miss getting in the trenches and writing lots of code, maybe you miss the turnaround time of small projects, maybe you miss the camaraderie of small teams, maybe you want a new kind of challenge.  I believe we can work something out where you'll be happy here.

So, if you're interested, send an e-mail to jfristrom - at - torpexgames.com or call 310.529.1593.  (Yeah, yeah, I still haven't switched my phone to a Washington prefix yet.  One of these days.)

And -- hey -- we're looking for more artists too.  Spread the word.

July 10, 2006

Rummble

I love the tactics of Scrabble - putting your high-point letter on a triple letter score that goes both directions is very satisfying - but to get good at Scrabble you're memorizing a nearly arbitrary list of words - it starts to feel like random patterns.  If only there was a game that had that tactical feel of Scrabble without the word memorization.
I came across my parents Rummikub set this weekend and had the brainstorm that a Rummy-Scrabble hybrid would be the ideal mix.  (And realized something I always wanted with Rummikub was for the tiles to connect in crossword-like patterns.)  And, of course, it would be called Rumble.  Or maybe Rummble.  It's the exact opposite of this game: http://www.amazon.com/gp/product/B00000IV95/002-5601983-8384041?v=glance, which I just discovered with a quick Googling.  No words - you're making crossing patterns of Rummy melds - runs (aka straights) and ns of a kind.
After some solo playtesting I decided there needed to be more patterns -- otherwise there wasn't a whole lot of choice -- so I allowed flushes (but when playing them, the tiles have to be in sequence) and two-tile dyads (but not two-tile flushes, which was too easy, and that bothers me a little as the rules became a little too complex).  Still not enough possible patterns, so added that you can make runs and flushes in the opposite direction.
And then playtested it, just once, with the family.  And we enjoyed it.  There's lots of feeling clever:  "Look, I made a straight here alongside this other straight so I got all these little pairs and the 10's on the double tile so I score 20 in both directions.  Woo!"  Skaff recently told me that he thinks most games serve the same purpose as Colt 45 - they're just there to pass the time and numb the pain.  Gotta admit, this seems to be one of those games.  Enjoyable.  High variance.  Fun once.  The arithmetic is a little much - it might be a good game for kids to practice arithmetic. 
Anyhow, without further ado, here's how you can play:
- Get a Rummikub set.  Or you can get two decks of cards with two jokers, but then you're going to have a big board.  When I did my single, solitary playtest, we used all the cards, but you probably want to lose the aces and anything higher than a 9 to reduce variance.
- Four sheets of 8.5 x 11 paper can fit 13x13 rummikub tiles on them.  Graph it up.  Or make a huge board for your playing cards.
- Mark it like a Scrabble board - star in the center - "X2 TILE" instead of double letter score, "X2 SET" instead of double word score, etc.  Scrabble boards are actually 15x15, so you have to compress things a little, and I recommend putting the X3 SET scores just in the corners.
- So now you're ready to play.  Deal 10 tiles/cards to each player.  Then draw for first:  whoever draws highest goes.
- On your turn you can make one set, which must connect to the tiles already on the board:  either n of a kind, a run or a straight, or a flush.  If you make a flush the numbers have to be in sequence.  The set can incidentally make any number of collateral sets, which all have to be legal. 
Examples of legal sets:
3 3 - two of a kind
4 4 4 - three of a kind
5 5 5 5 - four of a kind
12 12 12 12 ? - five of a kind, using wild (with Rummikub it's numbers, with cards it would be Q Q Q Q Joker)
3 7 9  (all the same color)
11 10 8 7 3 (all the same color - the "backwards" flush)
3 4 5 6 7 (different colors)
7 6 5 4 3 (different colors, the "backwards" straight)
3 4 (different colors - a 2 tile straight is legal, although a 2 tile flush is not)
7 8 9 10 (all the same color) - this is a straight flush and you get double points for it.  (Mom's idea)

Examples of illegal sets:

8 7 11 10 3 (all the same color)  Flushes have to be sequential, either low-high or high-low.

8 11 (the same color)  Flushes have to be at least three tiles

4 8 10 (all different colors)  This is junk.  Why'd you think this was a set?

 

- The first person to go must play on the star.

- Scoring:  you score the value of the tile/card.  If you place tiles on special squares, you score the double/triple tiles first, and then the straight flush bonus (if you made a straight flush), and then the double/triple sets.  The bonus for a special square is only given once.

So, say the board looks like this:
2 3 4 5
And you play:
1 2 3 4 5
1
1
1
You get 4 for the 1, 1, 1, 1 and 15 for the 1, 2, 3, 4, 5 that you built on.  Total 19.

Another example:
2 3 4 5
And you play (damn non-monospaced fonts - hope this looks right on your screen)
2 3 4 5
        5 7 9 (flush)
You get 10 for the 5 5 and 21 for the flush - total 31.

Finally, let's say we've got:
8 8 8
   X 7
      6
      5

Where the X is an X2 tile bonus, and you play:
8 8 8
   8 7
      6
      5
Where the 8 is the same color as the 7.
You get 24 for the 8 - 8 (8x2 + 8)
And you get 46 for the 8 - 7 (8x2 + 7)x2 for the straight flush bonus - that's right, two tile straight flushes are legal. 

After you play you refill your hand to ten tiles/cards.

If you use all ten tiles in one go, that's a "Rummmble!" and you get +100 points.

The game ends when someone uses their last tile and there are none left to refill, at which point the remaining players total up the points in their hand and subtract it from their score and add it to the goer-outer-firster's score.

If somebody's already invented this game let me know.

July 05, 2006

It's Official

Anybody who's been wondering what the hell I've been doing with my life lately I can now answer:  I am now a partner with Bill Dugan at Torpex Games. Http://www.torpexgames.com. My official title is "technical director" but I hopefully will be much more.

I've been wanting to do something entrepeneurial for a while now.  I've been kicking myself ever since I turned Pete & Don down for a partnership in Treyarch, back when Treyarch was just a twinkle in their eye, only to join up with them anyhow, half a year later, for a much, much, much smaller stake.  And you can't read all the business and management books I've read without getting psyched for trying it yourself.  And I've written a fair amount about management myself, so this is an opportunity to really put my money where my mouth is. So since I quit Treyarch I've been looking around for the right opportunity and this is it.

Maybe you're wondering, why Torpex?

I worked with Bill Dugan on Spider-Man 2 and he's what Good To Great calls "The Level Five Leader."  The gist of it is a Level Five Leader doesn't have a big ego; they don't need to take credit for everything; it doesn't have to be "their way or the highway" all the time; they listen to (and argue with) their trusted advisors and in the end do the right thing, quietly getting results.  Not that there isn't a point where the buck stops with Bill – there were a couple issues we argued about with Spidey 2 where I eventually caved (and, later had to admit, yes, Bill was right.) 

Bill and I had a long conversation before I decided to join up where we talked about our values and it seems like we're on the same page about everything: we should do right by our employees;  we're about making games rather than making franchiseable characters or worlds or brands; excessive crunch time is toxic;  we need to be humble at first, taking whatever projects we can get, and build our way up to the giant dream projects;  talent is everything—it's better to not hire a mediocre person and limp along understaffed than to dilute your talent pool;  and much more that I can't remember all of right now. It was after that conversation that I decided Bill was the guy to go with.

And Richard Garfield and Skaff Elias are our allies;  these guys invented a whole genre of gaming, for Christ's sake.  Who wouldn't want to work with them?

Finally, Torpex is a cool name.  I could write a whole article on why it's such a cool name.  Maybe that'll be my next blog entry.