[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Axiom-developer] RE: axiom, browsers, and crystal

From: C Y
Subject: Re: [Axiom-developer] RE: axiom, browsers, and crystal
Date: Mon, 20 Jun 2005 20:38:23 -0700 (PDT)

--- Bill Page <address@hidden> wrote:

> On June 20, 2005 7:35 PM Tim Daly wrote:
> > we're trying to build a research science platform, not a
> > display GUI object. we'd like the GUI piece of the system to
> > have a clean, programmable semantics so we can reason about
> > user actions. we want to reflect user actions (say handwriting,
> > gestures, clicks, eye-gazes) and system state (say branch cut
> > crossings, solid model data structure stresses, hill climbing
> > search progress, as subtle changes to the screen.
> I don't think any of these requirements are significantly
> different than any other sophisticated web-based application
> being built today. In fact I think all of them have already
> been used to greater or lesser degree. The problem here, I think,
> is just that none of these "virtual reality type" of user
> interfaces have ever approached the degree of standardization
> that would make web franchising feasible. I mean: not enough
> people and projects have bought-in to any one such approach.
If I may jump in, I'm not clear why there is so much focus on "web" if
by that you mean "world wide web."  My approach to this sort of thing
is to create the ability to visualize what you want to visualize, and
then look to any advantages that might be obtainable from a "networked"
approach.  A big selling point for me on an interface is that any
"networked" or "web aware" parts are nice features, but NOT integral to
the core functionality.  (Not strictly relevant, but an example would
be the CUPS habit of using a custom web server and configuring one's
printers in a web browser.  This has never felt "robust" to me.  It
could be a bias of terminology - to me a "web browser" is something I
use to go look up information on the internet, and therefore by
definition not to be trusted for mission-critical work - I don't want
to have to rely on the "network" working.  Too much openness to the net
is also a security nightmare - I think this is something Maxima might
have to look at some day due to our use of sockets and servers.)  I
prefer to lean towards "stand alone with some helpful web features"
rather than "web browser as GUI."  Maybe I'm just being a grumpy old
stick in the mud.  I suppose a web browser being a GUI on a local
machine could more properly be called a GUI implimentation platform,
but I can't help the feeling of too many layers being piled on one


> But here we have examples of two strange principles at
> work: 1) less is more, i.e. that lack of semantics is
> a good thing if what you want to do is generalize and
> formalize something. And 2) worse is better. The fact that
> the relational model of data is now very widely accepted
> is a good thing in spite of the fact that it is worse at
> representing many important data objects.

<cringe>.  I have heard the worse is better argument, and I suppose it
may be correct in the end, but I always had the feeling that if
something really could be done right the first time (REALLY done, not
just discussed) it would win out.  (TeX might arguably be an example of
this.)  If I understand correctly worse is better is in essence a
variation of the "first to market" idea, but Axiom (and Maxima for that
matter) don't need to worry about this - Mathematica and Maple are
already first, and have most all of the market share.  We don't have
anything to lose by doing it "right" - doing it "right" puts us in a
better position for the 30 year horizon and beyond.


> If there is one lesson that is really clear to me about open
> source and the Internet in general, it is that doing really
> big things requires collaboration, not cooperation (cooperation
> in the sense of the verb to co-opt). By that I mean we have to
> learn to depend on and take advantage of the work of others
> (other projects) rather than attempt to acquire and control
> them.

I suspect (perhaps Tim you agree with me) that there is very little
software on the internet (or even in the commercial world) written to
the standard to which Axiom wants to aspire.  I am assuming when I make
this statement that Axiom would want to document with literate
programming things like graphing algorithms, 3D techniques, data
visualization routines, 2D mathematical display algorithms, etc. in the
same fashion it has and is documenting the more strictly mathematical
parts of the code base.  I am not aware of any formal work done on
plotting algorithms or the formalization of the rules of 2D
mathematical display.  Hopefully that is just me not knowing enough,
and if such work does exist wouldn't Axiom want to incorporate it?  To
me this is Axiom's true merit and uniqueness - the complete, total
obsession with Doing It Right.
> > in short, we need to stop struggling with the limits of
> > current browser technology, take a standard browser and
> > extend it to our purposes. in fact, i expect we could do
> > what we do with GCL: package our own version from a tgz file
> > and add patches to do what axiom needs.

Again, I don't understand the focus on browsers.  As a rule what I
think of as a "browser" is almost by definition insufficient for the
general power you're proposing be added Tim.  What you're talking about
would be almost a whole new class of application.  (A very, VERY
powerful one, with networking features to be sure, but not what I tend
to think of as a "browser" ~= "information viewer," not information

> This is a matter of design philosophy. Standards are a
> very important part of that philosophy. This is one of
> the reasons that worse (at least less than ideal) is often
> better in the long run.

In the computer version of "long run" I agree worse does tend to be
better, but I think the TRUE long term (i.e. hundreds of years) will
tend to favor code which, as much as possible, is written trying for
the ideal.  Computers and computer software are very short lived by the
standards of almost any other product of similar magnitude, and that is
generally a sign of immaturity.  And after all, look at how long COBAL
has hung around - it could be argued that the whole y2k issue was due
to "worse is better" thinking.
> > in the 30 year horizon we need something that is useful,
> > impressive, and reasonably modern. today's tools just hint
> > at what will be common. we need to listen to the hints,
> > anticipate the needs, and get out in front.
> Again, I find myself wanting to label this as "inappropriate
> behaviour" for the Internet and open source. What you are
> describing fits quite well with the old corporate model
> was largely defined by IBM and then taken to the extreme
> by Microsoft, but not with where IBM is today and not with
> the open source movement.

Eh?  I'm moderately confused.  I think Tim is saying that we should aim
for what we would want in a tool, not so much thinking about what the
limits of the current tools are.  That I would agree with - why
shouldn't open source lead the way?

> > we need to think about the researcher's problem space in
> > a much deeper form than current systems do (including Axiom).
> > in the long term we want to be at the center of the tool
> > set that researchers use to solve problems.
> To blend another metaphor (anyone remember Carlos Castaneda?)
> I think a much better attitude more or less in keeping with
> today's "extreme programming" is the "warrior's attitude".
> By design we should try to make Axiom flexible and adaptable
> and able to take advantage of new browser technology as it
> becomes available, even though today we don't know exactly
> what that might be. Again, *standards* are one of the best
> ways to try to achieve that.

Wouldn't a robust design be flexible and adaptable by definition? 
Supporting standards is a good idea, but one shouldn't be afraid to
move beyond them either - that's where new, better standards come from.

> > related to the current suggestions i think we are limiting
> > ourselves too much and creating too tight a straight-jacket
> > by trying to work within the limits of current browsers and
> > MMA-like worksheets.

Um.  Not sure I agree with MMA-like worksheets being a limit - I prefer
to think of them as a starting point.  They do some things that are
very good (2D input and output) and some things I'm not so crazy about
(their syntax I don't care for at all.)  But I tend to think of a
"mathematical document" as a paper sized canvas which will accept
arbitrary visualizations and representations, even if MMA doesn't have
that level of flexibility.  Structure is needed in mathematical display
in some form or fashion, and I would tend to think of anything that
offers that (and can preferably be printed to hard copy) as a
mathematical document.
> I agree that we have to push those limits, but I think we
> are in a very good position to do that from within the
> environment of open source and advanced web application
> development in general.

Well, as usual, real products DO win out over vapor.  Someday I hope a
powerful McCLIM based environment is no longer vapor, but that is for
the future :-/.


Yahoo! Sports 
Rekindle the Rivalries. Sign up for Fantasy Football

reply via email to

[Prev in Thread] Current Thread [Next in Thread]