7 ms·
There Was a Time before Mathematica
- e3pi 13y agoI've always avoided Mathematica. I Use pari/GP, maxima, axiom, perl's Bignum. Mathematica, macsyma, Symbolics, I've always felt monetized what should have been(remained) open source, GNU(etc.) licensed. Thank you again Mr Stallman.
- sliverstorm 13y agoWhy should it have been open source? Is quality software not worth paying for? If you are thinking something along the lines of the "purity" of mathematics, and how mathematics "want to be free"- mathematics is free, as evidenced by your use of BigNum, or even pencil-and-paper. Mathematica is just one of the many calculators, and people have happily paid money for calculators for many years.
- mixmastamyk 13y agoFsf proponents are not concerned with price, rather with freedom.
- walshemj 13y agoThe hardline evangelists yes the rest not so much and if you don't realize that I have a bridge I would like to sell you.
- tzs 13y agoThere are many kinds of freedom. If a proprietary tool lets me get my work done faster than a free tool would, then using the free tool takes away some of one kind of freedom--namely the freedom to spend my time doing things I want to do instead of things I have to do to pay the bills.
- adolfojp 13y agoIt really bothers me to see how the FSF has hijacked the term freedom and redefined it to mean compatible with a very specific set of software licenses while selling it as if they were liberating the Scots from the English monarchy.
- e3pi 13y agoWith open source, I am `forced' to figure out how to do things on my own without canned functions. I could be wrong, not having looked at Mathematica for twenty years, but I believe my pattern searching among hundreds of millions of long string filtered generated expressions and their respective digit expansions, requires regular expression processing which takes a lot of practice before it becomes easy but likely necessary, as I don't see how this regular expression processing could be eliminated. Perl is deservedly famous for intrinsically integrating its regex engine, so with other's reference material to grow with, eg, all the good bioinformatics books and perl modules -CPAN open source- everything moving ahead directly and often wonderfully, exploring many novel threads derived off whatever I'm primarily currently focused on.
- doetoe 13y agoI don't necessarily think it should be free (gratis), but a serious math package should definitely be open source to give legitimacy to any result it produces, for the same reason that a proof that is kept secret is not a proof at all.
- skierscott 13y agoMatlab is big in my field, and I've avoided it. I use Python instead instead. If I want to do symbolic stuff (like Mathematica does), I can use SymPy. I think being open is good for several reasons. You can inspect the code, meaning that those weird bugs that pop up eventually are solvable. Additionally, the licenses are a pain in the ass. Not having them encourages more collaboration.
- theorique 13y agoAdditionally, the licenses are a pain in the ass. Not having them encourages more collaboration. Yes! While Mathematica is a great product (or ecosystem), the license overhead is extremely irritating, and a bit scary if you're running business-critical apps on it. (Lost touch with the license server? Oops, your applications won't run.)
- m0nastic 13y agoI know that people complain about Wolfram when his posts show up here (which I understand, even if I've always found his bizarre combination of eccentricity and stupendous ego endearing), I thought this was super interesting. Surprisingly, I think he only mentions NKS once in this whole entry, and it includes a nice shout-out to Rob Pike.
- nswanberg 13y agoWolfram's list of language design mistakes in SMP is interesting, particularly how he dropped SMP's symbolic indexing from Mathematica, but still kept echos of the idea in function definitions: http://reference.wolfram.com/mathematica/tutorial/MakingDefinitionsForFunctions.html http://reference.wolfram.com/mathematica/tutorial/MakingDefi... Also interesting is the little decryption challenge (turns out he stored his copy of SMP in an encrypted form and can't find the key).
- bitwize 13y agoI was kind of expecting a piece about how stone-knives-and-bearskins mathematics was before The Wolfram single-handedly brought fire down from Olympus. This wasn't that far off, though, so full credit, Wolfy.
- psychometry 13y agoI wonder whether he has ever written a blogpost that doesn't mention receiving his PhD at 20. I find his self-aggrandizing intolerable.
- tzs 13y ago> I wonder whether he has ever written a blogpost that doesn't mention receiving his PhD at 20. He's mentioned it twice on his blog that I can find: today and on June 1, 2011. Unless I missed a bunch, you are being rather ridiculous.
- snprbob86 13y agoMathematica is absolutely incredible and everyone who calls themselves a programmer should own a copy, learn how to use it, and internalize its philosophy. However, I too find his self-aggrandizing intolerable. Sentences like "Looking back at its documentation, SMP was quite an impressive system, especially given that I was only 20 years old when I started designing it." Just make me dislike him. Was his age really necessary there? He already mentioned his age a few paragraphs up in a sentence that was far less objectionable.
- davorak 13y ago> everyone who calls themselves a programmer should own a copy I use mathematica regularly, but do not have quite as strong an opinion as that. Would you mind sharing your top three reasons or there about?
- snprbob86 13y agoI wrote a little bit about this on HN before: https://news.ycombinator.com/item?id=4844502 https://news.ycombinator.com/item?id=4844502 In short: 1) Term rewriting systems are a beautiful and powerful model of computation that a lot of people know nothing about. 2) The "everything is data" philosophy is life changing. This same philosophy can be seen in the Clojure community (there are more than a few Mathematica-isms that Rich has admitted being influenced by). Mathematica goes further to say that all data is expressions, which is really a subpoint of #1, but I think that data is the more fundamental important idea than expressions. Even though expressions have extremely wide applicability. 3) Having some mastery over the basics of Mathematica is like having a bunch of secret programming super powers. One time, I came across an exceedingly complex if/and/or/else clusterfuck and reduced it to a trivial truth table in only a few minutes of fiddling with Mathematica. There are lots of cases where experimenting in Mathematica was just a much faster way to understanding and solving a problem prior to implementation.
- nwhitehead 13y agoAnother fun read is the listing of original developers of Mathematica in the Addison-Wesley "Mathematica" book and what they worked on. http://omohundro.files.wordpress.com/2009/03/wolfram88_mathematica_developers.pdf http://omohundro.files.wordpress.com/2009/03/wolfram88_mathe...
- rhodin 13y ago"The plot [on the front page] took about three minutes to produce on a Sun 3/260 computer." Plot3D[Abs[Zeta[x + I y]] , {x, -2, 6}, {y, 2, 35}] takes 0.213483 on my laptop :)
- deleted 13y ago[deleted]
- codemac 13y agoIs anyone else really impressed with his personal archive of documents or scannings of them? I've gotta get rid of my drobo FS and upgrade to a serious colo or something.
- glhaynes 13y agoHe's got a personal assistant that follows him around everywhere — and perhaps more who don't. Must be nice!
- 6d0debc071 13y agoI was rather impressed by those little invitation cards. Clever marketing.
- IvyMike 13y agoHey, it's time for me to tell another third-hand half-remembered unsourced story, just because it's halfway relevant. How's that for a disclaimer? Anyways, on to the story. I was an undergrad at UIUC in the early 90's, and the development of Mathematica had created a deep rift in the mathematics department. There was resentment because there had been collaboration between those working for Mathematica, and other professors in the math department, who were just working on "interesting problems" presented to them by the inner circle guys. Of course when Mathematica was released, and money and options were being given to the inner circle guys, the outer circle guys had, let's say, hurt feelings.
- programnature 13y agoHalf-remembered unsourced negative gossip is what great HN commentary is made of these days?
- omra 13y agoAnother very interesting part of the article is the call for the decryption of the SMP source code: http://blog.stephenwolfram.com/2013/06/there-was-a-time-before-mathematica/#runSMP http://blog.stephenwolfram.com/2013/06/there-was-a-time-befo...
- gcb0 13y ago<quote>"Even in my early designs, SMP was a big system. [...] just wanted to go ahead and implement it. [...] and bought every book I could find on computer science—the whole half shelf of them. And proceeded to read them all. I was working at Caltech back then. And I invited everyone I could find [...] put together a little “working group”"</quote> How on earth does people find the time to do those things while "working"? What do they mean by Work?
- hudibras 13y agoThe "Algebra will never be the same again" ad is awesome. It's like an artist's conception of a mathematician. Or alternately, it looks like that black-and-white freezeframe in every informercial right before they introduce the product that solves the problem.
- mfonda 13y agoVery interesting read. I especially like the following quote: I figured if I couldn’t explain something clearly in documentation, nobody was ever going to understand it, and it probably wasn’t designed right. And once something was in the documentation, we knew both what to implement, and why we were doing it. I think this a great practice to follow. I often find it very helpful to write documentation before writing code. I find I end up with a better designed system this way, and as an added bonus it has great documentation too.
- LowKarmaAccount 13y ago> A big early decision was what language SMP should be written in. Macsyma was written in LISP, and lots of people said LISP was the only possibility. But a young physics graduate student named Rob Pike convinced me that C was the “language of the future”, and the right choice. (Rob went on to do all sorts of things, like invent the Go language.) And so it was that early in 1980, the first lines of C code for SMP were written. So Wolfram appears to be saying that C, the "language of the future", was much better than that old Lispy stuff he had been using. But then he goes on to admit that he spent lots of time reinventing features that are obvious in Lisp: >It got even weirder when one started dealing with multi-argument functions. It was quite nice that one could define a matrix with m:{{a,b},{c,d}}, then m[1] would be {a,b}, and either m[1,1] or m[1][1] would be a. But what if one had a function with several arguments? Would f[x, y] be the same as f[x][y]? Well, sometimes one wanted it that way, and sometimes not. So I had to come up with a property (“attribute” in Mathematica)—that I called Tier—to say for every function which way it should work. (Today more people might have heard of “currying”, but in those days this kind of distinction was really obscure.) Really obscure? To who? C programmers?
- pfedor 13y agoIf you don't have a connection to the world of physicists you may not realize how huge Mathematica is. I have a friend for whom it is the environment of choice for pretty much everything. Like, when he needs to do some image manipulation, he doesn't reach for ImageMagick, he does it in Mathematica. If he needed to set up a web server he'd probably do it in Mathematica too. People say they can't stand Wolfram's lack of humility. Just get over it for your own benefit. People have flaws, that's life. If you get so enraged over his style that you can't listen to what he says, then you won't hear what he has to say which happens to be a lot of interesting things.
- watershawl 13y agoI really liked this quote, "I was trying to find the elementary components of computation...try to pack the largest capability into the smallest number of primitives." It really captures his life's thesis. He should be praised not only for his accomplishments, but his commitment and grit. It's not easy to stick with something for so long like he has and continue to improve it over time.