Hacker News new | ask | show | jobs
by wakeupcall 1202 days ago
My experience: you get code from a fellow researcher using matlab, and nobody in your institute is using matlab.

Getting approval for licenses is much harder than you'd think. The money is the smallest part.

In the end you just want to run the code once or twice, most of the time octave is going to be enough with zero or minimal changes. Cannot count the amount of times octave saved the day.

2 comments

I've tried this many times in my career and it unfortunately almost never works out of the box for me for anything but the most trivial examples. Either they're using some library or toolbox that Octave doesn't have, or they've used it in a way that isn't 100% compatible with Octave.
I can believe this, the status of the various libraries/toolboxes is not all made equal so YMMV depending on the field.

We had a few cases where this was the case involving the signal processing toolbox for example and couldn't reproduce the same results. In such cases we just refused to participate in the consortium.

In my old field we were mostly using R. If there's no active use of matlab, it doesn't make any sense to license it for a single collaboration. By the time you need it again, the license would be expired. And this completely ignores the "how do you want to run it", which for us involved a linux-only cluster. It's literally trashing money and time.

Commercially-licensed software is a true pain for research and collaboration, it doesn't matter if it's any good or not.

Commercial software is indeed a pain unless your entire organization uses it. If you're the one person in your organization that needs commercial software "X" it can be very annoying. First of all it's a major pain for the purchasing team, then your IT folks or yourself have to get it to run and there seems to always be some library or DLL missing or something.
Had to reread five times before realizing "fellow researcher" was not "in your institute."

Commercially-licensed software is a true pain

I'm sorry the fruits of our labor don't come free. Some of us enjoy resort vacations.

When tied to academic research this has bigger implications.

Reproducibility is difficult or impossible to assess when there's no source, and it also requires higher barriers to entry (= money). The output of that research will also be tied the commercial license: academics can often get better offers, but you as a user are going to be outpriced.

I'm biased for sure, but I'm a deep believer in open research. The output of what I do/did should be free for everyone.

R being fully open and free is a big part in what it made it so popular in research.

Agreed. Software that is free for academics might be $10,000/year for an industry user with a ton of red tape to boot. I hate it, but they have to get the money from somewhere unless it's fully open source. Sometimes that works and sometimes it doesn't as well.

As it sits, they like to get users hooked in college and then they're less likely to ever switch.

First up, as the gp explains, the cost isn't the biggest hurdle.

Secondly, research institutes have little money. For example: you may think the world has been on HDMI since somewhere around 2010 or so. Think again. End of 2021, my research institute replaced their monitors, which meant i no longer was using VGA out on a daily basis.

(Computers typically are on a 3- or 4-year replacement cycle; monitors, projectors, keyboards, etc. aren't. )

Third, what if my university decided to buy Mathematica instead but this week I have to collaborate with this guy whose university Matlab?
If the code is only a few pages, I would expect it to be rather easy to translate for most cases.

Mathematica is a rare exception as it is generally used in a much more functional programming esque approach than the imperative/OO style common elsewhere. I find pushing data to black box Mathematica functions to be very simple (and they have stuff for practically everything), but some very simple stuff eludes me due to the language model.

So I guess your point stands (especially if it's a large code base).

Translation may involve translation errors.

There's value in running exactly the code which a researcher used in research to evaluate said research.

I understand you now and agree.
Missing the point by a country mile. No-one complains about AWS licencing because it's easy: create an account and pay for what you use. Most commercial software is a pain because you have to keep track of licenses.

Oh, and working with Open Source software means I get paid approximately double what an equivalent Microsoft specialist does. Learning Linux has been the biggest payoff of my career.

I didn't. One-for-one products like AWS instances lend themselves to less obtrusive enforcement. One-for-many products like desktop software require pain-in-the-ass key management.

You're an IT guy for a [insert commodity here] manufacturer. Nothing wrong with that. When the IT itself is what's being sold, you have to protect your product.

Heh, I am indeed an IT guy. I'm an SRE who spends his time fixing screwups by devs when I'm not teaching them about systems.

It's a big world out there kid.