Thursday, September 18, 2008

Vision, Theory, Standards and Engineering

The trend has been visible in many areas of computing...

A great vision has been evolved by theorists and scholars to in depth model. The model albeit being detailed is not practical and subsequent standard have the same nature. Which brings us to the standard compliant implementations that do not work, implementations that do work but are nothing alike the standard and finally the implementations that claim to implement the standards but actually provide inadequate standard interfaces and actual operation is based on proprietary interfaces.

After this the path is forked. Some standards embrace solutions from the working implementations and fulfill their potential. Others do not evolve but stubbornly rely on the original theoretical models and actually hinder the development instead of accelerating it.

My current observation is that unfortunately the latter is the case with virtual reality related standards. It is quite obvious that there are very well functioning implementations like World of Warcraft and other massively multiplayer online role playing games. The existing commercial and non commercial social 3d worlds in contrast are painfully cumbersome.

The worst engineering misconception is that virtual reality is web in 3d. That alone brings many misleading ideas to the table. For example dynamic object loading which is visible to the user breaks the immersion. Another good example is that 3d protocols and model formats are TCP and XML based. 3d has more data and binary formats are practical in model presentations. At minimum XML ought to be encoded to binary format when larger models are in question. Grammar could be the same but encoding more efficient. Virtual reality has dynamics which do not exist in web and again practical engineering solution is to use UDP based messaging. Communicating the dynamics requires massive amount of messaging between client and server creating encoding performance bottlenecks if XML is used.

It is high time that the standards are re-evaluated from engineering perspective and solutions from MMORG genre are adopted to standards. There is no need to worry about backwards compatibility as long as there are no well functioning implementations. I would also like to question if competing standards are actually a bad thing. Little competition has always been a good thing. It forces the opponents to go for the best possible result they can achieve.

We have the technology and we have the knowledge today. We only need to ask the right questions. What is the minimal standard required to realize virtual environments? The first rule of software design is to solve the known problem with minimal complexity. Same principle should be applied to standards.


Anonymous said...

What standards exactly are discussed here?

- Random Flickers said...

Hello, I am enjoying your articles. I have a blog of my own:

you can maile me at

Briefly, I am working with IBM and am interested in the field of Virtual Reality.

Tommi S. E. Laukkanen said...

Hi Surya and thank you. I checked out your blog and it was enjoyable reading. I am afraid I do not have much poetic sense in me but I applaud anyhow.