This is more of a question post than one with answers ’cause I’m all mysterious like that.
Today I was debating (and by debating I mean fat fingering my way through instance messages) with a co worker about whether a certain somewhat well known developer was good. Though I won’t divulge such a person, let’s just say he’s built a a game that might or might not have to do with mining and/or crafting.
I can’t remember how we got on the subject, but his contention was that such a developer was horrible. This made me pull out the big guns loaded with pure dickish and fired off this salvo:
Well when you write a program that surpasses 100000+ users, I suppose that can be your rock to throw
Nothing inflammatory about that, right?
So from there it became an amazingly deep debate that could match the irrelevance of the most heated of Star Wars versus Star Trek debates.
Ok maybe it did have some usefulness to it. After all, it is a good question to ask… which is why I am asking it.
My point was that it’s not easy to make a game, even one that couldn’t give Quake a run for its money in the graphics area. (And yes I mean Quake 1… You know, that game that had polygons that would suggest you were holding a weapon but you were never quite sure.) And to make something like that in his spare time proves that’s he’s at least competent.
His main point was that as a part of professional pride, the game shouldn’t be as buggy as it is. The inability to create a product that didn’t have a solid foundation is just bad. Flat out bad. After all if I build a car, that’s cool. However, if I’m trying to run over some jack–s with three collars popped and due to lack of control takes out an Apple Store…. ok bad example. Takes out Mel Gibs… –CK! Takes out a puppy store, that doesn’t really mean I’m a mechanical genius regardless of other factors involved building it.
And I think in there is the question. Should things like time constraints, degree of difficulty, and having no help (That I know of until end of last year) be taken into account when you look at a body of work, or should it be the end product and end product only that defines the competence of the coder?
I think it can go either way depending on what you consider ability. Is ability defined as doing something difficult AND doing it well or just being able to churn out something a good majority of developers couldn’t do alone.
Now make no mistake, I’m not saying he’s the best developer ever. I’m sure there are people far beyond his ability. I just don’t buy that he’s incompetent due to the more intangible things that effect development.