Beefy Boxes and Bandwidth Generously Provided by pair Networks
No such thing as a small change
 
PerlMonks  

math and perl question

by perlsyntax (Pilgrim)
on Dec 04, 2007 at 13:20 UTC ( [id://654776]=perlquestion: print w/replies, xml ) Need Help??

perlsyntax has asked for the wisdom of the Perl Monks concerning the following question:

Where does Algebra have to do with programming and would basic Algebra be a good class to take if you never take it before?

Replies are listed 'Best First'.
Re: math and perl question
by jettero (Monsignor) on Dec 04, 2007 at 13:36 UTC

    Computational Theory is pure math. It comes in handy for certain problems and some types of programs. It's not completely necessary and although I love the stuff, it rarely comes up. When it does it's very exciting.

    To be a good programmer, you definitely do not need good math skills; but if you want to write the kinds of programs that others get excited about, solid math skills are a must. If you wish to get a university degree in computational theory, you'll need the math. If you wish to get a business degree in IT, you probably do not -- those people tend to make more money anyway.

    Short answer: yes. Learn algebra immediately.

    -Paul

Re: math and perl question
by apl (Monsignor) on Dec 04, 2007 at 13:46 UTC
    Algebra imposes a discipline that helps a programmer analyze a problem. It shows how to refactor a problem (that is, to group like with like). It helps a programmer learn how to manipulate a problem, to determine exactly what it is he wishes to do.

    Even more importantly, it's the basis of everything else in mathematics. You can't do Geometry, Trigonometry, Calculus, Differential Equations or Numerical Analysis without knowing Algebra. You might not need to know any of that now, but one day you might.

    (My B.S. and M.S. are in Math, so you should automatically ignore everything I've just said due to my bias. 8-) )
Re: math and perl question
by fenLisesi (Priest) on Dec 04, 2007 at 13:58 UTC
    It depends on what kind of programmer you want to be and what kind of person you are. People like Dominus and blokhead, who have training in rigorous math, are capable of explosive new insights that have the potential to innovate, of writing programs that solve very difficult problems with limited resources, of writing new types of programs. They are future-proof. For the typical poor ass of a "programmer" out there, such as myself, carrying stones from the quarry day in, day out, who is content to produce the next boilerplate web application and to work around problems without necessarily understanding them deeply, good math is not necessary.
Re: math and perl question
by swampyankee (Parson) on Dec 04, 2007 at 14:05 UTC

    Since computing is mathematical at its core, and since most of the most interesting (in my opinion) problems in computing are heavily mathematical at their core (computational fluid dynamics, numerical relativity), going into computing without basic algebra is roughly akin to an illiterate trying to be a professional writer.

    On a more concrete level, it's quite common to have to rearrange equations to preclude overflow errors or loss of precision, to move determine what is an invariant, so it can be moved out of a loop, or because your numerical library is missing something like argsinh.


    emc

    Information about American English usage here and here.

    Any Northeastern US area jobs? I'm currently unemployed.

Re: math and perl question
by Fletch (Bishop) on Dec 04, 2007 at 13:46 UTC
    Anyone who cannot cope with mathematics is not fully human. At best he is a tolerable subhuman who has learned to wear shoes, bathe, and not make messes in the house.Robert Heinlein

    The cake is a lie.
    The cake is a lie.
    The cake is a lie.

Re: math and perl question
by jrsimmon (Hermit) on Dec 04, 2007 at 16:05 UTC
    Programming is really just structured problem solving, spoken in various languages. There is no better teacher of problem solving than mathematics, and basic algebra a fundamental piece in that education.

    Will you use the formulas and theorems you learn in algebra while developing my_dream_app.pl? Probably not. Will you use the way of thinking you developed while studying algebra? Constantly.
Re: math and perl question
by sundialsvc4 (Abbot) on Dec 04, 2007 at 15:40 UTC

    Algebra is a symbolic pursuit, designed to enable you to define and then solve a problem. The rules of algebra define procedures for doing this. Thus, there are a great many corollaries between algebra and computer programming.

    “Those seemingly-pointless geometric proofs” also have their importance, although I, too, did not realize it at the time. Once again, you are tasked with a problem to be solved, but given only limited tools and principles with which to solve it. Yet the solution, once arrived-at, must be rigorous and you must “debug” it.

Re: math and perl question
by dwm042 (Priest) on Dec 04, 2007 at 16:00 UTC
    It's hard for me to think of any kind of programming as anything other than a kind of applied mathematics. And my gut feeling is, well, maybe you don't like algebra classes. Perhaps the teacher is old and the material dry. But if you become any good at programming, and you avoid algebra, you'll end up having to teach yourself many of the same concepts.

    I can't speak for others, but I learn about twice as fast with help than without it. And given informed help, I learn the subject a bit more thoroughly. So, if it were my decision, yes, I'd suggest you take algebra.

Re: math and perl question
by zentara (Archbishop) on Dec 04, 2007 at 13:39 UTC
    It sounds like a homework question.............

    But sure.... you need to know about things like dividing something by zero will cause the universe to malfunction. Even pure text processing needs numerical computations occaisionally. BUT I'm sure you can still use Perl, and not know algebraic basics, you can always ask a co-worker for help.


    I'm not really a human, but I play one on earth. Cogito ergo sum a bum
Re: math and perl question
by downer (Monk) on Dec 04, 2007 at 15:25 UTC
    Are there any interesting questions that a programmer can work on that don't include math? All my research, though highly applied, has math at its core. either as a tool, or as a foundation for the work itself.
Re: math and perl question
by KurtSchwind (Chaplain) on Dec 04, 2007 at 15:43 UTC

    Algebra is a requirement for good programming. You can get by without geometry (if you don't plan on doing much in the way of graphics (and totally forget about 3d graphics without geometry).

    Calculus is nice too as is set theory, but you can get by with those if you need to. But Algebra? If nothing else, it'll help you debug non-trivial loop counters.

    --
    I used to drive a Heisenbergmobile, but every time I looked at the speedometer, I got lost.
      You can get by without geometry

      I disagree (Well, you can get by without all of it but...). Geometry, in my mind, is more important than Algebra for the reasons quite a few already noted. It teaches you a way to think about problems. Geometry is all about proofs and spatial relationships. Algebra, while quite valuable for thinking, isn't what you're going to be grateful for when solving things like trees, heaps, and efficiency problems.

      update: fixed a spacial spelling problem.

Re: math and perl question
by perlfan (Vicar) on Dec 04, 2007 at 19:39 UTC
    Algebra would be much more applicable to programming than, say, calculus, simply because algebra is discrete. If you get the chance, you should also study graph theory and theory of computation. That is where all the fun stuff is :-)

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: perlquestion [id://654776]
Approved by andreas1234567
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others admiring the Monastery: (3)
As of 2024-04-19 19:54 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found