I "worked" on Wyvern in high school (in that I played a lot of Wyvern and made a few terribly shitty game areas and ended up being an administrator, or "Wizard" in classical MUD parlance).
You know how Dwarf Fortress, that ASCII game, simulates a whole lot of ridiculous detail? Over-the-top, "the goblin's spear strikes the baby dwarf in the back upper left tooth and it really hurts so he cries for mommy"? Wyvern didn't quite have that, but the API implied most of the functionality for it.
You didn't have inventory slots, you had body parts, which brought with them the ability to wear or wield certain other items.
You could've written Wyvern in a much simpler fashion. A bright high schooler could make a game that had all of Wyvern's functionality at the end of its life. It's the mountain of "do a lot of other shit later" that got in the way.
And that's what he's writing about in that blog post - not that he's perfect and Java sucks, but that he was trying to employ industry best practices and make everything perfect without compromises. It's not very hackerish, and sure, it was stupid. But the guy wasn't doing this for his day job and didn't have defined deadlines. He was a programmer, in other words, not a project manager.
And that's where he fell down. Project management, not programming. And if you read back through his massive wall-of-text blog archives, you can see him mature as a programmer and project management.
(Please note that I am an avowed fanboi, if you didn't catch that already, and as such everything I say must be taken with a grain of salt.)
I "worked" on Wyvern in high school (in that I played a lot of Wyvern and made a few terribly shitty game areas and ended up being an administrator, or "Wizard" in classical MUD parlance).
You know how Dwarf Fortress, that ASCII game, simulates a whole lot of ridiculous detail? Over-the-top, "the goblin's spear strikes the baby dwarf in the back upper left tooth and it really hurts so he cries for mommy"? Wyvern didn't quite have that, but the API implied most of the functionality for it.
You didn't have inventory slots, you had body parts, which brought with them the ability to wear or wield certain other items.
You could've written Wyvern in a much simpler fashion. A bright high schooler could make a game that had all of Wyvern's functionality at the end of its life. It's the mountain of "do a lot of other shit later" that got in the way.
And that's what he's writing about in that blog post - not that he's perfect and Java sucks, but that he was trying to employ industry best practices and make everything perfect without compromises. It's not very hackerish, and sure, it was stupid. But the guy wasn't doing this for his day job and didn't have defined deadlines. He was a programmer, in other words, not a project manager.
And that's where he fell down. Project management, not programming. And if you read back through his massive wall-of-text blog archives, you can see him mature as a programmer and project management.
(Please note that I am an avowed fanboi, if you didn't catch that already, and as such everything I say must be taken with a grain of salt.)