Print 17 comment(s) - last by kattanna.. on Nov 19 at 3:20 PM

New tools help professionals in almost any field, and create the building blocks for an intelligent cloud

Stephen Wolfram, Ph.D. has built many a brilliant piece of code.  
His Mathematica software is relatively intuitive to use, is blazingly fast for such a multi-purpose code (run MatLab versus Mathematica for a simple Monte Carlo simulation if you don't believe this), and supports a massive range of mathematical applications.  His Wolfram|Alpha search engine offers both natural language capabilities and a wealth of math knowledge in real time.  It can find a song or it can solve all sorts of equations including polynomials, definite/indefinite integrals, and systems of line equations -- all in real time from the cloud.  And his computable document format (CDF) allows users to embed powerful, interactive programs within documents -- the dream of many users frustrated by the rudimentary scripting capabilities of Microsoft Corp. (MSFT) Office.
I. A Bold New Kind of Language
Now Mr. Wolfram is expanding his dream to a whole new set of cloud services and APIs, which creep his cloud scarily close to the capabilities need to both accomplish radical science and perhaps even develop cloud-based artificial intelligence.
The new effort is anchored on the publication of a series of APIs that expose the Wolfram Language for programmer use.  For the most part Wolfram Language is not something new. It already exists and is used as the code backbone for Mathematica, Wolfram|Alpha, and CDF.  From that you should be able to extrapolate that it's pretty fast, it features a diverse set of mathematical built-in functions, and it supports a broad range of pleasing graphical output.
Compared to other programming language like Java- or C-family languages, Wolfram Language is much closer to natural human language making it easier to learn, understand, and read.  Yet despite this it's still rivals its more abstracted peers in pure performance.

Wolfram Language

Stephen Wolfram describes the language writing:

We call it the Wolfram Language because it is a language. But it’s a new and different kind of language. It’s a general-purpose knowledge-based language. That covers all forms of computing, in a new way.

There are plenty of existing general-purpose computer languages. But their vision is very different—and in a sense much more modest—than the Wolfram Language. They concentrate on managing the structure of programs, keeping the language itself small in scope, and relying on a web of external libraries for additional functionality. In the Wolfram Language my concept from the very beginning has been to create a single tightly integrated system in which as much as possible is included right in the language itself.

In other words, competing languages approach code kind of like a minimalist set of workshop tools. They give you a nice hammer, a set of functional screwdrivers, a drill, and your basic saws.  But what if you want to seal things together?  What if you want to cut things in a special way?  What if you want to bend things or manipulate special kinds of materials?  The answer inevitably is "go to the hardware store".

hardware store
Wolfram Language is no minimalist toolbox.  It's the entire hardware store. [Image Source: Michael Sears]

By contrast, Wolfram Language makes no claims to minimalism.  It's goal is to give you the entire hardware store and make everything inside as good at its task as posible.
Wolfram bunny Wolfram bunny 2
Wolfram Language lets you manipulate and display data in strange and beautiful ways.

One of the most frustrating topics for new programmers is the lack of simple visualization solutions. Sure you can make a GUI with QT or Visual Studio, but what if you want to display a 3D graph?  Such a challenge might be feasible if you make your living as a computer scientist, but what if you're a wealth manager with basic programming knowledge who just wants to leverage their basic programming knowledge to deliver a dynamite presentation without having to become a programming wizard?
II. Closing the Gap Between Data and Visualization
Mr. Wolfram's company isn't the only one to try to close the gap between programming languages and meaningful visualization.  Microsoft has their XNA Studio and associated libraries.  There's the aforementioned MatLab from The MathWorks, Inc.  But Mr. Wolfram is convince that his tool is simply better than these rival solutions for the typical things most researchers range from medical professionals to financial experts to human resources to chemical researchers want to do.  He brags:

In the Wolfram Language, built right into the language, are capabilities for laying out graphs or doing image processing or creating user interfaces or whatever. Inside there’s a giant web of algorithms—by far the largest ever assembled, and many invented by us. And there are then thousands of carefully designed functions set up to use these algorithms to perform operations as automatically as possible.

Stephen Wolfram
Stephen Wolfram believes he has the tool to change the way we program.
[Image Source: Wolfram Research Comp.]

Wolfram Language is quite possibly unique because it starts with an industry leading language for computation and display of meaningful information relating to math and statistics -- a task that underlies nearly every major professional field.  Few languages do this competently in the first place.  And arguably none of them have evolved in the direction Wolfram Language has, taking on natural language capabilities to not only solve and graph discrete integrals, but to know the difference between Daft Punk and Stars, or the difference between Stars (the band) and stars (the celestial bodies) based on other terms.
In his blog Stephen Wolfram shows this picture depicting all the visualization, math, and natural language capabilities of Wolfram Language today:

Wolfram Language applications

Looking at that picture the question that comes to mind immediately is what CAN'T Wolfram Language do?

III. Steps on the Path to an Artificially-Intelligent Global Cloud

Surely it will have its flaws and its shortcomings, but Mr. Wolfram is clearly giving the world access to an incredibly powerful, intuitive, and efficient tool.  The question becomes, when can we test this and see if it's as good as it sounds?

The answer isn't clear.

Mr. Wolfram in his blog discusses a series of upcoming cloud services:
  • Wolfram Programming Cloud
    • Creates powerful programs for math, data analysis, and visualization
    • Can be hosted on private clouds via Function Call Interface
  • Programming Playground
    • Free environment to learn the basics of Wolfram Language
    • Supports some, but not all Wolfram Language APIs
    • Interfaces with the Programming Cloud
  • Wolfram Data Science Platform
    • Analyzes raw data for science
  • Wolfram Publishing Platform
    • Supports publishing on CloudCDF
    • Supports natural language scripting
    • Supports mobile devices via Wolfram Cloud App
  • MathematicaOnline

However, for the most part none of these services are currently fully available, even in beta form.  That said, Mr. Wolfram has consistently delivered on his past promises, even if it took a while.  So for now we'll have to be patient and wait for this big thing.

Wolfram iPad
Wolfram's cloud services can deploy data, scripts, and programs to mobile devices.

A final note -- returning to the possibility of artificial intelligence via a language based on both fundamental math and natural language, Mr. Wolfram says something particularly interesting, stating:

A Wolfram Language [program] can immediately [in fully automated fashion] describe its own [functionality]. Whether it’s creating an instant API, or putting up an interactive web page, or creating a mobile app, or collecting data from a network of embedded programs.

If we're forming a kind of global brain with all our interconnected computers and devices, then the Wolfram Language is the natural language for it. Symbolically representing both the world and what can be created computationally. And, conveniently enough, being efficient and understandable for both computers and humans.

So far I can see only the early stages of what this will lead to. But already I can tell that what’s happening is our most important technology project yet.

As we creep towards artificial intelligence, will it be our self-aware ally or will it become a destructive enemy to mankind? [Image Source: DC Comics]

I agree with Mr. Wolfram's final comment -- who knows where this will all lead.  But if you can read those words without a tingle running down your spine, you're no futurist.

Sources: Stephen Wolfram, Wolfram Research Comp.

Comments     Threshold

This article is over a month old, voting and posting comments is disabled

this whole article reads like an advert
By Bubbacub on 11/15/2013 3:58:43 PM , Rating: 2
You could at least try to jig some of the press release material around a little bit.

RE: this whole article reads like an advert
By nafhan on 11/15/2013 4:45:08 PM , Rating: 2
I don't know if I'd go so far as to call it an advert, but I would say it's pretty lengthy for how little information it actually contains. This article could have given me the same amount of info in a single paragraph.

By Shig on 11/15/2013 5:20:20 PM , Rating: 2
I liked everything except the 'hardware store' thing.

RE: this whole article reads like an advert
By JasonMick on 11/15/2013 6:17:03 PM , Rating: 5
You could at least try to jig some of the press release material around a little bit.
Have you used Mathematica or Wolfram Alpha very much??

If not I can understand your skepticism, opposition to the tone.

To be clear I have used both and they're great products. In some times in comparable release years I've seen speedups of several orders of magnitude in costly blocks of code in Mathematica versus MATLAB (don't get me started on how horribly slow MATLAB is)....

I freely admit the tone of the piece is somewhat influenced by what a great job Wolfram has done in terms of delivering on past products/promises, but that's always the case with any article. If Google claims it's going to do something outlandish sounding (e.g. quantum computing), its successes to date lower my skepticism level somewhat, versus if a startup with little track record makes a similar outlandish claim.

Of course in either case I'm not going to say that said party is going to achieve their overly ambitious vision -- but I'll admit I do not consider it unfair to adjust article tone in terms of skepticism based on a party's past track record promises-wise.

If a company consistently delivered on ambitious promises and I still reacted with the same skeptical tone as I did with their first promise, I would come off as sounding rather oblivious and/or like an arrogant a$$h-le, which I'd preferably try to avoid.

As one of the commentators said in the comments section on Wolfram's blog, if it was anyone other than Stephen Wolfram, that rambling post would be dismissed as just PR hype.

I tried to digest Mr. Wolfram's post (which had a lot of interesting information but was rather long and wandering) and put the interesting part and summarize the potential uses.

I hope you see what I mean now, but if not I'm sorry if you didn't like the piece. :-\ ::shrugs::

RE: this whole article reads like an advert
By Bubbacub on 11/16/2013 8:00:15 AM , Rating: 2
thanks for replying.

i've used matlab in the past but have never really needed anything execute quicker. the hassle factor for most research type stuff is in the time to write the code - not the time it takes to run (unless you are working with stupendously large datasets).

the rate determining step in most usage scenarios for researchers is the time it takes to get your idea to code that can be compiled - not the time it takes for compiled code to run.

also there is a lot of inertia in academia in terms of training skewing towards the use of matlab over other languages.

it would take a lot of advantages in terms of the the devlopment of toolboxes, ease of coding, widespread availability of training and cost to get people to switch en mass away from matlab.

runtime speed is low down on the list of priorities IMO.

thanks again for replying - i do appreciate the effort it takes to engage your readers.

RE: this whole article reads like an advert
By name99 on 11/16/2013 1:37:17 PM , Rating: 2
i've used matlab in the past but have never really needed anything execute quicker.

And that's the point. I disagree with Jason about almost everything, but one thing we seem to agree on is that Wolfram has truly stunning technology that is insanely under appreciated.
Using Mathematica is like nothing else on earth (and certainly not like matlab). It's a STEEP learning curve, but once you get the big picture, it is insane what you can do, and how easily you can do it.

The only caution I would have is that I think Wolfram has spent so much time in his world that he doesn't appreciate how steep the learning curve is.
Mathematica has made progressive attempts at easier on-ramps --- palettes showing canned (but common) expressions like matrices or integrals, a natural language system that works reasonably well, intelligent suggestions as to how you might want to manipulate the expression you just created.

But to get the most out of the system (and really, to use it as more than just a glorified graphing calculator) you have to understand how it really works, WHY it does what it does. If you don't understand the underlying concepts you hit the situation (most commonly, I'd say, when you try to use subscripted variables) where things kinda sorta seem to work --- until they don't and you're in a world of pain trying to understand why.

To be honest, this is the case with EVERY computer system we have so far. Whether it's OSX or Windows or C++ or Lisp or SQL --- you can go some distance skating on the metaphors the system creates, but try to do something beyond the metaphors and it all falls apart, you need to know what's really going on to make progress. So it's all a matter of degree. Where I disagree with Wolfram is I think he underestimates either how difficult it is to learn the real language, or overestimates how far you can get with the simplified version of the language.

He is very right about how powerful the underpinnings are. One of the things that has been a joy to watch over the years is how strong the Mathematica underpinnings have been --- that's what he means when he goes on about "symbolic expressions" all the time. BUT to really appreciate what this means, and what it means for you as a user, you have to learn a whole new way of thinking about programs which is not only non-obvious to naive users, it's also non-obvious to (and very different from) what most users are used to.

It's absolutely worth the cost of learning if you care about mathematics and having powerful tools at your disposal. Is it worth it for most people (even programmers)? I don't know.
If I were Wolfram, I'd be working really hard to have Mathematica be a part of the school world --- basically free access to it for all schools --- and just have kids start to pick up these ideas from day one. (And I think that would be a good thing for the kids, not just Wolfram. This is more than just learning Word rather than Pages at school; it's more like the difference between learning to read at school vs learning to both read and write; Mathematica gives you tools and a mindset that nothing else does.)

But Wolfram is a privately held company, very secretive, so no-one knows what their plans are. Even something as basic as "what is the long term goal here", who knows? The goal (as far as I can see) is very much more "create the greatest piece of software on earth" than it is "make lots of money". As a consequence they have been very careful to avoid anything that might force them down paths that compromise quality.

An obvious consequence is not going public. A second is (I think) not getting involved with schools much (because if that becomes large enough all sorts of people will feel they then have the right to tell Mathematica what "correct" mathematics is, just like they tell the biologists and historians what "correct" biology and history for school are). A third, unfortunate, consequence of the previous two is that Mathematica remains crazy expensive --- they need enough money to keep themselves going, but can't get money from some obvious sources for the reasons I have given.
They are trying now to split the difference with a hobbyist version that is pretty good and pretty cheap --- not as good as fully fledged Mathematica, but say an i3 version of the i7, not an 8086 version of an i7.

RE: this whole article reads like an advert
By mik123 on 11/16/2013 5:13:13 PM , Rating: 2
You wrote a long post, yet you failed to provide any examples of where Mathematica is better than competition. I currently use MATLAB for neural network simulations. Why would I want to look at Mathematica?

Also, how is it better than, say, MathCAD, or SAGE (which is open-source)?

By name99 on 11/16/2013 7:17:52 PM , Rating: 3
(a) Mathematica provides a single language (and thus a single way of viewing the world) which is rich enough to cover all computational/symbolic mathematics, but also all the auxiliary material. The same language can describe a PDE you want solved, the solution (which may perhaps be an infinite sum of functions), a graph of the PDE, or a UI one can construct to allow you to change parameters and see the solution change, or a hook up into the real world to acquire real data (financial, temperatures, demographic, whatever) which are used to parameterize the PDE.

Everything else I've seen has a language that is sorta OK for the initial target domain (general numerical matrix manipulation) but becomes more and more clumsy as you move away from that initial domain to very different domains --- eg symbolic matrices, or probability theory.

(b) Mathematica, more so than other solutions, seems put together by people who love mathematics and, in particular, love the precision of mathematics. Some people (including many engineers) consider parts of mathematics pedantic and finicky, not the Mathematica engineers. So, for example, their internal models of a function like a logarithm understand about branch cuts in the complex plane and are very clear on exactly what happens where. Supporting this means that they now have a way to support general messiness in expressions --- so you can describe functions that are only piecewise smooth, or domains for a solution space which have holes in them.

You can then grow this to further domains that have "messy" behavior.
A recent example is probability. Mathematic only recently integrated probability deep into the system. (Obviously, before hand, you could do ad hoc things, but you didn't have a clean system.) If you know anything about probability you'll know that transformation of random variables is frequently messy because it involves inverse functions. For example, in the simplest case, to describe the PDF of Y=X^2, you need to split the PDF of X into bins on the positive axis and the negative axis and treat each separately. The complication is mostly not in the calculus transformation (the dilation) of each axis, it's in figuring out ALL the inverse cases and tracking them.

In the general case you have to invert the transformation and handle all the possible inverted src domains. This is the kind of thing I mean by "messy". To handle it, you really need an infrastructure that was built consistently from the ground up, otherwise you just get lost in a maze of special cases.

I've no interest in converting you. This is not much different from a dispute over programming languages. If you're happy using Visual Basic, whatever. When the Lisp guy or the Python guy or the Objective C tell you how much more powerful their tools are, you can look into it and decide if you want to use more powerful tools; or you can stick with VB.

As a very simple example of the issue, just look at what's new in version 9
And remember --- these aren't "add-on's" to the system. Everything new fits into the existing language (and all it's pre-existing capabilities --- programming, pattern matching, graphic, UI building) and is easily understood once you know the new capability exists.

Intelligent cloud?
By retrospooty on 11/15/2013 3:50:05 PM , Rating: 2
I have seen those episodes of Star Trek... Nothing good can come of this.

But seriously, looks like some pretty cool stuff. Wolfram is uber-bright.

RE: Intelligent cloud?
By Shig on 11/15/2013 4:41:42 PM , Rating: 2
Many SaaS options are converging. Siri + Watson + Wolfram Alpha.

Almost there skynet, almost.

RE: Intelligent cloud?
By retrospooty on 11/15/2013 5:19:41 PM , Rating: 1
It also rolls off the toungue perfectly... "Wolfram Alpha"

I hope he doesn't have a partner named Hart.
By dgingerich on 11/15/2013 6:34:22 PM , Rating: 2
This sounds like it could be a good thing, or possibly a very, very bad thing. Watch carefully.

By kattanna on 11/19/2013 3:20:28 PM , Rating: 2

I havent watched those 2 shows in years

this and Watson
By mik123 on 11/15/2013 3:58:45 PM , Rating: 2
Interesting, this coincides with IBM opening access to Watson API.

I wonder if these two technologies could benefit from each other in some way.

I guess I'm not a futurist?
By nafhan on 11/15/2013 5:05:49 PM , Rating: 2
if you can read those words without a tingle running down your spine, you're no futurist
Uhm. I'd consider myself a futurist. I also have great respect for Mr. Wolfram, and am an avid user of Wolfram Alpha. But honestly, "Who knows where it will lead" says more about our understanding of what an AI/intelligence is and what it requires than it does about the capabilities of this platform (my opinion).

More reasonably, I expect this to be a very interesting platform for data mining, computation, and many other things.

His book is fantastic
By Tony Swash on 11/16/2013 6:43:29 AM , Rating: 2
Read Wolfram's book "A New Kind of Science", it's so original and thought provoking. This is one very clever, original and innovative guy, if anyone can pulls this off it's him and his team.

what CAN'T Wolfram Language do?
By WoWCow on 11/18/2013 6:28:29 PM , Rating: 2
Looking at that picture the question that comes to mind immediately is what CAN'T Wolfram Language do?

1. Human Stupidity - or soon to be programmed with it.
2. Remove me from Harsh Reality - its all simulated and virtualized within!
3. Scratch my back.

"The Space Elevator will be built about 50 years after everyone stops laughing" -- Sir Arthur C. Clarke

Copyright 2016 DailyTech LLC. - RSS Feed | Advertise | About Us | Ethics | FAQ | Terms, Conditions & Privacy Information | Kristopher Kubicki