Wolfram Computation Meets Knowledge

Date Archive: 2007 July

Announcements & Events

A New Kind of Building?

I recently came back from the NKS 2007 Summer School and the 2007 Wolfram Science conference. This was my third time at the Summer School, after being a student in 2003 and an instructor in 2005. Being an instructor at the NKS Summer School means giving lectures about A New Kind of Science, but the most intense part is supervising student projects. Each Summer School student carries out a project that can be used in a variety of ways---for example, some are published in academic journals, used as the basis of doctoral dissertations or incorporated into professional activity. (A nice feature of this year’s Summer School was that students could now also present their work in the Wolfram Demonstrations Project.) This year I supervised five projects, with topics ranging from social networks to finite state automata. And as an example, I thought I’d write a little bit about the story of NKS 2007 student Maurice Martel’s work.
Computation & Analysis

3D Printing with Mathematica

An email went out on a mailing list here at Wolfram looking for someone interested in learning about doing 3D printing. I’d heard about these so-called “Santa Claus machines,” but had never seen one in action. They’re really quite interesting. You tell Santa what you want, and out it comes---a shiny new toy! Now it’s not quite that simple, but you get the idea. The models that these printers create can’t be too delicate, or they’ll break. The kind of printer that I’m now most familiar with builds the model from the bottom up, constructing the object one layer at a time from plaster and water. A thin layer of plaster is deposited, then a binding agent sprays from basically an oversized ink-jet printer to harden the areas that form the object. Once the printer is done, you have to dust off the object and infuse it with a hardener so it’s less fragile. But back to the story. Ed Pegg Jr---associate editor for MathWorld---was writing an article about 3D printing and wanted to know more about the process. The idea was to print a physical 3D model of the Spikey, our company logo, at the University of Illinois at Urbana-Champaign, which is just a few blocks from our offices. (You can read about the development of the Spikey here.) This was the version we were working with: But how would we turn that image into something we could actually hold in our hands?
Announcements & Events

Science: Live and in Public

Our 2007 NKS Summer School started about two weeks ago, and one of my roles there was to show a little of how NKS is done. In the past, it would have been pretty unrealistic to show this in any kind of live way. But with computer experiments, and especially with Mathematica, that’s changed. And now it’s actually possible to make real discoveries in real time in front of live audiences. I’ve done a few dozen “live experiments” now (here is an account of one from 2005). My scheme is as follows. Sometime between a few hours and a few minutes before the live experiment, I come up with a topic that I’m pretty sure hasn’t been studied before. Then I make sure to avoid thinking about it until I’m actually in front of the live audience. Then, once the experiment starts, I have a limited time to discover something. Just by running Mathematica. Preferably with a little help from the audience. And occasionally with a little help from references on the web. Every live experiment is an adventure. And it seems like almost every time, at around the halfway point, things look bad. We’ve tried lots of things. We’ve opened lots of threads. But nothing’s coming together. But then, somehow, things almost always manage to come together. And we manage to discover something. That’s often pretty interesting. (There are still papers coming out now based on the live experiment I did at our very first Summer School, back in 2003). I usually make my first live experiment at each Summer School be a piece of “pure NKS”: an abstract investigation of some simple program out in the computational universe. This year I decided to take a look at an “old chestnut” that I’d recently been reminded about: a simple program (though it wasn’t thought of that way then) that was actually first investigated all the way back in 1920.
Announcements & Events

Always the Right Time for Mathematica…

I was rummaging around on the web the other day and ran across an example of implementing an analog clock, written in MATLAB---a numerical matrix system that’s sometimes compared to the numerics component of Mathematica. I was curious to see how the MATLAB implementation compares to a Mathematica implementation, so I took a few minutes to write its equivalent. Here’s a quick shot of part of the result (download the Mathematica notebook to see the clock run in real time):

The exercise surprised me---not because the Mathematica code is so concise and straightforward, but because of how much I’d have had to learn and how hard I’d have had to think and what volume of code I’d have had to write to do the same thing with MATLAB. After a statement like that in our company blog, I can hear you thinking that the spin doctors are hard at work. But have a look for yourself...
Announcements & Events

Mathematica 6.0.1 Arrives

It’s now two months since we released Mathematica 6, and I am happy to say that all our years of development and testing seem to be paying off: Mathematica 6 is a robust system that is performing excellently. But even long before Mathematica 6.0.0 was released, we were already working on what would come next. Our development process operates on three basic levels that translate roughly into “X” releases, “X.y” releases and “X.y.z” releases. At any given time, we are making incremental improvements to existing features that will be delivered in the X.y.z releases. We’re also building new features, that will arrive in X.y releases. And we’re working on major new areas of Mathematica functionality that will be delivered in the X releases. Looking at our internal development database, I see that 6.0.1 contains 259 individual code improvements relative to 6.0.0 (as well as a great many documentation and tutorial updates). What are they all? Well, they are distributed throughout the system (as well as in an update to the free Mathematica Player)---reflecting the continuing work of our many software development teams.
Announcements & Events

Summer Adventures in the Computational Universe

We’ve just finished the intense first week of our fifth NKS Summer School. Every year I get to spend three weeks playing professor. It’s not the same experience that most academics get, not least because our CEO, Stephen Wolfram is part of it, pushing to get science done, and to get the students to do great projects based on A New Kind of Science. We get applicants for the summer school from all over the world, from all fields and all academic levels. Students are selected on their abilities, interests and enthusiasm. The center of the distribution is graduate students, but we always have some younger people, and some much more experienced people---both from academia and industry. Here is a photo of this year’s class outside of the University of Vermont, our venue for this year’s summer school: We’ve developed a pretty good system for the summer school. There’s a background of lectures, but the core of the summer school experience is for each student to do an original research project. Of course, it helps that NKS is a young and very energetic field, full of exciting problems to be solved.