axiom-developer
[Top][All Lists]
Advanced

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

[Axiom-developer] RE: [SAGEdev] NotebookWiki


From: Page, Bill
Subject: [Axiom-developer] RE: [SAGEdev] NotebookWiki
Date: Wed, 6 Sep 2006 18:26:58 -0400

On September 06, 2006 8:54 AM David Harvey wrote:
> ... 
> It would be utterly insane to have the SAGE code available
> to edit wiki-style.
> ...

I would like to comment on Tom Boothby's vision of how a wiki
with an interface to Sage might be beneficial to the develop
of Sage as a software project. The intention, as I understand
it, would be to maintain a version the actual source code and
documentation for Sage as "pages" on the wiki. Changes to the
contents of source code pages modified by open access over the
web would become part of a live collaborative online test
environment. Plus a channel would be provided whereby these
changes could be selectively incorporated into the official
Sage distribution.

The wiki pages would also contain live Sage calculations -
such as is possible in the current NoteBook interface - that
could be used to incorporate illustrations of features and
issues in the documentation in a dynamic manner.

In fact the Axiom project has made the entire source code of
Axiom available over the web in precisely this way for the last
year. And has operated a wiki able to display the results of
Axiom calculations for more than two years. See for example:

http://wiki.axiom-developer.org/axiom--test--1

Axiom source code is written in a "literate programming" style
based on noweb and LaTeX called "pamphlets" which enables
"chunks" of source code to be named, referenced in discussion
in the text, and assembled into executable programs. The Axiom
wiki is able to store the source of each pamphlet as an object
embedded in an editable wiki page and to render it in various
document formats (dvi, pdf, ps) as well as extract code chunks
on demand.

Discussion and illustrative calculations can be freely attached
to wiki pages containing pamphlet objects.

As the chief designer of the web site that is currently used to
support Axiom, Tom's suggestions seem very welcome to me. But the
fact is that these features of the Axiom wiki web site have not
been extensively used to Axiom developers and users and remain
essentially only an experimental aspect of the web site.

> 
> On Sep 6, 2006, at 1:46 PM, Tom Boothby wrote:
> 
> > I see wikipedia as a great success in open authoring.  Most  
> > mischievous edits are caught pretty quickly.  I don't think
> > that SAGE would be much different -- just to a smaller scale.
>

In my opinion, scale is an essential and critical difference
between the Axiom and Sage wiki web sites and wikipedia. Our
experience on the Axiom wiki suggests that the ratio of the
number of active contributors to the number of people to the
total number of visitors our site is as high as 1 in 10,000 -
even including "mischievous edits". We do have 2 or 3 people
who regularly contribute. The number of visits per month is
nearly 10,000 the number of edits.

I think the whole reason for wikipedia's success is still
quite uncertain. But if wikipedia hosts say 1 million visits
per month, then this same ratio is approximately preserved.



On Wednesday, September 06, 2006 4:07 PM David Harvey wrote:

> Yes, wikipedia is wonderful. But there's a big difference
> between prose and code.....  a large piece of code can be
> completely broken by the tiniest change. Code is much more
> unstable than plain text in this sense.

I strongly disagree with this view. I don't think one can
usefully define "broken" and "stable" in this way. I would
claim instead that the "stability" and/or robustness of both
code and documentation is largely determined by two factors:

1) how accessible and visible they are, and

2) the extent to which authors and editors (and programmers)
   take responsibility for and identify with the content

> I don't know how much time you guys have spent around wikipedia.
> I hung around there a lot last year, and I saw a lot of crazy
> people make a lot of crazy edits. On wikipedia, it makes not
> a shred of difference if someone changes all the Catalan numbers
> to Dogalan numbers (yes, that actually happened). But I would
> be really pissed off if someone decided that it would be cool
> to see how SAGE would work if i^2 was +1 instead of -1. 
> ...

Certainly one thing that is remarkable about wikipedia is the
response of wikipedia and it's contributors to instances of
"mischievous edits" (or worse). The integrity of the encyclopedia
is apparently being aggressively and effectively defended by
people who do not expect anything other than a small amount of
recognition for their contributions. The sense of "ownership"
is evident in how most people describe wikipedia. One might
even be inclined to suspect that "mischievous edits", when not
allowed to overrun the really interesting and reliable content
actually contributes to this sense of ownership.

Wouldn't it be great if we were able to harness some of this
human energy for the improvement of computer algebra systems!

> 
> >> If there's a level of protection as William described, i.e.
> >> changes need human review before getting sent to the master 
> >> repository, then I have absolutely no objection, and I think
> >> it's a very interesting idea.
> >
> > There should definitely be a couple of layers of protection.   
> > Ultimately, my plan was to let the wiki essentially manage a
> > darcs  repository -- that was how I was planning to let a user
> > pull patches down from the wiki.  William could still manage
> > the official releases.
>

This would be easy to accomplish and has been discussed on the
axiom-developer list, but not yet implemented. The simple reason
is that it does not seem urgent since almost no one has come
forward wishing to contribute to Axiom in this way. (The sole
exception being online editing of the Axiom Tutorial book.)

> I've heard of something like this before, but in the other 
> direction. I heard about someone trying to use svn as a backend
> to manage the data for a wiki. Can't remember where I saw this
> though... probably on one of the wikipedia tech mailing lists.

Yes, this has been done for example as an extension of the
Zope application layer on which the ZWiki engine using on the
Axiom website is based.

> 
> I'm a bit puzzled by this though... "let the wiki essentially
> manage a darcs repository". Does this mean you would need a
> nice programmer's text editor in a web page? I haven't seen such
> a thing before.
> 

Yes, this is provided on the Axiom wiki via an "external editor"
function. After appropriately configuring their browsers, users
can click on an edit icon to cause the browser to launch an
editor on the user's workstation (such as emacs or some other)
with the contents of the wiki page. When the user issues a
editor command to save, the page is automatically uploaded to
the wiki. See:

http://wiki.axiom-developer.org/ExternalEdit

In spite of the doubts that are raised in my mind by what I
consider to be only the limited success of the Axiom wiki
website when it comes to this approach over the last year, I
am still optimistic that with a sufficient number of motivated
people and with increasing experience of users with this type
of system, we might still be able to take advantage this
technology. I am glad that it is being considered and developed
for Sage.

Regards,
Bill Page.




reply via email to

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