mike thinks he's so smart
[info]yeloson asks:
Is the PS3 as much of a pain in the ass to code for as I've heard?
The answer is yes.

For two reasons, really; and the reason that seems more important is actually less important. (I'm assuming you're a 3rd-party developer making a game for both platforms; and I'm probably a little off on some of the precise hardware details.)

First, the 360's hardware is more straightforwardly organized than the PS3's. The PS3 has 256 MB of video memory and 256 MB of system memory, while the 360 has 512 MB that can be used for either. So you take your level that fits on the 360 and move it over and all of a sudden it stops fitting, because it wasn't split just right between textures and other things. In practice not the biggest deal; you just wind up shifting stuff back and forth between the memory that has free space and the memory that it needs to be in when you use it. The 360 has 3 CPUs, while the PS3 has 1 CPU and 6(?) SPUs, which (from the outside) are like CPUs except they're only allowed to access a tiny amount of memory (128k, iirc). Sony really likes this kind of architecture, where data is loaded by batches into a thimbleful of fast memory and processed by a tiny program*. The different number of CPUs isn't as big a deal as it might seem--you basically draw up a big list of everything that doesn't have to be done on the main CPU, and feed bits of it to processors as they're available--but the memory restriction is a killer. Secondary processes on the 360 can be as big as you like, whereas on the PS3 they need to fit in that 128k. If your game's been written on the PS3, porting it to the 360 is a piece of cake; nobody cares if you're using too little memory and, in fact, it probably runs faster. Porting the other way, though, can be a real pain in the ass: if your animation system (or AI, or crowd simulation, or physics, or whatever) doesn't fit on a SPU, you're either doing a bunch of rewriting or letting a bunch of hardware sit idle.

That brings us to the second reason: the 360 development environment is head and shoulders better than the PS3's. The compiler is faster, the debugger is better (and integrated with Visual Studio!), the devkit is smaller and easier to deal with, the documentation is better; all in all, it's just a better experience. A lot of our programmers only have one devkit; even when I've had both, if I'm implementing a new system or fixing a bug that shows up on both, I do it on the 360. That games would be better if they were developed primarily on the PS3 is kind of a tragic sidenote.

I think he's bluffing, and his reasons are definitely not my reasons, but I'm a little happy to see Bobby Kotick threatening to have Activision stop PS3 development.

* The PS1, with its single processor and straightforward architecture, was a fluke. Sony couldn't afford to make a more complicated machine. Though they made a nod in this direction by only putting in a tiny instruction cache; if one of your loops was bigger than (iirc) 4k performance would drop off dramatically. As soon as being easy to program won them round one of the (3d) console wars, though, they used the proceeds to fund their architectural whimsy.
 
 
mike thinks he's so smart
29 June 2009 @ 11:59 pm
Where I complain about controller plugging and unplugging! :D

Or I would, but it's boring even to me at this point. I keep learning new things, though, like how the PS3 supports up to seven wireless controllers! And if you assume it only supports four because the 360 only supports four (and because it only has four lights, ffs) then you get bit in the ass by one of your particularly ugly hacks.

The way you have to make sure your program doesn't crash on the PS3 when the user wants to quit out of the game is annoying, though. It's game over! The OS should be able to tear it down without your cooperation.

But the bug list is dwindling; knock on wood, I'll be done with it soon enough.
 
 
mike thinks he's so smart
25 June 2009 @ 09:20 pm
If upon my death I am judged to be an insufficently worthy programmer, I will be sent to the Hell of Mismatched Braces, where I will be forced to find which curly brace hidden in tens of thousands of lines of code has been removed by a tormenting demon. (this demon's name is perforce merge. he also likes to mismatch your #if/#endifs.)

So, yeah. It turns out that lead programmer is basically a fancy word for build monkey; I've been in merge-and-build hell for the last couple days. It sort of makes sense, and somebody's got to do it. Knock on wood, this is the last merge I'll have to do.

Aside from that, I've got the same old still stuck on a finishing project while a new project is starting up grumpiness. Though not as bad as it was, a few weeks ago, when the part of the new project I was slated to work on was modified dramatically in a moment of 'omg the tech won't support this'; it's since been unmodified, so it's less worry about wtf I'm going to be doing once I'm there and back to a general impatience.
 
 
mike thinks he's so smart
23 June 2009 @ 11:16 pm
Vaguely topically, there's this Iranian propaganda video (from last year) going around. I noticed it on Andrew Sullivan's blog, and it's translated by MEMRI, so take it with a few grains of neoconservative salt. But it opens with a slightly ludicrous Poser-quality animated video that reminded me of Metal Gear in its nonsequitude: John McCain, George Soros, and Gene Sharp(!) in a secret chamber deep in the bowels of the White House, plotting. I was particularly amused by Fake John McCain: "As George Soros rightly said, our goals should be achieved through long-term planning, which will be adapted to the culture of each region." I can barely imagine him saying any one of those clauses, much less all three in one sentence.

More than the stilted, exposition-heavy dialogue, though, it's the selection of personages: taking relatively peripheral historical figures and concepts and moving them to the center, while removing the people you'd expect would be there. Which... who knows? I'd heard of Gene Sharp but had forgotten the name, but maybe his stuff actually *is* a threat to Iran? Soros is just garden-variety anti-Semitism, though; at the time he was more concerned with overthrowing the American government. There's the same paranoid worldview/secret history vibe, too, though there aren't secret agents with animal names cavorting around, nor lessons in the finer points of firearm and woodland lore.

On a more serious note, the news from Iran is kind of worrying. It sounds like things have happened that can't easily be undone, but there's no good way forward either... all we can do from here is hope things go as well as they can.

ETA: Durr, somehow I completely forgot about the Open Society Institute; I tend to think of civil society stuff as being the same thing as, like, disease prevention or rural electrification--totally unobjectionable infrastructurey stuff--but of course it's totally not.
 
 
mike thinks he's so smart
23 June 2009 @ 12:01 am
Today was my 10-year anniversary at Shaba.

Which... isn't supposed to happen! Was my first reaction--everything I'd been taught about the life of a programmer (or game developer, or person with a job in the late-20th/21st) is that you get a new job every 1.5y or so, and that's just how it works. So I've beaten the odds!

Not quite in the mood for a complete look backwards, but here's a quick list of games I've worked on:

a list )

Oddly, Vince was hired shortly after me but has shipped about twice as many games as I have. :D
 
 
mike thinks he's so smart
18 June 2009 @ 04:44 pm
Krugman (and Romer) on reacting to the financial crisis. It's kind of fascinating--and frustrating; it'd be a lot more comfortable to watch if it was somebody else's depression, and already over to boot.

Because you've got these people, who know probably as much as anybody in the world about the Great Depression and Japan's Lost Decade, and it's pretty clear why what's happening is happening and what to do about it, and they've got a sympathetic President whose party controls* the legislature, and yet it's tremendously hard to do anything at all. As Krugman says:
I also liked her admission that
As someone who has written somewhat critically of the short-sightedness of policymakers in the late 1930s, I feel new humility. I can see that the pressures they were under were probably enormous.
My version of that admission is the statement that we owe the Japanese an apology: their stop-go policies in the 90s, the reluctance to reform banking, are a lot easier to understand now.
That said, all of those policies did actual harm to the nations that implemented them. So, understanding, yes? But we would also very much like off the train.

(and the 1936 opinion poll at the end >_<. plus ca change, i guess.)

(pps lol great paul)

* When did the 60-vote supermajority become SOP in the Senate? As far as I can tell, the Majority Leader has the option of requiring an actual talking filibuster, but never ever does because to do so would be to take some power back from an obstructionist minority at the cost of some amount of personal inconvenience.
 
 
mike thinks he's so smart
Like Neuromancer, The Lord of the Rings has a good quantity of weirdness that got skimmed off when it was rendered down into a genre. Which is always kind of neat; it gives me hope that genres needn't be what they've turned into. It's kind of irrational of me; after all, it's not like things need to be in any paticular genre.

China Mieville, last seen calling Tolkien "the wen on the arse of fantasy literature", is now all, "here are some reasons Tolkien rocks!" I don't necessarily agree with them--in particular, he's needlessly harsh on Greek myth, which is as weird and deep as any you'll find--but I approve of his motives, which are to cause trouble and stir up shit.

ps> you should read the city & the city
 
 
mike thinks he's so smart
Retro Game Challenge! (for the DS, of course)

It's cute! The idea is pretty straightforward: a collection of fake NES games, with little challenges attached (beat level 2, score 15000 points, etc., etc.). The framework is what makes it awesome: you're a kid, playing these games in your friend's living room; the television goes on the top screen, the two of you are on the bottom screen. Between (or during!) games you can chat with your friend or read manuals and game magazines; the magazines have secrets and cheat codes to help you beat the challenges, as well as contributing to the atmosphere.

Which really works. It totally captures the feel of gaming as a kid in the 80s. The pacing's a big part of it: getting new magazines gives you cheat codes to beat the game you're currently playing while building anticipation for the new games that are coming; the games themselves get progressively more sophisticated, in both graphics and gameplay. Strikingly so: they go from a simple Galaga knockoff to full-featured (though short) Dragon Warriors and Ninja Gaidens. It's not quite the history I remember, but it's close enough. They can only do so much in six to eight games.

Ah, those chalky NES colors.
 
 
mike thinks he's so smart
12 June 2009 @ 11:33 pm
Am giving Windows 7 a try on my tiny laptop. The RC starts to melt down next March, but, eh, I wind up reinstalling about that often anyway.

I guess they figure it's been long enough since OS X that they can rip off the Dock; a very charitable explanation might be convergent evolution, Taskbar to Dock to new, docklike Taskbar (large icons instead of small icons+names, links to programs now live on the taskbar instead of the quick launch bar; it's a very programmery impulse--A and B are similar, so we should unify them--and one that I myself am not immune to, but... I don't know. I didn't like it, initially, but I find myself making somewhat convincing arguments both ways, so I guess I don't care that much.

Minor tweaks: The tablet support is nicer than XP, though I haven't really tried it on Vista. There are checkboxes on/next to file icons, for a new way to do multiple selection (without having to hold down ctrl; the target audience for this feature is none of us). Alt-tab hides all windows except the selected one for the duration.

I am a control rod for the wallpaper meme, as both this and my desktop use the default. The default 7 wallpaper is nice; it has a fish on it.
 
 
mike thinks he's so smart
11 June 2009 @ 10:07 pm
"Neuromancer is overrated," claimed a coworker. And maybe he's right? It has been a while; what's cool when you're a susceptible teenager may not still be cool when you're a marginally-less-susceptible no-longer-teenager.

So I found a copy (on a Russian pirate site, of course; a glitch in the OCR software renamed the technoanarchist gang to the Panther Modems) and... it's definitely of its age? And its genre; it's not for nothing that the founding document of cyberpunk is a heist story. It's also surprisingly weird. On top of all the stuff you remember--the Matrix, the drugs, the cyborgs, the '80s Japan, Inc crap--there's all sorts of bizarreness. I keep forgetting about crazy hologram guy, for instance. (i really do; each time i'm all: 'who's this guy?') And the fact that an entire third of the book takes place in OUTER SPACE.

I do miss the future that had outer space in it.

(whether the book's overrated depends on how you rate it, i reckon; it's not as sharply written as his later stuff, but it's a solid entry in its genre. with some neat ideas, some cool imagery; though the color of television tuned to a dead channel isn't the same color it used to be.)
 
 
mike thinks he's so smart
08 June 2009 @ 08:38 pm
Guitar controllers are fun to play on, but I hadn't realized what a pain they are to develop with. We're providing short-term art and code support to a member of the Guitar Hero family, and that means having a clunky plastic guitar on or around your desk. At least it's wireless! But it takes two hands to operate, and it's both too big to lay on your desk and too asymmetrical to lean against your desk. (also, lots of protuberances for

A while ago, for some unrelated reason--as part of the faffing about on an exploratory project that didn't make it to the go stage--I jokingly suggested making a tiny, ukelele-sized guitar controller. Obviously it didn't happen; but now I'm kinda wishing there actually was such a thing.

As you might've guessed, the time after Spider-Man's been spent on a mixture of exploring new concepts and helping out other studios. It's not entirely unpleasant; it's much nicer having a game canceled two months from the beginning than two months from the end. Working on other people's games is way better than everyone gets fired and then all hired back; and I'm always curious about other people's engines.
 
 
mike thinks he's so smart
04 June 2009 @ 09:43 pm
A couple days of sleeping poorly and I really do get stupider. It kind of sucks. It's not just that individual thoughts take a little bit longer, but memories are a little further away and I'm lazier, even on brain-only tasks that don't require any physical exertion.

Aside from that: apparently E3 is going on? Nothing we're doing is being shown at E3, so that's cool. I'm still not convinced that it's really necessary? But my attitude about waiting for things has mellowed into "it'll be here when it's here," which makes a festival based around anticipation less useful to me. It's also really hard to get a feel for a game playing it for just a few minutes in the middle of a crowd. There's something zeitgeisty about being able to see a whole bunch of games at once; patterns start to show up, you can get kind of a feel for where everyone's at: one year everyone's figured out how to make graphics look good on that generation of consoles, one year everyone's ripping off GTA, and so on.

Which.. is kind of worth it? For all that few of us are actually in a place to act on that knowledge. If anyone is--it takes long enough to turn a game around that there's no immediate tactical advantage to be had.
 
 
mike thinks he's so smart
03 June 2009 @ 12:56 am
I'm not entirely cranky about tiny pretentious indie games; some of them are entirely charming. Daniel Benmergui's I wish I were the moon and Gregory Weir's The Majesty of Colors are both a kind of interactive puppet theater*, where you grab things and move them around to guide the (short, straightforward) story to any of a number of conclusions. Benmergui switches it up a little in Today I Die, which has a feedback loop between the game and a poem describing the situation, and you have to manipulate both to move forward. All of these are tiny games, playable in your browser in no more than five minutes. They're neat concepts. When full-size games try doing similar things, they usually wind up with about the same number of cool moments that really show off the device padded out with a game's worth of brawler/shooter/rpg/what-have-you.

How you'd build a full game out of, say, The Majesty of Colors--without diluting what makes it interesting--is kind of a neat exercise.

* I like puppet theater as an analogy for (a certain kind of) gaming! There's something to be said for the tactile aspect of moving the players through the story yourself, even if it isn't actually your story. Learn by doing, and all that.
 
 
mike thinks he's so smart
02 June 2009 @ 12:02 am
Carnegie Mellon's ETC has released (online, for free) Well Played 1.0: Video Game, Value and Meaning, an anthology of critical responses to various videogames, among them Greg Costikyan's delightful essay about Europa Universalis, and Nick Montfort's aggravating take on Portal and Passage.

All in all, kind of a mixed bag; people trying to explain what these games are and how they're important, but... it's kind of clumsy; they all spend a lot of time explaining the games they're talking about, and not enough time actually talking about them. It's harder than movie criticism, probably, because of the gap between 'when X happens, it means Y' and 'mechanic X has the effect Y'; it's a lot easier to imagine the first and fill in the gaps. I think? I might be a little shaky on how criticism actually works. As, I suspect, are a lot of the people writing essays. It's a nice start, though.

On the Costikyan essay, he totally nerds out, and goes nicely in-depth on the sort of strategy game I wish I was hardcore enough to play; that's the sort of experience that only computer games can provide. Pen and paper games can approximate it, but they don't scale nearly as well. And simulations, as much as any work of art, are a statement: here is (a stylized version of) how the world works!

The Montfort irritates me mostly for its framing; in order to pump up Passage he disparages Portal, mostly (afaict) because the game's writer joked that the game's weighty theme is 'everyone likes cake!'. I don't have anything against Passage; it's a cute diversion, but as far as weighty themes? Bourgeois intellectuals have been putting skulls on their desks for hundreds of years now; Portal actually makes you look at the world differently.

(in additional things-put-out-by-universities note, i had a sudden burst of nostalgia when i stumbled across the intro cs lectures stanford's posted on youtube. lol at commenters complaining about how julie talks too fast; i have to admit the me of ten years ago totally didn't notice.)
 
 
mike thinks he's so smart
Amazon deliveries default to my work address. it's easier and more reliable.

The only drawback--if you can call it that--is that sometimes, out of curiosity, I'll take a peek at the first few pages and then, if the book happens to be really good, I'll lose the entire afternoon. In this case, not much of a loss; most of Friday was lost to waiting on Perforce anyway.

Which is a roundabout way of saying: The City & The City is really good! I might be somewhat biased by its origin story, in which China Mieville's mother always loved police procedurals, so when she gets sick he goes ahead and writes one for her, on the sly. But it's a neat book, and very much of its genre. Mieville's got a knack for the grotesque, but he doesn't indulge it here.

There's only one big weirdness, and it works. I read various blurbs that attempted to describe the relationship between the city and the city, and none of them really managed to describe it effectively; it's the sort of thing that has to be seen from the inside. Ignore, also, the blurbs saying it's a powerful allegory about X. It's a mild and subtle allegory about several Xs, perhaps. It's also fun! The central idea has a lot of implications, and he clearly enjoyed exploring them.

I would say "go get it and read it, so I can talk about it more!" but I'm probably the most spoilerphobic one here. :D
 
 
mike thinks he's so smart
21 April 2009 @ 11:17 pm
So, helping a coworker trawl through some foreign code. There's definitely an art to it, I think; it's kind of like solving a puzzle, but it's closer to *almost* solving a puzzle: getting in a few edge pieces, sorting things by color, figuring out just enough to... do something that doesn't really have an analogue in the world of jigsaw puzzles, then move on to the next problem. There are clues. Variables and functions have evocative names; sometimes you can just trust them to do what they say, and sometimes what they say they do appears to be subtly different than how the surrounding code seems to be using them, and you have to dig deeper.

It's a total maze, though. I've never been very gung-ho about "refactoring", though I realize it is somewhat unfairly tainted by association with Extreme Programming, but I'm definitely getting a better feel for the ways that C++ and object-orientation can make code harder to read.

It's kind of weird; we've never really done game logic in the sort of C++ code that would use inheritance, and so these problems are all new and fresh. Which... it's nice that things don't get stale! I would say, if pressed to be optimistic. (and, in fairness, there are some things they've got set up that just work; i expected burning a disc to take research and lots of trial and error, but they've got a one-button solution.)
 
 
mike thinks he's so smart
13 April 2009 @ 08:33 pm
Really, there's not much going on?

Secret project's been replaced with ordinary project, which is neither terrible nor awesome.

I got Street Fighter 4, though I haven't done much with it but unlock everybody and get a feel for the thing. It's definitely trying to go back to the feel of SFII, and it mostly succeeds. Everybody's simpler; people who got new moves in Alpha or III lost some of them, and everyone's back to one super with one level. Simple! But then there's a new 'Focus' mechanic whose subtleties I barely understand, and EX moves, and there's also a extra super super that runs off a different gauge entirely. So maybe not so simple.

And... oh yeah! MS Paint Adventures just finished its first adventure. It's neat; like when you were kids and you'd make adventure games for each other on pieces of notebook paper, only with substantially more awesome, and if the bus ride home lasted for a year and a month. (it also has a particularly neat running gag involving how keys work.)
 
 
mike thinks he's so smart
04 April 2009 @ 12:06 am
I remembered the third thing! Driving home yesterday, I turned on KZSU. One of the virtues of college radio being that you're never sure what you'll get; if you turn to Live 105 and hear a metallish riff, you can be pretty sure that that's the hardest it'll get, and the song will turn back to generically banal rockish stuff pretty soon; if you hear that same riff on KZSU, there's no guarantee it won't spiral into noise and madness; Cookie Monster at the Dentist, or one of Northern Europe's other flavors of barely listenable metal.

So, anyway: evening commute, turn on the radio, hope it's something neat. And I hear crowd noise, which is disappointing. That means it's a basketball game, or maybe a volleyball game. Then the announcer speaks: "...reduced to 18 life points after that attack by a 2/2 creature." How odd! Magic: the Gathering metaphors, at a basketball game? Unexpectedly nerdy! (In this as in so many other things, Stanford is no MIT.)

But no! It's an actual MtG match, broadcast live on the radio! I was charmed. (unfortunately, I can't actually get KZSU on my home radio. kind of shame, though it sounded like a fairly one-sided match: large fast green creatures vs. an opposing deck that couldn't deploy countermeasures fast enough.)
 
 
mike thinks he's so smart
02 April 2009 @ 07:34 pm
Animation bugs really are the best bugs.

I kind of wish I'd saved some of my old ones. (they were less funky and more creepy: people inverting into pincushions, body parts stretching and fusing together. Shrek in particular; his head would often move about independant of his ears.)

And... they're working on a new Syndicate? It kind of seems like what's the point? nowadays. Syndicate was awesome for its austere hi-res graphics and its detailed world simulation, which did things like: pedestrians used crosswalks and cars obeyed traffic lights; your squad went unnoticed until they pulled out their weapons, at which point the cops would attack them and pedestrians run away; you could shoot a car until its occupants left, then get in and drive it around; you could amass a mob of brainwashed civilians and arm it with weapons from your fallen foes. That was fucking awesome in 1993, but, having made millions and millions of dollars in the early '00s, is now utterly familiar. I'm not sure what else Syndicate--for all I loved it greatly--has to offer. If they kept the camera angle it would be an interesting throwback, I suppose, though the odds of that are pretty slim.

There was a third thing, but I forget.
 
 
mike thinks he's so smart
31 March 2009 @ 11:18 pm
Of the Megaten bestiary, this guy is maybe my favorite? I'm not even a dog person.

(I tried SMT Online briefly; it looked like a faithful translation of SMT concepts to a MMO, though perhaps not a particularly inspired translation. It's the sort of thing where, if you've got the assets to do it, why not? And they certainly do. I'm kind of tired of undirected aimless sandboxy crap. Or maybe it's just anxiety about opening up new, huge, uncompletable tasks--Pokemon at MMO speeds--when I've already got enough on my plate.)

Also, I've successfully made pizza! For quite a while I was a yeastophobe; I'd somehow built up this mystique where yeasts are delicate and temperamental creatures who'll refuse to fart up your bread if you so much as look at them funny. They're really not. I haven't even been proofing it, and my life is better for omitting that stressful and time-consuming step. (I use it about as fast as I buy it, so there isn't much opportunity for it to get old.) And I haven't really been sweating the water temperature, either; warmish seems to do the trick. I don't even have a thermometer, which, again, is kind of a relief.