Fog Creek Software
Discussion Board

Mathematics Software and Hardware

I am about to enter University as a pure math major. I have taken high school mathematics.

Of Mathematica, Maple, MatLab, and MathCad:

Which one of these do you recommend?

Would they help with homework/learning math?

Of high end calculators such as the TI-89, and TI-92 (i.e. ability to perform symbolic manipulation for example):

Which one do you recommend?

Again, would they help with homework/learning math?

I'm also looking for related anecdotes and advice.

Thanks so much!

Friday, November 15, 2002

i prefer the reverse polish notation of a hewlett packard - the 48GX was top of the line in my day.

Friday, November 15, 2002

You want one of the TI 8x series. The 92 is too big.

You also want mathematica.  I would start using Mathematica right away. It really helped me out. (I have a math degree)

Will C
Friday, November 15, 2002

If you stick with math, you will probably end up using all three programs at some point in your college career, so there's really not much point to selecting just one to learn. If you want something for practice, get the cheapest one.

For the calculator question, you might end up taking a class that requires a particular model, so inquire at your college before spending the money.

I still have, and occasionally use, the TI-89 we were required to buy for whatever class it was.

Friday, November 15, 2002

Sorry, you listed four programs... I've never used Maple, so my brain just sort of skipped right over it.

We used Matlab for quite a few classes, Mathematica only for statistics. But this was almost 10 years ago.

Friday, November 15, 2002

I would go with the HP-48 GX.  It took a while to get used to (about a week for me), but after that I found it to be much easier to use.

I would not get a TI-92 if you actually want to learn math.  It is to easy to just learn how to program the calculator to do the math for you.  You'll do well in the class grade wise but probably will not learn as much.

Friday, November 15, 2002

Interesing. I'm probably old-fasioned, but how do these programs help to learn math?

When I got my degree, these tools were not available yet. However, I used them later and think they are great for practical purposes. Still, I think it's dangerous to use them from the start...

You know, there's a principle of "one under". Actually, it's similar to the recently discussed Joel's law of leaky abstractions.

For example:
For technical engineer, it's enough to know how to use MATLAB, Mathcad, etc. It's one level under his problem area. But if you're math major, you need to know math on the one level below. I.e. you can use calculator, but not the symbolic-math packages.

Another example:
If your're about to learn web design and HTML, you shouldn't start from learning FrontPage or DreamWeaver. However, you can use them later, when you know the subject "one level below".

Igor K.
Friday, November 15, 2002

Joel actually didn't mention the principle of  "one under" in his article at all. He seemed to imply that we all needed to learn "six under". It is a farily well established principal though.

As for the question of web design, I feel that needs an explanation apart, since the clear applicability of the "one under" rule there obscures the very different situation in other kinds of programming. His .ASP example of autimatically generated Javascript which doesn't run on a machine with scripting disabled, is so good an example that it confuses the very different cases of VB programmers not knowing how the Windows API work.

Stephen Jones
Friday, November 15, 2002

response to Igor:
i agree with you , sort of. however, i would never be in the position i am now without mathematica. I did horribly in math in high school. i hated it, and believed i was one of those people who "couldn't do math." basically the environment in which i learned math was very competitive. you got one chance to get it right, or you flunked the quiz. if you flunked the quiz, you were a loser who couldn't do math. this is a real negative in relation to confidence building.

when i went to school i got the student copy of mathematica. with mathematica, I could check my homework. i could see that i was actually doing things right. if i was doing stuff wrong, i could see exactly where i did stuff wrong. basically, it helped me improve my confidence. i got a math degree, and really enjoy math now. i am a consultant where about 1/2 the time i do typical enterprise-y style programming, and 1/2 the time i do math-heavy data analysis for bioinformatics research. i'd be stuck doing enterprise apps full time if it weren't for mathematica.

also, this is my totally irresponsible comment...but i don't believe that anyone employed in mathematics ever does math without using mathematica (or some similar package). If I just knew how to do math on paper, i would be nearly totally useless, aside from being a math tutor or teacher...

Will C
Friday, November 15, 2002

I concur with Igor -

SMy daughter's a bit behind you in school, as she's just graduating from HS this year, but my daughter's school had a so-called math class that was basically a class in how to use one particular model of plotting TI calculator. The accompanying text might as well have been written directly from (or even been) the user manual itself.

Modern-day phycho-babble education theorist 'airheads' (cousins to the same dangerous idiots that think 'time-out' is the proper way to handle a screaming 3-year old) seem to think using these calculators helps learn math. No, these calculators help employ math in solving real problems; all they help kids do is get hooked on these tools as a crutch.

I watched my daughter work problems with her calculator, and instead of knowing from looking at an expression what the nature of the graph's shape would be, how many inflection points it would have, etc, she just plotted it out. When it came to finding roots, she used brute-force trial and error, 'just to get the answer'. That year of so-called 'math' set her behind later when she got back to a more traditional program where they -- holy shit -- actually required her to freakin' understand something of what was going on.

If you're already beyond this point and in fact do have a solid basis in Math, then you may need to adjust or discard my advice here. I realize you have to do what the school/instructors require, so you may not have much latitude in some areas. But, if it's left to you, work to understand what's going on at the lowest level you can manage first, before you then learn how to use the tools people actually use in production. It's nice to see folks like Joel re-discovering these time-honored principles as he demonstrates in articles like the 'leaky-abstractions' piece he wrote.

When I was in grad school and in the Army studying Operations Research, we hand-cranked simplex, cutting plane algorithms, discrete optimization algorithms, dynamic programming, etc. Nobody does that 'for real' on any non-trivial problem; but you had to know what the algorithms were doing to understand when & where they should be applied (and equally important, not applied), something of the nature of the answers they'd give you, etc.

Just because you **can** plug numbers into a computer program and get some sort of result out that it formats for you very nicely in a color graph you can dump to an E-size plotter, does not mean you have not just created very visually attractive egregious bullshit.

Those tools you cited are wonderful tools, no doubt -- I bought MathCad some years ago and did a bit with it (I think it may be at the lower cost end of the ones listed, BTW). They are great, but they will not do your thinking for you. Don't let them.

Sorry if I ranted a bit, sore subject with me.

Friday, November 15, 2002

Go for a HP-48 or 49. These are really the best out there. They perform symbolic computation and a lot more.
I bought my first HP-48 seven years ago and I am still using it daily: for computing, as an agenda, for waking me up (it has alarm features), and even as a remote control for my TV (using its IR interface.)
I take it with me when travelling to play pacman or lemmings (there are a lot of freeware games for it  on the Internet.)

Friday, November 15, 2002

damn -

s/SMy daughter's/My daughter's/
(preview feature? where?)

Friday, November 15, 2002

Each of the programs you named has a different focus... I've used Mathematica and Matlab - Mathematica can do virtually anything you want it to, but I think its best features are the symbolic computations (e.g. taking symbolic derivatives and antiderivatives) and its 2D/3D graphics. Matlab is much more narrowly focused on number-crunching vector/matrix computations.

Unfortunately both Mathematica and Matlab both have some weird syntax quirks (at least if you are used to any other programming languages).

I'd personally recommend getting Mathematica, unless you are planning to take any hard-core engineering / applied math courses. (Matlab usage was a requirement for some of my engineering math classes at Cornell)

Dan Maas
Friday, November 15, 2002

Use MATLAB or Octave which is a MATLAB free clone. I haven't heard good things about Maple. I haven't used Mathematica.

I like MATLAB because it's faster than writing out the code in a lower level language. Also, alot of DSP work uses MATLAB.

Victor Richter
Friday, November 15, 2002

It depends whether you're studying pure math or applied mathematics.

I don't see how a calculator, much less a computer, would be useful in any pure mathematics class beyond calculus: analysis, topology, algebra, etc. Technology won't help you comprehend the abstractions or derive proofs.

Mathemical software would be of more value in applied or computational math, when you're doing linear programming or solving PDE's. Still, it makes more sense to wait until you're in such a course and hear what the prof recommends.

Of course, things may have changed over the last decade. I earned my Ph.D. in theoretical physics using paper and pen, along with some short FORTRAN programs to perform linear algebra calculations and solve ODE's.

Friday, November 15, 2002

I would tend to agree with a lot of the previous posters.

You need to be careful that you are not crippling yourself by employing gee whizz tools too early in a subject.

I would argue that you employ tools that cover your (highest competency - 1).

This way, you are using these tools to automate, and solve problems, and not substituting them for knowledge.

I did a degree in Finance, and I steadfastly refused to buy a financial calculator until my final year. By then, I felt that I well understood the theory, and just wanted to automate repetitive tasks.

Went through most of university with a £9.99 special ... nothing fancier than a Casio fx-115s.

Saturday, November 16, 2002

I have a mathematics degree with honours (Pure) from Trinity university in Dublin (1982 -that's how OLD I am), most of our pure lecturers loathed calculators, although I wasn't there at the time, one of them snatched one out of a students hand who dared to use it in a first year calculus tute and hurled it against the wall, smashing it into pieces, apparently he was made to buy a new one. We also did a lot of numerical analysis for which we used fortran with punched cards.  My advice is wait until you start your uni and see what other people are using and what the lecturers recommend. You may find that you need nothing more complex than a cheap casio $20 scientific calculator.

Saturday, November 16, 2002

S'funny, cuz I don't ever remember needing a calculator for any of the math classes I took at University.  I don't even remember seeing numbers in my math classes.

Physics?  Yes, I remember numbers in physics....

Saturday, November 16, 2002

"Modern-day phycho-babble education theorist 'airheads' (cousins to the same dangerous idiots that think 'time-out' is the proper way to handle a screaming 3-year old) seem to think..."

I suppose anonQAguy thinks you should beat the hell out
of a screaming 3-year-old.

Saturday, November 16, 2002

For college math, forget all the equipment.  All you need is a notebook and pencil and an attention span. 

Sunday, November 17, 2002

"I suppose anonQAguy thinks you should beat the hell out
of a screaming 3-year-old."

Anonymous -

Actually, I don't see in my statements where I said one should 'beat hell' out of a child. That is a knee-jerk mis-characterization YOU chose to make.

But - this is growing increasingly off-topic, and is the last I'll say about it here. If you want to continue this (probably fruitless) debate, let me know and we'll go to some other forum to do so. If you're not a parent yourself, however, forget it altogether -- you can't possible have anything meaningful to say on the topic either way.

Sunday, November 17, 2002

I've used all four: Maple learning calculus & D.E. in college; Mathematica & Matlab for graduate thesis work; Mathcad at work.

Mathcad is the easiest to start with, but I don't think it's a good choice for lengthy calculations (more than two screens).

Mathematica is the best all-around math program; it does both symbolic and numerical analysis very well.

Matlab is outstanding for numerical vector and matrix computations.

Maple I've not used in years, but it's used in Mathcad (for the symbolic analysis engine).

I suggest starting with Mathcad. When that becomes cumbersome to use, switch to Mathematica. If you encounter numerical matrix problems that give Mathematica problems, learn to use Matlab.

Pick the right tool for the right job :)

David Fischer
Sunday, November 17, 2002

What about the ascii incarnation of APL called j?

Monday, November 18, 2002

Most schools introduce one of these programs in Linear Algebra. Check which one your school uses in that class, and get that one. Typically the bookstore will carry it as well, making it that much easier to get the academic version.

Phil Aaronson
Monday, November 18, 2002


I was a pure math major in college and am now working on my masters in math while working fulltime as a developer.

I would dedicate my time studying mathematica if I were you.  It is richer.

As fas ar a calculator, I wouldn't worry much about that. Just pay attention in your classes and take your school work seriously.

If you plan on doing some serious stuff, then the key is to not screw off too much.  I partied and drank too much and lost a couple of years before I figured out what was important

Thursday, December 5, 2002

hmm, here's an odd perspective.  I graduated from hs in 98.  I went to college for three semesters, and, due to self discipline and study habbit issues, pretty much forced myself out of the university.  I enlisted in the Army for four years, and am now out and in the process of preparing to go back to school (phys maj, cs and math minors).  I've had the horrible experience of discovering that four years of disuse have really robbed me of nearly all the math I ever knew.  So I've gotten myself a nice pre calc book, and am rebuilding my math skills from the ground up.  I've just gotten my hands on a ti-89 (got it for cheep on clearance) and am in love with it. One key problem with many text books, when used as I am now using mine, is that they provide answers only for certain problems, the odd ones in this case.  At the lower levels of math which I am studying now, this ti 89 is proving to be increadibly usefull for checking the answers I get to the even numbered problems.  It is also proving useful for picking problems apart step by step (I think there is an automated way to do this, but for now I'm doing it manually by punching in each step).  Bottom line is that the symbolic methods used by this thing is great for learning the basic stuff. BIG DISCLAIMER: This is working for me because I don't have homework assignments due, studying on my own as I am.  This has the great potential, as others have pointed out, to become a horrible crutch.  This is where self discipline comes into play.  But that is all on the individual.  I'm a long time ti-86 jocky myself, and, even though I've only had the 89 a short while, I'm in love with it.  I'm looking forward to playing with the programming functions on it in the future.

Now, I'd like to mention a really cool piece of software I've found which is geared EXACTLY towards learning.  It is a symbolic math solver, and it is able to blow apart operations that it is doing and display them step by step.  this is great. it requires a java runtime, and I believe it will run on both mac and windows.  I have it running on my iPaq pocketpc.  The program is named Formulae 1, and is by Poliplus Software. I'm sorry I don't have a URL for you, but you should be able to find it fairly easily.  Take a look at it. It's a great little program.

Conclusion:  symbolic calculators are great if you don't abuse them.  check out Formulae 1 also. USE THESE ONLY FOR CHECKING ANSWERS!

hope this helps.  Good luck.

Paul Tyler Thompson
Monday, April 26, 2004

*  Recent Topics

*  Fog Creek Home