If I were them, I'd ditch the project now. IE support is not their problem. Everything they're doing just screams "this is my first try at game development", as well as "this is my first try at DHTML", and they've bitten off more than they can chew.
As it turns out, IE's rendering engine is actually faster than Firefox's. I know this from having written a pretty heavy Canvas-based web application recently, and from a dozen years of writing video games for browsers. If he were to ditch FF support, he'd actually have a better shot of getting this thing working.
But really, he doesn't have a chance, so the point is moot.
Yes. Game dev is complicated. You should start off with something you can hope to actually accomplish if you want to move forward.
Building a Civ clone is not like building a Twitter clone. Especially with the terrible architecture decisions this guy has chosen. The project will most certainly fail, and he probably won't get far enough along to even learn anything.
I'd suggest he starts by building something small. Something that fits entirely in the browser, so that he can learn the basics of DHTML, Javascript and Canvas. Something small in scope so that he can learn the basics of video game programming. Something that doesn't overload his brain to the point where he's asking whether he should implement Comet to handle a turn-based game.
So no, I'm not saying he should quit programming, or even quit game development. I'm just saying he should abandon this particular project until he has at least some of the skills he'll need to pull it off.
"Something that doesn't overload his brain to the point where he's asking whether he should implement Comet to handle a turn-based game."
Freeciv is a turn based strategy game, but it uses simultaneous movement; everyone moves their units at the same time. Therefore updating the mapview must occur in real-time.
Using Comet allows the web server to push data to a browser, without the browser explicitly requesting it.
So when an event occurs on the server, it will immediately be trasmitted to the clients with Comet, rather than waiting for the polling interval of Ajax + the delay of a packet being transferred from the client to the server.
So in my mind, Comet could speed up the time it takes
to transmit a packet from the server to the clients.
"Especially with the terrible architecture decisions this guy has chosen."
Given that I'm not exactly experienced at game development either but I find this discussion really fascinating, I would be interested to know why his architectural decisions are so horribly wrong.
As it turns out, IE's rendering engine is actually faster than Firefox's. I know this from having written a pretty heavy Canvas-based web application recently, and from a dozen years of writing video games for browsers. If he were to ditch FF support, he'd actually have a better shot of getting this thing working.
But really, he doesn't have a chance, so the point is moot.