Hacker News new | ask | show | jobs
by tpoacher 1688 days ago
Matlab is an excellent language. With great packages, C/C++ interoperability, seamless GPU support, and JIT compilation. Arguably it w is easiet than python for this purpose.

But. It's commercial. And thus prohibitive to the hobbyists and enthusiasts who are ultimately reaponsible for this kind of network effect.

And while I have a lot of love for octave, without the slew of proprietary packages and functionality available to matlab, it is hard for it to compete in such an ecosystem, despite some nice courses out there that use it (notably Andrew Ng's ML course).

If more people contributed open source packages to octave I'm sure it would become as big a player as python.

(inb4 julia: yes, but julia has other problems)

2 comments

Regardless of whether Matlab is a good language, it is looked at as a one-trick pony. You would never instinctively reach for Matlab to write a quick web server or to scrape a third-party API. What Python brings is all of the math and data analysis code that was noted and everything else in the Python ecosystem. It is not just that you get the Numpy, Scipy, scikit, etc collection but you also get to add everything else Python is used for as a bonus. This leads to virtuous circles where the AI/ML code is made easy to apply to other domains, so it becomes more widely known within that domain and this in turn leads to more support for those same AI/ML libraries.
MATLAB is fine and could have continued to be the dominant player. MathWorks the company is hot garbage and basically destroyed the ubiquity of MATLAB.

That's pretty much the alpha and omega. MATLAB had a 20 year head start on everybody and wasted it because everybody hated MathWorks so badly.

It's weird ... if you asked me to provide evidence for it, I would struggle to find THE ONE major thing (or let's say 4 or 5) that did this for me, but what you described is exactly how I feel about Matlab and Mathworks. Perhaps it was just death by a thousand paper cuts?

Which is odd, because while Octave is effectively 99% the same language, I adore octave and hate matlab with a passion.

The one aspect of the company I do admire however, is the quality of the documentation they provide.

Matlab documentation really sets the bar on this. Python doesnt even come close (let alone julia, where documentation is, alas, more often than not an afterthought...)

I'm curious, having heard of Matlab but never used it, what exactly did MathWorks do to turn everyone away from them?