5 ms·
Honestly I read most of those reasons as reasons for not being free and community-driven as opposed to not being open-source, and also more as a post-hoc justif
by carlob 8y ago
Honestly I read most of those reasons as reasons for not being free and community-driven as opposed to not being open-source, and also more as a post-hoc justification than a prediction on what will happen in the future.
As a matter of fact a large part of the Mathematica codebase is inspectable (the part that is written in Mathematica itself) [1].
Disclaimer: I'm a Wolfram employee, but these are my opinions and any decision on open sourcing the language would be way above my pay grade.
[1] https://mathematica.stackexchange.com/questions/1742/what-is-the-most-convenient-way-to-read-definitions-of-in-memory-symbols-when-we https://mathematica.stackexchange.com/questions/1742/what-is...
- jordigh 8y agoMost of Matlab's source code is visible too and its license allows you to modify its visible source code and share it with other license holders too. But that's still not enough and that's why I still sometimes work on Octave (although I've been semi-inactive for the past few years). Freedom isn't a spectrum; it really is all or nothing. Unless we're all free all the way, none of us is. It's not fair of me to share Matlab or Mathematica source code with people who cannot have access to the software that runs it, especially from a mathematical and scientific point of view where reproducibility in software should allow anyone to acquire that software.
- IshKebab 8y agoThat's not true at all. Lots of the actual Matlab code (i.e. code written in matlab) is available. But none of Matlab itself is. That's where their value is. Octave has fairly easily replicated a huge amount of the mathsy part, but is their GUI or plotting code any good? Not when I last tried it.
- deleted 8y ago[deleted]
- jordigh 8y agoPrepare to have your mind blown, friend, try `type trapz` or `type cumtrapz` in Matlab and read Mathworks-written m-file code to your heart's content (but if you do, you're disqualified from ever contributing to Octave). Or even try `edit xlsread` to edit that source code. Less excitingly, read its EULA. I can't find a copy of it because they don't publish it, but I do remember a part that allowed you to modify and distribute Mathworks-written m-code to other Matlab license holders.
- carlob 8y agoOne of the directions the company is taking to address this is to allow for running some things as a free tier on the cloud. But I think the open vs. closed source discussion in academic research is not really about that: lots of Mathematica code is fairly concise and highly automated. Let me make an example: suppose you're minimizing some complicated function and you claim to have found some minimum with Mathematica. Your source code looks like NMinimize[complicatedFunction[x], {x, 0}]. If I wanted to reproduce your result I would not need to use Mathematica, but access to the internals would allow me to see what tricks I need in terms of minimization method used, whether or not extended precision was necessary, etc... Being able to rerun that black box minimization independently for free is not really reproducing my result, because we might both be observing the same bug in Mathematica.
- jordigh 8y agoI believe your job depends on you defending black boxes, but black boxes have no place in science or mathematics, at least not any black boxes that we create ourselves. That's my point. I shouldn't just tell you "minimise, this function, it worked" (or it didn't, who knows why). We should both be able to see exactly what that minimisation did and why it did or did not work.
- carlob 8y agoI think you misread my comment. I'm agreeing with you on the importance of being able to inspect the code and I'm strongly against black boxes. Where I don't agree with you is that open-source === free and community driven. There are a myriad of hybrid models where a for-profit company releases the code, yet doesn't accept pull requests from the community. The all-or-nothing attitude that you just showed is actually a very good argument for those who are against open-sourcing within a company like ours. Do you really think a company will go from commercial to GPL in one step because: "freedom is not a spectrum"?
- philipkglass 8y agoNon-free licenses that nonetheless make the source code available to licensees have long been used for scientific software. This licensing model alleviates concerns about black boxes even if it does not align with the FSF's mission. Is all Mathematica source available to licensees? Is there any additional cost for a source code license? I understand that most companies (and sometimes even research groups) need/want to maintain ownership of their software. I'm ok with that. But I'm opposed to licensing schemes like that of Gaussian, Inc. where a source code license costs more than an all-platforms site license.
- blt 8y agoI agree with you. I stopped using Matlab for my academic work because I don't consider the results reproducible. Of course, that hasn't stopped 99.5% of control theorists, but every bit of useful code released in the open source alternative makes it easier to switch.
- wemdyjreichert 8y agoI'm more wondering why Mr. Wolfram would open-source the code, rather than why he would not.