cstjc@its63b.ed.ac.uk (A Cunnigham) (02/25/88)
wcs>. Remember that 1st-year students, even CS students, are studying wcs>. more than just CS100, and, if possible, they should have *some* wcs>. usable programming knowledge as soon as possible. While it's wcs>. probably a Bad Thing to expose them to BASIC, whatever wcs>. functional language you teach them had better be adequate for wcs>. doing chemistry and physics homework, numerical integration for wcs>. calculus, statistics for their psych classes, and the like. >Good point, Bill. This is generally the point I was trying to make. Wrong Wrong Wrong. CS1 courses exist to teach people about computer science. They are not in general service courses for other departments. Here we run 3 first year courses. One is for computer scientists, one is for other scientists, one is for Arts students. ( By the way we teach the other scientists Common LISP as well as Pascal. ) >Incidentally, I don't happen to feel that's a good thing. It would be >nice if a physicist (for example) could stick primarily to physics and >not have to learn a second discipline (computer science). Hopefully, >the legacy of our generation of programmers will be a considerable >simplification in computer user interfaces. wcs.> And somewhere along the lines, engineering students will *have* to wcs.> learn Fortran, if only so they can do interesting *engineering* wcs.> research without having to rewrite EISPAK and its hench-programs. nevin1> And engineers DO NOT have to learn FORTRAN!! >On which planet? Your statement is rhetorical and doesn't have practical >value. I think you would be hard pressed to find an engineering curriculum >which didn't require FORTRAN (with the possible exception of Computer Science, >which you may or may not count as engineering). Right Right Right. Engineering courses can teach FORTRAN after we ( computer science ) have taught them HOW TO PROGRAM. You can teach anyone to ride a bike and after that they can ride any bike. It's just that using a bike with square wheels isn't very good for teaching. Computer Science most certainly IS NOT engineering. If anything it's a branch of mathematics. pcm> [ ... ] I have just changed jobs. In no interview was I asked pcm> whether I knew ML; in every interview I was asked if I knew C. >I've been generally amused at the response I've gotten to this statement. >As a footnote, I'll add that I used to list ML on my resume as one of the >programming languages I know. I finally removed it because (1) nobody >had ever heard of it, and (2) when I explained what it was, they didn't >care. If they don't care then they ain't worth working for! >...and smaller companies can't afford to train you how to program in C, >so you probably won't get a job there unless you know C. But if you know HOW TO PROGRAM then it doesn't matter if you know C ( or any other language for that matter ). All you need is the manual and a language definition. nevin1> Learn the good programming habits first; then pick up all the 'fad' nevin1> languages. It will pay off a lot better in the end. >Now let me get this straight. Fortran, which has been around since about >1950, and C, which is the implementation language for the defacto industry >standard operating system and about a jillion utilities and applications >programs, these are the fad languages, right? >Incidentally, the implication here is that you can't learn 'good programming >habits' in C. Bullshit. You can learn 'good programming habits' in any language providing they're taught well. It just happens that some languages are better for teaching them in ( eg ML, LISP, Modula-2 ) than languages that let you pull all sorts of nasty tricks. Would you teach someone to drive in a Formula 1 racing car ? Or a tank ? >Lucky for me, though, I know ML and Prolog, so if I ever have to your >planet, I'll be able to get a job ;-). >Phil Miller Stay off my planet - I like it the way it is! Anthony Cunningham. 'I think of Sarah. The rest is easy.' -- Anthony Cunningham, Dept of Computer Science, University of Edinburgh. ARPA: tjc%ed.ecsvax@ucl-cs.arpa UUCP: ...!{decvax,ihnp4,seismo}!mcvax!ukc!ecsvax!tjc JANET: tjc@uk.ac.ed.ecsvax I think of Sarah. The rest is easy.
jonathan@pitt.UUCP (Jonathan Eunice) (03/02/88)
In article <1016@its63b.ed.ac.uk> cstjc@itspna.ed.ac.uk (A Cunnigham) writes: > CS1 courses exist to teach people about computer science. They are > not in general service courses for other departments. What makes you think that good programming techniques are going to be any different when found in physicists, say, than when found in computer scientists? Programming is a SKILL, not a science. You use "computer science" as though it is some higher religion that is defiled by teaching it to heathens, unbelievers, or people from other departments. >> [...] It would be nice if a physicist (for example) could stick >> primarily to physics and not have to learn a second discipline (computer >> science). Yes, but if a scientist is going to use a tool, like a computer, it would be a good idea to learn how to use it, to gain some skill at it. Programming is a skill, and one that sometimes requires cleverness and artfulness, and is often difficult. The requirment of programming for scientists is unlikely to disappear. Again, let's not confuse the art of programming with science. > Computer Science most certainly IS NOT engineering. If anything it's a > branch of mathematics. Then your computer science is different from the one I see. The bulk of what people call computer science is people designing and building new operating systems, compilers, expert systems, hardware, languages, communication networks, and so on. This is *engineering*, just as building circuits, bridges, houses, motor assemblies, turbofan blades, etc. is. There is no *science* being done in these applied areas, even though the application may further knowledge in the field. This is the difference between science and technology. Scientists deal in science, engineers in technology. Most so-called computer scientists think of themselves as scientists when writing systems, operating or expert, but they are wrong. The science of computers is the less-popular theory -- the study of things like computability, decidability, and algorithms. The bulk of CS, as it is generally talked about, is engineering -- designing, working out practical problems, implementing, etc. It most certainly *is not* like mathematics. We delude ourself if we somehow think that what we're doing is somehow more akin to what chemists and biologists do that what {chemical, mechanical, electrical, ...} engineers do. > pcm> [ ... ] I have just changed jobs. In no interview was I asked > pcm> whether I knew ML; in every interview I was asked if I knew C. > >> [...] I used to list ML on my resume as one of the programming languages >> I know. I finally removed it because (1) nobody had ever heard of it, >> and (2) when I explained what it was, they didn't care. > > If they don't care then they ain't worth working for! Anthony is clearly not going to get a job in the US. There are maybe a half-dozen employers in the states who will ask or care about obsurities like ML or Snobol, unless the job specifically pertains to these languages. I don't claim this is right, but among the ones who do not are quite a few that are well worth working for. >nevin1> Learn the good programming habits first YES YES YES YES YES (See, I learned my lesson at the School of Power Posting. :-) ) >> Lucky for me, though, I know ML and Prolog, so if I ever have to your >> planet, I'll be able to get a job ;-). > > Stay off my planet - I like it the way it is! Let's be nice, eh? ------------------------------------------------------------------------------ Jonathan Eunice ARPA: jonathan%pitt@relay.cs.net University of Pittsburgh jonathan%pitt@cadre.dsl.pittsburgh.edu Dept of Computer Science UUCP: jonathan@pitt.UUCP (412) 624-8836 BITNET: jonathan@pittvms.BITNET
shebs%defun.utah.edu.uucp@utah-cs.UUCP (Stanley T. Shebs) (03/03/88)
In article <2922@pitt.UUCP> jonathan@vax.cs.pittsburgh.edu.UUCP (Jonathan Eunice) writes: >The bulk of CS, as it is generally talked about, is engineering -- >designing, working out practical problems, implementing, etc. It most >certainly *is not* like mathematics. We delude ourself if we somehow >think that what we're doing is somehow more akin to what chemists and >biologists do that what {chemical, mechanical, electrical, ...} engineers >do. Even the more applied parts of CS could be characterized as a sort of "mathematical engineering". Even theory-hating hackers use more abstractions than most pure mathematicians (notice that I said "use" not "prove"). Actually, this is turning into yet another argument about what CS really is. I haven't seen anyone mention that the traditional sciences have theoretical and experimental subdivisions. There are a lot of similarities between the physicist building/using a particle accelerator, and an OS researcher building and experimenting with a new system. stan shebs shebs@cs.utah.edu