During my studies in geodesy and surveying, we did a lot of linear algebra computations, as adjustment theory requires matrix computations. Naturally, Matlab was used a lot – although I preferred to stick with C++ most of the time, which necessitated writing my own matrix library. But there’s no denying that Matlab is extremely powerful in how easy it is to do matrix computations and plot data. And there is of course much, much more functionality in Matlab and its add-on libraries.
Unfortunately, there’s a downside: Matlab is quite expensive. Luckily, there’s GNU Octave, an open-source implementation of the core Matlab functionality. It even uses the same .m file extension as the syntax is identical. I use it whenever I’m prototyping something, as its built-in linear algebra functions and the interactive mode are perfect for this. I’m not a big fan of Matlab-style code for bigger projects because I think it lends itself a bit too much to messy code, but it’s great for smaller stuff.