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=-1.9 required=5.0 tests=BAYES_00 autolearn=ham autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,1116ece181be1aea X-Google-Attributes: gid103376,public X-Google-ArrivalTime: 2003-09-07 08:42:22 PST Path: archiver1.google.com!news1.google.com!newsfeed.stanford.edu!news-spur1.maxwell.syr.edu!news.maxwell.syr.edu!newsfeed.icl.net!newsfeed.fjserv.net!newsfeed00.sul.t-online.de!t-online.de!skynet.be!skynet.be!louie!tlk!not-for-mail Sender: lbrenta@lbrenta Newsgroups: comp.lang.ada Subject: Re: Is the Writing on the Wall for Ada? References: From: Ludovic Brenta Date: 07 Sep 2003 17:41:21 +0200 Message-ID: User-Agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.2 MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Organization: -= Belgacom Usenet Service =- NNTP-Posting-Host: 217.136.11.50 X-Trace: 1062949340 reader1.news.skynet.be 9540 217.136.11.50:46138 X-Complaints-To: usenet-abuse@skynet.be Xref: archiver1.google.com comp.lang.ada:42236 Date: 2003-09-07T17:41:21+02:00 List-Id: My take at it is that development managers want to hire disposable, interchangeable developers. That is why it is so important to them that "99% of new graduates know Java". The quality of the language has nothing to do whatsoever with it. Furthermore, they deliberately choose to ignore the fact that by hiring disposable developers, they end up developing disposable software. For shops like Boeing where software just has to work, this means increased costs of development, which they hope to recoup by lower wages paid to their disposable developers. Similarly, consulting firms make their money by selling development time, therefore it is in their interest to keep development costs as high as possible. In fact, the role of a good development manager at a consulting firm is to keep a project on the verge of being cancelled (which is the point where costs are as high as the customer is willing to pay), but to not let it be cancelled (or granted to another contractor) altogether, so as to milk the cow for as long as possible. For COTS software vendors, disposable software is in fact the whole point they want to reach. Their software, nowadays, is not meant to be used anymore; it is meant to be sold; so it is a good business model that produces buggy, ill-designed software that must be replaced periodically. The natural consequence of that is a subscription-based business model. Sun originally used binary portability as their main argument for Java. That was in the days when Java was the language for applets. At that time, they said it was okay to sacrifice performance for binary portabiliy. Now that applets have come and gone, most everyone is developing server-side software in Java. On a server, binary portability is unimportant; what is important is performance (especially if your servers costs big bucks, you really want to squeeze performance out of them), so Java should have been ruled out. But it is in the interest of Sun, IBM and other hardware vendors to keep selling bigger and bigger servers. For them, it is a good business model that produces inefficient software, because they can sell more hardware to compensate for that. By the way, why do you think "99% of new graduates know Java"? Because Java is a simplified language designed for beginners. The guys who developed it took C++, removed the really good part of it (templates), kept a less interesting part of it (inheritance, albeit simplified), ditched most static type checks in the process, and designed everything so that errors were detected as late as possible at run time. The worst part of it is that most of these graduates are True Believers in the Java Gospel, and think that "thou shalt use inheritance everywhere" is the One True Way of Programming. Most of them have never even heard of memory management. By contrast, Ada was designed by and for Real Programmers, and with low development costs as the main requirement, therefore it took the exact opposite approach; it had generics before inheritance, emphasises separation of interfaces from implementation for code reuse, and tries its best to detect errors as early as possible at compile time. Ada is an engineer's dream and a vendor's nightmare. All in all, I think that the DoD and Boeing are the willing victims of hardware, software and services vendors, all of which want high development costs and unreliable software. :( -- Ludovic Brenta.