18 ms·
I am not sure Wolfram Research realize what they have. If they would make their stack FOSS they would be absolute heroes and shape the future of applied math a
by picozeta 11y ago
I am not sure Wolfram Research realize what they have.
If they would make their stack FOSS they would be absolute heroes and shape the future of applied math and computation software with a historic impact. Otherwise they will fade away, when other interfaces (Jupyter & Co.) catch up and/or surpass it in its capabilities. More and more people will just not accept the closed nature as it inherently contradicts with the idea of exploration.
There are basically 3 scenarios:
- they go FOSS now: best outcome for people and Wolfram
- they go FOSS later: good outcome for people, more difficult for Wolfram, as they lose developers/community
- the don't go FOSS (or not in near future): Wolfram SW won't be used anymore as open alternatives surpass it. People won't care.
Even Microsoft got it.
- zekevermillion 11y agoI think Wolfram Alpha / Language is cool, but generally agree with your analysis. Is the Wolfram engine supposed to be a tool to better access indexed human knowledge on the net? Or is it about teaching people to think in a structured way about querying and manipulating this data? For the former goal, we really need to know what's going on behind the scenes of his program to weight the results. For the latter, what are we teaching if the language obfuscates the details of how it is interpreted?
- iofj 11y agoThe thing about Mathematica (and any other math product) is that it lets you increase the abstraction level of your thinking. If you have a smaller problem, first type it into mathematica, and see if it comes up with an answer. It means that you don't have to divert your efforts into that small problem. That said, mathematica has a function to have it explain exactly what it did to solve a particular problem. Example: http://i.stack.imgur.com/V9dxn.png http://i.stack.imgur.com/V9dxn.png
- zekevermillion 11y agoSure, Mathematica is great. But showing the formulas does not mean showing how the code was interpreted -- ie, translated into machine instructions. So it's good for exerting power over equations that have known algorithms for solving efficiently. Not to knock his achievements. I mean, what have I done that's so cool?
- lutusp 11y ago> The thing about Mathematica (and any other math product) is that it lets you increase the abstraction level of your thinking. The difference between Mathematica and other environments is that in the latter, you ascend from the trivial to the abstract, hopefully learning the entire structure as you go, but with Mathematica, you're deposited on a mountaintop with no obvious pathway down. > That said, mathematica has a function to have it explain exactly what it did to solve a particular problem. Yes, but this doesn't work for the more advanced features. If it did, someone could simply copy down the conversion sequence and recode it for a different environment. As a result, Mathematica users are in the position of accepting results whose genesis is concealed.
- kccqzy 11y agoI don't think they are losing mindshare. Mathematica is simply unparalleled in its features. Any stats showing they are hurt by the closed nature of their software?
- _delirium 11y agoMindshare is a bit fuzzy, but at least among academics, I do think its closed-ness has made it lose some of its luster in recent years. Mainly because the bigger focus on reproducibility and open code and such has made people feel like it's not quite the "right" way of doing things, especially if you're preparing something for public consumption (vs. private experimentation), compared to e.g. the more community-based and open Python math ecosystem. Ten or fifteen years ago people didn't think about that as much, so people used Mathematica happily. Nowadays of course many people still use Mathematica, but, unless my circle is totally unrepresentative, a good number feel a little more uneasy and maybe slightly guilty doing so, and have at least a desire and vague plans to switch if/when they find time or the alternatives get better.
- blt 11y agoAs a researcher currently working in Matlab, if/when I release code publicly I'll be porting to C++ and writing bindings to other languages. It doesn't feel like I'm really contributing much to the community if I release code that requires thousands of dollars to run.
- exDM69 11y agoGNU Octave is a free/open alternative for Matlab, which is mostly compatible with things built in Matlab. Just make sure your code runs in Octave and you don't have to do any porting. There's no viable alternative to Mathematica, let alone a compatible one. Even for the basic stuff I've used Mathematica (student license) for, basic symbolic integration, differentiation and simplification, I get inferior results from Sympy and Maxima. I haven't tried XCas yet, some say it is better. And this is only talking about the computer algebra capabilities. Mathematica has all sorts of nice tools for doing plots, interactive UIs and other stuff.
- gaze 11y agoI don't really see sympy and the like surpassing Mathematica. Even maple is kinda having trouble. If when I'm buying Mathematica I'm paying for a proper implementation of the risch (integration) algorithm, it will have been money well spent.
- S4M 11y agoDoesn't Maxima [0] have a proper implementation of the Risch algorithm already? [0] http://maxima.sourceforge.net/ http://maxima.sourceforge.net/
- tjl 11y agoI don't think so. Last I checked, the most complete implementation (at least in open source) was Axiom.
- cannam 11y agoHow does REDUCE compare?
- tjl 11y agoI'm not sure. I haven't looked at it in a very long time. The open source implementations I know reasonably well are: Maxima (and therefore Sage), SymPy, and Axiom. I did some work on a integration test suite for Sage before I had to put it on hold. It was based on a suite from Axiom.
- fdej 11y agoThere is no complete implementation of the Risch algorithm. None of the implementations fully implement the algebraic case. Besides, the Risch algorithm doesn't solve all symbolic integration problems in practice: * Even when it succeeds, it doesn't necessarily give you the simplest possible form of the solution. * It is concerned with elementary functions, but real-world problem often involve non-elementary functions (like Bessel and hypergeometric functions). You can extend the Risch algorithm to work with such functions, but this is complicated. * It doesn't allow computing parametric answers for common parametric families of integrals (this needs to be done using heuristics and lookup tables). * It doesn't give you an algorithm for definite integration, except in simple cases. Even with proper definite integrals, you need to be extremely careful with branch cuts when applying the fundamental theorem of calculus. For improper definite integrals, systems like Mathematica generally try to go via convolutions of Meijer G-functions, using huge lookup tables and simplification heuristics. * Even more fundamentally, the Risch algorithm (and symbolic integration more generally) puts heavy demands on the underlying symbolic computation engine. In particular, it depends on the ability to decide whether an expression is equivalent to zero, which in fact is an undecidable problem, and this strictly speaking makes the Risch "algorithm" a non-algorithm (though it is a proper algorithm when restricted to a ground field where zero testing is effective, such as Q).
- cbd1984 11y agoAlso, if they don't go FOSS, their users are living under a Sword of Damocles: At any point, they can choose to change everything, break everything, and your recourse is one of a variety of impolite ways of saying you have no recourse. Being a customer doesn't save you, BTW: Giving them money insulates you not one whit from their decision that a course of action which destroys your whole setup will get them more money. This doesn't really change even if you have a contract: Unless you convince a thoroughly insane court to order some form of specific performance, the most you're entitled to is, essentially, a refund, maybe some punitive damages, and Wolfram no longer caring about you even to the extent they previously did.
- fsloth 11y agoI see Wolfram's offerings as an incredibly convenient prototyping and educational tool. I can't really imagine anyone sane is using it for anything that would result in a disaster significant enough to evoke a sword hanging over ones head.
- coliveira 11y agoThere are different target groups for this kind of software. People who like open source will never use anything else, even if its inferior to closed source alternatives. Other folks will gladly pay to get a system that is robust, stable, and easy to use. I think there is enough market share for Wolfram to thrive for a long time (and open source alternatives too).
- rotorblade 11y ago> People who like open source will never use anything else [...] I like open source, but I _have_ to use mathematica to be as productive as my peers in my field. The open source tools that exist are indeed inferior and that's why I cannot use them. However, this is not a good argument, as my field is physics. I do believe that the use of mathematica for science is a inherently bad thing, and should not be considered an allowed part of doing science -- because it is closed source. I consider the reductionistic part of science very important, so when I use some function in mathematica I do not know exactly how it is implemented hence I cannot reduce my result beyond the point of "Wolfram says it is ok.". But that is not ok. I have been lucky with all of my results, in the sense that one can check them by hand or by inferior products. But finding the result to begin with is why mathematica is almost necessary for a lot of calculations.
- mvardin 11y agoYou have to think of Mathematica code as a specification of what your science does. As long as the expected output of the function is clearly defined, then your work is replicatable/verifiable (with enough effort) which makes it good science. I am much more concerned about occaisional places where the documentation of Mathematica is poor, than whether the soruce is viewable. Open Source is just the ultimately precise but horribly inconvenient documetnation.
- rotorblade 11y agoFair enough. Perhaps my issue more correctly lies in the close-to absolute trust some of my colleagues have for mathematica. Since mathematica is so much faster and feature rich people use it and only very occasionally is it verified by some other software. I would prefer, and would make things easier and faster, if we had (verifiable code) + (one result), instead of (no code) + (one result) + (independent check of result), since only rarely one bothers/have the time to make the independent check. In some cases there is no option to make an independent check (e.g. "with enough effort" is usually too much effort).
- deleted 11y ago[deleted]
- pjmlp 11y agoGiven that FOSS still cannot properly replicate the workflow experience of Xerox PARC workstations and Wolfram tools are one of the best success stories of Lisp inspired work environments, I don't see that happen any time soon. As another example, when will we have FOSS Notebooks that can match what Apple is doing with Playgrounds? Having the means to the right funding makes a lot of difference, specially when many seem to be wary to pay for developer tools while gladly pay for any physical tools.
- daveguy 11y agoI'm not familiar with the workflow experience of Xerox PARC workstations. I am interested in novel and useful workflow experiences. Do you have sources that describe the benefits of the experience? If it is based on personal experience, can you elaborate?
- pjmlp 11y agoMy personal experience is based in Smalltalk VisualWorks and Oberon. Smalltalk, well being Smalltalk. Oberon being the product of Niklaus Wirth, after he learned Mesa/Cedar while at Xerox. That experience, coupled with lots of archaeological digging for old manuals and papers is how I got to learn about it. Basically Xerox had three workstation environments, Interlisp-D, Smalltalk and Mesa/Cedar. All enjoying the fact of the workstation and OS blended into each other. The CLI was a REPL, so you had full access over the OS. Any public API could be accessed in the REPL, you could interact with running applications, all the same way. Also the REPLs were graphical with inline generation of data, so imagine something like Swift Playgrounds as the CLI. Lots of nice documents here: https://archive.org/details/bitsavers_xerox https://archive.org/details/bitsavers_xerox Filtered by language: https://archive.org/details/bitsavers_xerox?and[]=subject%3A%22smalltalk%22 https://archive.org/details/bitsavers_xerox?and[]=subject%3A... https://archive.org/details/bitsavers_xerox?and[]=subject%3A%22lisp%22 https://archive.org/details/bitsavers_xerox?and[]=subject%3A... https://archive.org/details/bitsavers_xerox?and[]=subject%3A%22cedar%22 https://archive.org/details/bitsavers_xerox?and[]=subject%3A...
- 11y ago
- nsajko 11y agoCould somebody give some examples of things that the Axiom family, sympy, Maxima, Reduce, Sage, Giac/XCAS ... can't do but Mathematica can.
- exDM69 11y agoBasic computer algebra. Symbolic integration, differentiation and simplification just works miles better in Mathematica than any of the open alternatives I've tried. It's quite common that the open alternatives just choke on something quite simple. In Mathematica, you can just use Simplify[] to get a nicely simplified expression. In Maxima/Sympy, you might be able to get the same result but you need to understand how the simplification algorithms work, ie. you have to choose which simplification method to apply based on the task and might need to apply more than one method to reach the goal. Additionally: Mathematica is pretty darn simple to use and well documented. Going through the docs of Maxima, Sympy, etc requires you to be a domain expert in computer algebra. I am not. I just want something to assist me when a basic algebra task would require several sheets of paper and I'd be likely to make mistakes. I am not even going to talk about the UI, plotting and other features. I haven't used them much. I have not tried XCas yet, perhaps it's more suitable for my purposes. Some commercial calculators (ie. physical devices) are based on XCas. note: I've been mostly working on some basic university level physics related to space flight and orbital mechanics. Stuff like Kepler's equations or rocket equation solutions.
- carlob 11y agoThere is one thing I don't understand about your argument, Microsoft did not open source their entire stack, but what you're asking of Wolfram would be akin to releasing the whole Windows source code into the wild. Sure Wolfram would still exist in some sense, maybe as a consulting company, maybe just selling support, but it would become a fraction of its current (not huge anyway) size.
- gjm11 11y ago> If they would make their stack FOSS they would be absolute heroes and shape the future [...] ... and instantly stop making money. I have the impression that making money is quite important to Wolfram Research. You may be right that in the long run they're bound to get their lunch eaten by free alternatives, but "in the long run we are all dead" and it's really not surprising if they prefer "continue making lots of money from selling Mathematica, and maybe one day find that free alternatives take away our market" over "immediately make vastly less money from selling Mathematica, but keep market share for this big codebase we can no longer make much money out of". Also, open-sourcing their stack would mean relinquishing a certain amount of control. Have you ever heard anything about Stephen Wolfram that would suggest he'd be OK with that?
- exDM69 11y agoI don't think Wolfram will open source their engine, ever. Their income is mostly from selling the software licenses an I don't know how they could replace that income. However, it would be nice if they would open source parts of their application so bugs could be fixed in the user-facing parts. Even if their engine remains closed, the UI could be open sourced. I'm fine with them keeping their "secret sauce" proprietary and asking money for it. They spent decades making it work. I am saying this because Mathematica for Linux doesn't work great. It's violating the X11 protocols and doing some crazy things with XSendEvents, which makes it not work at all on some window managers (window layout is completely fucked, mouse clicks aren't received properly, etc), while other WMs (e.g. i3wm) have Mathematica-specific hacks to ignore some of the messages it's sending. I'm not sure what to do with this situation. For some of my projects (outside of paid work), I'd need Mathematica. So far I've used an educational site license for my university but now I've graduated and I won't have access to that. So I could pay them $130 (student license, I still have my @uni.edu email for now) to $300 (normal license) but I don't know if they'd fix the issue. I could start using a more mainstream desktop setup (KDE, Gnome, whatever) in the hopes that it works, but that's not ideal either. I have not contacted customer support because I'm skeptical that they would do anything for such a small minority of their customer base. Mathematica is almost the only closed source application I'd need. The open alternatives are not good enough and I'm not educated enough to improve them.