From: Christian on

People without any math background simply miss what Math is about...
If you think solving polynomials is the last thing to learn in Maths
before you are done... then yes Math is probably of little use (except
you are doing coding theory ... lot of codes go over finite fields that
pretty much depend on polynomials)


But programming languages themself are Maths ...
The whole lagnguage you are using is an example of First Order Logic.
Like SQL is a more human readable form of relational calculus...


Without doubt one can program and live a happy life without learning any
Maths ... actually while programming you probably won't learn any new
Maths. Though knowing math gives you some insight behind the scenes.

Good comparison might be that you don't need to play any physics to play
a game of ball ... or knowledge on field theory to switch on the light.

It will be useful to you when you try to invent something new though ...
when something happens that never occured to you theory helps you to
deduce what could be the reason..

Maths especially the stuff in Compsci might help you to see the
problems clearer... I.e. when you smell some problem is NP you should
know that its time to go just for an approximate solution and not the
best one...

my Opinion... you can code without much knowledge of Maths... but Math
helps ... the harder the probelms get you try to solve the more
theoretic/Math knowledge you need...

Christian
From: Tom Anderson on
On Fri, 12 Mar 2010, sl(a)my-rialto wrote:

> Someone says if one does not know the difference between "equality" and
> "equivalence", then one is an entry-level developer at best.
>
> What is your opnion?

I think the person who said that is probably a prat.

> (I think we should not talk about mathematical concepts, since it is the
> software developer in question.)

Only a fool closes the door on an idea.

Mathematical concepts can be useful at times in software development, and
so the wise programmer makes them a tool in his toolbox. Your dismissal is
as misplaced as his elitism.

tom

--
I fought the law and the law won.
From: Tom Anderson on
On Fri, 12 Mar 2010, Mike Schilling wrote:

> Patricia Shanahan wrote:
>> BGB / cr88192 wrote:
>> ...
>>> personally, I think many people overstate the role of math in
>>> programming in some ways:
>>> when ever was the last time programmers had to seriously invest time
>>> in things like solving polynomials or writing proofs.
>> ...
>>
>> I have rarely needed to solve a polynomial as a programmer, although I
>> have had to understand how to solve very large systems of linear
>> equations. On the other hand, writing proofs seems to me to be a very
>> practical activity. For example, I sometimes debug by trying to
>> construct a proof that the problem could not possibly have happened,
>> taking things I think are true as the axioms. Given a valid proof of
>> the impossibility of something that has actually happened, at least one
>> axiom used in the proof must be false. It is a good way of selecting a
>> set of beliefs to investigate.
>
> My degree (taken many, many years ago) is in mathematics. I don't use
> much of the math itself, but the discipline of writing proofs, that is,
> making sure each step follows logically from the previous ones and that
> no special cases are omitted, is something I still use every time I
> write a piece of code..

Exactly the same here.

Except that my degree was in biochemistry, and when i'm making sure each
step follows logically from the previous ones and that no special cases
are omitted, i'm applying the scientific method. I bet there are
programmers who used to be historians and policemen who can make analogous
claims about the origin of their discipline. I have the highest respect
for mathematics and mathematicians, but i don't think they have a unique
claim on rigorous thinking. Rather, mathematics is just what you get when
you apply rigorous thinking to numbers, rather than to enzymes,
manuscripts, or criminals.

tom

--
Mathematics is the door and the key to the sciences. -- Roger Bacon
From: Arne Vajhøj on
On 11-03-2010 23:09, Patricia Shanahan wrote:
> Maybe this is a rather vague way of getting at the following issue: I
> would indeed expect a competent Java developer to understand the
> difference, in Java, between a.equals(b) and a==b for reference
> expressions a and b.

I think it is.

But asking the question this way reveals more about the
interviewer than the interviewed.

Arne

From: Martin Gregorie on
On Fri, 12 Mar 2010 20:30:04 +0100, Christian wrote:

> But programming languages themself are Maths ... The whole lagnguage you
> are using is an example of First Order Logic. Like SQL is a more human
> readable form of relational calculus...
>
Good point.

Re SQL though: I remember seeing an early piece on relational calculus,
probably written by Chris Date, and thought at the time that I'd rather
use it than SQL. Maybe the raw form's time has come again now that more
programmers are used writing concise block structured and OO languages
instead of the pseudo-English of COBOL. Even at the time I had the
impression that SQL was relational calculus that had been obfuscated to
suit COBOL programmers.


--
martin@ | Martin Gregorie
gregorie. | Essex, UK
org |