From: gbnewby@ils.unc.edu (Greg Newby)
Subject: VRML: Why VRML can't go anywhere
Date: 28 Sep 1997 18:13:47 GMT
Message-ID: <60m6or$o5p$3@fddinewz.oit.unc.edu>
Organization: Information & Library Science, UNC-CH


VRML is a totally promising technology - with potential to change how
we interact with computers completely.  But it's never going to go
anywhere unless it stops being a victim of (a) standards cowboys and
(b) browser wars.

Have you tried getting your VRML world to work across platforms
lately?  If you want a VRML 2.0 compliant viewer, good luck with
finding one that will agree with another viewer about what constitutes
standards-compliant VRML code, if your world has any level of
complexity.  Or, if your world uses some of the more "obscure"
language features.  Things like quotes and PROTO fields (sarcasm).

So, go ahead: admit that you'll have to forget about worlds that work
on "lesser known" hardware like Sun workstations and Linux; that
you're stuck with Win95/NT.  Give up on viewers that support a "subset
of VRML 2.0."

(See the list of all 11 VRML 2.0 viewers at
http://www.sdsc.edu/vrml_repository.  You'll notice that 3 are in
"preview/beta" and one is a "subset only."  Of the 7 remaining
"fully-functional" viewers, only 2 [Netscape's Cosmo and Intervista's
WorldView] support anything other than Win95 and WinNT).

Once you've admitted this, and decided to develop just for Win95/NT
and maybe Macintosh users, get started.  

	- Be *amazed* at how Netscape4.xx's VRML Cosmo plugin
		stops your Worldview plugin from working
		with Netscape 3.xx in Win95.

	- *Thrill* as MSIE 4.0P2's VRML plugin stops Netscape4.xx
		from working at all ("C++ library exception").
		No, this didn't happen until the "PATCHED" version
		was installed.

	- *Gasp* at the prospect of trying Worldview 2.0 when
		you notice they don't mention which versions of
		Netscape and MSIE they'll work with.


Yes, we know that it's tough getting programs like VRML viewers to
work across platforms, and the further difficulties of dealing with
competing standards from Netscape and Microsoft.  This is a problem.

Another problem is explaining to people why the neat stuff you're
working on won't function on *their* setup because you could only get
it to work with, say, Netscape 4.xx and Cosmo...and you couldn't do
much other development because every time you tried to install new
software it messed up your old software.  "Oh, and by the way...here's
something else to try, you only need to install the JDK first..."


I love VRML.  I have some neat stuff written in VRML.  But only my
geeky friends can look at it, because anybody else will balk at the
work needed to get a browser running (or run away after the first time
an installation destroys some other application).

As a programmer/developer, I'm willing to put up with some difficulties.
But why should end-users need to deal with the same difficulties, just
to view VRML worlds (not develop them)?


Steps towards the solution could be totally easy:

1.  No program should store files outside of its own directory.  No
installation of *.DLL files in c:\windows\system or libraries to
/usr/local/lib.  All platforms support this.  There's no reason for
any program (Microsoft, Netscape, are you listening?) to install
itself or portions of itself in system directories.

2.  No program should overwrite existing files without specific
permission.  I'm amazed at how many different versions of files
like MSVCRT.DLL I've gone through with different products (not just
browsers).  Microsoft seems the worst offender here:  it insists
on rebooting your computer just so it can overwrite files that were in
use by other applications (like Netscape...).

3.  Browsers should make it easy to switch between plugins for a
particular data type (.wrl).  Did you notice that MSIE4.0p2 doesn't
even have a set of Options menus for this?


I'm going to try something simpler for cross-platform development.
Java.  No, wait...  How about OpenGL.  Yeh, that's the ticket!  Wish
me luck.

  -- Greg 

// Gregory B. Newby, Assistant Professor in the School of Information
// and Library Science, University of North Carolina at Chapel Hill
// CB# 3360 Manning Hall, Chapel Hill, NC, 27599-3360  E: gbnewby@ils.unc.edu
// V: 919-962-8064 F: 919-962-8071  W: http://www.ils.unc.edu/~gbnewby/
