- Lots of libraries
- Nice graphical interface
- Lots of online help
- Matrices as a first-class citizen
I hate Matlab as much as the next guy, but it's deeply ingrained in academia.
- Lots of libraries
- Nice graphical interface
- Lots of online help
- Matrices as a first-class citizen
I hate Matlab as much as the next guy, but it's deeply ingrained in academia.
1) Large (within reason) easy matrix manipulations. MATLAB is fantastic at this. Matrices as first-class objects is so important, I don't know why more languages don't include them (though I am pleasantly unaware of the complications inherent to this).
2) Simple, decently pretty visualizations of data.
3) Trivial syntax. If you've programmed at all, it's easy to read MATLAB syntax.
IMO, the only threat to MATLAB on the horizon for academic work is Python + the associated SciPy tools (sckikit-learn, etc); especially as bundled in SPYDER, which I have had a blast with. But since cost is typically not an issue at a university (MATLAB is paid for by someone else), and everyone already speaks MATLAB, there's not a real impetus to change. (Julia may be int he running, too, but SPYDER seems more user friendly at this point)
Also, as someone who's been through this a dozen times before - as soon as a professor says "make me this visualization, the command in MATLAB is this" and the grad student says "SciPy (or whatever) doesn't have that", that student is converting his data to a text file, reading it into MATLAB, and making that damn plot :)
People take the internet way too seriously :/
>Apparently people are pretty polarized about Matlab
Yes, very much so. Much of the contention comes from the obscene licensing prices coupled with the fact that its a terrible language.
I hate Matlab, but I've got to admit that the toolboxes are without peer.
You can always use Octave.
It reads less like you are asking a question, and more like "well yeah, duh, of course that's why they did that".
> (him) This software was written in Matlab. Here is a link.
> (me) Why do you think they wrote it in Matlab?
I really don't understand how the intention of my question is ambiguous to anyone. But luckily this issue is completely trivial anyway I suppose.
There's a lot of excitement around the numerical computing tools that have sprouted up around Python, but I find the visualization capabilities to be lacking and writing numerical code in Python is really quite clunky where the same expressions in MATLAB are much more clear and concise.
In short: If you're writing lots of loops and conditionals, MATLAB is the wrong tool. If you're analyzing data, applying linear algebra or exploring using the tools of mathematics, signal processing and machine learning... it really can't be beat. Everything is just there, everything just works, everything is very well documented and there's a MATLAB implementation of everything new.
Only bummer is that it's expensive.
- That's what they teach you when you're a student.