Matlab (actually it's MATLAB, but I don't like things that are needlessly capitalized) is a math/science/engineering computer application that college professors claim is "extremely powerful" and "a must-have skill".  To students, it's "a waste of time" and "unnecessarily complicated".  What I've realized just recently is that this reaction occurs because of how it's taught.  Matlab was introduced to me in a calculus class as a program that was able to graph functions in 2D and 3D.  This ability wasn't very advanced, seeing that my handheld calculator could graph in 2D in a fraction of the time and other computer programs could graph in 3D with a nice visual interface.  The fact that Matlab had a command line said to me that it was old and useless.  Everything's graphical these days, so obviously this program is outdated. 

But then I got out of school and entered a job that uses this program pretty extensively.  And I'm finally realizing its capabilities.  It's great for analyzing huge amounts of data.  It can easily plot things, and these things (arrays, vectors, etc.) can easily be manipulated.  The program's command line is what makes it so powerful.  Essentially, it's a programming language.  You can declare variables, perform mathematical operations, use if/then statements, etc.  This is what the professors never told me.  They said it was a tool to graph math functions.  It always seemed a little redundant to write several lines of code in order to plot a function when it could be easily done in other programs with fewer steps.  Matlab's website even says, "MATLAB is a high-level language and interactive environment that enables you to perform computationally intensive tasks faster than with traditional programming languages such as C, C++, and Fortran."  The thing that sets it apart from traditional programming languages is that there's no need for a compiler.  All data and information is entered directly into Matlab through the command line or a text file (M-file).  There's no need to create an executable, though this means that Matlab's functionality can't be ported to a non-Matlab-ready device. 

All in all, it's a great program, and I wish those stupid Ph.D.'s taught it the right way.  Buncha jerks. #education