Hi Pratik, I never get anywhere near academia, but it is clear from postings on MathGroup and many private communications I have had that things could be better with respect to technical computing in education. Specifically, it is not fair that students should be expected to learn technical material and Mathematica, or any other CAS, at the same time. Perhaps students who are in careers using mathematics should have a required one semester Freshman course in Mathematica or the CAS of their choice. They still wouldn't know everything but at least they wouldn't be stumbling over basic syntax and they might even develop an appreciation of the many beautiful things that can be done. It would be even better if students aiming for a technical career would learn Mathematica in high school. It would be far more valuable to them than a calculus course. David Park firstname.lastname@example.org http://home.earthlink.net/~djmp/ From: Pratik Desai [mailto:email@example.com] David Park wrote: >It is interesting to hear what things bother students because that is >important information. > >I'm not certain that a debugger is the best solution. Rather, I suspect that >students have not learned well enough how to use Mathematica. > Hi David, In most cases in the (atleast in the) engineering curriculum rarely offers courses particularly focussed on learning a language or a package. The student is expected to learn the language/package as he uses it in the course. So any little help at the earlier stages goes a long way in determining the success of the students ability to master the package/language and indeed the course material. Althought the tutorial offered by mathematica is quite good, essentially more interactive tutorials could go a long way in helping students learn Mathematica the right way. But on the flip side of the coin, I have learnt a lot about mathematica just trying debugging messages and understanding the output, and sometimes has even helped me figure out conceptual errors in my approach. Best regards Pratik Desai PS: Thank you for calling my attention to Dialog.....pretty neat -- Pratik Desai Graduate Student UMBC Department of Mechanical Engineering Phone: 410 455 8134
Learning a language in depth in college indeed shows good intentions. But is it feasible? When I did my graduate work at Berkeley (64-66) there were only two languages: Fortran IV and IBM assembler. (Well, COBOL was out but that was for a different school.) Engineering students learned FIV in one-semester courses taught mostly by EE instructors (CS didnt exist) which went fairly deep; e.g., 2-level storage management. One interesting aside is that many of the computer-savvy faculty at the time were experts in assembler and could read octal dumps - they had started before Fortran I came out in 58. That frame of mind can be seen in Don Knuth's early books. Contrast the situation today. By edict from curriculum committees, which indirectly receive industry inputs, an engineering undergraduate must be "reasonably proficient" in a panoply of languages that include C, Excel, a matrix language, a webmaker, and a WP. Languages from a second tier (C++, Perl, Java, Mathematica, microassembler, AutoCAD, SolidWorks, Labview, etc) is taken as per major, or elective choices. (Fortran disappeared in '97.) Can they go deep in each language? For the majority, no way. No background, no time, no instructors. Few of the instructors are able to teach beyond the barest of basics. As for background & time, 30-40% of undergraduate education is remedial. Kids coming from the public HS system can barely write a complete sentence or divide two numbers by hand, let alone understand what a "dispatch table" is. And the graduate level is a similar story.