Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!watmath!clyde!burl!ulysses!allegra!mit-eddie!think!harvard!cmcl2!philabs!ttidca!ttidcc!hollombe From: hollombe@ttidcc.UUCP (The Polymath) Newsgroups: net.singles,net.cse Subject: Re: portable code Message-ID: <212@ttidcc.UUCP> Date: Mon, 10-Mar-86 14:33:52 EST Article-I.D.: ttidcc.212 Posted: Mon Mar 10 14:33:52 1986 Date-Received: Sat, 15-Mar-86 02:04:30 EST References: <653@moscom.UUCP> <569@hoptoad.uucp> <11569@watnot.UUCP> <1087@burl.UUCP> <11577@watnot.UUCP> Reply-To: hollombe@ttidcc.UUCP (The Polymath) Organization: The Cat Factory Lines: 53 Xref: watmath net.singles:10938 net.cse:749 In article <11577@watnot.UUCP> jjboritz@watnot.UUCP (Jim Boritz) writes: > ... marks cannot be assigned simply upon the appearance >of a program. For one thing marks must be assigned consistently. In >order to assign marks consistently the marking process must become somewhat >mechanized. This leaves you with a big problem when someone writes a >bunch of crap for a program and then asks you to try to find the problem when >it doesn't work. After pouring over this persons spaghetti for twenty minutes >trying to wrap your mind around logic which has been reversed three times, >all you find is a missing semi-colon. > >At the end of it all you are still forced to give marks out for the parts >that worked. So you give 40% because it works (i.e.: you didn't have time to find the hidden bugs), and take 60% off because it's not maintainable. We just fired a programmer who's about to get his CS degree, with a straight A average yet. He had a head full of calculus and graph theory and parse algorithms, but couldn't program for sour apples. Example: He was assigned to write a Pascal routine that would clear a VT100 screen and draw a numbered grid in the upper right corner. Simple enough. When he was finished, his code went on for 2 1/2 pages of hard coded escape sequences. I politely suggested that he write a move cursor routine, just in case we had to switch terminals. He grudgingly agreed and the resulting code covered another page and a half. All this took about 2 days. At that point, I decided to write the routines myself, just to see if all that fuss was necessary. The move cursor routine took six lines, three of which were error handling he hadn't bothered with (two of the remaining three were Pascal overhead). The draw grid routine took another half dozen lines -- one for loop. Combined, they took well under an hour to design and code. Lest you think I'm picking on an unusual incident, we'd been putting up with atrocities like this from him for over two years. (My boss doesn't like to fire people and kept hoping we could train him). My background? A Master's in Clinical Psychology. The horrifying aspect of this is the programmer in question actually believes he's a good programmer. Why? Because he get's A's in his CS courses because his programs work (i.e: they generate the required output from the given input). I submit that the people giving him those A's are doing him and the DP community a grave disservice. -_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ The Polymath (aka: Jerry Hollombe) Citicorp(+)TTI 3100 Ocean Park Blvd. Geniuses are people so lazy they Santa Monica, CA 90405 do everything right the first time. (213) 450-9111, ext. 2483 {philabs,randvax,trwrb,vortex}!ttidca!ttidcc!hollombe