|
----- Original Message ----- From: "Leif Svalgaard" <leif@attglobal.net> > Brad and Steve (and the many others that will jump on this > over the next few hours), I have heard all these arguments > before (pride of ownership, creativeness, etc) and they are > *precisely* what is wrong with our "profession". I'll compare > (some will say that I can't) programming a large system as > akin to producing the engineering blueprints of a major > building. In order that the blueprints be understandable > and hence useful now and 20 years from now, there is > very little room for "creativity" and "personal style". If > the original creator of a portion of the blueprint leaves > the project another engineer can and should be able > to complete the piece without having to start from > scratch. The pride in your work comes not from being > original but from executing your job in a professional > manner. This argument can go on and on and on. Ah, software engineering. That was the buzz in about 1982, I think? I have to say, RPG looks like macro assembler with the dreaded COME FROM opcode grafted on it. A puff of orange smoke and - you are in a maze of twisty little passages, all alike. (that's a joke for old programmers.) Maybe in VB (which is most of what we code in) this isn't such an issue. We do have standards. For example, global variables all go in one module, declarations in another, and every global variable is part of a typedef, so it appears like an object, and you can't typo it. Option explicit of course, deflng a-z, all variables have explicit typing, one and only one variable declaration per line know the company-specific dls and use them, if you have to do something new generalize it and document it for review and addition to the company dlls. comments in every code block, overview comments (not functional) for modules and forms. no single line IFs. no while/wend, use DO like a real professional. Booleans better be Booleans not integers. If you invent something tricky and cute, good for you and put a comment on every line, and also tell us why you are so special. If you find yourself doing the same thing in a second program, go back to the first program, strip out the code and make an activex dll out of it, put it back int he first program and test it. Unless the customer is on the phone, then you can wait till tomorrow and redo both programs and test. And of course, final testing is always done by the tech support department, and no you can't go watch. The customers yell at them when your code breaks, and idiot proofing doesn't do you any good because our customers are geniuses. They have to be, they picked our product over a more expensive one made by a bigger company with a trickier user interface and less functionality, who bought the CEO lunch and played golf with their boss. (No I don't mean IBM.) Obviously our customers are brave and a little crazy, also. Leif, all I can say is you must save your personality for the list. I 'd never in my life think of myself as a software engineer any more than I would think of you as a cowboy. I once asked my lead programmer if he wanted the job title chief software engineer, and he asked me if he would get a feathered war bonnet and a train, and that was the end of that discussion. (That's funnier here in Tulsa, where at least half of my employees are part Indian, and my mother-in-law seriously told me when I found out through my sisters genealogy efforts, that I have a male Indian ancestor from the Pilgrim days - "I knew you couldn't be all devil white man, you are too nice a guy.") (It's particularly funny because my lead programmer is Canadian.) 'Egoless programming' was late 1980's I think. For me that's like 'government assistance' or 'military intelligence', although the latter doesn't ring the same in these last few days. I understand this is a moot point, I was wondering how other moot it these days. I'll bet the consultants/ISVs are more one man one code than the bigger shops. Brad Jensen elstore.com LaserVault - try it you'll like it.
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].
Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.