Path: utzoo!utgpu!water!watmath!clyde!cbosgd!ihnp4!ihlpf!nevin1 From: nevin1@ihlpf.ATT.COM (00704a-Liber) Newsgroups: comp.lang.misc Subject: Re: First Languages (yet again) Message-ID: <3698@ihlpf.ATT.COM> Date: 16 Feb 88 02:48:26 GMT References: <4022@ames.arpa> <2400002@otter.HP.COM> <932@its63b.ed.ac.uk> <2781@omepd> <3730@megaron.arizona.edu> <1982@ho95e.ATT.COM> Reply-To: nevin1@ihlpf.UUCP (00704a-Liber,N.J.) Organization: AT&T Bell Laboratories - Naperville, Illinois Lines: 66 In article <1982@ho95e.ATT.COM> wcs@ho95e.UUCP (46323-Bill.Stewart,2G218,x0705,) writes: . Remember that 1st-year students, even CS students, are studying . more than just CS100, and, if possible, they should have *some* . usable programming knowledge as soon as possible. While it's . probably a Bad Thing to expose them to BASIC, whatever . functional language you teach them had better be adequate for . doing chemistry and physics homework, numerical integration for . calculus, statistics for their psych classes, and the like. I like the catch phrase 'usable programming knowledge' :-). 1st year students usually do not need anything more than a calculator for intro courses in chem, physics, calc, psych, etc. Take calculus, for example. Most of the integration problems are not numerical but symbolic. If a 1st year student can write a sufficiently complex (another catch phrase :-)) symbolic integration program in BASIC, then there is no need to teach him BASIC in CS100. Let him get on to what CS is all about (vs what the field of numeric calculation is all about). And if he is just learning programming for the first time he won't be able to program that symbolic integration program in time for it to make a difference in his other courses. (Personally, I'd buy an HP-28S and learn to program that; it is a lot easier to drag it around than an IBM PC and most of the needed software is already built in. Then again, this assumes that I already know how to program a little to start with). . If you have to do this by providing standard library functions . in your Random-Lisp distribution, fine. But if you don't do . it, they'll be off writing scurvy hacks in RPN or BASIC or . Lotus Macro Language, learning all the bad habits you're . trying to shield them from. And somewhere along the lines, . engineering students will *have* to learn Fortran, if only so . they can do interesting *engineering* research without having . to rewrite EISPAK and its hench-programs. If they already know how to write the hacks in RPN or BASIC there is no need to teach them those languages. And engineers DO NOT have to learn FORTRAN!! Unless you are doing much numeric processing (and even then there are other languages you can do it in), there are enough software packages out on the market so that you never have to write programs on that low a level. (I am an engineer and the only reason I know FORTRAN is because during a summer job I had to interface to some graphics routines and my choice of languages were PL/I and FORTRAN, and all I could find was the FORTRAN manual.) .> > [ ... ] I have just changed jobs. In no interview was I asked .> > whether I knew ML; in every interview I was asked if I knew C. .> [ good negative comment about interviewers ] . The college I went to didn't offer COBOL, either, though it's . probably useful in a "how the other half lives" survey course. . I've been meaning to learn Zetalisp to upgrade my resume. . (it starts with "Ada" or "Algol", depending on the interviewer. . Any real interviewer will want to know what I *really* can do, . but to interview at larger companies you may need the buzzword list . there so the personnel people will pass it on to the people you . really care about.) And no one is saying that you won't have that buzzword list by the time you finish college. Why do you need it starting with CS100?? On my resume, I have no less than 20 languages. Interviewers would ask me what my favorite language is. I would tell them Icon, and would then explain why I liked it, what it was good for, and what it was NOT good for. And Icon is not exactly a buzzword for most jobs. Interviewers want to know what you can do, and not so much what you have already done. Learn the good programming habits first; then pick up all the 'fad' languages. It will pay off a lot better in the end. -- _ __ NEVIN J. LIBER ..!ihnp4!ihlpf!nevin1 (312) 510-6194 ' ) ) "The secret compartment of my ring I fill / / _ , __o ____ with an Underdog super-energy pill." / (_