May 7, 2012 — Wolfram Blog Team
It’s been one year since we launched our Twitter feed for bite-sized Mathematica hints and tips!
Thousands of people follow @MathematicaTip to get a new tip every day, Monday through Friday, covering everything from keyboard shortcuts:
Instead of using % to refer to the most recent output, try Ctrl+Shift+L (Mac: Cmd+Shift+L) to directly insert the output from above.
— MathematicaTip (@MathematicaTip) October 10, 2011
December 7, 2011 — Jon McLoone, International Business & Strategic Development
When people tell me that Mathematica isn’t fast enough, I usually ask to see the offending code and often find that the problem isn’t a lack in Mathematica‘s performance, but sub-optimal use of Mathematica. I thought I would share the list of things that I look for first when trying to optimize Mathematica code.
1. Use floating-point numbers if you can, and use them early.
Of the most common issues that I see when I review slow code is that the programmer has inadvertently asked Mathematica to do things more carefully than needed. Unnecessary use of exact arithmetic is the most common case.
In most numerical software, there is no such thing as exact arithmetic. 1/3 is the same thing as 0.33333333333333. That difference can be pretty important when you hit nasty, numerically unstable problems, but in the majority of tasks, floating-point numbers are good enough and, importantly, much faster. In Mathematica any number with a decimal point and less than 16 digits of input is automatically treated as a machine float, so always use the decimal point if you want speed ahead of accuracy (e.g. enter a third as 1./3.). Here is a simple example where working with floating-point numbers is nearly 50.6 times faster than doing the computation exactly and then converting the result to a decimal afterward. And in this case it gets the same result.
September 22, 2009 — Brenton Bostick, Kernel Technology
webMathematica 3, the new version released on September 15, introduces several new features such as a web version of the popular Manipulate command and a way to evaluate Mathematica code asynchronously, without delaying page loading.
September 3, 2009 — Theodore Gray, Co-founder, Wolfram Research, Inc; Founder, Touch Press; Proprietor, periodictable.com
Longtime Mathematica user Flip Phillips recently sent us this tremendously amusing error message generated by Mathematica. Much as you might think when stumbling upon a pickup truck hanging from a tree, your first reaction is probably, “How does something like that even happen??”
January 21, 2009 — Eric Schulz, Consultant
I have taught collegiate mathematics for more than 20 years and have used Mathematica for 15 or so of these years to explore, learn, and teach. For the last eight years Mathematica has been my primary tool to write all of my exams, handouts, letters, reports, papers, presentations, and even a complete electronic textbook. New features introduced recently have been revolutionary in the teaching and learning environment and make possible the creation of materials that integrate text, typeset mathematics, and interactive figures, which can be created efficiently and used effectively in ways not possible with other software tools.
For faculty and students to benefit from using Mathematica in the teaching and learning process, they must be able to use Mathematica sufficiently well to remain focused on course concepts and not become frustrated by the technology. Without question, the main challenge I face teaching new users how to use Mathematica is helping them master the task of creating syntactically correct commands, followed closely by the challenge of teaching how to use Mathematica to write rich documents that combine text, typeset mathematics, and figures.
When the use of technology gets in the way of the teaching, learning, and writing about content, which should remain the focus of academic learning, then all involved in the teaching and learning process experience frustration! If enough example commands are provided, if the ways of Mathematica are carefully explained, and if patient help is readily available, then some new users are able work their way up the learning curve and reach a point where they can focus on the subject matter and are able to comfortably use Mathematica to explore, learn, teach, and write about the concepts. Members of this group are often able to independently deepen their understanding and use of Mathematica by relying on the Wolfram Mathematica Documentation Center and other resources; but not enough new users reach this level of Mathematica knowledge and thus do not experience firsthand the marvelous capabilities of Mathematica to explore, investigate, learn, teach, and write about interesting ideas!
November 18, 2008 — Stephen Wolfram
And even long before Mathematica 6 was released, we were already working on versions of Mathematica well beyond 6.
And something remarkable was happening. There’d been all sorts of areas we’d talked about someday being in Mathematica. But they’d always seemed far off.
Well, now, suddenly, lots of them seemed like they were within reach. It seemed as if everything we’d built into Mathematica was coming together to make a huge number of new things possible.
All over our company, efforts were starting up to build remarkable things.
It was crucial that over the years, we’d invested a huge amount in creating long-term systems for organizing our software development efforts. So we were able to take those remarkable things that were being built, and flow them into Mathematica.
And at some point, we realized we just couldn’t wait any longer. Even though Mathematica 6 had come out only last year, we had assembled so much new functionality that we just had to release Mathematica 7.
June 23, 2008 — Stephen Wolfram
Today is an important anniversary for me and our company.
Twenty years ago today—at noon (Pacific Time) on Thursday, June 23, 1988—Mathematica 1.0 was officially launched.
Much has changed in the world since then, particularly when it comes to computer technology.
But I’m happy to be able to say that Mathematica still seems as modern today as it did back then when it was first released. And if you take almost any Mathematica 1.0 program from 20 years ago, it’ll run without change in the latest Mathematica 6.0 today.
From the beginning, I had planned Mathematica for the long term. I wanted to build a system that could capture the essence of computation, and apply it wherever that became possible.
I spent great effort to get the fundamentals right—and to build the system on principles that would endure.
And looking back over the past two decades it’s satisfying to see how well that has worked out.
March 11, 2008 — Christopher Carlson, Senior User Interface Developer, User Interfaces
Many new features in Mathematica are manifested in new functions with definite names, but some are not so prominent. You might miss one of the new features that I implemented for Mathematica 6.0.2—but it’s really useful, and so I thought I’d write about it here.
Let’s say you have a plot, or some other kind of graphic. You see something in the graphic—some special point—and you want to know where that is, what its (x, y) coordinates are.
In earlier versions of Mathematica, there were primitive ways to find this out. Now in Mathematica 6.0.2 there’s a nice, clean, general way to do it.
Open the Drawing Tools palette (from the Graphics menu, or by typing CTRL-d or CTRL-t). Choose the “Get Coordinates” tool at the upper right.
February 25, 2008 — Peter Overmann, Director of Software Technology
In my ten years at Wolfram Research, I’ve never seen so much software development activity. In the middle of last year, we had our biggest launch in a decade: Mathematica 6. Now there’s a huge pipeline of new development underway.
Some people are working on Mathematica 7; some people on Mathematica 8. We’re developing major new frameworks and we’re adding boatloads of new functions. But we’re also continuing to polish and strengthen everything that’s already in Mathematica.
We brought out Mathematica 6.0.1 last summer to add a variety of improvements that didn’t make it into 6.0.0. And we’ve now accumulated enough improvements that we’ve decided to release 6.0.2—which is being sent to Premier Service customers as of today.
June 27, 2007 — Kelvin Mischo, Sales Engineer
As someone who works with university software groups to maintain Mathematica site licenses, I’m not surprised that Windows Vista compatibility is such a common topic of conversation. After all, this is the season for setting up computer labs for the upcoming academic year, and Windows is quite the popular platform.
What does surprise me is the tone of these conversations. The questions during Vista testing started pouring in during the spring and fall semesters, and continued this summer.
Inquiries have a slightly weary, mildly suspicious tone and start with questions like, “What’s the story with Mathematica on Vista?” Or, “When will Mathematica be compatible with Vista, and what limitations should we keep in mind?” A few schools even asked the exact same questions about compatibility twice in consecutive weeks!
Clearly a complicated answer is expected here.
But the answer, for Mathematica at least, has been very simple since Vista’s early-spring release.