Over a million developers have joined DZone.
{{announcement.body}}
{{announcement.title}}

Computational Knowledge With Stephen Wolfram

DZone's Guide to

Computational Knowledge With Stephen Wolfram

For decades Wolfram has created tools to help scientists, mathematicians, and programmers get answers. We speak with Stephen about his work and computational computing.

· Big Data Zone ·
Free Resource

Hortonworks Sandbox for HDP and HDF is your chance to get started on learning, developing, testing and trying out new features. Each download comes preconfigured with interactive tutorials, sample data and developments from the Apache community.

For decades Stephen Wolfram and his company have created fascinating projects and tools to help scientists, mathematicians, and programmers get answers to their questions. We speak with Stephen about the past, present, and future of his work and computational computing.

You have probably heard of Wolfram and their infamous founder, Stephen Wolfram, without knowing exactly what they offer. I would guess that many people's interaction with the company is through WolframAlpha, possibly via Siri, but their technologies go further and deeper.

I recently interviewed Stephen at the Collision conference and thought it was a good time to dig more into their suite of tools.

The Wolfram Language

At the core of all the products is the Wolfram language, and the ultimate getting started guide is the book and accompanying interactive tutorials written by Stephen himself.

The language claims a unique place, calling itself ‘knowledge-based,’ in that the language starts with a body of data sets and knowledge that you don’t have to educate it to learn. This means that the language is optimized for applications focused on questions and answers to those questions, with the answers taking the form of alphanumerical strings, but also includes images, media, and charts.

A lot of your interactions with the Wolfram language can happen in a ‘notebook,’ similar in concept and function to Jupyter and Apache Zeppelin, but the Wolfram technology predates both of them, as Stephen somewhat bitterly states in the interview above.

The language lets you use everything from mathematical syntax to familiar syntax from other programming languages and a surprising amount of English-esque syntax, even though sometimes it’s fiddly figuring out what combination of words achieve the answer you want.

You’re not restricted to the question and answer structure, using the Manipulate function you can add interactive elements that help you see the effect on outputs.

Manipulate function

And there’s more, including string, image, and sound manipulation, the screenshot below is also a great way to show that you can drag outputs from one place to another.

Image manipulation

Or, here’s one of my favorite examples to generate a word cloud from an external input.

Word cloud from external input

At this point, I’m up to page 70 of a 300+ page book, the Wolfram language is thorough and deep, to dig further than the book I recommend you look at the Wolfram documentation center.

Development Tools

Next is Wolfram|One, built on top of the language, an online and desktop IDE of sorts that you use the language with. Similar is the ‘development platform,’ that I think is part of Wolfram|One, and also includes deployment tools, API providers, and testing features. Finally, there’s the Programming Lab, and again, I’m not sure how it differs from Wolfram|One, but it looks like it’s the product name for the notebooks mentioned above.

Specialist Tools

Mathematica was the first Wolfram tool, and has perhaps one of the longest shelf lives of any still-in-production tool, with a 30-year history. It’s a packaged subset of the language available online and desktops, optimized for educators, students and mathematicians to work on their problems. The finance platform looks like a different tool, aimed at financial professionals working on tasks such as pricing and risk analysis. There’s no public trial available, so I wasn’t able to garner much detail. SystemModeler again takes the language and adds expandable modeling libraries for simulating real-world physical objects. Finally is the forthcoming Data Science Platform, which, while it is a little late to the party, could be a valuable tool in a growing field, built by a company that has a long history in visualizing data.

WolframAlpha

With its own product category, WolframAlpha is an online tool that lets you use the Wolfram language by typing queries into a familiar search box. With Pro, you can upload your data and create a complex, visual knowledge base of your important information. For all the developers reading this, Alpha has APIs for baking computational knowledge into your applications. Alpha has mobile apps available, and, curiously, a problem generator, useful for educators and the creators of intellectual pub quizzes.

It’s All in a Name

While I’m not sure if I will ever personally needed any of the Wolfram suite of products, experimenting with them and interviewing Stephen was a fascinating insight into tools with a long, well-planned history and a unique way of looking at design and user experience. Have any of you used a Wolfram product or tool? What did you use it for and what were your experiences?

Hortonworks Community Connection (HCC) is an online collaboration destination for developers, DevOps, customers and partners to get answers to questions, collaborate on technical articles and share code examples from GitHub.  Join the discussion.

Topics:
wolfram alpha ,jupyter notebook ,data science ,big data

Opinions expressed by DZone contributors are their own.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}