Open Source 'Sage' Takes Aim at High End Math Software
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."
Plus, its creators' heads can probably fit through normal-sized doorways.
but I thought Doc only just figured out the 4th.
Downloadable for Linux, Mac, and the other one:
http://sagemath.org/
As an international evil mastermind I have numerous plans which require advanced mathematical calculations and simulations to be performed (wiping out the human race, transmogrifying all kittens into war machines, etc - the usual kind of stuff).
I was wondering if the license of this software will allow me to achieve my goals without giving up my principles and secrets?
liqbase
I haven't had a chance to play around with this yet, but if it's as good a replacement for Mat* as R is for S+ and SAS, I'm quite happy to see it. I'm sad that I'll probably never be able to touch it unless I change my job as I've been told it would, quite literally, require an act of Congress to allow us to use anything other than SAS for our work. It will still be great to have access to a (hopefully) well documented library of algorithms that I can tear into, instead of trying to cobble together things that seem good to me at the time. Huzzah, hip hip, and all those fun things.
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?
Slashdot, fix your code or at least hire someone who is competent at it to do it for you.
yeah, but can it do pretty graphs? Everyone knows that's what people are looking for: pretty 3D graphs.
Watch the Teaser Trailer for "The Lightning Thief" Her
The site is already very slow, so posting the actual links.
http://www.sagemath.org
http://sage.math.washington.edu/sage
http://modular.fas.harvard.edu/sage
http://www.opensourcemath.org/sage/
http://www.cecm.sfu.ca/sage
http://sage.apcocoa.org
http://echidna.maths.usyd.edu.au/sage
http://sage.scipy.org/sage
Kindness is the language which the deaf can hear and the blind can see. - Mark Twain
I'd say yes.
.... calculate the slashdot effect.
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).
Real video editing software, probably. Real finance software (corporate, not quicken!), real HR software - stuff that has to follow specific regulations on a schedule. And there really isn't a replacement for autocad that a mechanical or civil engineer, or an architect is going to run out and install. Medical applications would be difficult for some of the same reasons as the finance software. And real enterprise email/calendaring and the archiving/retention software to go with it. There aren't any open-source email packages that you could actually use to replace Exchange/GroupWise /Notes in a corporate, healthcare, government and even education. There are pieces, but nothing it would be worth your job to try to sell your organization on.
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.
Free software isn't about price -- it is about freedom. One of the research groups at my university cannot use Mathematica since a few weeks because the license expired, and neither renewing the license nor contacting tech support has so far brought a solution.
Another no-go is that Mathematica 6 notebooks are not compatible with Mathematica 5 notebooks. Also, the unwillingness of Wolfram to timely fix bugs leading to wrong results is unacceptable. I could go on ranting like this, but recently I have completely switched to Maxima and have not regretted it.
OS Reviews: Free and Open Source Software
It doesn't have to do with the boss. Certain industries require SAS. No, there's no way to hide the fact you didn't use SAS. You can do the work at first with another product, but you need to submit SAS code that allows others to reproduce results.
What a fool believes, he sees, no wise man has the power to reason away.
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 (http://www.openmath.org) 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: http://www.ams.org/notices/200710/tx071001279p.pdf
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!
"I object to doing things that computers can do." -- Olin Shivers, lispers.org
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.
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.
Luckily the vast majority of the companies, even the vast majority of the employment, falls in the small and medium enterprise segment. The less-than-ten-people businesses. There things work differently. And for those companies OSS is commonly good enough, and many fancy features are simply not used because they are too cumbersome. Like calendaring, I don't even use it for my personal work. Too inconvenient as it is tied to my computer.
Took 5 seconds with google, mostly because I type slow and am on dialup
Nasa open source
Sadly yes, there is a type of very expensive commercial software who's market is unable to be challenged by free software.
That market is custom database design: it's where your company pays $10,000 per license of some "cutting-edge" VB6.0 front-end to a MS Access database file because it has been completely customized to their business model. They are rampant with bugs, bag programming procedures, and hidden [usually annual] costs.
Doesn't look like it's going anywhere either, until corporate purchasing mindsets evolve from "price = value".
Trackball users will be first against the wall.
I work in Europe, as a researcher, and two and three years ago, the Mathworks (the company behind Matlab) decided we weren't eligible to research/education prices anymore. They did the same with a bunch of other institutes (in Europe, I don't know about the US). We operate an experimental reactor, whose control is largely based on Matlab programs. Some of these were developed a long time and people left, or retired. There's a lot to be said about the way this was handled by our management, but that's the way it is. So, we had to admit we were screwed, having to pay the price. We met with the Mathworks representatives, and I have to say all I saw a bunch of arrogant jerks.
Anyway, since then, we've renewed our licences every year, and we've been looking for an alternative. We even tried to migrate the whole lab to Scilab but that didn't work out (mostly because of the limited capabilities of Scilab in scientific plotting and GUIs). Some of us use Python + Matplotlib (I'm a big fan), some (often the same people) use Octave. Although we've converted some individuals, we weren't able to find a software which could be used by everyone in the lab as a substitute to Matlab. This is frustrating, as the vast majority of people here use only a fraction of the capabilities of Matlab.
I for one, would be really happy if we had something to replace Matlab, be it Sage or whatever else...
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.
Blender is a UI for advanced users. It has very poor learnability, but I've heard it is a very good UI once you are used to it. I haven't seen any usability studies though, so it is just hearsay.
GIMP's no good for commercial artwork (Pantone swatches and CYMYK and whatnot)I have used GIMP for commercial work for years and it has been the best tool on the market for certain uses, especially large automated batch jobs that are beyond Graphics Converter. More recently, Pixelmator may have taken the title away from them, but to call GIMP "no good" in a commercial environment is just wrong. It is used a lot in certain segments, although it can't compete with Photoshop for one off photo touch-ups and that sort of thing.
I can't comment on Inkscape.Inkscape is pretty decent and a reasonable Illustrator replacement for many projects. The main drawbacks I have with it is for Visio type work it is not well suited, and support on the Mac (where realistically most pro graphic artists work) is very weak.
They're more "challenged" than a challenge to commercial programs.I disagree. Most of them are focused on different parts of the market than commercial competitors, but all of this software is probably the best for some uses.
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.
> The success of Sage won't be determined by how powerful it is.
The success of Sage with research mathematicians may be determined by how
powerful Sage is, but you're right -- the success for 99% of users won't be
determined by that.
> 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
We have many people in the development team who are really very interested
in writing good documentation (and who write published mathematics books as
part of our jobs). For example, the author of "Adventures in Group Theory:
Rubik's Cube, Merlin's Machine, and Other Mathematical Toys" is
one of the main Sage developers (he's coming out with a new version of the
book that uses Sage soon).
> and a semi-intuitive UI, it will take off.
From the start we've had many undergraduates with a software engineering
background involved in the project and they have helped immensely with
the browser-based GUI (which one can use locally -- no need to be online!).
Also, us "professional mathematicians" -- even the ones that use mainly FOSS --
really do greatly value having a nice GUI. You might be able to try
out the GUI right now here:
https://sage.math.washington.edu:8101/
that is, if it hasn't been slashdotted into oblivion already!
-- Willam
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.