There have been multiple accounts created with the sole purpose of posting advertisement posts or replies containing unsolicited advertising.

Accounts which solely post advertisements, or persistently post them may be terminated.

A story of MATLAB piracy

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?

xemnas ,

Well, you were definitely way smarter than me, since I tried to do exactly the same thing two years ago but I couldn’t make for the life of me GNU Octave to behave anywhere similar to Matlab, so instead I created a virtual machine.

Congratulations, my friend!

mafbar OP ,

Well, one context that I left out was that the course was pretty simple. We learned some basic loops, graphing, matrix operations, and writing some basic scripts to solve some problems. If you need a higher level functionality, then you’d probably struggle with GNU Octave, I don’t know.

hungofhydra ,

I graduated from my STEM Course on Feb this year. In my 4.5-year course there are total of 5 classes in which we must use MATLAB. But all of my professors agreed to let student use alternative, such as Octave and Python. I remembered vividly one of my classmate who got highest scores somehow use Python and draw a chart that’s even more beautiful and easy to read than most of MATLAB users.

4 of my professors encouraged us just pirate MATLAB. One even gave us his pirate version that he saved in Google Drive.

mafbar OP ,

So it can be done, simple as that.

EuroNutellaMan ,
@EuroNutellaMan@lemmy.world avatar

I had a let’s say introductory course on computational methods for biotech and while matlab was mentioned they taught us python instead and they had us use free software (Thonny)

mafbar OP ,

I’ve just discovered Thonny! I’m not sure of the exact advantages over just vanilla Python though. Maybe because it’s an IDE.

EuroNutellaMan ,
@EuroNutellaMan@lemmy.world avatar

That, it’s just very easy to use

Willer ,

Our uni basically transitioned to python plus matplotlib at some point. Not because they wanted to get rid of the paid matlab license but because python got quite popular.

I think the students still get the matlab key for free.

mafbar OP ,

It really depends on the course, but I think for general undergrad stuff, Python should be capable for most things.

CaptainBlagbird ,
@CaptainBlagbird@lemmy.world avatar

I think I know that course coordinator xD

We had pretty much the same experience. The guy was even kinda pissed off when I said the same could be done in Python too without much additional effort. So our whole class also used the “free student version” 🏴‍☠️

In my opinion it makes a huge difference between pirating for education compared to pirating for commercial use.

mafbar OP ,

As another commentor said, it kinda depends on what is the purpose of the course. If the purpose was to actually teach you the MATLAB ecosystem, then yea, sure, teach it all you want, but the institution has to provide the software.

But for an intro course? The students should probably be able to just use what they want.

CaptainBlagbird ,
@CaptainBlagbird@lemmy.world avatar

In another course (statistics if I remember correctly) by another teacher, we actually had to interpret and write MATLAB code on paper, so it was absolutely necessary to be familiar with it even though it was not the actual topic of the course and it was never mentioned as a necessary tool for the course or whole study. There were only books listed that we had to get beforehand, which is pretty normal. Imo they should at least have listed it there, or provided it to the students.

Javi_in_4k ,

It’s morally grey, but I would’ve done the same. The important part is learning to code, not the language.

stebo02 ,
@stebo02@lemmy.dbzer0.com avatar

If you’re gonna force the students to use Matlab, you gotta provide them with a license. If the teacher can’t convince the institution to get these licenses, they should provide a free alternative.

mafbar OP ,

Yeah, then other languages should be allowed as well.

mightysashiman ,

No it is not. You should have told the coordinator: fine, provide us the software.

mafbar OP ,

I’m not sure what would have happened had I insisted. I imagine that they’d probably ask us to obtain it on our own though, based on my memory that they were insistent that everybody must have it.

IphtashuFitz ,

I’m an old geezer, having graduated from college over 30 years ago now… This doesn’t have to do with piracy, but with professors. One advanced course I took covered topics that included AI and chaos theory. It was taught by a visiting professor from another country and she was terrible. It was clear she was just regurgitating what was in out textbooks without trying to really understand it.

One day she was out and we had another professor with an actual background in AI fill in. We learned a lot that one day.

Our college had anonymous evaluations that students would fill out on the last day of a course, and the college really pushed the claim that they were taken seriously. Before the day came to fill these out most of the students in the class got together and formed a plan. We all agreed on how we would fill out the questions. For example, one question asked what we liked best about the course. We all agreed to write something along the lines of “the day the professor was out and the other professor taught instead. We actually learned a lot that day”. We never saw that professor at our college after that year ended, and like to think our evaluations were a big part of the reason. The bottom line is that we provided a united front for our grievances through those anonymous evaluations.

If your college offered similar sorts of course/professor evaluations I would have tried to do the same thing in this case. Get as many members of the class to band together and point out the issues of having to “obtain” MATLAB, and being unwilling to consider free alternatives. If your college doesn’t do these sorts of evaluations then getting multiple students to write complaints to the department head, etc. might be a viable alternative.

EuroNutellaMan ,
@EuroNutellaMan@lemmy.world avatar

This is a good idea. I am a student representative for public student housing and sometimes we have to resort to encourage other residents to do some “mail-bombing” (as in sending a lot of emails not the Teddy K method) to get things done.

We also have tose evaluations, albeit we do not coordinate what to write there, our professors aren’t that bad and when one was it wasn’t necessary for her to get so many bad evaluations she was fired.

iconic_admin ,

I graduated with a BS in electrical engineering in May of this year. We used Matlab in multiple courses in the program. We were encouraged to purchase the student version of Matlab. However, all three professors in the program were 100% ok with students using Octave or whatever software you wanted, as long as the work got done.

Your professor sounds like a dick.

bobs_monkey ,

It could also be that some admin or department chair was getting some form of kickback for implementing Matlab, and required subordinate department professors to include it in their curriculum/syllabus. Just look at how Pearson shoehorned their garbage software into upper education, to the point where students are required to pay $100+ per class just to complete homework, and it’s no secret that administrators and department chairs receive kickbacks for it.

mafbar OP ,

Even though I’m generally for open-source software, I know that in heavy duty use, highly niche specialisations, and in industries in general it’s difficult to find equally competent software. That’s why I put emphasize on my specific situation, where it’s an introductory course. Heck, we ended up doing what could be done in Python anyway.

PrincessLeiasCat ,
@PrincessLeiasCat@lemmy.world avatar

As a degreed mechanical engineer, yes. I never would have graduated without it.

mafbar OP ,

I see. That’s a bit rough that we require proprietary software to graduate.

bankimu ,

This is a case where the class is led by a moron. That person should be reported.

Piracy for the students was justified because they had no other option. But outside of this school, if I were you and I needed the software again, I’d definitely use Octave without question. (Or Python if I’m willing to learn something new.)

The point is, if you have free and open source alternatives, use them. You’ll be better off.

Puzzle_Sluts_4Ever ,

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.

timkenhan ,

Lol numpy & scipy is for hobbyist? Clearly you’re not in the industry.

desconectado ,

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.

fadhl3y ,

I work in Computational finance. I don’t think I’ve seen Matlab in over a decade. These days it’s 100% Python

timkenhan ,

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.

ghariksforge ,

I think Python has killed the main use case of MATLAB already. Schools should not be teaching MATLAB.

mafbar OP ,

I’m not sure about that since I’m not in any field that requires MATLAB at the moment. However, my specific case is for undergraduate introductory courses, and perhaps even at schools. To go even beyond this conversation a bit, any numerical / computational / algorithmic principles should probably be taught using Python. I had another numerical methods course where students can use any language they want, either C or C++ or Python. So I know it’s possible.

Puzzle_Sluts_4Ever ,

Mentioned above “Why Matlab” but to add on:

It depends on what the goal of the course is. If it is to teach you how to write a filter or do some numerics, it doesn’t matter what toolset you use because it is the end result that matters (within reason). If it is to teach you a workflow? The workflow is “matlab”

mafbar OP ,

I agree with that. It’s similar to Photoshop or Premier Pro. Sure, you could maybe, perhaps use open-source alternatives. But you’ll have to get used to a different set of (usually separate) software, dissimilar to what people all over the world uses.

Bitswap ,

Hard disagree. Nothing comes close to MATLAB + Simulink. Nothing is even trying to cover the same usages.

Spaceman2901 ,

It’s not optimized for it, but you can do anything you can do in MATLAB+Simulink in Python. Including iterative operations. I’ve used both, and honestly I’d rather use Python.

Bitswap ,

You can do anything with python. Just like you can do anything with C/C++. It’s a matter of time and knowledge. MATLAB + Simulink beats python hands down, that’s why it’s so widely used for controls. Why waste time and money to customize python to do everything.

You can walk anywhere…but I bet you don’t only use that mode of transport (i.e. you bicycle, drive a car, ride the bus/subway, fly, etc.)

folshost ,

I dunno. GNURadio uses Python and C++ and you can do a lot of the same things

WillyWonksters ,

Hopsan shares similarities with Simulink, and can also work together with it.

Bitswap ,

Will have to check it out. It’s a new name to me.

AlmightySnoo ,
@AlmightySnoo@lemmy.world avatar

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.

FigMcLargeHuge ,

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.

AlmightySnoo ,
@AlmightySnoo@lemmy.world avatar

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 (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…

mafbar OP ,

I’m not sure how it works in the US but where I’m from, the way lessons are conducted are typically like this:

  1. Professors hand out lecture notes, typically in the PDF format. So, students will either print or just use their phones/laptops to follow along the lectures. It’s either this way, OR
  2. Professors will list out recommended readings for this course, and it’s up to you how you obtain the source material. Most people will probably just download the PDFs and take down notes during lectures.
  3. We were never required to buy any books.

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.

kilgore_trout ,

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.

desconectado ,

In South America too. Professorors provide PDFs and in my time even photocopies of the relevant chapters.

mafbar OP ,

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.

bobs_monkey ,

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”.

foonex ,

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.)

bobs_monkey ,

California. I’m jealous of y’all’s consumer protections, here we don’t have much choice.

Fried_out_Kombi ,
@Fried_out_Kombi@lemmy.world avatar

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.

mafbar OP ,

I think that’s ideal! It’s supposed to be a lesson on numerical methods, not MATLAB.

mafbar OP ,

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?

anothercatgirl ,

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.

SafetyGoggles ,

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.

mafbar OP ,

I agree with that. It’s much easier streamlining software choice rather than letting people choose their own alternatives, since it’s a mess to integrate workflows and all that.

My issue is that we’re basically forced to pirate for an introductory course, where I actually don’t even think it’s necessary to use MATLAB. You can use GNU Octave or even Python. It’s quite frustrating.

LanyrdSkynrd ,

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.

30021190 ,

IMO the benefit of making MATLAB the standard is that it’s tried, tested and can be verified my many other institutions. It is however a dick move for the institute to not provide access to the software they standardise on, even if it’s remotely used.

pokemaster787 ,

There’s no reason that standard should be MATLAB though.

I can’t speak to OP’s field, but in my field (automotive and electrical engineering) and even within my company, MATLAB and Simulink are heavily used. The reason it’s the standard is that it’s an industry standard. MATLAB on my resume almost certainly got me the foot in the door for my first job.

YMMV on if you could get an employer to let you use a different software, but big companies tend to be very protective of IP and are wary of that.

kilgore_trout ,

My bachelor degree includes that I spent months practicing Matlab, but actually I only used Octave until two days before the exam.

kitonthenet ,

No question, matlab isn’t making their money off students, they make money when your work has to buy you a license, where it costs $1k a head

mafbar OP ,

It’s $1K per head?

kitonthenet ,

Yeah, $940 for a standard license (per year) https://www.mathworks.com/pricing-licensing.html

Anders429 ,

Yep. A commercial license is $940 a year, and as far as I understand you need a separate license for each person using it.

cpo ,

…per year?

ShortShiftingT ,

We used Matlab back where I studied and the faculty did provide the software for free through a central license server. Since internet wasn’t as prevalent and stable back then, a good chunk of students did pirate it anyway… so there’s that…

I’ve been using and continue to use SciLab and Octave privately and even at my job. It’s great for calculations, simulations and for data analysis, if you’re not doing it in dedicated tools and don’t require a neatly designed graphic interface. Where we ran into trouble was with toolboxes, hardware integration (HiL) and safety. For a business it doesn’t make sense to spend all those resources (the workers’ time and skill) to build all those tools etc. when Mathworks already does it and you’ll always be trailing them. Also as soon as you try for ‘safe’ software and are restricted to specific hardware (which is being developed and updated regularly itself), the whole process becomes way too cumbersome, while Matlab has specific toolboxes for specific hardware. And as a last point: Matlab has made alot of progress in terms of the interface and automation in the last few years, so more people can easily use it.

So there are differences but it really depends on the specific circumstances, whether they merit the price.

mafbar OP ,

It’s probably the main reason why I think most open-source software will never be able to replace their proprietary counterpart: the fact that proprietary software are typically developed for either massive or highly niche industries, and so they are funded and are basically now integrated inside the ecosystem of such industries. As people use it more and more, Mathworks will develop more toolboxes with hardware integration, until it basically becomes the de facto software for that purpose (e.g. computation). I’m all for open-source software, but I don’t see a way out of it. Big companies with mega budgets can always improve their software, far outpacing any alternative open-source projects.

I don’t use MATLAB nor GNU Octave for my work, but I imagine that the hardware that I’ll operate on probably require MATLAB, and so there’s no incentive for me to use GNU Octave, especially if it has poor hardware support or lack of toolboxes or whatever such issues. This is a natural consequence of open-source alternatives being built from scratch typically with volunteers. That’s insane to me that GNU Octave is still somewhat usable for some basic computational work.

  • All
  • Subscribed
  • Moderated
  • Favorites
  • [email protected]
  • random
  • lifeLocal
  • goranko
  • All magazines