View Single Post
  #2  
Old 12-11-2011, 10:21 PM
Arilou's Avatar
Arilou Arilou is offline
Forum Admin
 
Join Date: Apr 2007
Arilou has disabled reputation
Default Rhialto Speaketh (November 28)

"Greetings!

Yes, this is indeed my first ***** in a hundred zillion years. Happy anniversary!

I basically took this year off from Wyvern. Technically I worked on it in January and about half of February, and it's not quite December yet, so I'm only sitting at about 9 1/2 months so far. But when all is said and done, it'll have been a year.


*****


******


As it happens, in roughly mid-2003 Wyvern reached a certain critical "mass", by which I refer to both the number of players and the size of the code base, at which I felt I was no longer able to innovate like I'd been able to do when I began the project in 1996. There were bugs to fix, and features to add, and none of them were being fixed or added to my liking. It was just getting too hard.

Let me be precise about what I mean by "too hard". It wasn't vague or fuzzy; it wasn't a sense that things were just generally "taking too long". It was more specific than that. I had reached a point in my programming career such that I could look at any task, large or small, and I would know how many days it would take me to finish it. That ability, in some sense, is the Holy Grail of software estimation. You want to know how long things will take, so you can arrange suitable plans.

However, the Holy Grail in this case turned out to be more of a Holy Tin Cup, because the actual answer was approximately ten times longer than it should have been. That is: when I thought something should take me an hour, it would take a day. And when I thought it would take a day, it would take a week or two. This didn't happen overnight, but it happened all the same, over the course of eight years working on Wyvern, and it disturbed me greatly.

Because whenever I saw something that I thought should take a month, it meant it would take a year. And something that I thought would take a year -- ten years. Oh dear. I don't have many bunches of ten years to spare, you know. Nor do you! I knew you were waiting for these things as well.

Of course, there aren't ten days in a week, nor are there ten months in a year. But there are about ten days in a week, on average, and about ten hours in a working day, and about ten months in a year. The United States hasn't switched to a pure-decimal or vigesimal numbering (or time-measurement) system; nevertheless the principles still apply. If you're off by a factor of 7, or 12, then you might as well be off by ten: an Order of Magnitude.

That hurt me, because I knew I could type almost as fast as a regular human being should be expected to type -- something like 130 words per minute, when I'm warmed up and I know what I'm supposed to be typing. And I knew the Java APIs like the back of my hand: this might not sound like much, but if you take a quick glance at the back of your own hand, you'll see that there isn't much unfamiliar ground there. I had reached the point where I was as good as I was going to get, using my current tools and technologies.

Now someone else in my shoes might have been tempted to say: "If I am as good as a person can get, then perhaps I should try to enlist the support of others in getting my project accomplished." And to some extent, I did that. The Wizards -- notably Binyamin and Teshuvah, Kiz, Janica, Arilou, Raeden, Zerth, and several others whose names also deserve along with Legolas to be in the Wizard Hall of Fame -- these folks have performed superhuman feats and given of themselves to an extraordinary extent, all in the name of producing the world's greatest game. I am grateful to all of them for their support, and although their only reward has been the work itself, I hope that it has been worth it.

Nevertheless, I've been unable to address their needs and concerns at the rate at which I felt accustomed. Initially, the Java platform served me well, and my limitations were my own, not Java's. But by 2003, the situation had changed for the worse: Java was rapidly outstripping my abilities to incorporate its advances into Wyvern!

This is, in no small part, because Java has (as I boldly wagered in 1996 when I began the Wyvern project) become the world's dominant programming environment. I am not unaware of the power of the Win32 and .NET frameworks, nor the Gnu/Linux environment and the Gnu tools and operating system, and I study and use them regularly in my own work. Java has fierce competitors. Yet as of today ******** Java reigns supreme. In fact, the work being done on Java-related technologies like Hibernate transcends and supercedes much of the work that I've put into Wyvern over the past * years.

Alas that it wasn't available at the time. I would love to discard reams of Wyvern code in favor of well-supported open-source software, but such a thing will, as I have noted, take me ten times longer than I feel it should. So while I could take this approach, I continue to look for other solutions.

My best solution appears to be to polish off Wyvern, and deliver and run it as an open-source application. There's a fair amount of work required before I could open-source it, because open-source Java applications nowadays have certain expectations: an Ant buildfile (and Wyvern has many complex build targets, although you might not realize it), documentation of the code and data organization, a process for checkins and version control... a great many things I would love to provide, but they all take time.

Time is the ultimate constraint on human endeavors.

I've spent the past year trying to resolve these issues for myself. I want to code faster, to reorganize the Wyvern code base to be more amenable to open-sourcing, to be able to create things almost as fast as I can think of them. I've studied functional programming and mathematics, linguistics and philosophy, languages and compilers, tools and productivity, and the foundations of innovation -- all important for getting me closer to my goal.


And I still find today's knowledge, today's technology, wanting. Fred Brooks Jr. has said that there is no silver bullet, but I fervently believe that the silver bullet exists, and that I can find it.

My vantage point today is one of knowledge, of proficiency: I've studied much of what Man has to offer in the realms and disciplines of creating code and managing computational complexity. I remain unsatisfied, and I study daily to improve my state of affairs. Math every day, languages every day: I aim not for a silver bullet of 10x improvement, but a silver maelstrom that gives me 1000x. You may believe that I'm on a futile quest, but my online gaming blood has instilled the Quest in my soul, and I intend to solve this one.

I have a vision for Wyvern that surpasses the current client-server model -- a fantasy, a chimera, a dazzling white conception of Wyvern's future, in which any player can create a story of great imagination, with little or no knowledge of technical detail... my future Wyvern will be the game of the century, precisely because it's the game you've always wanted.

The technology does not yet exist. But I can envision it, and with the right people, I can build it. I am working on a proposal, a specification, a grand plan for how Internet and online gaming technology will evolve to support my vision for Wyvern. My plan requires a great Benefactor, a Billionaire of a man both in wealth and in spirit, but I will persuade such with such means as are within my power. My plan requires staunch persistence from the greatest programmers known to the World today, but I believe I will prevail. I know the way.

If you love Wyvern, or have loved Wyvern at any point in your gaming career, then I would have you rejoice, because a new Wyvern, a Fiery Dragon no less, is poised to take the online gaming world by the storm of its very breath, by the fierceness of its gaze. You are welcome to wait, to take respite in anticipation of this new world. **** *** ***


*******

I've spent most of my life gaming, most of my life building Wyvern. If there's anything at all that I can offer you, it's Hope. I can build something that nobody else has been able to build, because I have a unique perspective -- one that only you could give me -- that will compel me to build the Right Thing.

Stay tuned ****. It might seem a long way away to many of you, but most of you who read this will be thinking of * as a year in your Past. A year in which Wyvern made history."

Cheers,
Rhialto