From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: ** X-Spam-Status: No, score=2.1 required=5.0 tests=BAYES_40,INVALID_MSGID, REPLYTO_WITHOUT_TO_CC autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: f8c65,30e368bdb3310fe5 X-Google-Attributes: gidf8c65,public X-Google-Thread: fac41,af40e09e753872c X-Google-Attributes: gidfac41,public X-Google-Thread: 109fba,f292779560fb8442 X-Google-Attributes: gid109fba,public X-Google-Thread: 103376,30e368bdb3310fe5 X-Google-Attributes: gid103376,public X-Google-Thread: 1008e3,30e368bdb3310fe5 X-Google-Attributes: gid1008e3,public X-Google-Thread: 10db24,30e368bdb3310fe5 X-Google-Attributes: gid10db24,public X-Google-Thread: 1014db,30e368bdb3310fe5 X-Google-Attributes: gid1014db,public From: engebret@sg2.cr.usgs.gov (Chris Engebretson) Subject: Re: Hungarian notation Date: 1996/06/11 Message-ID: #1/1 X-Deja-AN: 159648219 sender: news@igsrsparc2.er.usgs.gov (Janet Walz (GD) x6739) x-nntp-posting-host: sg2.cr.usgs.gov references: <31999F43.41C67EA6@scn.de> <4p5qsj$f2v@goanna.cs.rmit.EDU.AU> <4p9cia$9v3@nntp.seflin.lib.fl.us> <4pioot$kae@goanna.cs.rmit.EDU.AU> <4pk29i$nhj@tpd.dsccc.com> organization: United States Geological Survey reply-to: engebret@sg2.cr.usgs.gov newsgroups: comp.lang.ada,comp.lang.c++,comp.lang.c,comp.lang.modula3,comp.lang.modula2,comp.edu,comp.lang.eiffel Date: 1996-06-11T00:00:00+00:00 List-Id: In article <4pk29i$nhj@tpd.dsccc.com>, kcline@sun132.spd.dsccc.com (Kevin Cline) writes: |> Actually, I think Mr. Silverman knows exactly what student code looks like: |> It looks a lot like professional code. Or should I say that a lot of |> professionally written code looks like 2nd-year student code? |> |> Maybe we should have a contest to find the worst examples of professionally |> produced C++ code? Apologies in advance if I'm going way off-base here. :-) In my place of work, at least, the worst examples of professionally produced code (independent of the language that it's written in) usually don't come from coders with degrees in Computer Science. Rather, they come from people like remote sensing scientists and electrical engineers. These individuals have the technical know-how to develop algorithms and justify their correct- ness, but they tend to have difficulty expressing them eloquently and efficiently when it comes down to actually writing the code. Comments are sparse if not totally nonexistant, variable names are not descriptive, and "goto"s are a dime-a-dozen. As I often have occasion to maintain code like this, I gain a deeper appreciation for some of my college programming-oriented classes, because they serve a dual purpose. Not only do they introduce you to and allow you to get your hands dirty with various topics and theories (i.e., compiler fundamentals and language translation), but by requiring you to write several thousand lines of code to successfully complete the class, they also make it crystal-clear how important such things as efficiency, structure, and documentation really are. Most of the scientists I know who play a dual role as a programmer really haven't had this kind of exposure; in fact, with regards to C/FORTRAN, a good number of them are self-taught. As a result, the code that they produce works, but not as well as it probably could (and should!), and it's certainly not as clear as it should be. It's been my experience and observation that our academic community is beginning to require more computer science "techie" courses from its scientific and engineering students. And this is a Good Thing, because a good deal of the world's existing base of code was not written by individuals with strong Computer Science backgrounds, and that's not going to change anytime in the near future. Since these scientists and engineers will inevitably be asked to express themselves in the form of a high-level computer language, this experience will prove invaluable, both to themselves and to the individual(s) whose job it is to maintain that code. PS: Of course, this is not to say that a scientist with little background in Computer Science can't write truly excellent code, and I'm certainly not saying that when a student graduates with a degree in Computer Science, he/she automatically will write wonderful programs, because we all know _that_ isn't true. But the old saying holds true: Practice makes perfect. -- /*------------------------------------------------------------- Chris Engebretson // CSB - SED - Scientific Systems Development United States Geological Survey - National Mapping Division Mundt Federal Building, USGS EROS Data Center Sioux Falls, SD 57198 http://edcwww.cr.usgs.gov/eros-home.html email: engebret@edcserver1.cr.usgs.gov phone: 605-594-6829 -------------------------------------------------------------*/