January 29, 2008 — Ed Pegg Jr, Editor, Wolfram Demonstrations Project

Today (Tuesday, January 29) is International Puzzle Day. To celebrate, here are 16 puzzles from the Wolfram Demonstrations Project.

1. Box Packing |
2. Dissection Fallacy |

Can 27 3×4×5 blocks be placed in a 12×12×12 box? How about 27 a×b×c blocks? |
Four identical shapes have an area of 64 or 65, depending on their arrangement. How? |

3. Box Toppling Patterns |
4. Four-Color Maps |

A box gets rolled around on a floor. After 5 topples, how many different places can it be? |
What is the connection between borders and map coloring? |

5. Shortest Time Problem |
6. Loculus of Archimedes |

A tennis ball is thrown in a lake. What route allows the ball to be retrieved in the shortest time? |
If a square is divided into the above shapes, how many different ways can the square be made? |

January 25, 2008 — Fred Meinberg, Special Projects Group

Yesterday it became known that a 31-year-old trader at Société Générale had been performing fraudulent transactions in the futures markets that ended up costing the French bank more than 7 billion USD. Some news sources have even speculated that the large market losses on Monday were caused by SocGen unwinding the bad trades. These market losses, on their turn, were the main cause behind the US Federal Reserve’s decision to cut interest rates by 75 basis points on Tuesday.

I was chatting about the topic with a coworker today when he mentioned—as people often do when these things happen—that this value was larger than the economy of many countries. Sure, but how many? As we do all the time, we fired up Mathematica to put things into perspective. And indeed, it’s trivial to get Mathematica to answer that question: you just use the built-in function `CountryData` to generate a list of all countries in the world, and select those whose gross domestic product (at market rates) is smaller than 7 billion.

The SocGen rogue trader managed to annihilate an amount of money that surpasses the yearly output of the economy of 112 countries, among them Madagascar, Mozambique and war-torn Afghanistan, all of which have population sizes larger than 15 million. A more visual way to present this fact is to use the `"FullPolygon"` property in `CountryData` to generate countries’ shapes, and then color those countries with a GDP below 7 billion USD:

It took me less than a minute to visualize my office mate’s comparison, and indeed this is a type of visualization that a lot of Mathematica users can just pull out of their hats—thanks to the effort that was put into designing Mathematica to make sure that all of its functionality fits together.

For more examples of `CountryData`, visit The Wolfram Demonstrations Project.

January 22, 2008 — Theodore Gray, Cofounder, Wolfram Research, Inc.; Founder, Touch Press

I’ve been interested in education for a long time, and when someone suggests that the software system I’ve been working on for 20 years is bad for education, I take it personally.

So I was upset when a *New Scientist* magazine article “Physics Tool Makes Students Miss the Point,” reported on a study by Thomas Bing and Edward Redish, “Symbolic Manipulators Affect Mathematical Mindsets,” strongly implying that the study concluded that replacing paper-and-pencil calculations with Mathematica was educationally unsound.

And I was greatly relieved to find that the study itself says no such thing. Bing and Redish don’t recommend banishing Mathematica; they welcome it in their classrooms and point out many positive things about it, along with one relatively minor pitfall they suggest ways to work around.

What mindset led the reporter to jump to such a reactionary conclusion? Why use such an inflammatory headline in connection with level-headed research that showed, when you get right down to it, virtually the opposite of what the *New Scientist* headline says?

The question of what technology to use in the classroom comes up all the time, and the resulting debate often generates more heat than light. People feel strongly about the subject because at its heart it is a question about what it means to be human.

January 19, 2008 — Oleksandr Pavlyk, Senior Kernel Developer, Algorithms R&D

Most calculus students might think that if one could compute indefinite integrals, it would always be easy to compute definite ones. After all, they might think, the fundamental theorem of calculus says that one just has to subtract the values of the indefinite integral at the end points to get the definite integral.

So how come inside Mathematica there are thousands of pages of code devoted to working out definite integrals—beyond just subtracting indefinite ones?

The answer, as is often the case, is that in the real world of mathematical computation, things are more complicated than one learns in basic mathematics courses. And to get the correct answer one needs to be considerably more sophisticated.

In a simple case, subtracting indefinite integrals works just fine.

Consider computing the area under a sine curve, which equals

January 10, 2008 — Stephen Wolfram

It’s not easy to make a big software system that really fits together. It’s incredibly important, though. Because it’s what makes the whole system more than just the sum of its parts. It’s what gives the system limitless possibilities—rather than just a bunch of specific features.

But it’s hard to achieve. It requires maintaining consistency and coherence across every area, over the course of many years. But I think it’s something we’ve been very successful at doing with *Mathematica*. And I think it’s actually one of the most crucial assets for the long-term future of *Mathematica*.

It’s also a part of things that I personally am deeply involved in.

Ever since we started developing it more than 21 years ago, I’ve been the chief architect and chief designer of *Mathematica*’s core functionality. And particularly for *Mathematica* 6, there was a huge amount of design to do. Actually, I think much more even than for *Mathematica* 1.

In fact, I just realized that over the course of the decade during which we were developing *Mathematica* 6—and accelerating greatly towards the end—I spent altogether about 10,000 hours doing what we call “design reviews” for *Mathematica* 6, trying to make all those new functions and pieces of functionality in *Mathematica* 6 be as clean and simple as possible, and all fit together.

At least the way I do it, doing software design is a lot like doing fundamental science.

In fundamental science, one starts from a bunch of phenomena, and then one tries to drill down to find out what’s underneath them—to try to find the root causes, the ultimate primitives, of what’s going on.

Well, in software design, one starts from a bunch of functionality, and then one needs to drill down to find out just what ultimate primitives one needs to support them.

In science, if one does a good job at finding the primitives, then one can have a very broad theory that covers not just the phenomena one started from, but lots of others too.

And in software design, it’s the same kind of thing.

If one does a good job at finding the primitives, then one can build a very broad system that gives one not just the functionality one was first thinking about, but lots more too.