home *** CD-ROM | disk | FTP | other *** search
- Newsgroups: comp.lang.ada
- Path: sparky!uunet!seas.gwu.edu!mfeldman
- From: mfeldman@seas.gwu.edu (Michael Feldman)
- Subject: Re: Why and how do organizations select the OO
- Message-ID: <1993Jan26.155604.19230@seas.gwu.edu>
- Sender: news@seas.gwu.edu
- Organization: George Washington University
- References: <1993Jan22.203706.29355@seas.gwu.edu> <1993Jan25.042040.11659@seas.gwu.edu> <24696@alice.att.com>
- Date: Tue, 26 Jan 1993 15:56:04 GMT
- Lines: 78
-
- In article <24696@alice.att.com> bs@alice.att.com (Bjarne Stroustrup) writes:
- >
- [lots of good stuff deleted]
-
- >One way of expressing this is that companies (and individuals) wants mere
- >training (i.e. ways of using new tools without absorbing new concepts).
- >What they need is education (i.e. new concepts and their related techniques).
-
- Indeed. I am aware of a certain SE educator in the Ada world whose business
- card used to say "education manager." His customer base grew a good bit
- when he changed the title to "training manager." His customers didn't
- want "education." Too "academic", they said. Turns out he taught the same
- stuff, but they were willing to swallow it when he called it training.
- Sigh...No wonder we're losin' it to the Japanese...
-
- >Ada without some understanding of data abstraction, etc. seems to me to
- >be very nearly just Pascal, and C++ without some understanding of data
- >abstraction, etc. is just C with better type checking.
-
- Indeed.
- >
- >I don't know about the Ada world, but in the C++ world we do have a problem
- >with teachers and textbook writers who miss the connection between concepts
- >and programming language constructs and thus miss the point and makes learning
- >unnecessarily difficult for the students.
-
- Well, I can speak as a teacher of neophytes, who have _tremendous_
- difficulty making the distinction. They identify the concept with the feature.
- I'm a pretty decent teacher, and working pretty hard at the distinction
- between, say, data abstraction and packages. Indeed, I was teaching DA
- several years before Ada even existed, in a data structures course.
- The course is _still_ data structures, and Ada is used as the language.
- Five years later, I'll run into students who say "Hi Mike. Remember me?
- I was your student in that Ada course." Makes me wanna scream.
-
- I am convinced that the only way to show people how to distinguish concept
- from language construct is to teach them _more than one language_, so that
- they can see for themselves what is universal and what is language-dependent.
- Alas, that is rarely possible in today's world, especially in industry.
- It's even hard in college courses (except comparative languages courses)
- to do two languages side-by-side.
-
- At the University of Washington last year I taught a freshman course
- whose requirements were 8 weeks of Ada followed by 2 weeks of Fortran.
- I was _very_ gratified at the way the students reacted to the 2-language
- model. Far from resisting it, they were fascinated by the similarities
- and differences. And I daresay they learned more about fundamentals
- by doing two languages than by doing one. Examples on request.
-
- It's very difficult to compare an apple.
- >
- > > Their state of knowledge of OO truly seemed to be "It's that stuff that
- > > C++ has and Ada doesn't." Some in the group were quite surprised to
- > > discover (from me) that Ada supports information hiding and private types.
- > > Their eyes glazed over when I got to the intricacies of inheritance.
- >
- >Maybe you focussed too much on the intricacies and too little on the
- >concepts :-) I don't experience serious problems getting the object-
- >oriented concepts and the C++ language mechanisms that support then
- >across - the problem comes when the ideas have to be applied to real
- >projects (exactly, as for the data abstraction concepts and the language
- >constructs that support them).
-
- I misspoke. I had about half an hour to give the "Ada viewpoint."
- Obviously there weren't too many intricacies discussed. The point was
- that I believed that for their situation, Ada's weak single inheritance
- could well be quite sufficient,so they could relax and stop fighting
- the mandate.
-
- DoD Ada implementation policies presume Ada's cost-effectiveness unless
- shown otherwise. I feel no need to trash C++ in order to show that Ada
- is viable, because that is all I have to show. I have no need to engage
- in a "my language is better than yours" crusade; I need only to show that
- my language will solve your problem in a cost-effective manner.
-
- I'm tired of pi**ing contests...
-
- Mike Feldman
-