home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #27 / NN_1992_27.iso / spool / sci / math / symbolic / 3059 < prev    next >
Encoding:
Text File  |  1992-11-20  |  3.4 KB  |  64 lines

  1. Newsgroups: sci.math.symbolic
  2. Path: sparky!uunet!utcsri!helios.physics.utoronto.ca!alchemy.chem.utoronto.ca!mroussel
  3. From: mroussel@alchemy.chem.utoronto.ca (Marc Roussel)
  4. Subject: Re: The Real Meaning of Efficiency?  (Re: Serious Programming, etc.)
  5. Message-ID: <1992Nov20.183648.4441@alchemy.chem.utoronto.ca>
  6. Organization: Department of Chemistry, University of Toronto
  7. References: <1992Nov20.051351.18180@alchemy.chem.utoronto.ca> <By0q94.9p9@news.cso.uiuc.edu> <1ej8dvINN3u2@agate.berkeley.edu>
  8. Date: Fri, 20 Nov 1992 18:36:48 GMT
  9. Lines: 53
  10.  
  11. In article <1ej8dvINN3u2@agate.berkeley.edu> fateman@peoplesparc.Berkeley.EDU
  12. (Richard Fateman) writes:
  13. >At Berkeley, we haven't taught Fortran in CS for many (20) years.  There
  14. >is a Fortran intro course in engineering, taught by engineering faculty.
  15. >But the main upper division scientific computing for engineers course
  16. >is taught using Matlab, although there is some (I think) fortran.
  17.  
  18.      There are several constraints in designing a CS/programming curriculum
  19. for scientists and engineers.  One of them is that most of your students
  20. are unlikely to take more than two half-courses because that is all that
  21. their departments mandate.  A worthy approach might be to start out with a
  22. half-course in algorithms and basic theory, perhaps even without assigning any
  23. programming exercises.  (In other words, don't make them learn ANY
  24. programming language.  Implementation details too often detract from learning
  25. in introductory CS courses.)  Let the students learn about algorithms by
  26. using their own brains.  In a second half course, introduce a handful
  27. of programming environments and design programming exercises that will
  28. require interaction of these environments.  For instance, you might
  29. choose Fortran, Maple and Matlab.  Maple does a symbolic computation,
  30. generates Fortran code which is compiled and produces some output which
  31. is passed to Matlab for visualization.  (The whole process could
  32. obviously and naturally be spread over several assignments.)  That's the
  33. way scientists really work and there is no sense pretending that any one
  34. system can do everything.
  35.  
  36. >In article <By0q94.9p9@news.cso.uiuc.edu> Richard J. Gaylord
  37. ><gaylord@ux1.cso.uiuc.edu> writes:
  38. >>Its totally clear that most cs departments don't have
  39. >>the faintest idea what non-cs people want or need to know about
  40. >>programming. 
  41. >>This can be seen from the recent move at many places from
  42. >>FORTRAN to C as the first language. 
  43. >
  44. >False, at least for my department.  We don't teach C first, and we certainly
  45. >don't push C as a language for scientific computing.
  46.  
  47.      Perhaps, but some CS departments are doing this, even to their own
  48. students.  The truth is that neither Fortran nor C is a wonderful
  49. teaching language.  (Fortran is too restrictive and C is too
  50. permissive.)  Fortran in combination with other tools might not make a
  51. bad combination however.  The students can always learn C later.
  52.  
  53. >>the best thing that could happen to the teaching of programming to tech
  54. >>people would be to use mathematica to do it.
  55.  
  56.      Why Mathematica in particular?  More importantly, why Mathematica
  57. alone?  Scientific computation almost never involves only one language
  58. or tool anymore.  I have no real objection to Mathematica being a part
  59. of the curriculum, but it seems silly to not teach the students to be
  60. flexible and use whatever tools seem most appropriate.
  61.  
  62.                 Marc R. Roussel
  63.                                 mroussel@alchemy.chem.utoronto.ca
  64.