In the middle of last year,we finished our decade-long project to reinventMathematica,and we releasedMathematica 6.
We introduced a great many highly visible innovations inMathematica 6—likedynamic interactivityandcomputable data. But we were also building a quite unprecedented platform for developing software.
And even long beforeMathematica6 was released,我们已经在版本的工作Mathematicawell beyond 6.
And something remarkable was happening. There'd been all sorts of areas we'd talked about someday being inMathematica. 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 intoMathematicawas 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 intoMathematica.
And at some point,we realized we just couldn't wait any longer. Even thoughMathematica6 had come out only last year,we had assembled so much new functionality that we just had to releaseMathematica7.
So 18 months after the release ofMathematica6,I'm happy to be able to announce that todayMathematica7is released!
A few times a year they would arrive.Email dispatches from an adventurous explorer in the world of geometry.Sometimes with subject lines like "Phenomenal discoveries!!!"Usually with images attached.And stories of how Russell Towle had just usedMathematicato discover yet another strange and wonderful geometrical object.
Then,this August,another email arrived,this time from Russell Towle's son: "…last night,my father died in a car accident".
I first heard from Russell Towle thirteen years ago,when he wrote to me suggesting thatMathematica's graphics language be extended to have primitives not just for polygons and cubes,but also for "polar zonohedra".
I do not now recall,but I strongly suspect that at that time I had never heard ofzonohedra.But Russell Towle's letter included some intriguing pictures,and we wrote back encouragingly.
There soon emerged more information.That Russell Towle lived in a hexagonal house of his own design,in a remote part of the Sierra Nevada mountains of California.That he was a fan of Archimedes,and had learned Greek to be able to understand his work better.And that he was not only an independent mathematician,but also a musician and an accomplished local historian.Continue reading
Today is an important anniversary for me and our company.
Twenty years ago today—at noon (Pacific Time) on Thursday,June 23,1988—Mathematica1.0 wasofficially 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 thatMathematicastill seems as modern today as it did back then when it was first released.And if you take almost anyMathematica1.0项目从20年前,it'll run without change in the latestMathematica6.0today.
From the beginning,I had plannedMathematicafor 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. Continue reading
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 withMathematica.And I think it's actually one of the most crucial assets for the long-term future ofMathematica.
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 ofMathematica‘s core functionality.And particularly forMathematica6,there was a huge amount of design to do.Actually,I think much more even than forMathematica1.
In fact,I just realized that over the course of the decade during which were developingMathematica6—and accelerating greatly towards the end—I spent altogether about 10,000 hours doing what we call "design reviews"forMathematica6,trying to make all those new functions and pieces of functionality inMathematica6 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. Continue reading