<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns="http://www.w3.org/TR/REC-html40">

<head>
<meta http-equiv=Content-Type content="text/html; charset=us-ascii">
<meta name=Generator content="Microsoft Word 11 (filtered medium)">
<!--[if !mso]>
<style>
v\:* {behavior:url(#default#VML);}
o\:* {behavior:url(#default#VML);}
w\:* {behavior:url(#default#VML);}
.shape {behavior:url(#default#VML);}
</style>
<![endif]-->
<style>
<!--
 /* Font Definitions */
 @font-face
        {font-family:Wingdings;
        panose-1:5 0 0 0 0 0 0 0 0 0;}
@font-face
        {font-family:Tahoma;
        panose-1:2 11 6 4 3 5 4 4 2 4;}
 /* Style Definitions */
 p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:12.0pt;
        font-family:"Times New Roman";}
a:link, span.MsoHyperlink
        {color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {color:blue;
        text-decoration:underline;}
span.EmailStyle18
        {mso-style-type:personal-reply;
        font-family:Arial;
        color:navy;}
@page Section1
        {size:8.5in 11.0in;
        margin:1.0in 1.25in 1.0in 1.25in;}
div.Section1
        {page:Section1;}
-->
</style>

</head>

<body lang=EN-US link=blue vlink=blue>

<div class=Section1>

<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'>I guess that is why I have always preferred
a RAD/JAD environment to a strict Waterfall one.  One can spend eons
creating the world’s most perfect spec, but then the problem changes. 
>From my perspective ideally the Subject Matter Expert & the Programmer
become tied at the hip with each taking away a little of the others knowledge
by the time the “project” is over & done with.  When I
first started programming in support of Electronic Warfare I didn’t know doodle
about RADAR parametric data, know I at least know how to spell it.  </span></font><font
size=2 color=navy face=Wingdings><span style='font-size:10.0pt;font-family:
Wingdings;color:navy'>J</span></font><font size=2 color=navy face=Arial><span
style='font-size:10.0pt;font-family:Arial;color:navy'><o:p></o:p></span></font></p>

<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'><o:p> </o:p></span></font></p>

<div>

<div class=MsoNormal align=center style='text-align:center'><font size=3
face="Times New Roman"><span style='font-size:12.0pt'>

<hr size=2 width="100%" align=center tabindex=-1>

</span></font></div>

<p class=MsoNormal><b><font size=2 face=Tahoma><span style='font-size:10.0pt;
font-family:Tahoma;font-weight:bold'>From:</span></font></b><font size=2
face=Tahoma><span style='font-size:10.0pt;font-family:Tahoma'> Peter St. John
[mailto:peter.st.john@gmail.com] <br>
<b><span style='font-weight:bold'>Sent:</span></b> Thursday, August 28, 2008
11:54 AM<br>
<b><span style='font-weight:bold'>To:</span></b> Perry E. Metzger<br>
<b><span style='font-weight:bold'>Cc:</span></b> Steve Herborn;
Beowulf@beowulf.org<br>
<b><span style='font-weight:bold'>Subject:</span></b> Re: [Beowulf] Stroustrup
regarding multicore</span></font><o:p></o:p></p>

</div>

<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'><o:p> </o:p></span></font></p>

<p class=MsoNormal style='margin-bottom:12.0pt'><font size=3
face="Times New Roman"><span style='font-size:12.0pt'>I agree entirely with
Perry here. I'd take it further: even in the case of giving the machinist
instructions, "12x12 with holes here and here", it would help if the
machinist has some sense of what you are building. Will the product be hot
enough so that metal expands and contracts? humidity? should the finish be
gloss or matte? copper, aluminum...? The machinist will help you build a better
gizmo if he has some feel for what your are building, what you need the part
for. He will have relevant experience from his machinist perspective.<br>
<br>
Mixed unit tactics are the path to victory, but the mixed units perform better
together if they have some sense of each other's jobs. Some of us specialize in
a very focused way, some of us generalize, but to work as a team we need to
learn some of each other's jobs. <br>
<br>
I think a physicist programming is like an astronomer grinding lenses (maybe
nobody does that anymore). Some astronomers (in the old days) ground their own
lenses and ended up contributing to optics; others never looked through
telescopes, they do math on the measurements taken by others. Some computer
scientists don't program; some mathematicians can hardly use email. But most of
us learn bits and pieces of each others jobs, in varying degrees; it's
necessary to communicate effectively, and what's the subject for one guy is a
tool for another guy.<br>
<br>
Peter<o:p></o:p></span></font></p>

<div>

<p class=MsoNormal><span class=gmailquote><font size=3 face="Times New Roman"><span
style='font-size:12.0pt'>On 8/28/08, <b><span style='font-weight:bold'>Perry E.
Metzger</span></b> <<a href="mailto:perry@piermont.com">perry@piermont.com</a>>
wrote:</span></font></span><o:p></o:p></p>

<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'><br>
"Steve Herborn" <<a href="mailto:herborn@usna.edu">herborn@usna.edu</a>>
writes:<br>
> However, that being said I would think that it is usually easier to teach
a<br>
> Scientist to code, then a coder the PhD level of the science.<br>
<br>
<br>
I think either is fine -- you wind up with someone who knows both. The<br>
problem is when you try to segregate the two skills.<br>
<br>
I think I finally have the right analogy. A physicist is interested in<br>
advancing physics, not in advancing mathematics, but as the tools of<br>
physics are all made of math, he cannot ignore the math or hope to<br>
turn to a specialized hired mathematician who knows no physics to do<br>
his math thinking for him. The math and the physics are integrated --<br>
you need one mind to see both in order to get anywhere.<br>
<br>
Writing good software for physics problems is no different. The<br>
physics and the software are one. You can complain that you want to do<br>
physics, not computing, but that's exactly like complaining you want<br>
to do physics and not math. Indeed, software pretty much *IS* math.<br>
<br>
The attempt seems to be to somehow treat the computer science as<br>
though it were the software equivalent of machine shop work.<br>
<br>
You're building a new instrument, so you draw up the parts, and then<br>
you ask a machinist to make them. "I need a sheet of metal 12cm by<br>
12cm with holes here and here."  It is somehow imagined that you
can<br>
do that with the software -- you make some vague guesses about what<br>
you might need and write a spec (which is imagined to be like a<br>
blueprint for a part) and ask a "software machinist" to make it for<br>
you.<br>
<br>
Unfortunately, this misses the point -- the computer programming is<br>
not like machining the parts for the instrument, it is like<br>
*designing* the instrument. That requires both knowledge of both<br>
fields, not just of one. It is not at all like machining.<br>
<br>
This is of course a serious problem. It takes at least several years<br>
of effort to become facile with computer software just as it takes<br>
several years of effort to become facile with calculus, differential<br>
equations, etc., etc., and fundamentally one wants to be doing<br>
science, not math or computer programming, but I can't see any real<br>
way around it in the long term if progress is to be made.<br>
<br>
Incidentally, THIS IS NOT A NEW ARGUMENT. It was only a little over a<br>
century ago that people scoffed at the idea that engineers needed to<br>
learn higher mathematics. "I'm trying to build a bridge, not to do<br>
math!" was the general sort of attitude that was common. Eventually,<br>
people realized that there was no way around it, you just had to spend<br>
the time to learn the math or you couldn't be productive. I expect<br>
something similar is going to happen here.<br>
<br>
<br>
<br>
Perry<br>
--<br>
Perry E.
Metzger                <a
href="mailto:perry@piermont.com">perry@piermont.com</a><br>
_______________________________________________<br>
<br>
Beowulf mailing list, <a href="mailto:Beowulf@beowulf.org">Beowulf@beowulf.org</a><br>
To change your subscription (digest mode or unsubscribe) visit <a
href="http://www.beowulf.org/mailman/listinfo/beowulf">http://www.beowulf.org/mailman/listinfo/beowulf</a><o:p></o:p></span></font></p>

</div>

<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'><o:p> </o:p></span></font></p>

</div>

</body>

</html>