Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10.2 9/18/84; site frog.UUCP Path: utzoo!linus!decvax!bellcore!petrus!scherzo!allegra!mit-eddie!cybvax0!frog!john From: john@frog.UUCP (John Woods, Software) Newsgroups: net.cse Subject: Re: Value of Computer Science degree Message-ID: <645@frog.UUCP> Date: Mon, 10-Feb-86 14:28:13 EST Article-I.D.: frog.645 Posted: Mon Feb 10 14:28:13 1986 Date-Received: Thu, 13-Feb-86 20:42:40 EST References: <4514@kestrel.ARPA> <3407@nsc.UUCP> <4588@kestrel.ARPA> <256@hropus.UUCP> Organization: Superfrog Heaven [ CRDS, Framingham MA ] Lines: 105 > There has been a discussion in net.singles of all places about the value > of computer science degrees. It started in <128@ttidcc.UUCP> when Jerry > Hollombe wrote: [stuff not re-included] > >> In article <3407@nsc.UUCP>, freak@nsc.UUCP (Curt Mayer) writes: >>>It has been my experience that CS professors haven't the foggiest idea what >>>the industry needs. [...] >>>A random hacker grade programmer of high school age is worth 5 brand new >>>CS degree-oids. >>> Note that ALL the awesomely hot programmers I know do not have degrees. A lot of random hacker grade programmers of high school age whom I've met or been :-) are really, REALLY GOOD at optimizing the hell out of a bubble sort. Many of them just do not know about Order statistics, and those who've heard of them don't know how to calculate them. Raw brute force does best when you have acquired skill and finesse in pointing it. A CS education is not the only place you can learn these things, but not learning them is a severe deficiency. (And CS 'educations' that don't teach tidbits like that are criminally deficient!) > > ...It is silly, but not very funny. It gives people the misleading > > impression that you can get far in computer science without anything > > but coding talent. This will be true for a very few. Or it will > > restrict you to working for banks and job shops. > > It's unlikely to get you working for Sun, [others...] > > Peter Ladkin > > I'm not sure I understand what Peter is getting at, perhaps not all > that familiar with the companies Peter lists. Sun has done things like > porting UNIX to their machine and making various enhancements. One way > to learn to do this is to read the UNIX kernel source code. This will > take a little longer for someone who doesn't know anything about > operating systems when s/he starts; That is not the only problem. Reading the UNIX kernel source will tell you how UNIX does things, and give you ideas for how to distribute 'register' declarations to help out those tight inner loops. To implement ideas that distinctly improve on how UNIX did something, you've got to have exposure to alternatives, and a good feel for how to develop alternatives on your own. Again, this is not a dark secret distributed only by Ministers of CS, but a good CS program will include such things. > > When Peter disbarrages coding talent, he is probably using the word in > somewhat narrow sense. Of course you cannot code a program effectively > unless you have some idea of how to design and structure a program; nor > does a person get to be a hacker grade programmer without learning > something about human interfaces.[1] "Coding talent" in a broad sense > covers everything that is required to write programs; if understood in > this sense, "coding talent" is what industry hires people for.[2]... [1] "Design and structure" encompasses a lot of things, many of which don't interest typical high-school hackers (I'm talking about much more that "Gotos Considered Harmful"-Versus-"Dykstra Considered Loony"...). And what was that crack about "Human Interfaces"? Considering that the typical hacker programs largely for personal consumption, the human interface tends to be a bit scant... [2] If industry could always predict ahead of time what objects will definitely maximize whatever metric they are interested in at the time (programmers/"Coding Talent", investments/"return on investment", etc), there'd be fewer business failures. None, even. > > So, of what value is an undergraduate CS program? One answer is that it > teaches a fair amount of mathematics. But what can it teach about computer > science per se? And is this teachable to a person who won't pick it up > fairly quickly if given a UNIX system to hack on for a while? > I think that the most important courses I took at MIT were 'Software Engineering' (which showed me a philosophy of bullet-proofing code to a greater extent than I'd been accustomed), 'Compiler Engineering' (when taught by Prof. Hammer, whose motto was that "Computer Science is not a science and has nothing to do with computers", whose course was not about compilers but instead encouraged us to learn to think about them (I knew the course would be different when he said the first lesson was to sweep the lecture hall...:-)), and 6.033 (whose formal name I cannot remember, but which was referred to as the "Course 6 (EECS) Book Report Course", and was basically about SYSTEMS -- ranging from an Indian village to the Northeast Power Grid (with mention of computer systems thrown in here and there). This course exposed me to ideas I'd likely not have seen elsewhere, and while only a couple of them have had direct applications in my work, the methodology and maturation gained thereby has helped indirectly in just about everything). > Flame if you will, but try to put a little content in your flames. > Kenneth Almquist Well, I'm not so much trying to flame (probably a lost cause...), as trying to give a different viewpoint. Raw coding prowess is not enough, even though it is a valuable and rare commodity. A good CS education can (mind you, can) enable such power to be used with a grace and understanding that will move mountains (not crush them). A poor CS education combined with no coding talent, on the other hand, is the pessimal combination, and probably is what gives CS degrees a bad name. So, which is worse: extremely fast, buggy code that does not do what you want, or clean, elegant code that would do what you want if you could only wait for it to finish... -- John Woods, Charles River Data Systems, Framingham MA, (617) 626-1101 ...!decvax!frog!john, ...!mit-eddie!jfw, jfw%mit-ccc@MIT-XX.ARPA This space dedicated to Challenger and her crew, Francis R. Scobee, Michael J. Smith, Ellison S. Onizuka, Judith Resnik, Ronald E. McNair, Gregory B. Jarvis, and Christa McAuliffe. "...and slipped the surly bonds of Earth to touch the face of God."