not really "Re: Accessibility" anymore

someone sent me a private response to my note of earlier today, and i ended
up going on a rant that i thought folks on the list might enjoy reading.
toward the end it becomes sort of a "what's up at ncsa" kind of thing.
before that there's a bit of "mosaic history" and some yammering about how
cool ncsa mosaic for windows is.

to the person who wrote me the response that served as the catalyst for
this long-festering rant (i trust you know who you are), please don't think
i took your response personally in the slightest.  like i said, the rant
has been long-festering.


p.s.  i suppose i should add that the following is liberally tainted with
my own opinions, and that nothing i say is the official policy of ncsa,
blah blah blah.

>At 12:12 PM 7/2/96 -0600, you wrote:
>>At first this surprised me, because I know NCSA Mosaic has at least tens of
>>thousands of users.  But then I realized that 50,000 works out to .5% of
>>10,000,000, so who cares if it is only half a percent.  And then I
>>remembered that we're not competing with anyone anyway, so I again wondered
>>(as I often have before) why people always seem to think we are (or we
>>should).  I think those people are missing the point.
>What is the point?

well, just that ncsa really has always been a research institution, not a
competitive organization (at least, certainly not with commercial
companies).  we happened to develop a piece of software that became
astronomically popular and generated a lot of publicity.  at the time
netscape (actually "mosaic communications corporation") was formed, mosaic
was so popular that when netscape (i don't think the name "navigator"
existed yet either) caught up with mosaic in terms of number of users (it
was very quick), the media just loved playing up the competition factor.
of course there was the underlying fact that netscape was founded by a
bunch of guys who were by and large pretty disenchanted with ncsa when they
left.  but the truth is that no one in sdg (the software development group
of ncsa) ever had any dreams that we could out-develop (or out-market) a
commercial organization; especially not one that within a few months grew
to our size and within a few more doubled or tripled it.  (and now look at
them, geez.  and of course, No One in their right minds would consider
competing with The Other Browser Vendor, right?)

work on mosaic continued because we still found it to be a worthwhile
project.  (and at least nominally, because spyglass was still benefiting
from the changes and upgrades we would make, via their licensing
agreement.)  however, new development was cut back severely in late 1994
and early 1995 on the mac and unix platforms.  in reality it's been pretty
much in maintenance mode on both of those platforms since then.  the xdev
team has been doing some pretty good work on it lately (more on that
later), but "the xdev team" consists of a bunch of student programmers who
work on it in whatever time they have, so it can't be expected to be a
commercial-quality product.

since mid-1994 windows mosaic has been a little different.  in mid through
late 1994 we built a *very* strong windev team, and new work on windows
mosaic proceeded rapidly.  we largely eschewed a lot of the HTML that
netscape supported, although in some cases we did bow to the enormous
pressure from our users (e.g., center, body attributes).  our tack was
supporting standards; it still is as much as it can be, even though it's
not abundantly clear what the heck a "standard" is for the web.

our primary focus though, from the beginning of the browser wars, has been
away from HTML tag explosion (where we're clearly outgunned by any
commercial outfit), and toward innovation in browsing capabilities.  we
added features to windows mosaic such as "auto-surf", which lets you set
your browser to automatically downloading all the documents on a web site,
or all the links from a page, so that they will all be in your disk cache;
you can go off, take a shower, eat lunch or whatever, and when you come
back, surf more quickly because everything's cached.  we added the hotlist
manager, which is (in my opinion) still the best way to keep track of
multiple hotlists full of links.  we added "collaborate", which lets you
set up a chat window as well as to have the various collaborators' browsers
follow when other collaborators surfed.

that doesn't mean we didn't do *any* HTML work.  we even did some
innovation of our own, although nobody ever seemed to notice.  i still
shudder every time i hear anyone talk about how netscape introduced tables
to the web.  (i often find this happening at HTML-related committee
meetings, by people who should know better.)  windows mosaic had tables
implemented (and released publicly) before netscape did it.  in fact, they
copied our implementation (in terms of rendering appearance).  there's no
way to prove it now, of course, but i promise you we had some great fun
when early betas of N1.1 came out, using their browser to do side-by-side
comparisons with ours on some of the tables demo pages we had worked up.
granted, they had some table attributes that we did not support, and more
importantly, they supported *nested* tables.  i wish we had done nested
tables then (we do now), but on other table issues, we were holding out for
a more useful specification.  i was involved in meetings involving sgml and
web folks, working toward a better html table spec, and we were looking
toward that eventuality.  part of the reason the whole table thing bugs me
is undoubtedly because i'm envious.  we did it first, but they got all the
credit.  but oh well.

another thing we did first (i think) was support the LINK tag.  poor little
forgotten mac mosaic was the one of the first browsers in the universe to
support it (i'm not sure if spry's air mosaic beat it or not), but it's now
in windows mosaic as well.  it's not fully up to the level of murray's
REL/REV spec, but it supports many of the more common REL/REV types.
sadly, it doesn't do REL=stylesheet yet.  ;-)

>What are you guys researching? What makes NCSA Mosaic better for those
>50,000 people than Netscape or MSIE? It may sound like I'm trying to provoke
>you, but I'm really just curious. What are you guys up to?

question 2 first:  what makes ncsa mosaic better?  well, i can't speak for
the 50,000 (a number i made up, by the way), but here are some of the
things that i really like about it.  the first three are ones that i plain
and simply *will not* do without, and (unless there's something new i'm
missing) they mostly exist *only* in ncsa mosaic for windows:

        1) great keyboard surfing navigation, including L,R arrows for
anchor navigation, and 'h' for home, 'b' for back, 'f' for forward

        2) "presentation mode" -- alt-P to go to full-screen display -- no
toolbars, no windows, no *nothing* -- and back again

        3) +/- to increase/decrease font size of the display *universally*
-- absolutely indispensable for doing presentations

        4) best printing capability of any browser (particularly the
ability to customize headers and footers that are printed with documents)

        5) detailed, thorough, and well-organized preferences

        6) ability to turn off <body> attributes (useful for encounters
with idiots who don't quite grasp the concept of contrasting text and
background colors, or the concept of "blue means unvisited, red means

        7) clicking on the spinning globe stops a page-load (as opposed to
going to NCSA's home page)

        8) if something *really annoys* me about it, i whine and whine,
*and it gets fixed*

        9) there's a single pixel in the "about" box such that if you click
on it, it goes to my personal home page.  ask me if you care where it is.

those are just my reasons.  a couple of them don't really apply to other
people, but i'm ranting, so what the hell.

there are other compelling reasons to use ncsa mosaic for windows.  in
truth, i don't use the following features very much, but i think many
others do:

        10) the aforementioned hotlist manager
        11) the aforementioned auto-surf capability
        12) the aforementioned collaboration capability
        13) the advanced cache manager -- lots of fine-grained control over
what's in your disk cache
        14) "sound schemes" -- associate a collection of sounds with common
activities like clicking on an anchor, image loading, etc.

there are probably other features that also make it more useful, but i'm

on to question 1 (and 3)...

nowadays the major focus of sdg is on collaborative technology.  we have
been developing a java-based framework called habanero ("the hottest pepper
around" or some such nonsense), which makes it easy for developers to add
synchronous collaboration to any java application.  by this i mean, suppose
you write a (single-user) java-based paint program.  with only minor
tweaking you can fit it into the habanero framework, and presto, you and
several friends can all draw on the same picture simultaneously, over the
net.  i can't do it much justice here, since i'm not on the habanero team,
so i'll just give a URL for folks who want to know more:

windows mosaic is nearing completion.  once we release 3.0 final (hopefully
this summer sometime i think), it will slip into maintenance mode like the
others.  since it's more popular than the others, it'll have more attention
paid to it, but further development will be pretty ad hoc, just like it is
with x mosaic these days.  (mac mosaic is even more ad hoc, because the
students who are working on it when they feel like it number only about 1
or 2, depending on how you count them.)

sometimes ad hoc can do pretty well, of course.  the xdev students have
completely written a lot of the internals.  in particular, the html parser
has been very carefully redesigned and reimplemented so that mosaic
actually understands the concept of a structured document.  (amazing, huh?)
it's some pretty cool work, and it opens up a vast wealth of
possibilities, both for x mosaic and for other work we're doing.

as for other work, the bulk of the windows team has been focusing lately on
ways to build on some of the better "tools" that have been a successful
part of mosaic.  well, not really the tools themselves, but rather the
general concept of web-associated tools.  we've been building a framework
that won't really be called a "web browser" any more, but more like an
integrated system of web-related tools.

users will benefit because the system will be highly customizable.  don't
like the html-rendering tool, or the parser?  drop in your own.  have a
favorite ftp client?  plug it in.  (i use that phrase intentionally.  we'll
support plugins, java applets, whatever you want.)  remember how yesterday
you were surfing, and you found some web page about, oh, i dunno, mother
theresa, and now you wish you could remember where you were?  don't you
wish you had some sort of structured session-history that would keep track
of these things for you?  that's a perfect tool for dropping into the
framework.  (actually, that's one we're working on).

developers will benefit because it will be easy to write new tools that fit
right into the framework and add increased functionality to the web
experience.  we're carefully laying out the APIs for communication between
parts of the system, and re-thinking things continually as we go along.

we're pretty optimistic that our framework will be beneficial.  a couple of
weeks ago we used the fledgling system to integrate the html parser with a
speech-rendering API to create a basic HTML browser for the blind, with
anchor and heading navigation, and speech-rendered output.  we did it in
two days.

so anyway, to sort of conclude my rant, we really are a research house.
mosaic was a good time, but there are bigger and better things coming.
we're damn glad we got so famous for doing mosaic, and we hope that the
stuff we continue to do will see a wider audience because of it.


.---o  Tom Magliery, Research Programmer                         .---o
`-O-.  NCSA, 605 E. Springfield                  (217) 333-3198  `-O-.
o---'  Champaign, IL 61820          O-  o---'