Re: debate: to get a Master's Degree in CS or Not
- From: "Walter Bright" <walter@xxxxxxxxxxxxxxxxxxxxxxx>
- Date: Wed, 4 Jan 2006 14:36:16 -0800
"Randy" <joe@xxxxxxxxxxxxxxx> wrote in message
news:dphc78$3in$1@xxxxxxxxxxxxxxx
> Walter Bright wrote:
>> All I can do is sadly shake my head. The difference between an engineer
>> and
>> a tradesman/technician/mechanic is the former knows the math.
> I would have said that the difference lies not with what they know but
> what they do. These are professions, not identities.
I'm going to strongly disagree with that. I used to work in an outfit that
was evenly divided between techs and engineers, and they worked side by
side. The techs often complained that they did exactly the same thing as the
engineers, so why were they paid less? Although the tasks looked the same,
they weren't. The engineers also produced the numbers backing up the design,
and took responsibility for it by signing the drawings. The techs never did.
Of course there were plenty of engineers who couldn't do the numbers,
either, but in my not so humble opinion, they were frauds.
> In fact, few engineers have a deep understanding of the pragmatics in
> building, pricing, marketing, and selling a thing.
True, but the latter three are not engineering.
> Often tradesmen do.
What tradesmen often bring to the table is a vast amount of on the job
experience, which can be pretty darn valuable. If the grizzled old codger
tradesman tells you your design has been tried before and doesn't work,
you'd better listen before it kills somebody.
> Knowing math has value, but only if it's necessary to what you do.
> Math skills are largely irrelevant in all but design.
I strongly disagree. Math skills give one the skill of a certain pattern of
thought which is widely applicable far beyond just calculating numbers.
Knowing the math also helps impart that engineering 'feel' for if a design
is right or not. Math skills help replace emotional decision making with
rational decision making.
> Sure, they are
> also useful in optimization practices of all kinds, but from what I've
> seen in several decades of working in the world, few organizations care
> about efficiency much less optimality. Neither ever got a product
> funded or a company built. Ergo, math skills take a distant second to
> skills of a more social or practical nature.
If you try to run a company without knowing any math, you're going to be
taken to the cleaners by the finance people who do. On a more personal
level, credit card companies make fortunes off of math deficient people, as
do car finance companies, and every gambling casino. You can't understand
money without solid math skills.
I won't denigrate the desirability of social skills. But to say that math
skills are somehow not of a "practical" nature is way, way off base.
> And math skills are no measure at all
> of whether someone can implement these algorithms well or correctly.
What nonsense. I've implemented algorithms I didn't understand. The problem
was, I had no way to tell if I did it right or not. For algorithms I did
understand, I could tell if they're working right or not, I knew how to fix
them if they weren't, and I could even improve upon them. Otherwise, it's
just shooting blind and deaf.
> Not that I believe math skills are unnecessary or valueless in
> computing, but I do think that it's a pretty small fraction of software
> jobs that can employ even calculus, much less number theory, abstract
> algebra, topology, analysis, or math (or logic) proofs of any kind.
I just shake my head in disbelief <g>. How on earth do you debug your
programs, for example, if you are unable to think in terms of logical
proofs? If you can't think logically, how can you possibly construct the
logic of a program?
>> On a more subtle level, mastering math teaches the mind to think a
>> certain
>> way, a way that fits in very well with programming. I now and then run
>> into
>> programmers who are unable to figure out why their own programs don't
>> work,
>> and in working on them with the problem, they just don't think about the
>> problem in an organized way, and have no hope of solving it on their own.
>> This kind of skill is what the more challenging math classes will provide
>> you.
> But that's true for any rigorous subject. Philosophy, law, any form of
> science -- all of these teach critical methodical thinking.
The first two completely lack rigor. If they had rigor, then there wouldn't
be reversals in philosophical thought every few years, and there wouldn't be
a Supreme Court trying to figure out what the law says and reversing their
own rulings. I don't see anyone deciding that 2+2=5, though there is the
(probably apocryphal) story of the state legislature that once attempted to
pass a law defining pi to be 3.0.
As for science, you can't do science without math.
> IMHO, their
> mastery is just as valuable to a programmer as math, and perhaps more so
> since they deal in values and processes, not just symbols and abstract
> relations.
Hmm. What is the 'value' of a C++ program?
.
- Follow-Ups:
- References:
- debate: to get a Master's Degree in CS or Not
- From: xtcsonik
- Re: debate: to get a Master's Degree in CS or Not
- From: Walter Bright
- Re: debate: to get a Master's Degree in CS or Not
- From: slebetman@xxxxxxxxx
- Re: debate: to get a Master's Degree in CS or Not
- From: Walter Bright
- Re: debate: to get a Master's Degree in CS or Not
- From: Randy
- debate: to get a Master's Degree in CS or Not
- Prev by Date: Re: What programming language to choose : Challenge for real experts here !
- Next by Date: Re: What programming language to choose : Challenge for real experts here !
- Previous by thread: Re: debate: to get a Master's Degree in CS or Not
- Next by thread: Re: debate: to get a Master's Degree in CS or Not
- Index(es):
Relevant Pages
|