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?
There's a reason why they insist that you all get MATLAB, and it's because of compatibility. Like you've mentioned in your story, there's one function that wasn't working on Octave. If they don't standardise and let every student decide themselves which software they want to use, every different software will probably have different incompatibility and different functions will be broken on different software and a lot of resources would need to be spent on debugging for all the different softwares out there.
There's no reason that standard should be MATLAB though.
I had a physics class that required Mathmatica and a stupid expensive textbook. The professor said the college forced him to use those because the college gets a kickback for it. Luckily he was awesome and told everyone that we could buy the much cheaper older version of the book and pirate the software.