4 ms·
I first started exploring advanced math, graphing, and basic programming using Mathematica, and as much as I love OSS and FOSS math software, I think 12-year-ol
by aray 13y ago
I first started exploring advanced math, graphing, and basic programming using Mathematica, and as much as I love OSS and FOSS math software, I think 12-year-old-me would have a much harder time with FOSS software today than even the Mathematica of more than a decade ago.
Having good free software is very important! But I wouldn't pull back on providing this software, especially where it could be used to provide a real benefit on learning, based on free software ideals.
Octave & co. could see this as encouragement to get better support for themselves on the raspberry pi as well! I see no reason why they can't all coexist.
- hdevalence 13y agoSage already works on the Raspberry Pi, today, and unlike Mathematica, after you use it for a while, you can actually take it apart and see how it works, making it much better for the purpose of "learning, based on free software ideals". Since it's actually, you know, Free Software.
- Pxtl 13y agoI haven't used sage. How does it measure up vs. Mathematica and Maple? What impressed me with the commercial offerings is the ease-of-use in the first-year use-case. You can just type in formulas they come back pretty-printed, and plotting/solving/whatever functions are easy to learn thanks to the good features of the editor (instead of digging through docs or man-pages).
- hdevalence 13y agoVersus Maple, there's really no contest in my opinion, but that's mostly related to the rather poor quality of Maple. I remember even five years ago, when Sage was considerably less mature, Sage was able to outperform Maple on first-year calculus problems (i.e., there were symbolic integrations that Maple choked on but Sage did perfectly). Sage is not only better than Maple at symbolics, but also at numerics, and the gap only widens as the mathematics level increases. As an amusing anecdote, I had to use Maple for a course once, and compared the speed of a simple algorithm to find the order of an element of Z/nZ (by taking x, and adding it to itself in a loop until you get to 0). The Maple code ran approximately 100x slower than the Sage code, even though the Maple code used machine integers but Sage uses bigints by default. With Mathematica, the general impression that I get is that for making interactive graphics, Mathematica is slightly better, but otherwise they're mostly approximately even for the first-year case, with a slight edge to Mathematica. Sage's friendly user interface is a web-based notebook, whereas Mathematica has a native application, but it's pretty good. Sage has very good documentation for common use-cases, but I haven't used the Sage notebook in a while, so I can't really say how discoverable it is. There are some resources on using Sage in an undergrad curriculum here, if you're interested: http://www.sagemath.org/doc/prep/index.html http://www.sagemath.org/doc/prep/index.html though the examples presume you're actually running a Sage notebook, so they don't show what happens, for instance, when you add an @interact decorator to make an interactive thing, like so: http://wiki.sagemath.org/interact/ http://wiki.sagemath.org/interact/ which has a nice example of an interactive Taylor-series approximation.
- Pxtl 13y agoYeah, Maple's actual language is hideously slow. The functions within it seem to run pretty quick, but we were always tought that the moment you wanted to do a loop you should fire up Matlab and do it in that. The reason I mention Maple is because I found it spectacularly easy to use when I first picked it up, as long as you think like a math student instead of a programming student.
- lutusp 13y ago> I haven't used sage. How does it measure up vs. Mathematica and Maple? Sage can produce some very interesting results, but it has a rather steep learning curve and requires more study and time than the commercial alternatives. Sage has a full house of powerful mathematical tools, suitable for professionals as well as students, but you have to read more documentation than its alternatives require, and there are no sophisticated tab-completion features and wizards to accomplish various tasks. One of Sage's advantages is that it can use a browser as an interface, offering a pretty nice working environment that relies on the browser's abilities. Example: http://i.imgur.com/VvrGng2.png http://i.imgur.com/VvrGng2.png Over time Sage has gotten much better, mostly because of all the skilled volunteers finding and fixing bugs and writing new abilities into the feature set. But it's not Mathematica, and it's not US$2500.00 for a license (alternative: US$1000.00 per year) (source: http://www.wolfram.com/mathematica/how-to-buy/industry-individuals.html http://www.wolfram.com/mathematica/how-to-buy/industry-indiv...).
- azmenthe 13y agoI completely agree with you. Playing with Mathematica in high school was the only reason I had any interest in math (ended up studying physics). I also agree FOSS is important but to 15 year old me, the fluid and polished experience of Mathematica was far more important to me than FOSS.
- bunderbunder 13y agoOctave. . . I'm doing a Coursera class that uses it right now, and I've got mixed feelings about it. I want to love it. I do love it; it's a great piece of software. Couldn't say how it compares to Matlab, which I've never used, but for my needs it's a really nice tool. However, out of the box it seemed to have two modes which it would switch between at random: 1. Hang when the user tries to draw a plot. 2. Crash repeatedly. Eventually I did get it working by fiddling with the (way overcomplicated) installer until I stumbled across just the right set of features to play nice on my computer. Which is fine for me. . . but anything that's going to be used in a real classroom needs a MUCH more refined Windows package to be a viable candidate for most schools.
- jordigh 13y agoSorry. We're trying to improve the Windows installer. It's probably no consolation, but it works better on GNU/Linux.
- tokipin 13y agothe MATLAB language is pretty poorly designed, in my opinion. take for example the use of abbreviated function names. everything in Mathematica (including graphics and UI) is described using the structure of the Mathematica language itself. the whole system is malleable/composable to a degree that few languages approach for example: Nest[Button, "hello", 5] will create a nesting of 5 buttons. that's the same Nest you would use when nesting a function: Nest[# + 1 &, 2, 5] And neither of these are hacks, they both work under the same exact rules, because: Nest[whatever, a, 5] gives whatever[whatever[whatever[whatever[whatever[a]]]]] it's the frontend that chooses to interpret certain symbols (such as 'Button') in particular ways.