From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.5-pre1 (2020-06-20) on ip-172-31-74-118.ec2.internal X-Spam-Level: X-Spam-Status: No, score=-1.9 required=3.0 tests=BAYES_00 autolearn=ham autolearn_force=no version=3.4.5-pre1 Date: 22 Sep 92 10:11:30 GMT From: mcsun!uknet!stl!crosfield!pdg@uunet.uu.net (paul goffin) Subject: The trouble with Ada... (60 lines) Message-ID: <15467@suns4.crosfield.co.uk> List-Id: The trouble with Ada is that it exposes poor software engineers and project managers. Ok. What do I mean? I've been in the software engineering business for about 10 years now. I've seen, and worked on, some very good software systems. I've seen, and worked on, some awful ones. It's been my experience that the difference between a good and bad software system has a lot to do with the quality of the software project management. Most good systems gave a lot of thought to the system design, and then a lot of management effort was expended to keep that design on track. Usually the best method to keep the project "good" was to make the "good" way the easy way; that is make it easier for programmers to use "good" practice than to just "hack and slay". Most bad systems had almost no thought about design at all, and even where there was such thought, the project manager quickly lost control. Ok, so we all knew all that, and what did I mean about Ada exposing poor software engineers and managers? I've found that if you ask someone to do something they can't do or don't want to do, then instead of telling you they can't do it, they _pretend_ to be getting on with it. Most of the time, they actually aren't pretending (that's what makes it so hard to spot), they actually are working very hard, and even believe that they are doing good work. Thing is what they tend to be doing is coding and testing the "easy bit" of the job. In fact they will, given the chance, use all the project time doing the bit they knew how to do; they won't address the "difficult bit" at all. Now when you use 'C' as the coding language, it's very easy to give the illusion of actually doing useful work, when in fact all you are doing is tracking down silly coding errors. In Ada, those coding errors are quickly exposed by the compiler. Worse, it's actually difficult when using Ada to write any code at all if you don't have a very good idea about the total design. That means you have to address the "difficult bit" first. (I think that's what Ada was all about!) So, what happens? Well, instead of addressing the problem, producing the design and finally coding (in Ada), the programmers sit around and look for ways not to use Ada. As their managers don't see the real problem, they are soon convinced that it's all Adas fault and they start looking for waivers. Paul -- +-------------+-------------------------------------------------------+ + Paul Goffin + Crosfield Electronics Ltd. U.K. +44 442 230000x3357 + + + Opinions expressed are mine! (Yours for a small fee) + +-------------+-------------------------------------------------------+