The future of Octave

classic Classic list List threaded Threaded
75 messages Options
1234
Reply | Threaded
Open this post in threaded view
|

The future of Octave

John W. Eaton-6
I've now worked on Octave for almost nine years.  During most of that
time, I have enjoyed the challenge of working on a relatively large
project.  In the beginning, I wasn't at all sure that I could manage
it (and maybe that is even more true now!).  Watching Octave grow to
become a widely used and reasonably successful contribution to the
free software community has also been rewarding, and I am grateful to
all those who have helped with its development.  But now I believe
that it may be time for me to move on and do something else for a
while.  I'm not yet sure what that will be.  It may involve a similar
system for numerical computing, or it may be something completely
different, but I do feel that I am no longer able to maintain my
current level of involvement with Octave's development.

I did not arrive at this decision hastily, nor is it in direct
response to any messages that were posted in the last few days.
Making a change like this is something that I have been considering
for quite some time now.

What will happen to Octave?

  Because Octave is free software, it will continue to be available.
  By sometime early next year (perhaps by Octave's ninth birthday,
  February 20, 2001) I will release a new "stable" version (based on
  the 2.1.x sources), which I will continue to maintain to the extent
  of fixing serious bugs.  I don't plan to work on any new features,
  though I may accept well-written patches that include documentation
  and ChangeLog entries.

  Although I plan to continue fixing serious bugs in Octave, if
  someone (or perhaps a small group) is interested in taking over
  maintenance of Octave, you should contact me so we can discuss it.

Why are you considering leaving?

  There are a number of reasons, but one of the most important is that
  working on Octave is no longer the challenge for me that it once
  was.  Much of what I set out to do with Octave has been done.  I am
  pleased with what we have accomplished so far, but ready to take on
  something new.

  I never intended Octave to be a Matlab clone, nor am I really
  interested in creating such a thing, but that seems to be what many
  users of Octave want.  It is not very interesting to me to simply
  reimplement all the features/bugs of Matlab.

  I am finding it too constraining to try to maintain almost any level
  of compatibility with a proprietary product for which there is no
  standard.  It stifles any creativity by the threat of future
  incompatibility.  I see this is as a real problem, not just an
  imagined one.

  Free software needs a vision beyond reimplementation of existing
  proprietary tools.  Those of us who are interested in free software
  tools must become leaders rather than followers, and I am optimistic
  that this can happen for numerical software.  But I don't believe it
  can happen if Octave continues down its current path.

What will you do?

  I believe that we (users of numerical software tools) could benefit
  greatly from a freely available, high quality, high level language
  for solving numerical (and possibly symbolic) problems.  Octave has
  been an interesting experiment, and has shown that, within the free
  software community, it is possible to do a lot with limited
  resources.

  I think now is a good time to step back, examine what we have done,
  and decide what is the best course for the future.  I'm looking
  forward to helping to define and implement the next generation of
  free software tools for numerical problems.


jwe



-------------------------------------------------------------
Octave is freely available under the terms of the GNU GPL.

Octave's home on the web:  http://www.octave.org
How to fund new projects:  http://www.octave.org/funding.html
Subscription information:  http://www.octave.org/archive.html
-------------------------------------------------------------


Reply | Threaded
Open this post in threaded view
|

Re: The future of Octave

David Doolin
On Thu, 7 Dec 2000, John W. Eaton wrote:

>
> What will you do?

>
>   I believe that we (users of numerical software tools) could benefit
>   greatly from a freely available, high quality, high level language
>   for solving numerical (and possibly symbolic) problems.  Octave has
>   been an interesting experiment, and has shown that, within the free
>   software community, it is possible to do a lot with limited
>   resources.

(Opinion) Yes, and such a language should have matlab similar syntax for
NLA because many of the new texts (Demmel, Golub and Van Loan, etc) now
use : notation in alorithms.  So in a sense, a standard is being
developed on the basis of mathematical precision and usefulness.

I have alot more to say about the state of computer languages
with respect to numerical programming, but not right now.
Maybe after lunch. ;)

Dave D





-------------------------------------------------------------
Octave is freely available under the terms of the GNU GPL.

Octave's home on the web:  http://www.octave.org
How to fund new projects:  http://www.octave.org/funding.html
Subscription information:  http://www.octave.org/archive.html
-------------------------------------------------------------


Reply | Threaded
Open this post in threaded view
|

Re: The future of Octave

flatmax
In reply to this post by John W. Eaton-6
On Thu, 7 Dec 2000, John W. Eaton wrote:
>   Free software needs a vision beyond reimplementation of existing
>   proprietary tools.  Those of us who are interested in free software
>   tools must become leaders rather than followers, and I am optimistic
>   that this can happen for numerical software.  But I don't believe it
>   can happen if Octave continues down its current path.

I agree with this statement.
A good example would be the incorperation of a spline functionality -
easily accomplished using PD's fitpack from NETLIB. The problem would be
that the resulting spline functions would differ to Matlab spline
functions ... none the less they would be completely robust, and very
powerful, but people probably wouldn't understand why these functions
wouldn't mimic Matlab.

The numbers of people who convert to Octave from Matlab and expect to
re-use their code must be phenominal !

Thanks for implementing and maintaining a great numerical tool.

Matt



-------------------------------------------------------------
Octave is freely available under the terms of the GNU GPL.

Octave's home on the web:  http://www.octave.org
How to fund new projects:  http://www.octave.org/funding.html
Subscription information:  http://www.octave.org/archive.html
-------------------------------------------------------------


Reply | Threaded
Open this post in threaded view
|

Re: The future of Octave

Andy Adler-2
In reply to this post by John W. Eaton-6
On Thursday, December 07, 2000 2:30 PM, John W. Eaton wrote:
> I've now worked on Octave for almost nine years.  During most of that
> time, I have enjoyed the challenge of working on a relatively large
> project.

I think the first thing to be said is a big _congratulations_
for John. I've been using octave for four years now, and I've
really come to appreciate the design. I find it far easier
to find my way around in the octave source than in any of the
proprietary projects of similar size I've worked on. In fact,
I used to be very suspicious whether C++ actually provided anything
useful to programmers, other than giving them more rope with
which to hang themselves...  Octave convinced me that C++ can
be a good thing.

>   Because Octave is free software, it will continue to be available.
>   By sometime early next year (perhaps by Octave's ninth birthday,
>   February 20, 2001) I will release a new "stable" version (based on
>   the 2.1.x sources), which I will continue to maintain to the extent
>   of fixing serious bugs.  I don't plan to work on any new features,
>   though I may accept well-written patches that include documentation
>   and ChangeLog entries.
>
>   Although I plan to continue fixing serious bugs in Octave, if
>   someone (or perhaps a small group) is interested in taking over
>   maintenance of Octave, you should contact me so we can discuss it.

I would very much like to see octave development continue. I believe
that this should be possible. In the last year the user community
seems to be becomming much more active. Perhaps, looking at the most
optimistic scenario, John's stepping down will motivate enough of us
to get active, so that development can even accelerate.

In order to do this, however, much needs to be done:

0. First, how important is keeping octave development alive anyway?
   Do enough people care?

1. The "communitity" needs to come to a clear consensus about
   the goals of future development.

   How important is Matlab compatability?

   There are now various contributions that exist all
   over the net.  How easily should these be added to the
   source base?

   Should octave have additional "non-numeric" features to
   support all sorts of generic scripting language features?

   My opinion is that contributions should be accepted fairly
   easily. This will broaden the developer base, although it
   will reduce the cleanliness of design.

2. There needs to be a new maintainer/ maintainer group?
   Ideally this can be done in a way that everybody is
   happy with, encouraging contributions and preventing
   the temptation to fork.

3. Where will octave be hosted? Where will FAQs, mailing lists,
   etc. be kept.

   One option would be to move development to sourceforge.

   
Well, that's my 2c worth. What do others have to say?

_______________________________________________
Andy Adler                     [hidden email]



-------------------------------------------------------------
Octave is freely available under the terms of the GNU GPL.

Octave's home on the web:  http://www.octave.org
How to fund new projects:  http://www.octave.org/funding.html
Subscription information:  http://www.octave.org/archive.html
-------------------------------------------------------------


Reply | Threaded
Open this post in threaded view
|

Re: The future of Octave

Dirk Eddelbuettel-4

Let me join Andy in congratulating John on what he has accomplished with
Octave, and express sincere thanks for all his work on Octave.

The user community should find indeed a way to continue to support and enhance
Octave. I am a bit wary of each and every project converging on sourceforge
(remember a decent LWN editorial a few months back?) but we would surely need
a few resources to do it outside. We might not have these resources.

Speaking for Debian, we could possibly host the mailing lists which we do /
have done for a few other free software projects (even gnome at one point if
memory serves).

Dirk

--
Three out of two people have difficulties with fractions.



-------------------------------------------------------------
Octave is freely available under the terms of the GNU GPL.

Octave's home on the web:  http://www.octave.org
How to fund new projects:  http://www.octave.org/funding.html
Subscription information:  http://www.octave.org/archive.html
-------------------------------------------------------------


Reply | Threaded
Open this post in threaded view
|

Re: The future of Octave

David Doolin
In reply to this post by Andy Adler-2
On Thu, 7 Dec 2000, Andy Adler wrote:

> On Thursday, December 07, 2000 2:30 PM, John W. Eaton wrote:
> > I've now worked on Octave for almost nine years.  During most of that
> > time, I have enjoyed the challenge of working on a relatively large
> > project.
>
> I think the first thing to be said is a big _congratulations_

Absolutely!
[]
>
> In order to do this, however, much needs to be done:
>
[]
> 1. The "communitity" needs to come to a clear consensus about
>    the goals of future development.
>
>    How important is Matlab compatability?

I personally think it is critical.  There, I said it.  It's
an opinion, and I will not argue about it, so save your
breathe.  ;)

Either octave should try and maintain ("full") compatibility, or  
jettison the effort, burn the bridge and don't look back.
(By "full", I mean some useful core subset of the matlab language
and function library.  I do not mean implementing guide,
simulink, etc.)  
 
>
>    There are now various contributions that exist all
>    over the net.  How easily should these be added to the
>    source base?
>
>    Should octave have additional "non-numeric" features to
>    support all sorts of generic scripting language features?

What I really need is high level scripting type langauge like
octave that compile into blazingly fast native code...
Don't we all.

[]
 
>
> 3. Where will octave be hosted? Where will FAQs, mailing lists,
>    etc. be kept.

Some of us threw some money at obtaining octave.org.  I will
throw some money at getting it hosted if necessary.

I have lots more opinions, but I will save them until next year.
Hopefully I will have a nice academic position and can throw
a few pennies toward octave development.  

Back to lurk mode.

Dave D



-------------------------------------------------------------
Octave is freely available under the terms of the GNU GPL.

Octave's home on the web:  http://www.octave.org
How to fund new projects:  http://www.octave.org/funding.html
Subscription information:  http://www.octave.org/archive.html
-------------------------------------------------------------


Reply | Threaded
Open this post in threaded view
|

Re: The future of Octave

Andrew Bainbridge-Smith
In reply to this post by Dirk Eddelbuettel-4
I have been a frequent user of MATLAB over the years.  It is a great tool for
the signal and image processing that I do (particular its ability to render
complex 3D "images" and the SIMULINK tool).  However, I moved jobs recent and
haven't been able to convince my boss to purchase MATLAB, and in my search for
an alternative I found OCTAVE.  Aside from the multi-dimensional "matrices",
rendering and SIMULINK issues, I suspect (haven't tried everything yet) OCTAVE
has everything in it I want --- just need to convert my *.m code base.

I think OCTAVE is likely to have a great future provided a core team is
prepared to take it on.  My main reluctance is only that C++ makes me go weak
at the knees.  One of the key functions of the maintainers is to foster an
inclusive framework to the entire OCTAVE community, so as to minimise forking
of development.  This inclusiveness need not mean a less "clean" code base, as
every possible feature is added.  Inclusiveness is achieved by open and clear
communications --- which probably means good documentation like a maintained
TODO and FAQ lists etc.

It seems to me that SourceForge offers a clean and consistent environment for
such communications.  It also seems like a good home in that its function is
to provide a home for packages, over-coming the problem of finding a generous
host individual and their organisation --- what happens when that individual
leaves?
I am of course oblivious of the shortcomings of SourceForge,  don't know
anything about the LWN editorial Dirk (is it that the host is being
overloaded?)
Anyway another host like SourceForge would be acceptable.

My thanks to all the Octave developers,
        Andrew BS
--
Dr Andrew Bainbridge-Smith
Senior Research Engineer
Vision Technology Development Group
CSIRO Manufacturing Science and Technology
Australia



-------------------------------------------------------------
Octave is freely available under the terms of the GNU GPL.

Octave's home on the web:  http://www.octave.org
How to fund new projects:  http://www.octave.org/funding.html
Subscription information:  http://www.octave.org/archive.html
-------------------------------------------------------------


Reply | Threaded
Open this post in threaded view
|

Re: The future of Octave

John W. Eaton-6
In reply to this post by Andy Adler-2
On  7-Dec-2000, Andy Adler <[hidden email]> wrote:

| 1. The "communitity" needs to come to a clear consensus about
|    the goals of future development.
|
|    How important is Matlab compatability?

FWIW, I don't think that complete compatibility is a reasonable
goal, primarily because if you aim for that, then as soon as a new
version of Matlab is released, you are immediately years behind.

Many people seem to believe that Octave only follows wherever Matlab
leads.  Over the years, however, Octave has included a number of
features missing from the then current version of Matlab only to find
that later editions of Matlab implemented those features in
incompatible ways.  These kinds of incompatibilities are especially
bad, because fixing them means breaking compatibility with older
versions of Octave, or assuming the burden of supporting multiple ways
of doing the same thing.

So, if you really truly want a 100% compatible Matlab clone, then
maybe you should either just buy Matlab, or rip out any and all
features from Octave that Matlab does not have, and only try to
reimplement whatever it is that the MathWorks designs.  That sort of
project would not be at all interesting to me.

|    My opinion is that contributions should be accepted fairly
|    easily. This will broaden the developer base, although it
|    will reduce the cleanliness of design.

In most cases, I have been quite conservative about incorporating
patches from others.  I'm sure that this has frustrated some
contributers, but, in my experience, there aren't very many people out
there who have been willing to fix Octave when it breaks, or even
maintain their patches once they have been submitted, and I have not
been comfortable with having to maintain code that I could not work
with easily.

| 2. There needs to be a new maintainer/ maintainer group?
|    Ideally this can be done in a way that everybody is
|    happy with, encouraging contributions and preventing
|    the temptation to fork.

I'm not too worried about forking.  Octave is a relatively large
project.  I'd guess that you have to be fairly serious about working
on it, or your fork will quickly die.  But I agree that given the
limited resources, you would want to avoid spreading them even
thinner by having multiple development groups.

| 3. Where will octave be hosted? Where will FAQs, mailing lists,
|    etc. be kept.

For now, it will remain where it is.  I am happy to continue hosting
the mailing lists and so on until someone emerges who is really
serious about taking over maintenance of the project.

|    One option would be to move development to sourceforge.

If they are eventually moved, I'd suggest the GNU machines.  They have
a nice mailing list management system set up on mail.gnu.org, and a
CVS server on subversions.gnu.org.  They can probably also host the
web pages at www.gnu.org.

jwe



-------------------------------------------------------------
Octave is freely available under the terms of the GNU GPL.

Octave's home on the web:  http://www.octave.org
How to fund new projects:  http://www.octave.org/funding.html
Subscription information:  http://www.octave.org/archive.html
-------------------------------------------------------------


Reply | Threaded
Open this post in threaded view
|

Re: The future of Octave

John W. Eaton-6
In reply to this post by David Doolin
On  7-Dec-2000, David Doolin <[hidden email]> wrote:

| Either octave should try and maintain ("full") compatibility, or  
| jettison the effort, burn the bridge and don't look back.

Hmm.  If you are on the side that says full compatibility is critical,
I guess we may have a burning bridge in between us.  :-)

| (By "full", I mean some useful core subset of the matlab language
| and function library.  I do not mean implementing guide,
| simulink, etc.)  

Don't we already have some useful core subset?  And aren't people
constantly complaining that this or that favorite feature of theirs is
missing from Octave?  Isn't that likely to just continue to get worse
as more people start using whatever new features are in Matlab 6 and 7
and 8 and ...?

jwe



-------------------------------------------------------------
Octave is freely available under the terms of the GNU GPL.

Octave's home on the web:  http://www.octave.org
How to fund new projects:  http://www.octave.org/funding.html
Subscription information:  http://www.octave.org/archive.html
-------------------------------------------------------------


Reply | Threaded
Open this post in threaded view
|

Re: The future of Octave

Kevin Straight
In reply to this post by John W. Eaton-6
Long-winded ramble follows:

jwe's point is well taken.  Octave is a very solid and useful application,
but it is impossible to escape the fact that it is based on yesterday's
technology, not today's.  It does what it does very well, but it is
inherently limited by design considerations.  Working on my degree in
applied math over the last three years I have become increasingly
convinced that we are long overdue for the next evolution in
mathematical software.  I think we-the open source community-should be the
ones to come up with it, and let the commercial teams scramble for
bug-for-bug compatibility with US.  

What form will this revolutionary new application take?  I don't know, but
here are some ideas I've come up with:

1) Flexibility.  If you're like me, you own at least one each of the
following:  numeric software (ie octave), statistical software (minitab or
whatever), CAS/symbolic software (maple, derive, etc), technical document
prep software (ie latex), and spreadsheet.  If you're in engineering you
also probably have CAD and flowcharting software.  All of these duplicate
features found in some or all of the others.  NONE of them interoperate
worth beans.  They all use different interfaces and commands to accomplish
the same thing.  

I submit that the world is ready for a well integrated SUITE of
open-source technical applications--designed to work together and have the
same (highly customizable) look-and-feel.  I DO NOT think we should simply
take existing applications and glue them together--but instead design the
whole thing from the top down.

2) Innovative Interfaces:  Octave's command-line interface is fast (for
all of us who have been using it for years) and takes few
resources.  Those are the only good things that can be said about it.  The
new application should have both modern graphical worksheet interfaces and
the old standby command line.  The worksheet should be fast and bug-free
(which is more than can be said of Maple, for instance).  It should also
be intuitive.  Lets face it...we're the old guard.  Most of my students
have never seen a command line, and they're the ones who will be using
this thing 9 years from now, so we should make it "pretty".

3) Distributed Computing:  Now that MPI, clustering, and other kinds of
distributed computing are finally coming of age, it would be stupid to
design mathematical software without planning to take advantage of them
from the very beginning, while still being usable on the old
"one-station, one processor, one user" model.

4) Native high quality graphics:  I think the next project should draw its
own graphics, and draw them well, instead of using an external program
like gnu-plot.  

5) Portability:  This goes without saying, but obviously we want it to run
on everything octave runs on, plus emerging systems.

Well, there you go.  Maybe all of that is impossibly big.  Surely no one
person could even design it, much less do the programming.  Maybe I'm the
only one who wants it.  If it was to happen, though, I can't think of
anyone more able to do it than the readers of this list, especially
jwe.  There, would that be enough of a challenge for you?

 On Thu, 7 Dec 2000, John W. Eaton wrote:

>   There are a number of reasons, but one of the most important is that
>   working on Octave is no longer the challenge for me that it once
>   was.  Much of what I set out to do with Octave has been done.  I am
>   pleased with what we have accomplished so far, but ready to take on
>   something new.
>
>   I never intended Octave to be a Matlab clone, nor am I really
>   interested in creating such a thing, but that seems to be what many
>   users of Octave want.  It is not very interesting to me to simply
>   reimplement all the features/bugs of Matlab.
>
>   I am finding it too constraining to try to maintain almost any level
>   of compatibility with a proprietary product for which there is no
>   standard.  It stifles any creativity by the threat of future
>   incompatibility.  I see this is as a real problem, not just an
>   imagined one.
>
>   Free software needs a vision beyond reimplementation of existing
>   proprietary tools.  Those of us who are interested in free software
>   tools must become leaders rather than followers, and I am optimistic
>   that this can happen for numerical software.  But I don't believe it
>   can happen if Octave continues down its current path.
>
> What will you do?
>
>   I believe that we (users of numerical software tools) could benefit
>   greatly from a freely available, high quality, high level language
>   for solving numerical (and possibly symbolic) problems.  Octave has
>   been an interesting experiment, and has shown that, within the free
>   software community, it is possible to do a lot with limited
>   resources.
>
>   I think now is a good time to step back, examine what we have done,
>   and decide what is the best course for the future.  I'm looking
>   forward to helping to define and implement the next generation of
>   free software tools for numerical problems.
>
>
> jwe
>
>
>
> -------------------------------------------------------------
> Octave is freely available under the terms of the GNU GPL.
>
> Octave's home on the web:  http://www.octave.org
> How to fund new projects:  http://www.octave.org/funding.html
> Subscription information:  http://www.octave.org/archive.html
> -------------------------------------------------------------
>

==========================
Kevin Straight
University of Idaho
www.uidaho.edu/Šþstra9456
==========================



-------------------------------------------------------------
Octave is freely available under the terms of the GNU GPL.

Octave's home on the web:  http://www.octave.org
How to fund new projects:  http://www.octave.org/funding.html
Subscription information:  http://www.octave.org/archive.html
-------------------------------------------------------------


Reply | Threaded
Open this post in threaded view
|

Re: The future of Octave

John W. Eaton-6
In reply to this post by Andrew Bainbridge-Smith
On  8-Dec-2000, Andrew Bainbridge-Smith <[hidden email]> wrote:

| One of the key functions of the maintainers is to foster an
| inclusive framework to the entire OCTAVE community, so as to
| minimise forking of development.  This inclusiveness need not mean a
| less "clean" code base, as every possible feature is added.
| Inclusiveness is achieved by open and clear communications --- which
| probably means good documentation like a maintained TODO and FAQ
| lists etc.

We have had open access to the latest development sources for a while,
and open mailing lists for all the discussion anyone could handle.
I agree that communication is good, but it is no substitute for
contributions of good quality code and documentation.

I have done the best I could to maintain the Projects file and the
FAQ.  I have put out numerous requests for someone else to take over
maintaining the FAQ (which I think would be best handled by a real
live editor, not just by having random people add things via some web
interface), but so far no one has taken me up on the offer.

As I said in another message, I have been conservative about accepting
patches.  We can debate whether this was good or bad, but I believe
that it was in the best interest of the quality and stability of
Octave.

jwe



-------------------------------------------------------------
Octave is freely available under the terms of the GNU GPL.

Octave's home on the web:  http://www.octave.org
How to fund new projects:  http://www.octave.org/funding.html
Subscription information:  http://www.octave.org/archive.html
-------------------------------------------------------------


Reply | Threaded
Open this post in threaded view
|

Re: The future of Octave

Des Aubery's work area
In reply to this post by John W. Eaton-6
Hi John & group,

I feel that it is a pity that you are bowing out of Octave, after all
your work, and visionary leadership.

You are looking for an analysis platform that is distinct from Matlab -
well, why not perhaps just steer Octave to exactly where your vision
stretches.

If you are tired, and weary, as you obviously are, can I make a bold
suggestion - do not "retire" but instead form a visionary group around
you - similar to Linus, and let them administer, and oversee
implementation of the various sub-sets of the vision implementation.

You could even let a person with more energy to expire take the
day-to-day management & implementation, but remain in a "caretaker" role
- executive consultant, if you will.

Are there any folk out there who will rally around John, and help
shoulder this burden. (My current travel role precludes me from all but
user status, at present...)

--
Best regards,

Des Aubery...
_________________________
                         ^^^^^    --->
East London               ^^^^^    --->    Advanced Automotive...
E.Cape, 5257               ^^^^^    --->    Heat-Transfer
South Africa                ^^^^^    --->    CFD
email: [hidden email]    ^^^^^    --->    FEA
______________________________^^^^^    --->


"John W. Eaton" wrote:

>
> On  7-Dec-2000, Andy Adler <[hidden email]> wrote:
>
> | 1. The "communitity" needs to come to a clear consensus about
> |    the goals of future development.
> |
> |    How important is Matlab compatability?
>
> FWIW, I don't think that complete compatibility is a reasonable
> goal, primarily because if you aim for that, then as soon as a new
> version of Matlab is released, you are immediately years behind.
>
> Many people seem to believe that Octave only follows wherever Matlab
> leads.  Over the years, however, Octave has included a number of
> features missing from the then current version of Matlab only to find
> that later editions of Matlab implemented those features in
> incompatible ways.  These kinds of incompatibilities are especially
> bad, because fixing them means breaking compatibility with older
> versions of Octave, or assuming the burden of supporting multiple ways
> of doing the same thing.
>
> So, if you really truly want a 100% compatible Matlab clone, then
> maybe you should either just buy Matlab, or rip out any and all
> features from Octave that Matlab does not have, and only try to
> reimplement whatever it is that the MathWorks designs.  That sort of
> project would not be at all interesting to me.
>
> |    My opinion is that contributions should be accepted fairly
> |    easily. This will broaden the developer base, although it
> |    will reduce the cleanliness of design.
>
> In most cases, I have been quite conservative about incorporating
> patches from others.  I'm sure that this has frustrated some
> contributers, but, in my experience, there aren't very many people out
> there who have been willing to fix Octave when it breaks, or even
> maintain their patches once they have been submitted, and I have not
> been comfortable with having to maintain code that I could not work
> with easily.
>
> | 2. There needs to be a new maintainer/ maintainer group?
> |    Ideally this can be done in a way that everybody is
> |    happy with, encouraging contributions and preventing
> |    the temptation to fork.
>
> I'm not too worried about forking.  Octave is a relatively large
> project.  I'd guess that you have to be fairly serious about working
> on it, or your fork will quickly die.  But I agree that given the
> limited resources, you would want to avoid spreading them even
> thinner by having multiple development groups.
>
> | 3. Where will octave be hosted? Where will FAQs, mailing lists,
> |    etc. be kept.
>
> For now, it will remain where it is.  I am happy to continue hosting
> the mailing lists and so on until someone emerges who is really
> serious about taking over maintenance of the project.
>
> |    One option would be to move development to sourceforge.
>
> If they are eventually moved, I'd suggest the GNU machines.  They have
> a nice mailing list management system set up on mail.gnu.org, and a
> CVS server on subversions.gnu.org.  They can probably also host the
> web pages at www.gnu.org.
>
> jwe
>
> -------------------------------------------------------------
> Octave is freely available under the terms of the GNU GPL.
>
> Octave's home on the web:  http://www.octave.org
> How to fund new projects:  http://www.octave.org/funding.html
> Subscription information:  http://www.octave.org/archive.html
> -------------------------------------------------------------




-------------------------------------------------------------
Octave is freely available under the terms of the GNU GPL.

Octave's home on the web:  http://www.octave.org
How to fund new projects:  http://www.octave.org/funding.html
Subscription information:  http://www.octave.org/archive.html
-------------------------------------------------------------


Reply | Threaded
Open this post in threaded view
|

Re: The future of Octave

Herman Bruyninckx-3
In reply to this post by Kevin Straight
On Thu, 7 Dec 2000, Kevin Straight wrote:

First of all: Thanks John! (For all you did, and all you will be doing
in the future :-) )

> jwe's point is well taken.  Octave is a very solid and useful application,
> but it is impossible to escape the fact that it is based on yesterday's
> technology, not today's.  It does what it does very well, but it is
> inherently limited by design considerations.  Working on my degree in
> applied math over the last three years I have become increasingly
> convinced that we are long overdue for the next evolution in
> mathematical software.  I think we-the open source community-should be the
> ones to come up with it, and let the commercial teams scramble for
> bug-for-bug compatibility with US.
I agree with this!

> 1) Flexibility.  If you're like me, you own at least one each of the
> following:  numeric software (ie octave), statistical software (minitab or
> whatever), CAS/symbolic software (maple, derive, etc), technical document
> prep software (ie latex), and spreadsheet.  If you're in engineering you
> also probably have CAD and flowcharting software.  All of these duplicate
> features found in some or all of the others.  NONE of them interoperate
> worth beans.  They all use different interfaces and commands to accomplish
> the same thing.
Indeed. But I guess the way to go is to use some kind of CORBA-like
brokerage that can link a high-quality GPL plotting program (there are
some in the making, I think), a high-quality documentation tool (LaTeX
or MathML based), of course the high-level numerical tool which is
Octave, a high-level diagram interfacing tool (such as DIA, which
would allow to make a `simulink'-like graphical interface to Octave), etc.
A first practical step could be to (i) list which existing projects
would be useful for octave, and (ii) contact the maintainers of these
projects with concrete suggestions.


Personally, I am trying to set up an Open Source robot control project
(www.orocos.org, still in too preliminary state :-( ), and I had octave
in mind as the numerical core, and some other projects as other
`cores' (like dia etc). So, I would be willing to brainstorm about
these things the coming weeks.

--
[hidden email] (Ph.D.)    Fax: +32-(0)16-32 29 87
Dept. Mechanical Eng., Div. PMA, Katholieke Universiteit Leuven, Belgium
Real Time and Embedded HOWTO:
   <<a href="http://www.mech.kuleuven.ac.be/Šþbruyninc/rthowto">http://www.mech.kuleuven.ac.be/Šþbruyninc/rthowto>




-------------------------------------------------------------
Octave is freely available under the terms of the GNU GPL.

Octave's home on the web:  http://www.octave.org
How to fund new projects:  http://www.octave.org/funding.html
Subscription information:  http://www.octave.org/archive.html
-------------------------------------------------------------


Reply | Threaded
Open this post in threaded view
|

Re: The future of Octave

Stef Pillaert-3
In reply to this post by Andy Adler-2
> 0. First, how important is keeping octave development alive anyway?
>    Do enough people care?
>
Well, I certainly care. I use octave every day, and couldn't imagine how to
do my research without it anymore! A great thanks to John! I hope the
development goes on! I do have plans to use octave even more for some demo's
for our students, since I'm getting very at ease in coupling octave with
some Tcl/Tk GUI.
BTW, what is this "Matlab" everyone keeps talking about? ;-)

Stef.





-------------------------------------------------------------
Octave is freely available under the terms of the GNU GPL.

Octave's home on the web:  http://www.octave.org
How to fund new projects:  http://www.octave.org/funding.html
Subscription information:  http://www.octave.org/archive.html
-------------------------------------------------------------


Reply | Threaded
Open this post in threaded view
|

Re: The future of Octave

Kai Mueller-2
In reply to this post by Kevin Straight
On Thu, Dec 07, 2000 at 10:09:51PM -0800, Kevin Straight wrote:
[...]

> jwe's point is well taken.  Octave is a very solid and useful application,
> but it is impossible to escape the fact that it is based on yesterday's
> technology, not today's.  It does what it does very well, but it is
> inherently limited by design considerations.  Working on my degree in
> applied math over the last three years I have become increasingly
> convinced that we are long overdue for the next evolution in
> mathematical software.  I think we-the open source community-should be the
> ones to come up with it, and let the commercial teams scramble for
> bug-for-bug compatibility with US.  
>
> What form will this revolutionary new application take?  I don't know, but
> here are some ideas I've come up with:
[...]

I don't agree that Octave is yesterday's technology just because
of its user interface or its structure. A state of the art software
solves problems numerically exact and with *** great efficiency ***.
That's exactly what Octave does.

Again, to me great efficiency is important not an intuitive user
interface. I guess you can't have both.

I hope that Octave will continue the way it was developed over the
last years - Many thanks to JWE.

Kai

--
 Kai P. Mueller
 Control Department (Regelungstechnik) | Phone [+49] (531) 391-3835
 Technical University Braunschweig     | Fax   [+49] (531) 391-5194
 D-38092 Braunschweig                  | Email [hidden email]



-------------------------------------------------------------
Octave is freely available under the terms of the GNU GPL.

Octave's home on the web:  http://www.octave.org
How to fund new projects:  http://www.octave.org/funding.html
Subscription information:  http://www.octave.org/archive.html
-------------------------------------------------------------


Reply | Threaded
Open this post in threaded view
|

Re: The future of Octave

Paul Kienzle-5
In reply to this post by Andy Adler-2
On Thu, Dec 07, 2000 at 10:15:20PM -0500, Andy Adler wrote:
> On Thursday, December 07, 2000 2:30 PM, John W. Eaton wrote:
> > I've now worked on Octave for almost nine years.  During most of that
> > time, I have enjoyed the challenge of working on a relatively large
> > project.
>
> I think the first thing to be said is a big _congratulations_

Agreed.

> for John. I've been using octave for four years now, and I've
> really come to appreciate the design. I find it far easier
> to find my way around in the octave source than in any of the
> proprietary projects of similar size I've worked on. In fact,
> I used to be very suspicious whether C++ actually provided anything
> useful to programmers, other than giving them more rope with
> which to hang themselves...  Octave convinced me that C++ can
> be a good thing.
>
> >   Because Octave is free software, it will continue to be available.
> >   By sometime early next year (perhaps by Octave's ninth birthday,
> >   February 20, 2001) I will release a new "stable" version (based on
> >   the 2.1.x sources), which I will continue to maintain to the extent
> >   of fixing serious bugs.  I don't plan to work on any new features,
> >   though I may accept well-written patches that include documentation
> >   and ChangeLog entries.
> >
> >   Although I plan to continue fixing serious bugs in Octave, if
> >   someone (or perhaps a small group) is interested in taking over
> >   maintenance of Octave, you should contact me so we can discuss it.
>
> I would very much like to see octave development continue. I believe
> that this should be possible. In the last year the user community
> seems to be becomming much more active. Perhaps, looking at the most
> optimistic scenario, John's stepping down will motivate enough of us
> to get active, so that development can even accelerate.
>
> In order to do this, however, much needs to be done:
>
> 0. First, how important is keeping octave development alive anyway?
>    Do enough people care?

I have had a number of contributions to my Matlab compatibility package,
so I would say that people still care.  If more people coming over
from Matlab recode the routines that are missing (or fill in missing
features) then it would grow even faster (at least for the parts that
people care about).

>
> 1. The "communitity" needs to come to a clear consensus about
>    the goals of future development.
>
>    How important is Matlab compatability?

I started using Octave because it was said to be the most Matlab compatible.
Since I was using somebody else's code which was under active developement,
it was important to me that it run without change.  I did have to spend a
couple of months reimplementing a large hunk of the signal processing toolbox
in order for it to run, but it was worthwhile.  Especially since there is
a large body of other freely distributed interesting scientific code out
there coded for matlab.

Besides which, if you want to the spanking new exciting feature rich
language, just follow John.  I hope he chooses to write a new interpreter
based on liboctave so that both projects can share improvements in
the base.  It will be a little more work for Octave but better for both
projects in the long run.

>
>    There are now various contributions that exist all
>    over the net.  How easily should these be added to the
>    source base?
>

Octave itself will do much better with an "owner" who decides what goes
in and controls releases.  Preferably somebody with enough familiarity
with the code to assess patches and enough time to help new contributors
to make their patches better.

>    Should octave have additional "non-numeric" features to
>    support all sorts of generic scripting language features?

Do scientific programmers need to do string processing? database access?
GUI interfaces? process control? cgi scripts?   How about a web interface
to the data taken at your beamline which allows you to select a particular
sample and applied field, perform a variety of fits and produce a graph
of the results?  The project I have in mind is being written in Java, but
it would be nice if something like octave could handle it.

>
>    My opinion is that contributions should be accepted fairly
>    easily. This will broaden the developer base, although it
>    will reduce the cleanliness of design.
>
> 2. There needs to be a new maintainer/ maintainer group?
>    Ideally this can be done in a way that everybody is
>    happy with, encouraging contributions and preventing
>    the temptation to fork.

It's not forking that is the danger.  It is all of those half-baked patches
which work well enough for your particular case but aren't yet ready for
general distribution.  A single site which collects them until they can be
beaten into shape for general distribution would be a good thing.  And, no,
searching through seven years of submissions to help-octave, octave-sources
and bug-octave is not my idea of a collection.

>
> 3. Where will octave be hosted? Where will FAQs, mailing lists,
>    etc. be kept.
>
>    One option would be to move development to sourceforge.

I agree that sourceforge has too much on it, especially since there is no
way to move your project from source forge.  Sure you can move the tarball
of the sources, but all the mailing lists and bug tracking and so on are
there at the mercy of a hostile takeover of VA Linux.

There are a number of other sites which do project hosting, such as SEUL,
but I don't know of their relative merits.

>
>    
> Well, that's my 2c worth. What do others have to say?
>
> _______________________________________________
> Andy Adler                     [hidden email]
>
>
>
> -------------------------------------------------------------
> Octave is freely available under the terms of the GNU GPL.
>
> Octave's home on the web:  http://www.octave.org
> How to fund new projects:  http://www.octave.org/funding.html
> Subscription information:  http://www.octave.org/archive.html
> -------------------------------------------------------------
>
>



-------------------------------------------------------------
Octave is freely available under the terms of the GNU GPL.

Octave's home on the web:  http://www.octave.org
How to fund new projects:  http://www.octave.org/funding.html
Subscription information:  http://www.octave.org/archive.html
-------------------------------------------------------------


Reply | Threaded
Open this post in threaded view
|

Re: The future of Octave

Rafael Laboissiere-5
In reply to this post by John W. Eaton-6
John and the others,

First of all, let me add my congratulations to John, as well as a big Thank
You for this wonderful achievement called Octave.

I would like to just ask a question to John (my point here is similar to Des
Aubery's, somewhere in this thread):

What is your precise reason for abandoning Octave development?  Is it
because Octave is limited by its basic design, which will constrain whatever
you envisage as the "new generation" numerical software, or is it because
users keep bugging you to have 100% Matlab compatibility?

I find hard to believe that your move was motivated by the second reason, as
Octave and Matlab have already diverged a lot since version 4.2 of Matlab
and there is no hope in achieving total compatibility (and I see no interest
on that, neither).

If it is the first reason, could you please explain why the present design
could not serve as a basis for that new numerical software?

In summary, what I am trying to say is this: continue development of Octave
as it is now by introducing new ideas for making it a leading software in
the field.  Also, let us perhaps establish a more bazaar-like/
benevolent-dictator mode of development (a la Linux kernel). Finally, if
others wish to, let them fork the project to achieve that 100% compatibility
goal.

Regards,

--
Rafael Laboissiere
Institut de la Communication Parlee | Email: [hidden email]
UMR CNRS 5009 / INPG                | Voice: +33 4.76.57.48.49
46, av. Felix Viallet               |   Fax: +33 4.76.57.47.10
F-38031 Grenoble CEDEX 1 France     |   URL: <a href="http://www.icp.inpg.fr/Šþrafael">http://www.icp.inpg.fr/Šþrafael




-------------------------------------------------------------
Octave is freely available under the terms of the GNU GPL.

Octave's home on the web:  http://www.octave.org
How to fund new projects:  http://www.octave.org/funding.html
Subscription information:  http://www.octave.org/archive.html
-------------------------------------------------------------


Reply | Threaded
Open this post in threaded view
|

Re: The future of Octave

David DS Barnes
In reply to this post by Kevin Straight
Kevin Straight wrote:
<abbridged />

> Long-winded ramble follows:
> What form will this revolutionary new application take?  I don't know, but
> here are some ideas I've come up with:
>
> 1) Flexibility.  
>
> I submit that the world is ready for a well integrated SUITE
>
> 2) Innovative Interfaces:  
>
> 3) Distributed Computing:  
>
> 4) Native high quality graphics:  
>
> 5) Portability:  

o
weblication interface <?php?>
o
some xml language
o
expresses objects, behaviours/etc
o
subsets for cfd/fea/etc
o
opengl graphics

thank you jwe,
David
--
David DS Barnes
mech eng dept, imperial college | t/f:0207 594 7181/7127
exhibition rd, london, sw7 2bx  | http://www.metaphorm.iwarp.com





-------------------------------------------------------------
Octave is freely available under the terms of the GNU GPL.

Octave's home on the web:  http://www.octave.org
How to fund new projects:  http://www.octave.org/funding.html
Subscription information:  http://www.octave.org/archive.html
-------------------------------------------------------------


Reply | Threaded
Open this post in threaded view
|

Re: The future of Octave

David Doolin
In reply to this post by John W. Eaton-6
On Fri, 8 Dec 2000, John W. Eaton wrote:

> On  7-Dec-2000, David Doolin <[hidden email]> wrote:
>
> | Either octave should try and maintain ("full") compatibility, or  
> | jettison the effort, burn the bridge and don't look back.
>
> Hmm.  If you are on the side that says full compatibility is critical,
> I guess we may have a burning bridge in between us.  :-)

Lemme pour some gas on the fire ;)

>
> | (By "full", I mean some useful core subset of the matlab language
> | and function library.  I do not mean implementing guide,
> | simulink, etc.)  
>
> Don't we already have some useful core subset?  And aren't people
> constantly complaining that this or that favorite feature of theirs is
> missing from Octave?  Isn't that likely to just continue to get worse
> as more people start using whatever new features are in Matlab 6 and 7
> and 8 and ...?

Perhaps.  Maybe "core" could mean "what is implemented when jwe steps
down". Or it could mean what octave has now + sparse, or + a couple of
other things.  The only way this would work is if the "core" was
explicitly and publically defined, and had one or more maintainers
willing to grunt through the parser to make it happen.

This is not to say there isn't a useful core subset right now.  There is.
But it is enough to attract new octave users?

dave d

>
> jwe
>



-------------------------------------------------------------
Octave is freely available under the terms of the GNU GPL.

Octave's home on the web:  http://www.octave.org
How to fund new projects:  http://www.octave.org/funding.html
Subscription information:  http://www.octave.org/archive.html
-------------------------------------------------------------


Reply | Threaded
Open this post in threaded view
|

Re: The future of Octave

David Doolin
In reply to this post by Kevin Straight

I agree completely with every single one of Kevin's points.

[]

> What form will this revolutionary new application take?  I don't know, but
> here are some ideas I've come up with:
>
> 1) Flexibility.  If you're like me, you own at least one each of the
> following:  numeric software (ie octave), statistical software (minitab or

[]

>
> 2) Innovative Interfaces:  Octave's command-line interface is fast (for
> all of us who have been using it for years) and takes few

[]

> 3) Distributed Computing:  Now that MPI, clustering, and other kinds of
> distributed computing are finally coming of age, it would be stupid to

[]

> 4) Native high quality graphics:  I think the next project should draw its
> own graphics, and draw them well, instead of using an external program
> like gnu-plot.  
>
> 5) Portability:  This goes without saying, but obviously we want it to run
> on everything octave runs on, plus emerging systems.
>
> Well, there you go.  Maybe all of that is impossibly big.  Surely no one
> person could even design it, much less do the programming.  Maybe I'm the
> only one who wants it.  If it was to happen, though, I can't think of
> anyone more able to do it than the readers of this list, especially
> jwe.  There, would that be enough of a challenge for you?

It needs to done as components.  The next iteration of the discrete
element code that I am writing (in win32) will have the numerical
engine in c++ and be platform independent.  (Actually the current kernel
is platform independent, but written in c.)  I have no interest in
creating a unix front end to this because the set of all my users that
also use unix has no measure.  It's 100% win32.

There is no reason I could not implement some interface to expose the
functionality to octave or matlab.  But I will not design this interface
ex nihilo, in toto, whatever. I have my hands full with the discrete
element parts, and frankly since that is my area of competence every is
better served by me spending my effort mostly on that.

Here are a few more items that I am not willing to argue about, but others
may find useful or interesting.
1.  Bill Gates provides about 75% of the training necessary to use the
code I have written in windows.  The relieves me of a huge burden and lets
me concentrate on the important bits, like the math.
2.  win32 makes a lot of stuff really easy for me the programmer and for
the users. For example: gdi allows me to either draw to the screen or to a
printer or to a metafile with very little additional code. (My
implementation is not disputable, it works, it does exactly what I want.)
3. Operating systems are yesterdays technology.  While I prefer command
line interfaces, I do not know anyone in my field (geotechnical
engineering) who are similarly inclined.  So further developement should
enfold rational gui interfaces as well.  Anyone who would insist on
sneering at gui's I would invite to write one.  It's harder than you
think.  Way harder.  Very challenging in fact.

>
>  On Thu, 7 Dec 2000, John W. Eaton wrote:
>
> >   There are a number of reasons, but one of the most important is that
> >   working on Octave is no longer the challenge for me that it once
> >   was.  Much of what I set out to do with Octave has been done.  I am
> >   pleased with what we have accomplished so far, but ready to take on
> >   something new.

Graphical user interfaces are *very* challenging...  hint hint...
and usually not done very well.  Guide is certainly ugly.  I should
also add that we are paying an undergrad $12.50/hr to program a
post-processor in guide.  It is already useful, and will save me a lot  of
time on my current paper.  I should also add that she is an Art History
major...


> >
> >   I never intended Octave to be a Matlab clone, nor am I really
> >   interested in creating such a thing, but that seems to be what many
> >   users of Octave want.  It is not very interesting to me to simply
> >   reimplement all the features/bugs of Matlab.

Agreed.


> >   I am finding it too constraining to try to maintain almost any level
> >   of compatibility with a proprietary product for which there is no
> >   standard.  It stifles any creativity by the threat of future
> >   incompatibility.  I see this is as a real problem, not just an
> >   imagined one.
> >
> >   Free software needs a vision beyond reimplementation of existing
> >   proprietary tools.  Those of us who are interested in free software
> >   tools must become leaders rather than followers, and I am optimistic
> >   that this can happen for numerical software.  But I don't believe it
> >   can happen if Octave continues down its current path.

Agreed.  But lets get beyond the OS.  Everything I do in the current
version of octave will be with the win32 port.  Life is too short for me
to fight the OS battle any longer.

> >
> > What will you do?
> >
> >   I believe that we (users of numerical software tools) could benefit
> >   greatly from a freely available, high quality, high level language
> >   for solving numerical (and possibly symbolic) problems.  Octave has
> >   been an interesting experiment, and has shown that, within the free
> >   software community, it is possible to do a lot with limited
> >   resources.

Agreed.  Two things need to happen: 1. Funding agancies need to understand
that these kinds of projects have merit.  2. Academic tenure committees
need to allow software development as viable activity. 3. Graduate
students outside the field of computer science need to be allowed
dissertation credit for viable software engineering, both design and
imlementation.  Having seen a number of people get credit for what amounts
to basically designing load frames that somebody else builds, I am
perturbed that my software development does not get similar consideration
because its "just programming". (I will spare everyone the long version of
that rant.)  Ok so that was three and I could think of several more things
that would help stimulate free numerical software development but I will
stop here.

Thanks for listening!

Dave D

> >   I think now is a good time to step back, examine what we have done,
> >   and decide what is the best course for the future.  I'm looking
> >   forward to helping to define and implement the next generation of
> >   free software tools for numerical problems.
> >
> >
> > jwe
> >
> >
> >
> > -------------------------------------------------------------
> > Octave is freely available under the terms of the GNU GPL.
> >
> > Octave's home on the web:  http://www.octave.org
> > How to fund new projects:  http://www.octave.org/funding.html
> > Subscription information:  http://www.octave.org/archive.html
> > -------------------------------------------------------------
> >
>
> ==========================
> Kevin Straight
> University of Idaho
> www.uidaho.edu/Šþstra9456
> ==========================
>
>
>
> -------------------------------------------------------------
> Octave is freely available under the terms of the GNU GPL.
>
> Octave's home on the web:  http://www.octave.org
> How to fund new projects:  http://www.octave.org/funding.html
> Subscription information:  http://www.octave.org/archive.html
> -------------------------------------------------------------
>
>



-------------------------------------------------------------
Octave is freely available under the terms of the GNU GPL.

Octave's home on the web:  http://www.octave.org
How to fund new projects:  http://www.octave.org/funding.html
Subscription information:  http://www.octave.org/archive.html
-------------------------------------------------------------


1234