I would just like to share a story, and probably an opinion as well. When I was doing my STEM undergraduate degree a couple of years ago, I took a course in which I had to use MATLAB. I won’t disclose too much information, but it was a course involving computation.
Well, we (the students) weren’t given a student/institutional license of any sort, but the course coordinator still insisted on using MATLAB. We took it as an implicit instruction to “somehow” obtain MATLAB. In the end, one guy in our class pirated it and distributed it the whole class.
Before that though, I did approach my course coordinator, asking them if it’s possible to use other software like GNU Octave, which is a clone of MATLAB. Personally I think it should also possible to use any other programming language like Python for example, since the important part is the computation part, in my opinion. They refused any discussion and did not even consider alternatives, instead basically forcing us to “obtain” MATLAB. How else? Well.
As I have said, we all pirated it in the end.
I did something quite interesting though, which is that for every quiz, assignment, and projects that we had, I’ll run the same exact MATLAB code on GNU Octave, to see if it’s compatible. And it is. It works flawlessly. There’s only one function that GNU Octave didn’t support back the (this was a couple of years ago), and even then, it wasn’t an essential feature, you could use other software for that function as well.
By the end of that semester, I had compiled almost all input/output of the MATLAB code alongside its GNU Octave’s counterpart, to demonstrate that we didn’t need to pirate MATLAB to get through this undergraduate course.
Regrettably though, I didn’t follow through. So sad!
Do you think piracy is justified in this case?
Not if it is for a course.
There is a reason basically every non-software engineering discipline ends up using matlab at one point or another. Many companies love matlab and consider it the industry standard.
The rest? They know matlab is shitty. Because matlab is Fortran. Most of the same concepts and even a not too dissimilar syntax from some of the more modern standards. Teach a kid fortran and they will set your car on fire. Teach them matlab and they will grumble but at least it is a tool from this millennium. But when they get a real job and suddenly have to port or fix some legacy code? They are going to be REAL pissed when they realize they can follow said legacy code.
Using octave or numpy+scipy or whatever is better if you are doing hobbyist work. If you are training to do this for a career? Knowing the baseline tool is the actual value of that course.
Lol numpy & scipy is for hobbyist? Clearly you’re not in the industry.
I’m guessing he means in engineering (excluding computational). I’m a chemical engineer, and yes, MATLAB is everywhere, only few know about Octave, and python is used mostly for personal projects, I’ve never seen it in an industrial environment, apart maybe web base user interfaces, but don’t get me started with LabVIEW.
I work in Computational finance. I don’t think I’ve seen Matlab in over a decade. These days it’s 100% Python
Not familiar with MATLAB/Octave myself, but I’ve seen numpy being used on two different professional projects, both of which I was involved with. scipy gets used less often due to its niche nature, but it’s around as well.