57
$\begingroup$

I'm confused about the differences among various Wolfram products. In particular what is the relationship among Mathematica, Mathematica Online, Wolfram Programming Cloud, and Wolfram Desktop?

Are the latter things I get access to through Mathematica (as I do with Alpha)?

$\endgroup$
  • 22
    $\begingroup$ Summary: even Stephen Wolfram is confused about what the relationship is. $\endgroup$ – m_goldberg Jun 24 '14 at 2:16
  • 7
    $\begingroup$ @mfvonh "The rest seems aimed at improving (renta)bility" $\endgroup$ – Dr. belisarius Jun 24 '14 at 4:42
  • 5
    $\begingroup$ @belisarius Yeah I'm pretty terrified we're going to get Mathworks/Adobe-style dropkicked $\endgroup$ – mfvonh Jun 24 '14 at 4:47
  • 3
    $\begingroup$ Not to poop on the party going on here but shouldn't this question be on Meta? $\endgroup$ – RunnyKine Jun 24 '14 at 14:15
  • 2
    $\begingroup$ @RunnyKine: I think some of the discussion of Wolfram's business model may belong there, but the rest is useful information (and discussion) about the architecture of Wolfram's technology and products. $\endgroup$ – orome Jun 24 '14 at 14:35
47
$\begingroup$

For the TL;DR crowd

The Wolfram Cloud is envisioned as the precursor to the omniscient central computer often depicted in science fiction. It runs on the Wolfram Language (WL) and the Wolfram Knowledgebase (KB).

The Programming Cloud lets you write web applications in WL hosted on their infrastructure. This targets commercial developers, with a huge emphasis on tapping into the KB. It is not intended for serious numerical computing.

Desktop is an IDE for the Programming Cloud. In particular, it has additional interfacing features (not available in Mathematica) to simplify writing desktop applications that interact with the Wolfram Cloud.

Mathematica Online is similar to the Programming Cloud in that you use a kernel through a web browser. The key difference will be licensing: few details have emerged, but clearly they are going to use the license as a way to herd commercial developers into the Programming Cloud. I assume Mathematica licenses will have more computing/storage resources and fewer deployment options.

Mathematica will be much the same; most importantly, you run your own kernels. You will be able to login to the Cloud through MMA, but what you do there is subject to Cloud licensing.

All of these are separate products subject to separate licenses. Except for Mathematica, these licenses will require renewal. I imagine students and academics will not receive any discounted options for the non-"Mathematica" products.

ORIGINAL POST

We will of course have to wait and see, but it seems pretty clear to me what's going on. Wolfram's technology stack is based on the "Wolfram Language" and the "Wolfram Knowledgebase" (curated data), and although both are very powerful they have not been competitive for commercial application deployment for a variety of reasons. In particular, the Wolfram Langauge requires a Mathematica kernel, which is gigantic and (relatively) slow and (very) expensive, and the Wolfram Knowledgebase more or less requires the Wolfram Language and thus inherits those limitations. This launch is a major step toward tackling those problems by making it possible to deploy Wolfram technology without a kernel.

Wolfram has previously attempted to break into the "deployed application market" (if you will) with Wolfram|Alpha and CDF, but neither has been very successful in that regard. It was hoped that application developers writing in their preferred languages would tap into the Wolfram Knowledgebase using the Wolfram|Alpha APIs, but outside of consumer search systems (e.g., Siri) that has not gained much traction. A major limitation of Wolfram|Alpha has been that it requires pretty granular calls, which explains why it has made sense for search tools but not for data-centric applications. As for CDF, the player is just a disabled Mathematica kernel plus most of the frontend and the idea was it would provide a way of deploying Wolfram Language applications with a user interface to end users who did not have Mathematica. But that meant that to deploy any application you needed a ~800 165 MB player when the actual application would only utilize a tiny fraction of that functionality, and on top of that the frontend is not that great of a user interface for end-user applications. I don't mean to knock the frontend -- it's super nice for what it is supposed to do, but it doesn't stand up to Cocoa or .NET or (most importantly going forward) HTML5 + related technologies when it comes to building a polished, robust interface that will be appealing to the non-technical. And the only way they could figure out how to avoid handing out free copies of the Mathematica kernel was to disable it so much that it was not that useful -- most things have to be precomputed. (You can ask them to customize a player for you with certain functionality restored, but that hasn't turned the tables.) So while it has found some uses, CDF has basically been a flop.

But the core Wolfram technologies truly do have the potential to simplify/streamline development of many applications in markets where Wolfram currently has no significant presence. Enter Wolfram Cloud. The Wolfram Cloud is the umbrella for all of this stuff and is not specifically interesting in itself. The Programming Cloud allows Wolfram Language applications to be deployed over the internet in the "software as service" paradigm with no need for a Mathematica kernel and without the clunkiness of embedding calls to Wolfram|Alpha. This is already possible with webMathematica, which allows a Mathematica kernel to interact with the internet via Apache Tomcat (a Java webserver), but the Programming Cloud is advantageous in that you don't have to deal with running a webserver and can scale as needed. This provides a lot of flexibility -- you can write parts of an application in the Wolfram Language and deploy it as a cloud service, and write the rest in whatever language you want, and link them via standard HTTP communication. In other words, you can use the Wolfram Language for what it's good at (it cuts through data like butter) without being chained to it for things it's not good at (user interfaces). This is the most significant new product in this launch.

It obviously costs money for Wolfram to maintain this infrastructure, so it's not free. There is a free tier of the Programming Cloud that gives you a token amount of "credits" (= CPU time, basically), but the point is they want you to pay for it. If you have a paid subscription you can develop and test your application without using credits (with some limitations), but when you deploy it you have to start paying up. You can do all this in a web browser, and Wolfram Desktop is just an interface to that system. I assume it will probably run a local kernel for offline work, but the main point is it's meant to be cloud-centric and will be designed to offload computation to kernels (potentially many of them in parallel) running on Wolfram's servers, and is generally intended for developing and deploying web applications. The Desktop product will also have some systems interface functionality that will not be available in Mathematica, apparently. (See WSTP; tutorial). These products (Programming Cloud and Desktop) are meant to help Wolfram break into the commercial software market, and are not targeted at academics. Relatedly, Wolfram is working to bring kernel functionality (in part or in whole) to various devices that are not running a major operating system. This is a major fork in their technology stack.

On the other hand, Mathematica will continue to be targeted at academics. It will run on your kernels, not Wolfram's, and will not have substantial cloud-oriented features. You will be able to deploy applications to the cloud from Mathematica, but once they're there it's the same story as if you had written them in the Programming Cloud, meaning you'll have to pay for credits, etc. You can still use webMathematica to deploy applications yourself -- for that matter you could use MathLink to interact with whatever webserver you want if you feel like writing the code -- but it will be much more work than using the Programming Cloud. The upside is it will be less costly (the cloud credits are quite expensive) and you can customize your solution as needed assuming you can manage the other technologies that would be involved.

Mathematica Online is in the middle. It will run on Wolfram's servers through a web browser, so you don't need to run a kernel. This is targeted at users who work remotely, switch computers, want to work on an iPad, or whatever. Instead of paying for a license you own, you pay a monthly fee and then get "free" version upgrades and the like. Presumably the licensing plans will include some amount of computation on their servers, but there will doubtless be a limit. You'll also be able to share notebooks and data. I'm not sure whether sharing features will be available to those who buy garden-variety Mathematica outside of what's available with a free Programming Cloud account.

There is also the Discovery Platform, which is another commercial product. It will purportedly "define[] a new level of innovation capability for any R&D organization," whatever that means. It is integrated with the Programming Cloud and Wolfram Desktop and CDF technology, but that is all I have been able to discern from the sea of marketing babble.

So the bottom line is nothing major is changing about Mathematica, and these other products are meant to break into the commercial market. Which presumably is why none of the marketing material on any of this is written in a reasonable or informative way.

$\endgroup$
  • 8
    $\begingroup$ ..CDF has basically been a flop people do not like to install pluggins these days. Since Java applets is full of viruses, that scared everyone from plugins. Also not everyone can install a plugin. At school, we can't install plugin at computers in the lab or the library, etc.. So not possible to use CDF's where they can be most useful, at schools. This has a lot to do with it. $\endgroup$ – Nasser Jun 24 '14 at 11:02
  • 14
    $\begingroup$ Here's the crux: "...none of the marketing material on any of this is written in a reasonable or informative way". It would be great of Wolfram could take the time to explain to those of us for whom Mathematica consistently has been the single greatest software expense (by far) whether our licenses get us any access to these new (and potentially useful) features, or not. $\endgroup$ – orome Jun 24 '14 at 11:55
  • 11
    $\begingroup$ After reading here and on the Wolfram site, it's clear that WRI has done a really poor job in explicating the differences between, and the relationships among, all these new and old products. $\endgroup$ – murray Jun 26 '14 at 20:21
  • 11
    $\begingroup$ I have the uncomfortable feeling that, for some potential customers, choosing a Wolfram product will be like choosing within the line of one brand of dishwasher detergent: lemon scented, unscented, regular, high-efficiency, with added bleach, with added drying agent, etc. My own tendency when confronted with so many choices is to just run away. $\endgroup$ – murray Jun 26 '14 at 20:23
  • 4
    $\begingroup$ I'm waiting for the price strategy of the now called Wolfram Engine, and its linking capabilities to standard industry softwares, like Excel. Until now, nothing of the cloud seems useful to me (or to most engineering scenarios), since I can't imagine linking calculation to the cloud, on the thousands of calls per second... either from Excel, CAD systems, etc. If it is like mathworks free MCR, then, it has a future in my business market. If they do it like the player pro, then, I will have to move forward... $\endgroup$ – P. Fonseca Jul 1 '14 at 4:50

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.