Please create an account to participate in the Slashdot moderation system


Forgot your password?

Open Source 'Sage' Takes Aim at High End Math Software 360

coondoggie writes "A new open source mathematics program is looking to push aside commercial software commonly used in mathematics education, in large government laboratories and in math-intensive research. The program's backers say the software, called Sage, can do anything from mapping a 12-dimensional object to calculating rainfall patterns under global warming."
This discussion has been archived. No new comments can be posted.

Open Source 'Sage' Takes Aim at High End Math Software

Comments Filter:
  • by GreatBunzinni ( 642500 ) on Saturday December 08, 2007 @10:35AM (#21623749)
    How does sage compares with other mathematics FLOSS like maxima, axiom and yacas? Another question is how come they opted to start a new project instead of contributing to other already established projects?
  • by Anonymous Coward on Saturday December 08, 2007 @11:00AM (#21623915)

    mapping a 12-dimensional object to calculating rainfall patterns under global warming
    I can do that in Perl, C, assembler, and any other Turing complete language. But I use Mathematica because it is full of functionality, fairly reliable, and has a very elegant programming paradigm. Also, as a student, it'll cost me $100-150, depending on where I live, for the lifetime of my studentship, assuming no site license; the kinds of business that run this software commercially really don't care too much about a $2500 license fee.

    This is just like GIMP trying to take on Photoshop. When you're a kid, Adobe prices seem so off-putting that you can't see why people wouldn't flock to the free alternative. When you're doing a real job involving print work, you simply don't think twice about paying Adobe for the required feature set, intuitive UI and better workflow.

    So, kids will carry on pirating Adobe or paying a much reduced student price, then paying for it when they go into the real world; and the same goes for Maple, Matlab, Mathematica, or whatever.

    Oh, yeah, the whole "open source" thing. Excepting core functionality, some of Mathematica and the majority of Maple is provided in source form. You can whine about needing peer review of implementation at all levels, but how many of you have inspected your CPU's microcode or circuit diagrams? At some point the line is drawn, and you combine a trust in the reputation of your vendor with the fact that usually you're prototyping and modelling. Things will be re-implemented and tested in many ways before your "final product" is out of the door (whether that's theoretical physics or an aeroplane).
  • sage (Score:1, Insightful)

    by Anonymous Coward on Saturday December 08, 2007 @11:07AM (#21623969)
    sages goes in every field

    posting anonymously for obvious reasons
  • by babbling ( 952366 ) on Saturday December 08, 2007 @11:09AM (#21623973)
    You need to learn about the difference between copyright and patents.
  • Re:FINALLY! (Score:4, Insightful)

    by mahlerfan999 ( 1077021 ) on Saturday December 08, 2007 @11:17AM (#21624023)

    I was getting kind of tired of pirating my Mathematica software.
    That's not the reason why open source mathematics software needs to be better developed (your comment is also sadly echoed in the article which didn't get the point). It has nothing to do with the price tag (free as in beer is not why foss is important in math and science), it has to do with reproducibility. The whole point of science and math is that a result can't be accepted if it can't be reproduced. And anything that uses closed source algorithms as part of the process is not transparent, and thus not necessarily reproducible. From personal experience I can tell you that numerical computations depend strongly on the algorithm that you choose, and it's just as important as the rest of the problem.
  • by Andrew Kismet ( 955764 ) on Saturday December 08, 2007 @11:17AM (#21624025)
    Blender is a user interface nightmare.
    GIMP's no good for commercial artwork (Pantone swatches and CYMYK and whatnot)
    I can't comment on Inkscape.
    They're more "challenged" than a challenge to commercial programs.
  • by starseeker ( 141897 ) on Saturday December 08, 2007 @11:38AM (#21624135) Homepage
    I am not personally involved with SAGE, but I know a little about it. Rather than being a totally new system in all respects (although there is certainly new code created for it) SAGE attempts to make use of the plethora of existing open source systems available already and provide a unified interaction environment for them. As it says above, SAGE takes aim at the functionality offered by commercial systems.

    This is undeniably a practical approach that will benefit many research teams, and I am rooting for its success. My main concern with it is that by using a wide array of libraries/programs to cover broad functionality, it will become difficult to integrate results from one system into the computations of another. Different systems may make different default assumptions (sometimes very subtle ones) that other systems will not be aware of. Efforts like OPENMATH ( that have attempted to define a protocol for exchange of mathematical information between systems have run into this before.

    Unfortunately, any proper solution to that problem is likely to be even more work than re-implementing algorithms inside a single environment. A framework for a CAS that could handle such broad scope is a problem (Axiom probably comes the closest right now) so for problems that don't hit the more difficult situations SAGE will be very useful indeed, but it is something to bear in mind.

    In the very long term, we need to integrate formal proof software concepts (ISABELLE, ACL2, COQ, etc.) with computer algebra systems in order to be able to trace any calculation back to its axiomatic roots at need - or, put another way, have the system be able to provide upon request correctness proofs of a result. There is a fair bit of literature on that and related topics, but it cannot be denied that the problem is an awesome one. In the meantime, SAGE is a very promising short term (practical) solution to real world problems.

    SAGE's developers are also supporters of the idea of open source software in general, which is probably the most important aspect of the whole discussion: []

    It may be argued that computers are not really an appropriate tool when truly "correct" mathematics must be relied upon. My response to that is that as problems of interest become ever more complex, limitations both of the human mind and the human life span will ultimately limit the problems we can solve unaided. The task for us now is to create a system we CAN trust to solve problems correctly, because someday we will have to trust it to solve problems we cannot handle. Some researchers would probably have a philosophical objection to that and define any problem human beings cannot solve and verify themselves as a problem where we will always be uncertain if it is really solved. The philosophical questions involved are fascinating for people who like that sort of thing. My take on it is such a system would be useful and is worth looking into.

    SAGE is more pragmatic in its orientation, but that means for many (most?) people it is a project to watch and probably a product to use. Here's hoping they can build increased momentum!
  • by QuickFox ( 311231 ) on Saturday December 08, 2007 @11:44AM (#21624171)
    I don't think there are any FOSS spaceflight applications. Which is odd, I'd expect lots of people would be thrilled to be part of that.

    Granted, the requirements for correctness are extreme. But I think open-source people could organize very good code reviews and tests. Properly organized, in the long run I think the risk of metric/imperial confusions, premature triggerings and the like would be much smaller with a FOSS approach.
  • by Anonymous Coward on Saturday December 08, 2007 @12:12PM (#21624365)
    I'm told Blender's interface is only difficult until you climb the learning curve -then it starts to make sense and is very productive.

    Quite often, an interface that is intuitive for a beginner is an untold frustration to an expert. It might even be argued that an interface that is too focused on beginners will tend to keep them beginners rather than rewarding increased learning.

    I can't say from personal experience though - I've only done a couple simple models in Blender using very crude means. I found it acceptable, but clearly something you needed to spend time with to get the hang of. That's inherent in complex tasks.
  • by S3D ( 745318 ) on Saturday December 08, 2007 @12:16PM (#21624389)
    The point here is not workflow or intuitive UI.
    The point is, mathematics and other research rely more and more on computer algebra systems. Up to the point of including CAS code into proofs of theorems and other research paper. However the point of mathematical proof is that anyone with enough knowledge can follow it and verify it step by step. If commercial closed source software is part of mathematical proof, proof is becoming essentially unverifiable. Mathematical theorem become hostage of software owner. That is a step toward complete privatization of science.
    On of the ugliest incident happens then owner of your favorite Mathematica Steven Wolfram claimed ownership of proof of CA rule 110 universalty [] and obtained a court order preventing researcer from the publishing the proof in the conference proceedings. To publish it as the Mathematica code in his books.
  • by marcello_dl ( 667940 ) on Saturday December 08, 2007 @12:27PM (#21624479) Homepage Journal
    You make a great assumption in dividing users into students and pros. Do you need to be a pro to use, say, the gimp resynthesize plugin, which is great to remove spurious stuff from a photo? Not at all. I don't understand the options, but i select the offending area and it works. The toy graphic packages i had with the digital camera and the scanner hadn't got anything similar. They have 20% of the features of gimp. And then there's xara []. They lack when it's time to go to print? How many people work on stuff that ends on paper, what about the rest?

    So even if professionally one can spend a grand for the software of the profession of choice, personal computing is much more than that, and i hope FLOSS keeps "missing the point" like it did till now.

    About open source having to stop at a certain threshold because you can't inspect microcode and circuits, that's true. But it's also true that malicious actions then must be confined to microcode and circuits to stay undetectable. You have a harder time inserting malware and stuff because that level would have to reconstruct activity at higher levels and act accordingly. Say the random number generator hardware can't be trusted. If you have an OSS stack on top of it you can do something about that, if your whole stack is closed you are toast.
  • A link for you (Score:5, Insightful)

    by zogger ( 617870 ) on Saturday December 08, 2007 @12:35PM (#21624539) Homepage Journal
    Took 5 seconds with google, mostly because I type slow and am on dialup

    Nasa open source []
  • by Anonymous Coward on Saturday December 08, 2007 @12:46PM (#21624639)
    One example that comes to mind is Scilab vs. Matlab. Scilab does everything my students need to do. On the other hand, the man pages are a nightmare if you aren't already a mathematician. If my students want to get some filter coefficients, Matlab is a lot friendlier and easier to use because the tools have a gui frontend.

    If you're an expert, it doesn't matter whether you use FOSS or commercial. FOSS is often just as powerful. If you are clueful about math and programming, you don't need Photoshop or 3D-Studio. The problem is that most graphic artists shouldn't have to also have a math degree and a computer science degree.

    Another example would be Ubuntu vs. Gentoo. It could be argued that Gentoo produces a much better installed system. On the other hand, it could also be argued that 99.99% of people are much better off with Ubuntu.

    The success of Sage won't be determined by how powerful it is. As others have observed, it is largely a mashup of existing stuff. Its success will be determined by how easy it is to use. If someone can put together some decent documentation and a semi-intuitive UI, it will take off. Otherwise, I can't see much reason for most people to use it.
  • by Anonymous Coward on Saturday December 08, 2007 @01:07PM (#21624817)
    I am so sick of people repeating that nonsense. Blender's interface is a JOY and a TREASURE.
  • by Vardamir ( 266484 ) on Saturday December 08, 2007 @01:13PM (#21624865)
    Indeed, try looking at Maya's interface sometime. It is extremely clunky feeling. Even as a beginner, I liked blender's UI more.
  • by NoOneInParticular ( 221808 ) on Saturday December 08, 2007 @01:29PM (#21624973)
    What the GP did is use an argument based on copyright, and then leap to the conclusion that this holds for patents as well. In the OP's words:

    Algorithms IMHO are simply the words and sentences you use to make software, which is akin to a work of literature. At least it seems that way to me, anyways.

    If we're going to beat software patents, it just seems like we should drop the algorithms argument because it seems a little flimsy.

    Why is this flimsy? It doesn't follow. If algorithms are like books (which the GP argues), algorithms should fall under copyright (which they do). If this argument is flimsy for software patents, what does this imply for book patents?

    There's a world of difference between copyright and patents, and the OP is transferring arguments from one domain to another. If books were patentable, this would make sense. Now it's weird.

  • by Kjella ( 173770 ) on Saturday December 08, 2007 @01:30PM (#21624983) Homepage

    I'm told Blender's interface is only difficult until you climb the learning curve -then it starts to make sense and is very productive.

    Quite often, an interface that is intuitive for a beginner is an untold frustration to an expert. It might even be argued that an interface that is too focused on beginners will tend to keep them beginners rather than rewarding increased learning.
    I've heard that a few times, and it's pretty much the defintion of a poor UI. Almost everything from the command-line to the most obscure submenu dialog is "effective" if you know exactly where to go and what buttons to push, and it "makes sense" only by familiarity. Apart from a few systems that just don't want to make complexity available (read: Gnome), most such systems can be used very effectively, if you can memorize fifty keyboard shortcuts or configure up your own shortcuts, favorites toolbar etc. Granted, you can't reduce away complexity but if you set users in front of your application, ask them to perform a task and they're all looking in the wrong place the UI sucks. No ifs or buts about it, that means it's not intuitive where the functionality is. And honestly... finding a way to let experts access advanced/obscure functions in an otherwise easy and intuitive interface is 2% of the job. Just admit you're too lazy to do the 98% of the job creating the easy and intuitive one.
  • by jpfed ( 1095443 ) <jerry,federspiel&gmail,com> on Saturday December 08, 2007 @02:03PM (#21625273)
    You suggest optimizing for one quality of user interfaces- "discoverability" []. But that's certainly not the only user interface design objective. Asking about the user experience after the interface has been learned is quite appropriate, because that's the circumstance that the user will spend the vast majority of their time in, assuming they've stuck around past the learning phase.

    The question of whether someone will stick around long enough to learn the software is less one of usability than it is one of marketability. I make no statement about the relative importance of usability and marketability.
  • by failedlogic ( 627314 ) on Saturday December 08, 2007 @02:07PM (#21625315)
    I think the other problem on affordability, is that many software packages are not affordable for those of us who want to learn at home for career development purposes. This not only applies to mathematical software but also much of business software and creative software (video, document layout, etc), CAD, etc. . It would be nice to pay $100 for a yearly license or have a limited non-expiring demo that can only be used for non-commercial purposes or watermarking in someway the end results so that if used in a non-commercial purpose it would be evident an unlicensed copy was used.

    I don't want to be unfair to the companies I've enquired about this problem by naming them, but I'm often quoted that I would qualify for an academic license which expires within the software after 1 year with no upgrade options for $1000. After a work day I don't have much "time" to learn the software at home and $1000 is steep for the amount of time I would use it. The problem, simply, is that my program at college did not teach me adequately how to use a given software package or I was not taught it but know it is used in the field. If I'm to have several years experience with software to qualify for a job, I'd at least like to say that I know how to use it, but not in the workplace. Is there no solution in this case? I know I am not alone as my friends and colleagues would love to take on some computer software learning time.
  • by Daniel Dvorkin ( 106857 ) on Saturday December 08, 2007 @03:43PM (#21626075) Homepage Journal
    The logical error was in Weaselmancer's post ("books are copyrightable so software should be patentable") not in NoOneInParticular's reply.
  • by tepples ( 727027 ) <> on Saturday December 08, 2007 @03:53PM (#21626181) Homepage Journal

    But what is the goal of the marketing? To increase the consumption of bandwidth, or to put free software into actual use outside of an evaluation scenario? If a user downloads Blender, says "fuck it" after going through the first tutorial, and then goes and pirates something, what has anyone accomplished?

  • Re:FINALLY! (Score:4, Insightful)

    by 99BottlesOfBeerInMyF ( 813746 ) on Saturday December 08, 2007 @04:20PM (#21626405)

    It has nothing to do with the price tag (free as in beer is not why foss is important in math and science), it has to do with reproducibility.

    I disagree. Both are important factors. Being able to view all the source is important, but so is having the software available to the 80% of the planet that cannot currently afford it. This could lead to huge advances simply because it opens areas of research to thousands of brilliant mathematicians who make less in a year than the cost of Mathematica.

  • by Anonymous Coward on Saturday December 08, 2007 @06:11PM (#21627117)
    That is the question. What makes Matlab so great (for me at least) is that I can sit down and just work. I dont have to fight with the syntax. I dont have to fight with the documentation. What I dont like about Matlab is how closed off it is to other apps/libraries (the price is an issue too). A good, functional open source alternative could fix this.

    However, I tried out Numpy/SciPy about a year ago and again about an hour ago after I saw this article. I was hoping Sage would provide an "intersection" of sorts for Numpy/SciPy/VTK/R/Octave/etc. At least, that was my major issue about a year ago. There was so much disconnect I spent more time reading documentation and Googling than anything else. Alas, today was the same thing all over again.

    One of the most common things I do in Matlab is solve Ax=b. So I made my 'A' matrix (3x3), my 'b' vector (3x1) and tried a "linalg.solve(A,b)". No dice. I got 2 blocks of Python error messages (yes, I checked my matrix dimensions and made sure I was using Matrix and not an array). The "final" error was something about "an undefined shape attribute in my b vector". Uh... yeah. I played with it for about an hour or so and then deleted it.

    What has been done so far has promise, I think. But it needs to mature a lot more. In its present state I was left slightly annoyed with trying unsuccessfully to do something as simple as least squares regression.

    Again, this problem goes to the heart of the issue. I have to be able to focus on my work. Matlab has issues for sure. But when I dont know how to do something in Matlab, or I hit a snag, 90% of the time Im "back to work" in ~5-10 minutes max. I'll check it out again in a year or so. Until then, Im using Matlab. Sorry.
  • by TuballoyThunder ( 534063 ) on Saturday December 08, 2007 @06:55PM (#21627415)
    I have to throw down the b.s. flag on your comment that "Mathematica's programming language is a whole lot less flexible than a real programming language like Python."
    That comment would indicate that you do not know how to program in a functional programming language like Lisp and APL. When ever I see or hear a comment like that and look at the code the person has written, the person has tried to use a functional language as if it was an imperative language.

The moon is a planet just like the Earth, only it is even deader.