| TIP: Click on subject to list as thread! | ANSI |
| echo: | |
|---|---|
| to: | |
| from: | |
| date: | |
| subject: | Code quality |
CS> Deadlines are obviously problems at times and require that tradeoffs CS> between doing it right and doing it sloppily to get it done quickly CS> be made. Even when deadlines haven't been an apparent CS> problem, however,I've seen a lot of code written by people CS> who have years of "experience" (whatever that means) that CS> makes me wonder how on earth I am ever going to figure out CS> who to hire as additional programmers if the time comes to CS> do so. Do you have any experience hiring programmers? If CS> so, I'd appreciate any advice you may have. 1. Hire people you've worked with before. Even if they have warts, you know EXACTLY what to expect. My experience with RECOMMENDING to hire/not hire people: they turn out to be amazingly different than you thought during the interviews. In crisis times, it's almost better to dispense with any surprises & hire known quantities, although I've seen management hire people I thought were dogs only to find out they were better programmers (and people) than me. 2. Glowing recommendations don't mean diddly. The former employer may want to avoid a lawsuit, or the person may react strongly to their new environment and not perform as well as they did...this happens with most of us when thrown into a sweatshop environment. 3. Older "experienced" programmers are hard to change, have distinct ideas about "how it should be done" and can be insufferable about it rather than sticking to the old adage: "Never try and teach a pig to sing- it wastes your time, and it annoys the pig" (which applies to THEM as WELL as management). They also produce more good code/hr while appearing to be extremely slothful compared to new programmers who churn out stuff that needs to be redone 6 times. 4. New "young" programmers take direction better, code like a bat, and are quicker to pick up new constructs- helpful if the project involves all sorts of non-traditional stuff. OTOH, they have a low experience level, so you have to spell everything out. They won't admit sometimes that they don't know about some concept you or an experienced coder would take for granted. I 'bout fell off my chair when my supervisor laboriously explained integer fractional binary arithmetic- NOTHING in the CS texts I'd used (and I'm engineer, not pgmr- predate "CS") EVER mentioned this, but out in embedded control in the late '70s, it was a standard tool. I felt like an idiot- but glad I asked!! 5. Good luck. For help, call (401).... Hope you don't have to make the cut on who to hire. Things in CT-RI axis are quite bleak, and I'm too soft and sympathetic to make hard decisions about people. I'd want to hire them ALL! 6. For one customer, I took over for a programmer who'd left 4500 lines of uncommented C source behind. He used to sneer at how slow and pokey my coding was; took me 8 months, part time, to clean up that code while doing all the other stuff required, and the experience led me to consider using commercial off-the-shelf POPULAR libraries in lieu of even my beautiful, heavily commented code (the other programmer now uses lots more comments, I've noticed). Especially those w/o royalties. I've been reading some of the Ghostscript source code (BJ-10 driver, Epson driver), and it is not what I'd call quality- the docs. and comments have the spare, terse unix-y form and only explain the REALLY hard stuff- the rest is "left as an exercise to the student". The code is quite good, I think, and has a consistent style despite the different authors...but it's NOT the style used by the programmer described above. 5 years ago, I'd have condemmed BOTH styles! Now... CS> Ugh, FORTRAN is one of my least favorite languages, right up there with CS> assembler code. Actually I might prefer assembler, CS> depending on the machine architecture. It gets worse. It was a competitive bid with several heats. Software had to be in a DOD-approved HLL. In 1982, those were FORTRAN IV, COBOL, some AN/UYK-xx lingo, and Ada. Ironman or whatever had just finished, and we said: "They claim a 1st cut Ada compiler for our mini will be ready by the time 1st h/w is due- do you want us to code for that w/o testing, or use FORTRAN?". They chose FORTRAN. We had a "FORTRAN V" with block DO, DO WHILE, DO UNTIL, block IF/ENDIF, etc, but were FORCED to use FORTRAN IV- a compiler switch forced a syntax check. THEN they tried to make us use RATFOR, which wants 1-2 char tags on labels...but FORTRAN only has 6-char labels, so our modules ran out of unique labels; RATFOR and a code verifier they wanted to use burned up about 11 man-months for naught. This was forgotten until GUIDELINES chastized me the other day about some long module label I'd used. Gad, how far we've come in 12 years (and most of the *&^% radars are STILL not installed)! Comments about ICLUI .EXE size have me worried, but GUIDELINES' imperfect .GUI translation on one module had me digging in the .RC file (MIS_BREAK_SPARATOR??!) and I realized, "I don't like this- it has no intellectual satisfaction whatsoever". Even if the .EXE is 100K min., I'll take ICLUI or Guidelines over handwritten APIs. CS> The project I've been working on for the last couple of CS> years has been unfortunate enough to have had severe CS> personnel turnover problems,understaffing, and lots of CS> requirements changes (some of them major). Yikes! I hate it when that happens! Have you considered working for a quiet, relaxed, laid-back place -like NEXGEN ?? CS> However, in some CS> ways this has been good for me personally as I'm the only CS> one who has been around for nearly the entire project and CS> at this point the investors and management seem to think CS> I'm worth trusting because I haven't ripped them off and CS> haven't quit on them like the other consultants have. I sincerely hope you are getting $$$ for this! An OS/2-based project (or even Windows these days) is in serious manpower trouble to begin with; tell management I said they need $$$$$ life insurance on you! If it's anything near as complex as it appears to be from ur various messages on comm. programming, the time to come up to speed for new folk should be enourmous- an investment NOT to be lost by P-Oing the help!!! ___ X KWQ/2 1.2e X ND 27! We're not in Kansas anymore, Toto! --- Maximus/2 2.01wb* Origin: Fernwood - your source for OS/2 files! (1:141/209) SEEN-BY: 12/2442 54/54 620/243 624/50 632/348 640/820 690/660 711/409 410 413 SEEN-BY: 711/430 807 808 809 934 942 949 712/353 623 713/888 800/1 @PATH: 141/209 270/101 396/1 3615/50 229/2 12/2442 711/409 54/54 711/808 809 @PATH: 711/934 |
|
| SOURCE: echomail via fidonet.ozzmosis.com | |
Email questions or comments to sysop@ipingthereforeiam.com
All parts of this website painstakingly hand-crafted in the U.S.A.!
IPTIA BBS/MUD/Terminal/Game Server List, © 2025 IPTIA Consulting™.