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?
The fact that numerical analysis courses still shill Matlab is just incomprehensible to me. All the computer sessions can easily be done with no change of syntax using either GNU Octave or Scilab, or if one is ready to change languages, Python + NumPy. The professors who still keep shilling Matlab should be fired.
Don't a lot of professors write their own textbooks, and then shill those to the students as mandatory? Good luck upsetting this apple cart.
I'm not sure how it works in the US but where I'm from, the way lessons are conducted are typically like this:
So I'm personally unfamiliar with the "shilling" of textbooks which cost up to hundreds of dollars for practically the same content, which, from what I've heard, is quite common in US colleges. This seems to be a very strange concept to me.
I guess you are from Western or Central Europe as I am.
If professors require students to obtain some textbook, they should also be available inside the University campus for consultation.
Otherwise it was always only recommendations.
In South America too. Professorors provide PDFs and in my time even photocopies of the relevant chapters.
I'm actually from Asia. I don't understand requiring students to purchase a certain resource, if they're already available elsewhere, or if similar resources already exist. I mean I understand it, I just don't like the whole system.
Depends on the professor. I had several who wrote their own books, and it was a mix of buy the book for stupid expensive and if you don't have your own "professionally produced" copy purchased through my website or the college store, you automatically fail this course, to "you can find it on LibGen, here's a link you should totally not follow".
Where was that? At least the part where they force you to buy the book from their website or the college store would be illegal in the EU. (I am not a lawyer.)
California. I'm jealous of y'all's consumer protections, here we don't have much choice.
oh boy if we're going to list all the corruption that takes place in academia it would never end: shilling textbooks and proprietary software (that's the only reason Matlab survives), the usual power struggles (classic), professors forcing their phd students to add them as co-authors (again a classic, also happened to me), "anonymous" reviewers in "prestigious" journals informally conditioning the acceptance of your paper on you citing one of their papers (happened to me many times) etc...
I had a numerical methods class where the prof let us do the assignments in whatever language we wanted. It was nice because 1) fuck MATLAB, and 2) I'm a shill for Julia, so I got to do all my assignments in Julia. I saw on github at least one previous student for the course had done their assignments in Fortran. I suspect the vast majority did their assignments in Python, though.
I think that's ideal! It's supposed to be a lesson on numerical methods, not MATLAB.
I mentioned it to a couple of friends, but I think I didn't get it across well to them that GNU Octave is supposed to be syntactically compatible with MATLAB. Also, they're more comfortable using established software since everybody else is using them anyway.
Speaking about numerical analysis courses, I feel like one should be able to choose what programming languages they wish; the course should just aim to teach the fundamentals/principles of numerical methods, not what language to use. I get that it is much more convenient to streamline software choice, but still, why not use Python over MATLAB for undergraduate introductory courses?
also, give a try at Qalc's cli mode (with an input file as a list of equations), I think it's really really powerful. Its ability to add an unknown or unit to any expression is so much more useful than Matlab-like symbolic systems.