HDTenEightyP/NetNews huggingface dataset:
From: hallam@zeus02.desy.de (Phill Hallam-Baker)
Subject: Re: Scientists as Programmers (was Re: Small Language Wanted)
Reply-To: Hallam@zeus02.desy.de
Organization: Deutsches Elektronen Synchrotron, Experiment ZEUS bei HERA
Date: Fri, 4 Sep 1992 16:52:18 GMT

In article <1992Sep2.133810.24957@newsroom.bsc.no>, izahi@bsc.no (Raul Izahi
Lopez Hernandez) writes:
|>In article <1992Sep1.173636.6387@nntpd.lkg.dec.com> edp@math.zko.dec.com (Eric
|>Postpischil) writes:
|>>
|>>On the other hand, I (a senior software engineer) have seen code written
|>>by scientists.  While it manages to work, there are serious oversights
|>>like forgetting to initialize variables, numerical instabilities, et
|>>cetera.  I can be sure the code works on some data, but it has never
|>>been properly tested by a good software engineer.
|>>
|>>To say programming is not really a difficult challenge is to be unaware
|>>of many of the pitfalls of computing, both numeric and algorithmic.  On
|>>the numeric side, a physicist might be unaware of the proper order in
|>>which to arrange arithmetic operations to preserve accuracy.  On the
|>>algorithmic side, a physicist might be unaware of the issues of
|>>computational complexity that would let them speed up a program or make
|>>an infeasible program feasible or the issues of what problems are even
|>>computable (recursively enumerable sets, et cetera).
|>
|>   A good compiler and a good optimizer can help any scientist to write
|>reasonable code, however there is no software yet that can help a CS
|>person write any physics code.

The problem being to get the Physics person to use the good compiler.

The big problem here is the number of "experts" who have very low quality
standards especialy in the area of user interfaces. Use of UNIX is a retrograde
step in this respect since it teaches people that producing a user environment
in which no command has a useful name is acceptable. 

There are also the twin problems of over conservativism (we must write in
FORTRAN using a program library knwon to be full of bugs because it is so old it
must be correct), and software fads (the kind of person that will try to convert
people writing specs in Z to use "modern" techniques like SASD), this type is
readily identified by the number of jargon words packed into each sentence. The
software fads crew are always onto the next plaything before anything gets
finished meaning that the conservatives end up recoding everything in FORTRAN.

I have just heard that a very nice monte carlo program which has been written in
an object oriented fashion using C++ is to be rewritten in FORTRAN "since
everyone can understand FORTRAN". That is the effect of letting physicists run
software projects.


--

Phill Hallam-Baker
Xref: sparky comp.edu:1346 comp.lang.fortran:3181
From: roth@oasys.dt.navy.mil (Pete Roth)
Newsgroups: comp.edu,comp.lang.fortran
Subject: Re: scientists as programmers (was: Small Language Wanted)
Date: 26 Aug 92 11:57:30 GMT
Reply-To: roth@oasys.dt.navy.mil (Pete Roth)
Followup-To: comp.edu
Organization: The David Taylor Model Basin

In comp.lang.fortran, schuette@wl.com (Wade Schuette) writes:

]OK, so having gone back and forth, maybe we have a sense now that there
]are scientists who write good code and scientists who don't, perhaps in
]a different ratio than people who spend more time focusing on programming
]issues. 

Determining "who's good at laying code" has been a problem for decades.
Usually, the results of studies show that the "best" folk are better than
the "worst" folk by a _factor_ of 25, on whatever measure you want to make.
And it doesn't depend on "scientific" training, either. My own hypothesis
is that somehow music adepts are better than the tone deaf, but that's just
a hunch...

]Can we focus some attention on what CAN and SHOULD be taught to the
]scientists who would prefer to write good code and are reasonably bright
]but extremely busy.  On a very practical, very pragmatic basis.
]Suppose you can get 45 minutes of time, and hold a seminar on What every
]scientist should know about computing but probably doesnn't... or some such.
[...]
]                           This is a serious question, as I'd like to do
]precisely this, for an audience of primarily biological / chemical 
]researchers.  Software Engineering 101, extremely applied, for people
]heavily into Fortran and "getting results today."

]Or maybe, this: if you had ONE thing you could try to get across, that would
]make sense to that audience in that time frame, what would it be?

What do you mean when you say "good code"?
Fast running? Cheap to write? Maintainable? Portable?
"The easiest program to write is the one you don't have to write." Are
there commercial packages that do most of what your folk want?

Are these folk extremely busy because they have to deal with mounds of
rotting code?

Let's suppose they're interested in using powerful tools but 
don't want to be bothered "maintaining" their or their colleagues' code.
45 minutes is just enough time to recommend that the organization start
switching to an Object Oriented approach. Note however, that there IS a
learning curve associated with this new paradigm...

regards, pete
- - - - - - - - - - - - - - - - - - - - - - - - - -
Peter N Roth      roth@oasys.dt.navy.mil
"Never argue with someone who buys ink by the barrel." - Daniel Janal.
Xref: sparky comp.edu:1487 comp.lang.fortran:3381 comp.lang.misc:2892
From: throop@aurs01.UUCP (Wayne Throop)
Newsgroups: comp.edu,comp.lang.fortran,comp.lang.misc
Subject: sagans of lines of Fortran?
Date: 2 Sep 92 18:32:13 GMT

> From: zkdc05@trc.amoco.com (Kelly D. Crawford)
> With trillions of lines of existing Fortran in the scientific
> marketplace, it is a travesty not to teach CS students Fortran sometime
> during their education.

Let's see... assume Fortran emitted at a furious continuous pace
of 1000 lines/day, every day since 1960, and we get

               1e12 loc
        divide 1e3  loc/developer-day   =  1e9 developer-days
        divide 365  days/year          ~=  2739726 developer-years
        divide  32  years (since 1960) ~=  85616 developers

or about 86 thousand Fortran-coding speed-demons continuously
employed since 1960 for every trillion of those trillions of lines.

Impressive.

( Yes, Kelly was probably being hyperbolistic... )

On a more serious note, I tend to disagree that Fortran should
necessarily be taught to all CS students.  It depends strongly
what those CS students intend to specialize in.  Certainly
bit bummers, toolsmiths, graphics gurus and other specialties
would find Fortran relatively useless.  Certainly we don't teach
our electrical engineers all about the properties of concrete,
nor find it a travesty that this is not done.

Wayne Throop       ...!mcnc!aurgate!throop
Newsgroups: comp.edu
From: davidsen@ariel.crd.GE.COM (william E Davidsen)
Newsgroups: comp.edu,comp.lang.fortran,comp.lang.misc,comp.arch,sci.math
Subject: Re: Scientists as Programmers (was Re: Small Language Wanted)
Date: 2 Sep 92 19:25:55 GMT
Reply-To: davidsen@crd.ge.com (bill davidsen)
Distribution: na
Organization: GE Corporate R&D Center, Schenectady NY

In article <180heaINN60q@network.ucsd.edu>, mbk@lyapunov.ucsd.edu (Matt Kennel) writes:

| Specifically, we don't *know* what the eventual task will be or whether
| a programs a 'throwaway' or a 'keeper'.
| 
| I write something slap dash and some intriguing results come out, and then
| we start to pursue that line further and all of a sudden the little
| throwaway code starts mutating into a monster, especially when my boss puts
| another student on the project.  And at any time you still don't know whether
| "this is the last modification" or whether it will be hanging around for
| a long time.
| 
| When new results are coming out, its an awfully hard sell to my boss who's a
| physicist not a software engineer to say "why don't I spend 2 months
| rewriting this from scratch so it will do the same thing as it does now".

  That's why a programmer should do it. It doesn't take longer to write
a salvagable "throw together" than a rats nest, you use a few modules in
the obvious places and comments to show where error checking would go,
and stuff like that.

  That and comments, good programmers use a few comments in even the
fastest program, if only so they can throw it out later knowing what it
is. A program can always be expanded later in minimal time without
"doing everything right," as long as you don't do anything wrong.
-- 
bill davidsen, GE Corp. R&D Center; Box 8; Schenectady NY 12345
    I admit that when I was in school I wrote COBOL. But I didn't compile.
Xref: sparky comp.edu:1440 comp.lang.fortran:3324 comp.lang.misc:2837 comp.arch:9119 sci.math:10771
From: J.P.Knight@lut.ac.uk
Newsgroups: comp.edu,comp.lang.fortran,comp.lang.misc,comp.arch,sci.math
Subject: Re: Scientists as Programmers (was Re: Small Language Wanted)
Date: 1 Sep 92 05:59:22 GMT
Reply-To: J.P.Knight@lut.ac.uk (Jon Knight)
Followup-To: comp.edu
Organization: Dept. Comp. Studies, Loughborough University of Tech., UK.

In article <1992Aug31.204426.1985@craycos.com> sog@craycos.com (Steve Gombosi) writes:
>
>Having recently encountered honors graduates in "Computer Science" who were
>not entirely sure exactly what an assembler is makes me despair of finding
>BSc-s who understand vector processing. Perhaps things are better in
>Canada...
>

Having graduated with a degree in CS just over a year ago, and after
having spent a few hours during my first year of PhD study lecturing to
other CS Students (both straight BSc CS types and MSc conversions), I
heartily concur on this.  In our department, much of the ongoing
research is centred around two major topics; HCI and Formal Methods.  I
know people who've come out of the place with pretty reasonable results
who still find Operating Systems a mystery and for whom assemblers and
CPU understanding doesn't really stretch past the simplified VAX code
and Z80 we were presented in our first year.

Many of the final year projects which are undertaken (which constitute
about 20% of the course if memory serves me correctly) are using X
Windows or Hypercard (ugh ;-) ) to produce front-ends and prototypes for
HCI work.  I and a few my friends were viewed as "special" (actually had
that said to us by a Senior Lecturer) because we spent most of our first
year learning about networks, UNIX, C, etc.  I don't consider that very
special for CS undergraduate.

I wonder if Physics students who show an "out of hours" interest in
quantum theory are considered "special" and left alone, or if they're
encouraged by their staff with new challenges and help?

Jon

PS: is this discussion really relavent for comp.arch?  I've set the
follow-ups to comp.edu.

-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
Jon P. Knight (PhD Student, R.A. and Subwarden).  Tel:(+44) (0)509 222298
Internet: J.P.Knight@lut.ac.uk Snail: CS Dept, LUT, Leics., UK. LE11 3TU.
* I can't even talk to you without the aid of chemicals or lies. - Pele *
Xref: sparky comp.edu:1493 comp.lang.fortran:3389 comp.lang.misc:2898 comp.arch:9180 sci.math:10899
From: dik@cwi.nl (Dik T. Winter)
Newsgroups: comp.edu,comp.lang.fortran,comp.lang.misc,comp.arch,sci.math
Subject: Re: Scientists as Programmers (was Re: Small Language Wanted)
Date: 2 Sep 92 21:12:56 GMT
Followup-To: comp.edu
Organization: CWI, Amsterdam

In article <1992Sep2.090541.29304@st-andrews.ac.uk> ajtd@honey.st-and.ac.uk (Tony Davie) writes:
 > In addition, many of the best non-numerical algorithms seem to be neglected.
 > Bubble sort STILL seems to be the most used sorting method, for instance.

Surprise, also Bubble sort has its place!  I once did code for the
singular value decomposition.  At the end of the routine the singular
values are sorted (because most people expect this).  I deliberately
chose Bubble sort because the code is short.  That its order is n^2
is not important as the order of the decomposition is n^3 for square
matrices.  It would be silly to invest time to implement better sorting
methods at that place.
-- 
dik t. winter, cwi, kruislaan 413, 1098 sj  amsterdam, nederland
home: bovenover 215, 1025 jn  amsterdam, nederland
dik@cwi.nl
Xref: sparky comp.edu:1494 comp.lang.fortran:3390 comp.lang.misc:2899
From: ajayshah@almaak.usc.edu (Ajay Shah)
Newsgroups: comp.edu,comp.lang.fortran,comp.lang.misc
Subject: Re: Scientists as Programmers (was Re: Small Language Wanted)
Date: 2 Sep 1992 15:10:15 -0700
Organization: University of Southern California, Los Angeles, CA
Distribution: na
NNTP-Posting-Host: almaak.usc.edu

zkdc05@trc.amoco.com (Kelly D. Crawford) writes:

>With trillions of lines of existing Fortran in the scientific marketplace, it is a
>travesty not to teach CS students Fortran sometime during their education.

Most _CS_ students won't encounter fortran in their lives.
They'll work on applications software, operating systems, compilers,
GUIs, etc.  Maybe 5% of CS grads at most may need to see code written
in uppercase :-)

If you discussing the education of engineering students, it's an entirely
different issue, because they are quite likely to find (say) Linpack
useful.  My broad position there is: look to the future.  For a kid
of age 18, the skills which will payoff in the next 10-20 years are
most important, and I can't imagine how he's better off learning fortran.

(My UG degree was in aero engg. :-))

        -ans.
-- 
Ajay Shah, (213)749-8133, ajayshah@usc.edu
From: erwin@trwacs.fp.trw.com (Harry Erwin)
Newsgroups: comp.edu
Subject: Re: lab science requirements for programmers
Date: 2 Sep 92 13:07:57 GMT
Organization: TRW Systems Division, Fairfax VA

I got into a similar discussion once concerning the appropriate scientific
course requirements for archeologists. Some points:

1. A lab science provides a) the paradigms of a field, and b) some
experience doing real research. Most science departments seem to have the
view that those are the key elements to becoming a scientist. We can
conclude that a lab science requirement should be included in a CS
curriculum, since most computer scientists eventually have to develop
domain expertise (learn paradigms) and do original research based on those
paradigms (do labs).

2. However, it is not necessary that the lab science be one that is too
difficult to learn, unless the CS department wants to wash out a lot of
freshmen. Instead, the department could coordinate with some of the other
departments so that there were lab science courses available (perhaps in
archeology, geology, or biology) where the emphasis was on data analysis
labs, since that's the type of research most often performed by CS
graduates.

3. Math prerequisites for a CS degree (or any sort of degree in my
opinion) should include basic calculus, basic differential equations
(perhaps more as a lab course than as a pure math course), probability,
and statistics. Perhaps, some of this could be covered in a course
sequence shared with the economics department.

Cheers,
-- 
Harry Erwin
Internet: erwin@trwacs.fp.trw.com

Xref: sparky comp.edu:1435 comp.lang.fortran:3315 comp.lang.misc:2831
From: brian@comp.vuw.ac.nz (Brian Boutel)
Newsgroups: comp.edu,comp.lang.fortran,comp.lang.misc
Subject: Re: Scientists as Programmers (was Re: Small Language Wanted)
Date: 1 Sep 92 00:16:21 GMT
Organization: Dept. of Comp. Sci., Victoria Uni. of Wellington, New Zealand.


In article <1992Aug31.211256.20455@a.cs.okstate.edu>, 
                hip@a.cs.okstate.edu (HUFFMAN BRADLEY SP) writes:

|> 
|> The point of my ramblings is that there is more to computers that small 
|> algorithms for your next journel article.  Life changes when you have 
|> a payroll to get out and most computer science people I've met in a 
|> university setting are so wraped up in their "science" they couldn't 
|> handle payroll for a small 10 person company let alone a corporation.
|> 

I had payrolls to get out thirty years ago when I started as a programmer. I get
the impression that although the technology has improved (courtesy of the
research and academic community), people in commercial computing are still 
struggling with the same problems that faced them when computing was still new and
exciting. In other words "life changes" very little.

|> Since accountants must take continuing education credits, I think professors
|> should every 2 years be forced to go work in industry for 3 months.

Why? What would they learn that wasn't evident 2, 4 or 10 years previously, apart
from a few fashionable buzz-words?

(I've filtered the long list of Newsgroups on this.)

--brian


-- 
Internet: brian@comp.vuw.ac.nz
Postal: Brian Boutel, Computer Science Dept, Victoria University of Wellington,
        PO Box 600, Wellington, New Zealand
Phone: +64 4 471-5328   Fax: +64 4 495-5232
Newsgroups: comp.edu
From: s8486534@deimos.ucc.umass.edu (PRESCOTT SMITH)
Subject: Re: Keyboarding
News-Software: VAX/VMS VNEWS 1.41    
Organization: University of Massachusetts, Amherst
Date: Tue, 25 Aug 1992 19:04:00 GMT

In article <1992Aug25.150442.5851@nosc.mil>, bwalker@nosc.mil (Beth Walker) writes...
>In article <24AUG199221030176@deimos.ucc.umass.edu> 
>s8486534@deimos.ucc.umass.edu (PRESCOTT SMITH) writes:

>I disagree with the statement that we all had to learn by the hunt n peck
>method, at least in regards to straight typing.  I learned to type in
>high school, from a standard typing class, before I ever saw a computer.
>By the time I started with my very first terminal, I already knew how
>to type, and I didn't need 'hunt n peck' for anything other than special
>control sequences, etc.

    That of course is what's being discussed.  

>Most of my work on the computer falls into the 'straight typing' category, 
>and I would expect that the majority of work required of school children
>would also.  A straight, standard typing class (modified as needed for
>younger children) should give them the basics for completing assignments.

    Can't imagine anyone's doing "straight" typing anymore, even with a
word processor, let alone emacs or other text editors which most of us have
to use on a mainframe.   School children are into logo and pascal!

--------------------------------------------------------------------------------
  Prescott Smith      Univ. of Mass/Amherst      s8486534@UCSVAX.ucs.umass.edu
  160 Rolling Green                              s8486534@Titan.ucc.umass.edu
  Amherst, MA  01002      413/253-5527           psmith@educ.umass.edu
--------------------------------------------------------------------------------
Newsgroups: comp.edu,comp.lang.fortran,sci.general,sci.math
From: minch@lotka.stanford.edu (Eric Minch)
Subject: Re: Scientists as Programmers (was Re: Small Language Wanted)
Organization: Stanford University, California, USA
Date: Thu, 27 Aug 1992 17:51:20 GMT

In article <9224102.2090@mulga.cs.mu.OZ.AU> fjh@cs.mu.OZ.AU (Fergus  
Henderson) writes:
> Equally, I think that the characterization of "software specialists"  
or
> "computer scientists" as viewing the software as an end unto itself  
is
> bigotry, and a stereotype to which I must strenously object.
> 
> Indeed I think it would be far more fair to say that "scientists are  
generally
> less skilled at programming than professional programmers" than to  
say that
> "professional programmers think that programs are the only things of
> importance in this universe".
> 

I won't admit it's bigotry (since I've spent some years jumping back  
and forth between both poles of the scientist-programmer axis), and I  
can't claim it's sociological characterization (since it's based on  
personal observation) but in my experience FORTRAN-writing scientists  
can whip out working algorithms just fine. The problem comes when they  
have to deal with data structures more complex than arrays, programs  
longer than about a thousand lines, and mainly when turning algorithms  
into maintainable production code. I've sometimes wished that  
scientists were taught in a language with no I/O statements.
--
 
Eric Minch             Any resemblance to the opinions of persons
Epistemic Artisan      or organizations other than myself--living,
Stanford Genetics      dead, or imaginary--is purely fortuitous.
Newsgroups: comp.edu,comp.lang.fortran,comp.lang.misc
From: fjh@munta.cs.mu.OZ.AU (Fergus James HENDERSON)
Subject: Re: Scientists as Programmers (was Re: Small Language Wanted)
Organization: Computer Science, University of Melbourne, Australia
Distribution: na
Date: Wed, 2 Sep 1992 12:44:02 GMT

meissner@osf.org (Michael Meissner) writes:

>In article <92245.124125KGZXK@ASUACAD.BITNET> Zafer KADI
><KGZXK@ASUACAD.BITNET> writes:
>
>| I have been on both sides of issue (I have MS's in both Mech.Eng CS)
>| 
>| There is no one wrong or right on the issue of :
>| 
>| 1. FORTRAN or anyother language.
>|    All you Computer Science major that think Fortran is so bad    can
>| you tell me anyother language that has all the forms of numbers
>| that the scinetist use such as integers, real numbers and COMPLEX
>| numbers.
>
>C++.

Exactly. What's more, with C++ I can have arbitrary precision integers,
arbitrary precision rational numbers, fixed point real numbers, etc.
(all of these are available using GNU's libg++). If you want
quaternions, then it's no big deal to add them too.

Of course there is no single language that will please everybody, but IMHO
teaching new CS students Fortran is not making the best use of the
limited course time available.

-- 
Fergus Henderson             fjh@munta.cs.mu.OZ.AU      
This .signature virus is a self-referential statement that is true - but 
you will only be able to consistently believe it if you copy it to your own
.signature file!
Xref: sparky comp.edu:1532 comp.lang.fortran:3427 comp.lang.misc:2933 comp.arch:9224 sci.math:10990