I went to the “fileexchange” section of MatlabCentral to have a look at user-provided “toolboxes”, just out of curiosity.
Maybe I just discovered hot water, but the comparison with Julia packages is astonishing. Already, most of the stuff there is tutorials/single functions. But, even if we select “Tolboxes”, these are for the very most part very basic, unfinished, incomplete functionalities.
There are very few toolboxes that are based on a versioning system, with proper testing and documentation, issue tracker… Basically, aside the official MathWork Toolboxes and a handful of other packages you are left alone…
yeah MATLAB is like that, if MathWorks get that much money, they ought to provide the support and users should never complain right? /s
In reality I always see labs use MATLAB like AutoCAD, all official packages, some from third-party vendor (NationalLabs for one), and with home-brew legacy code stored on a lab computer without git repo / docs most of the time.
It is important to keep in mind Julia and Matlab are products of a different era. Julia was conceived well after collaboration of programmers using version control to write free software became pervasive, git became a de facto standard pretty much everywhere, and unit testing trickled in into scientific computing. Then it kept picking up a lot of best practices from other languages (eg for reproducible environments).
It is tempting to pat ourselves on the back for being so organized etc, but a lot of this just comes from practices evolving (independently of Julia). Yes, a lot of legacy code out there is disorganized, buggy, and undocumented. But it may just come from 1990 when CVS was a novelty.
The incentive structure of Matlab works against open source collaboration. MathWorks make a lot of money out of subscriptions to their Toolboxes. Why would they facilitate a package environment that would actively produce competitors to their business model?
In fact, the file exchange is so lacking in rigour that many “proper” MatLab packages are never listed there. I remember over a decade ago there was a fantastic, comprehensive, MatLab package for Financial Econometrics written by Kevin Sheppard. But if you wanted it, you downloaded it from his personal web-page. Similar stories exist for many other packages which were frequently just hosted by the authors university.