Hacker News new | past | comments | ask | show | jobs | submit login
New version of Mathematica released (wolfram.com)
55 points by dehowell on Nov 15, 2010 | hide | past | favorite | 30 comments



TLDR: Check this instead: http://www.wolfram.com/mathematica/new-in-8/

The signal-to-noise ratio of that article is incredible low. What did I get out of the post?

- You can now type wolframalpha-style in mathematica.

- You now have over 3000 built-in functions (i.e., too many to remember ;)

The rest was just Wolfram telling the world in many different ways how great mathematica was/is/will be. Adjectives include: huge, important, dramatic, breakthrough, major, slow & lumbering (to describe others), etc. Hell, "great" is mentioned 6 times in the post!


Static compilation via C, C metapogramming/manipulation using Mathematica's symbolic engine, dynamic library linking, GPU use via OpenCL, lots of new statistics and probability processing/visualization...


Can anyone knowledgeable here speak about statistics offer some advice? I'm about to get into a project where, for the first time, I'll need to do some statistics processing and visualization. I haven't started on that component of it yet, and I'm free to choose whatever tool I want. Most of the rest of my project is in Haskell, but for the processing/visualization of statistics part, I was thinking of choosing R. Does anyone know how well Mathematica 8, or other commercial packages, stack up?


I've been using Mathematica (MMA) for my dissertation's data analysis, and for the most part it's been great. As an environment to manipulate data in, it's by far the best that I've used- once you get the hang of it, the pattern/transformation-rule language is incredibly useful for reformatting, recoding, mixing, slicing, dicing, etc. one's data. If you're coming from Haskell, you'll probably pick this part up way faster than I did at first.

If your stats needs are relatively simple- linear models, glms, logit models, anovas, simple tests of hypotheses, etc.- MMA is more than adequate. The new version looks like it adds some non-parametric stats functions, as well as paired t-tests, both of which would be quite useful to me.

Also, the visualization tool in MMA are fabulous, and don't make me want to tear my beard out every time I have to go off the beaten path (as opposed to those found in certain other one-letter-long stats environments I could name). 'Nuff said. Another thing I really appreciate about MMA is how consistent the syntax and functions are- once you've figured out one function, the odds are good that your knowledge will be useful on the next function you try and figure out. This, again, stands in stark contrast to other packages (R, SAS, I'm looking at you guys).

I have found myself turning to R for certain specific things, though. Mixed-effects models, repeated-measure ANOVA, Fisher's Exact Test, etc. Really, the two work together well- it's easy to use MMA to get your data in exactly the right form for R, export it, and then do whatever you need from there.


I think Mathematica is more useful for symbolic processing. For crunching large matrices of numbers and making some plots, R is probably best and/or Matlab (or the free Octave). It depends mostly on which programming paradigm you are more comfortable with.


I cannot speak for mathematic, I have barely used it. For stats, R is hard to beat, it has a lot of "cutting edged" toolboxes through CRAN (CPAN for R), and that's what uses most academics in statistics - most leading academics in statistics use it.

Now, its heritage shows quite a bit, and the language is not always nice to play with. It has great plotting facilities ala ggplot: http://had.co.nz/ggplot, which is a very interesting way to look at data visualizaton in a principled way.

There are also quite a few things available in scipy if python is your thing. If you just want to do stats and are not familiar with python nor want to deal with a general programming languge, R is better I think. If you want to make full-fledged applis with a web-fronted, R will not be pleasant :) {usual disclaimer: I am a numpy/scipy contributor).


R has some basic visualization libraries. The graphs are overall very functional, but basic. Ex: http://www.statmethods.net/advgraphs/images/splotm.png

Alternatives like Matlab, Maple, Stata all have basically the same 'look' to their default graphing packages.

Even though Mathematica would not be the right choice for statistical processing, the graphs it produces are a step above the rest.

So depends what you're use case is.. any of the above would look good enough for an academic paper. But if you're going to be publishing these in a magazine, they probably won't cut it.


> R has some basic visualization libraries

If you include CRAN packages, then this couldn't be further from the truth: http://addictedtor.free.fr/graphiques/

R can be made to produce beautiful visualizations.

Edit: here's a link to the top-voted thumbnails of R visualization: http://addictedtor.free.fr/graphiques/thumbs.php?sort=votes

IMO, since it can be scripted from the command line, it's high time Gnuplot died a graceful death.


I have used R/ggplot for a long time now, and it's exceedingly difficult to produce beautiful visualizations.

The only thing that makes tufte-quality visualizations in my experience is hand-building your graphs in tikz.

The graphs you linked to are hideous from an aesthetics point of view; font's are ugly, data:ink ratio far too low, color choices poor etc.


Especially when you have such pretty defaults in things like Matlab and Mathematica.

Matplotlib (http://matplotlib.sourceforge.net/) is actually the best opensource library for creating great looking graphs that I have come across, and is comparable to Matlab and Mathematica.


I've looked at matplotlib but still think it's ugly by default.

Compare to:

http://www.texample.net/tikz/examples/weather-stations-data/

http://www.texample.net/tikz/examples/rna-codons-table/

The beauty of tex font's + vector graphics is impressive. Try zooming in on the sparklines in the first example


I guess taste comes in place - I find producing good (as in academic publication good) figures in matlab an exercice of pain. The subplot mechanism is awful (at least was 5 years ago), and it is hard to control the layout. I heard mathematic is much better in that regard, but never used it myself.


For anyone who checked this thread again, I'd just like to say thanks for all of the replies.


Just use R -- the stats support is IMO the best in the world and it has very high adoption amongst stats grad departments and practitioners of statistics. The visualization tools work well -- I've written about basic plotting tools, but if you're just starting in R, skip the built in plotting tools and just use ggplot2. It allows you to build astounding graphics.

Of course, any of this is a time investment, but I'd say the only alternative is Matlab - S-plus is stupidly expensive and no better than R, Stata is a pain for any sort of automated processing, SAS is overpriced by an order of magnitude with a hideous learning curve for functionality that lags 10 years behind R, and Mathematica is brand new to the market. Let someone else work out the kinks.


Is SPSS any good?

I have used R for projects, but quite a few researchers I know use SPSS.


SPSS is quite good, for certain things. A lot of researchers use it because little-to-no programming is required, and you can interact with it in an entirely GUI-way- if you can use Excel, you can use SPSS. It makes it easy to set up certain analyses, and gives lots of output... and there's where my concerns about it come up. It's easy to fall into a false sense of security with it, and to end up with statistics that you don't know how to interpret properly (I call this the "Huh. Now what do I do?" problem). The documentation is often pretty useless on this front as well- lots of pages follow this general pattern: "Jones Test of Gronkularity: If checked, SPSS will calculate the Jones Test of Gronkularity statistic, which tests the null hypothesis that the data are gronkular", as opposed to useful information about why you might care whether the data are gronkular or not, why the Jones test was included in another test's output, etc. For a product aimed at people with relatively limited technical capabilities, I feel like SPSS should have better docs.

One important thing to know about SPSS- that a lot of people don't- is that is really a programming language, for which the GUI is simply a code generator. I find that it's almost always easier for me to interact directly with the under-the-hood guts of SPSS than the GUI, although sometimes when setting up a new analysis for the first time I'll use the GUI to do most of the work and then tweak its results.


Thanks.


I'm a little disappointed by the opencl/cuda support. I was hoping they'd be fully integrated with native algorithms in mma. Instead you need to change your code to call CUDAfft[] or whatnot. It should just choose the right fft to use, or supply a checkbox in preferences.


Mathematica programming language is somewhat symbolic, like Lisp; so you could just "rewrite" your expressions to use CUDAfft[] or whatever very easily.

Example:

  Hold[Times[1,2]] /. (Times -> Plus)


Eh. I'm a graduate student in mathematics, and it unless a problem is more or less trivial, it takes too long to force Mathematica to do what I mean.

Also I agree with a poster below: this press release is really low on the signal-to-noise.


Personally I use Mathematica as a sketchpad for playing around with ideas and getting a feel for a problem. It is great because I can type in my sloppy half thought out ideas in a fairly natural syntax and Mathematica will generally do something sensible with them. Once I've gotten a handle on what I need to do and actually have to start getting results I leave Mathematica for matlab, python or C.

That being said I've met some really great Mathematica programmers, and the stuff they can make that program do with only a few dozen lines of code is truly amazing.


Looks decent - I'll certainly try the demo. Though I'm no mathematician Mathematica is my favorite Maths playground software.

I'm curious about their implementation of NLP. This has enormous potential as a teaching tool - the biggest hurdle to getting more out of a package like this on first use is not knowing how to interact with it. However, I had had similar expectations of Alpha, and was greatly disappointed. though full of witty easter eggs and stocked with a rich variety of datasets, exploratory queries proved sadly frustrating.

Here's what I want to see in version 9 (laugh now, realize I'm right later): Kinect interaction. Perhaps unwittingly, Microsoft have just launched the next great peripheral and it seems intuitively popular with the public in a way I haven't seen for years and years. Now, imagine you've generated or imported a mathematically-specified 3d object in M., and imagine it inside a bounding box with handles on the vertices and local minima/maxima. Multi-point, multi-d interactivity would be both absorbing for students and potentially extremely productive for professionals, without requiring significant retooling of the core.


I bet this will be possible whenever a PC driver for Kinect becomes available:

http://reference.wolfram.com/mathematica/ref/ControllerManip...

About a year ago, I was working on a machine learning problem. I had a lot of training data I wanted to manually classify, so I put together a Mathematica interface for the data that would let me browse the training set and assign classifications from a USB gamepad. It was pretty straightforward... only took an hour or two to implement, and it sure beat classifying with mouse clicks!


Only problem with that is the fact that Microsoft could either retool the kinect to disallow the use by mathematica. Some other third party would have to work similar to kinect for it to actually happen.


That's true, but I doubt they will - and if they do, hordes of imitators will appear. My hunch (ie I have no evidence whatsoever for this) is that MS's huffing and puffing over people's reverse engineering of the Kinect was little more than posturing designed to increase viral interest. If they really wanted to keep it limited to the Xbox they'd have forced a proprietary connector to one of the memory expansion slots or such, rather than giving it USB 2 and acting surprised when people tried plugging it into other devices.

Intentional or not, it's having a good launch - word is that it's flying off shelves, and seems to have instant mass appeal. I was at an information management technology conference a week ago, and guess which two booths were the most crowded? The ones that were trading 3 minutes of sales pitching for a go at Dance Dance Revolution or whatever the Kinect version is called. Incidentally, the other thing being used to bribe jaded conference-goers was the prospect of winning an iPad every hour - there must have been 30 exhibitors using that one.


Home edition (hobbiest, non-commercial): $295 Professional edition: $1095 (Windows, MAC, Linux) An amazing product, IMHO.


Professional is still $2500 for me. Someone on Reddit reported seeing the $1095 price in Firefox and the $2500 price in Chrome.


Is it just browser they discriminate on, or what? That's a heck of a discount. Makes me wonder if I should do some experimenting to see how to get lower prices...


It looks like lots of nice new features. The statistics area looks greatly improved. (It was kind of weak before, compared to R). You can import any of the Wolfram|Alpha data sets, and directly manipulate them. I like the financial charts, which were more or less impossible before. The C integration might be useful. I'll also like the improved word processing, so you could write a decent looking paper in MMa.


There's a great open source alternative to Mathematica called Sage: http://sagemath.org. It's purpose is to offer the same sort of functionality as many of the commercially available math programs but only using free and open source tools.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: