[comp.lang.ada] How should DoD further Ada education?

schweige@aldebaran.cs.nps.navy.mil (Jeffrey M. Schweiger) (05/23/91)

This is primarily geared to the Ada educators on the net, but comments from all 
are welcome.

The following questions have been discussed on the net in the past, but I have
a short notice opportunity to include them in a study tasked by OSD.  I 
appreciate any responses offered.

1.  What role should DoD play in expanding software engineering education,
using Ada as the implementation language?

2.  How best should DoD carry out this role?
	(ie., financial support for faculty, course development, hardware,
	 software, etc. or more direct course development support)

3.  How do we expand the number of Ada-literate people coming out of the
universities?

4.  How do we expand the use of Ada in information systems?

5.  What can or should DoD do in conjunction with industry to further Ada usage?

LCDR Jeff Schweiger
Department of Computer Science
Naval Postgraduate School
Monterey, CA  93933-5000
-- 
*******************************************************************************
Jeff Schweiger	      Standard Disclaimer   	CompuServe:  74236,1645
Internet (Milnet):				schweige@taurus.cs.nps.navy.mil
*******************************************************************************

jls@netcom.COM (Jim Showalter) (05/24/91)

>1.  What role should DoD play in expanding software engineering education,
>using Ada as the implementation language?

How serious about it do they want to get? How much money do they have to
spend? The high-end solution would be to ensure that each and every junior
college, college, and university in the land had a quality Ada development
environment available, that chairs of software engineering were liberally
sprinkled around the country and heavily endowed, that quality teaching
was encouraged through the liberal use of grant money, and so forth. Since
there isn't enough money to do even a fraction of this, I think the DoD
should concentrate on getting cheap Ada compilers up and running on UNIX
boxes and giving them away to all schools. The GNU front-end Ada idea is
a promising way to accomplish this at relatively low cost. The fear I
have is that the DoD would approach it like another moon-shot and try
to build a Large Government Agency to try to build the be-all end-all
Ada development environment to give to schools, which will not work if
ALS/N is any indicator (it would be far cheaper for the DoD to simply
buy 1,000 Rational Environments and seed the country with them).

>2.  How best should DoD carry out this role?
>	(ie., financial support for faculty, course development, hardware,
>	 software, etc. or more direct course development support)

See above.

>3.  How do we expand the number of Ada-literate people coming out of the
>universities?

See above.

Basically, the answer to getting Ada into academia (and, by
extension, into each year's crop of new graduates) is to look
at what has worked in the past. UNIX was made widely available
to academia, as were C tools. Not at all surprisingly, there
sure are a lot of schools that use UNIX and teach--for better
or worse--their students using C. Hmmmm.

There is, of course, one other issue, and it involves psychology
more than anything else: there is a certain segment of the population
that rejects Ada out-of-hand because of the DoD's involvement. I've
had lots of people react to my telling them I write in Ada with
"Isn't that the Weapons of Mass Destruction language?" like I'm
a baby-killing satanist or something. The point that Ada is
1) actually invented by some clever Frenchmen not involved with
defense work at all, 2) specifically designed for software engineering,
3) being used successfully on a number of COMMERCIAL projects (particularly
in Europe and Japan [1]) doesn't seem to have become general knowledge,
or seems to have been selectively deliberately NOT paid attention to
by those who recoil from Ada because of the "taint" of the DoD.
Sadly, a significant concentration of individuals who react this
way can be found in academic environments (in my naive youth I
thought of institutions of higher learning as enclaves of people
MORE open to new ideas than most...but I was young).

>4.  How do we expand the use of Ada in information systems?

Resolve the SQL binding issues. Make widely known the fact that
STANFINS-R was an overwhelming success of Ada in an MIS application
(there is a clear need to do this--I got a call the other day from
someone IN the DoD who'd never heard of STANFINS).

>5. What can or should DoD do in conjunction with industry to further Ada usage?

Focus on areas in which FORTRAN and COBOL are the dominant players now.
I have noticed that it is actually possible to get a FORTRAN or COBOL
shop to adopt Ada--it is robust, procedural, English-like, comes with
industrial-strength tools, etc. I believe it is easier to get such shops
to transition to Ada than to C++, which is regarded as more of a "weird"
language. Ada is ideal for scientific programming, and with just a little
work could be the upgrade of choice for MIS applications. It also by all
rights should be the de-facto standard for process control, and for
any hard real-time application with life-critical implications.

I wouldn't waste ten seconds trying to get C shops to migrate to Ada:
they're going to adopt C++, and that's that. (Sigh.)

[1] It is true, you know, that Ada is making inroads into the commercial
    sector in both Europe and Japan. People in those areas seem to be
    less emotional about the DoD aspects, and more interested in the
    technical and managerial arguments for Ada. Indeed, I have had
    several people who work for companies in those areas tell me that
    they regard Ada as a strategic advantage. It occurs to me that we
    may be in the midst of yet another failure on the part of the United
    States to capitalize on something it invented, sort of like VCRs,
    Demming's approach to quality, fuzzy logic, motorcycles, cameras,
    and memory chips...
-- 
**************** JIM SHOWALTER, jls@netcom.com, (408) 243-0630 ****************
*Proven solutions to software problems. Consulting and training on all aspects*
*of software development. Management/process/methodology. Architecture/design/*
*reuse. Quality/productivity. Risk reduction. EFFECTIVE OO usage. Ada/C++.    *

orville@weyrich.UUCP (Orville R. Weyrich) (05/24/91)

In article <2289@aldebaran.cs.nps.navy.mil> schweige@taurus.cs.nps.navy.mil (LCDR Jeff Schweiger) writes:

>1.  What role should DoD play in expanding software engineering education,
>using Ada as the implementation language?

Does the DoD feel a present need for more Ada-literate people? I was under the
impression that there are lots of unemployed Ada-persons around already
[myself included], and that DoD was planning further cut-backs.

>2.  How best should DoD carry out this role?
>	(ie., financial support for faculty, course development, hardware,
>	 software, etc. or more direct course development support)

I would say that the most important contribution that the DoD can make to
the future of Ada would be to facilitate the penetration of Ada into the 
commercial sector by subsidizing COBOL shops to "do their next one" in Ada.

>3.  How do we expand the number of Ada-literate people coming out of the
>universities?

Convince the students that Ada is commercially viable and that there are
more good-paying jobs for Ada-literate people than there are Ada-literate
people. Students are quick to jump onto the "latest trend" bandwagon
if it looks like there is a good job in store for them.


>4.  How do we expand the use of Ada in information systems?

Facilitate interoperability of Ada and COBOL. Increase the availability
of Ada packages to do common IS operations. For example CICS interfaces,
SQL, Report-writer, etc. 

[Yes, I know that some of these types of products DO exist. But do IS 
managers know that, and are the products easy to use and sufficiently
efficient?].

Provide a sufficient supply of skilled Ada persons at COBOL programmer
prices. [Note the interaction with #3. There is both a chicken/egg problem
and a inverse-relationship supply/pay problem].


>5.  What can or should DoD do in conjunction with industry to further Ada usage?

Spend more money on Ada projects. [However, as a taxpayer, I am not so keen
on this idea. If Ada is a cost-effective solution, time will take care of
it without excess expenditures of taxpayer $$$].



--------------------------------------           ******************************
Orville R. Weyrich, Jr., Ph.D.                   Certified Systems Professional
Internet: orville%weyrich@uunet.uu.net             Weyrich Computer Consulting
Voice:    (602) 391-0821                         POB 5782, Scottsdale, AZ 85261
Fax:      (602) 391-0023                              (Yes! I'm available)
--------------------------------------           ******************************

doug@bear.cis.ohio-state.edu (Doug Kerr) (05/25/91)

In article <2289@aldebaran.cs.nps.navy.mil> schweige@taurus.cs.nps.navy.mil (LCDR Jeff Schweiger) writes:
>This is primarily geared to the Ada educators on the net, but comments from all 
>are welcome.
>
>The following questions have been discussed on the net in the past, but I have
>a short notice opportunity to include them in a study tasked by OSD.  I 
>appreciate any responses offered.
>
>1.  What role should DoD play in expanding software engineering education,
>using Ada as the implementation language?
For us to consider using Ada as our basic instructional language (we
now use Modula-2) we would need the following:

  A. Good introductory textbooks including introduction to algorithm
  development and also introduction to data structures.

  B. Beginner friendly software running on Unix workstations under
  HPView, LookingGlass or some other icon based interface.  By "beginner
  friendly" I mean features similar to those in Think Pascal for the
  Mac.  We want our students in our first two courses to have as little
  to do with Unix as possible.  (You may ask then why not just use a
  Mac?  The answer is that we want to develop tools underneath and Unix
  workstations are oaur standard.  Also we teach about 2000 students a
  quarter in various low level courses and the mac file service does not
  scale up to this level.)

  C. The language system should compile quickly for the relatively small
  programs students will be writing.

  D. Software priced competitively with Mac software.  Note that lowend
  workstations are already priced competitively with medium and highend
  Macs. 

>
>2.  How best should DoD carry out this role?
>	(ie., financial support for faculty, course development, hardware,
>	 software, etc. or more direct course development support)

  I would suspect the biggest problem for us is the compiler and
  language environment.  Thus I'd suggest supporting such an effort.
  I'd guess books will be written if the environment is there.

>
>3.  How do we expand the number of Ada-literate people coming out of the
>universities?

  The only way to get a significant increase in such people is to get
  Ada adopted as the language in the first course, or at least the first
  Algol derivative language.  (Some universities start with Scheme.
  They could go to Ada as their second language.)

>
>4.  How do we expand the use of Ada in information systems?

  I teach such courses here.  We would use Ada if that's what the
  students knew coming into the course.  We won't introduce a new
  language in this type of course, files, databasess, systems analysis.

>
>5.  What can or should DoD do in conjunction with industry to further Ada usage?

--
 Douglas S. Kerr, Department of Computer and Information Science
 The Ohio State University; 2036 Neil Ave. Columbus OH USA 43210-1277
 doug@cis.ohio-state.edu                    614/292-1519
 ...!pyramid!osu-cis!doug

wheeler@IDA.ORG (David Wheeler) (05/25/91)

>1.  What role should DoD play in expanding software engineering education,
>using Ada as the implementation language?

One of the biggest problems is expense - Ada compilers cost too much
for schools & students.  I think the DoD should give a contract/lump
sum to some Ada compiler vendor(s?) as a ``subsidy'' to either make the
cost free or at least low for students (say $20/student for a PC
compiler or $900 for a medium-sized Unix box).  The DoD doesn't have an
infinite supply of $$$, so a ``subsidy'' for students would probably be
cheaper to the DoD than outright free compilers, and it would fit into
the (current?) tax concept of ``sharing the burden''.

Make sure that these compilers are for platforms that most students have
access to - my suspicion is that that list has PCs, Macs, some
Unix boxes & VMS VAXens.  Since that's more than one platform, you might
even contract >1 vendor (Vendor A for PC's, Vendor B for Unix, etc).
(Yes, I know about DEC's policy to educational institutions).

Make the contact for a set number of years.. you can create another
contract after that, and the cost to DoD will be less if the timeframe
is known.  There's hope that if the market became larger, the cost/compiler
would become smaller.


A basic question needs to be answered: do you need source code for these
compilers distributed to all students?  I doubt it; you want the compilers
so students will learn Ada & more deeply, not how to modify its compiler.
C was used so often in school because it was there, not because most
people wanted to modify the compiler.

Thus, I don't agree with the idea that the DoD should give FSF bucks to
create an ``GNU Ada''.  FSF makes many good products, and having the
source code publicly available is nice, but to my knowledge they DON'T
HAVE an Ada compiler. WHY spend money to develop something if compilers
are ALREADY AROUND?  I'd rather spend some money (which I suspect will
be less) and have the product NOW, when it's needed.

On the other hand, if a GNU Ada _does_ show up, I'll be happy, thank you!


Summary: These Ada compiler vendors have compilers NOW.  If we want
cheap ones for schools & nobody's going to do it without help, let's
subsidize a commercial developer a little bit to get the educational
process going.  Short-term subsidy is cheaper than building your own OR
paying all these training costs later.


--- David A. Wheeler
    wheeler@ida.org

chuck@brain.UUCP (Chuck Shotton) (05/25/91)

In article <2289@aldebaran.cs.nps.navy.mil>, 
schweige@aldebaran.cs.nps.navy.mil (Jeffrey M. Schweiger) writes:
> 
> 3.  How do we expand the number of Ada-literate people coming out of the
> universities?
> 
> 
Simple, stop teaching Pascal as a first language and use Ada. I can' believe
how many university curricula still rely on Pascal as a teaching language.
Is this because the professors themselves aren't Ada-literate? Maybe this
is where the first thrust should be...

-----------------------------------------------------------------------
Chuck Shotton                 Internet:   cshotton@girch1.med.uth.tmc.edu
"Your silly quote here."      UUCP:       ...!buster!brain

brs@cci632.cci.com (Brian Scherer) (05/29/91)

In article <2289@aldebaran.cs.nps.navy.mil> schweige@taurus.cs.nps.navy.mil (LCDR Jeff Schweiger) writes:
>This is primarily geared to the Ada educators on the net, but comments from all 
>are welcome.
>
>The following questions have been discussed on the net in the past, but I have
>a short notice opportunity to include them in a study tasked by OSD.  I 
>appreciate any responses offered.
>
>1.  What role should DoD play in expanding software engineering education,
>using Ada as the implementation language?
>
>2.  How best should DoD carry out this role?
>	(ie., financial support for faculty, course development, hardware,
>	 software, etc. or more direct course development support)
>
>3.  How do we expand the number of Ada-literate people coming out of the
>universities?
>
>4.  How do we expand the use of Ada in information systems?
>
>5.  What can or should DoD do in conjunction with industry to further Ada usage?
>
>LCDR Jeff Schweiger
>Department of Computer Science
>Naval Postgraduate School
>Monterey, CA  93933-5000
>-- 
>*******************************************************************************
>Jeff Schweiger	      Standard Disclaimer   	CompuServe:  74236,1645
>Internet (Milnet):				schweige@taurus.cs.nps.navy.mil
>*******************************************************************************

Distribute the compilers for free. Don't make people and companies
pay for the compilers.


Brian Scherer

orville@weyrich.UUCP (Orville R. Weyrich) (05/30/91)

In article <0D010010.mqixud@brain.UUCP> chuck@brain.UUCP writes:
>
>In article <2289@aldebaran.cs.nps.navy.mil>, 
>schweige@aldebaran.cs.nps.navy.mil (Jeffrey M. Schweiger) writes:
>> 
>> 3.  How do we expand the number of Ada-literate people coming out of the
>> universities?
>> 
>> 
>Simple, stop teaching Pascal as a first language and use Ada. I can' believe
>how many university curricula still rely on Pascal as a teaching language.
>Is this because the professors themselves aren't Ada-literate? Maybe this
>is where the first thrust should be...

When I taught at the University of Georgia (Athens), the first language course 
was taught on 8088 machines with 640K of memory and 2-360K floppies. 
The students were required to purchase their OWN copy of Turbo Pascal.

I know of no Ada compiler that is viable in such an environment.

--------------------------------------           ******************************
Orville R. Weyrich, Jr., Ph.D.                   Certified Systems Professional
Internet: orville%weyrich@uunet.uu.net             Weyrich Computer Consulting
Voice:    (602) 391-0821                         POB 5782, Scottsdale, AZ 85261
Fax:      (602) 391-0023                              (Yes! I'm available)
--------------------------------------           ******************************

g_harrison@vger.nsu.edu (George C. Harrison, Norfolk State University) (05/30/91)

In article <0D010010.mqixud@brain.UUCP>, chuck@brain.UUCP (Chuck Shotton) writes:
> In article <2289@aldebaran.cs.nps.navy.mil>, 
> schweige@aldebaran.cs.nps.navy.mil (Jeffrey M. Schweiger) writes:
>> 
>> 3.  How do we expand the number of Ada-literate people coming out of the
>> universities?
>> 
>> 
> Simple, stop teaching Pascal as a first language and use Ada. I can' believe
> how many university curricula still rely on Pascal as a teaching language.
> Is this because the professors themselves aren't Ada-literate? Maybe this
> is where the first thrust should be...
> 
> -----------------------------------------------------------------------
> Chuck Shotton                 Internet:   cshotton@girch1.med.uth.tmc.edu

We teach Pascal as the core language because of its general availability.  It
is was not for Borland we'd probably still have $250 (randomly chosen high
price) as the low price for Pascal.  

Ada is not the language-of-choice at most universities for your reason too. 
But you can add - availability of compilers - choice of several great text
books - publisher assumptions about the desires of faculty - etc.
 
I also would suggest that DoD sponsor in-house workshops on Ada (perhaps in May
and June) to faculty in many departments at universities.  That includes MIS,
Computer Science, *** Engineering, Mathematics, etc.  This could also be
accomplished at a relatively low cost.  

George C. Harrison, Professor of Computer Science 
Norfolk State University,
2401 Corprew Avenue, Norfolk VA 23504
Internet:  g_harrison@vger.nsu.edu    Phone:  804-683-8654

lws@comm.wang.com (Lyle Seaman) (05/30/91)

schweige@aldebaran.cs.nps.navy.mil (Jeffrey M. Schweiger) writes:
>1.  What role should DoD play in expanding software engineering education,
>using Ada as the implementation language?

>2.  How best should DoD carry out this role?
>	(ie., financial support for faculty, course development, hardware,
>	 software, etc. or more direct course development support)

>3.  How do we expand the number of Ada-literate people coming out of the
>universities?

>4.  How do we expand the use of Ada in information systems?


It's pretty obvious-- Just get messrs Powell and Scharzkopf to
lobby Congress to pass a law or three.  That ought to do it.


-- 
Lyle 	508 967 2322  		
lws@wang.com 	
Wang Labs, Lowell, MA, USA 	

jls@netcom.COM (Jim Showalter) (05/31/91)

>I also would suggest that DoD sponsor in-house workshops on Ada (perhaps in May
>and June) to faculty in many departments at universities.  That includes MIS,
>Computer Science, *** Engineering, Mathematics, etc.  This could also be
>accomplished at a relatively low cost.  

Good point. These workshops should discuss a number of things, but a few
I think deserve special emphasis are:

1) Upward path from Pascal to Ada--language can be learned in series of
   easy steps, no step particularly difficult. Separability of language
   features into manageable subsets (e.g. ignore tasking, fixed point
   types, etc at outset).

2) Overall symmetry of language definition (yes, I know--there are annoying
   special cases and gotchas, but in GENERAL the language definition consists
   of a small set of concepts and constructs reproduced in various contexts
   [for example, parameters and arguments for subprograms, tasks, and generics
   all have basically the same syntax and semantics]).

3) Suitability for advanced CS classes (e.g. data structures, concurrency)
   and as vehicle for teaching software engineering.

4) Resources (e.g. quality textbooks, course materials, cheap compilers
   [should be FREE compilers...]), reusable libraries and repositories.
   Conferences, seminars, periodicals, significant papers, professional
   societies. SEI.

5) Success stories from actual educators who use Ada in their classes
   (stories should span variety of applications, from CS-1 to multi-person
   graduate projects of significant size and complexity).

6) De-mythification of the DoD "taint"--stress European origin, international
   peer review process, limitation of DoD's role to mostly providing the
   funds (as opposed to designing the language itself) and validating the
   compilers.

Other things that might be good to discuss:

1) European academic interest in and involvement with Ada (Ada seems to be
   more popular with academics in Europe than in the U.S.--this might lend
   it some legitimacy as an academic topic in the eyes of U.S. academics).
   Current areas of research.

2) Success stories of Ada in COMMERCIAL sector, including internationally.
   Emerging viability in Japan and Europe.

3) Comparisons of various metrics between Ada systems and comparable systems
   written in other languages; cost factors, business advantages.

4) Job prospects for new graduates with Ada experience.
-- 
**************** JIM SHOWALTER, jls@netcom.com, (408) 243-0630 ****************
*Proven solutions to software problems. Consulting and training on all aspects*
*of software development. Management/process/methodology. Architecture/design/*
*reuse. Quality/productivity. Risk reduction. EFFECTIVE OO usage. Ada/C++.    *

mfeldman@seas.gwu.edu (Michael Feldman) (05/31/91)

In article <1991May30.183159.7820@netcom.COM> jls@netcom.COM (Jim Showalter) writes:
>>I also would suggest that DoD sponsor in-house workshops on Ada (perhaps in May
>>and June) to faculty in many departments at universities.  That includes MIS,
>>Computer Science, *** Engineering, Mathematics, etc.  This could also be
>>accomplished at a relatively low cost.  

For your info, AJPO sponsors the annual Ada Software Engineering Education 
and Training (ASEET) Symposium each summer or fall. This year it's in the
DC area in September. The papers and panels focus on most of the areas you
list below, Jim. (Plug: I happen to be the keynote speaker this year).
The conference fee is minimal. 

Originally the ASEET team _did_ come to a university upon request to do this
kind of workshop. The team members were mostly uniformed officers with
technical credentials (often MS and PhD degrees in CS). In the last few
years I don't think they've had many requests, also money is thin. Last
year there was no conference; there was such an outcry that the conference
is back with AJPO's full support.

>Good point. These workshops should discuss a number of things, but a few
>I think deserve special emphasis are:

>1) Upward path from Pascal to Ada--language can be learned in series of
>   easy steps, no step particularly difficult. Separability of language
>   features into manageable subsets (e.g. ignore tasking, fixed point
>   types, etc at outset).

You bet. Many of the Ada "trainers" have ignored this and approached Ada in
terms of how DIFFERENT it is, which threw a lot of students and teachers off
stride. It was hard to find the substance in all the hype. Indeed, I think
it was the OO folks that were the biggest offenders here (I won't name names,
but I'll bet Showalter can think of a few...)

>2) Overall symmetry of language definition (yes, I know--there are annoying
>   special cases and gotchas, but in GENERAL the language definition consists
>   of a small set of concepts and constructs reproduced in various contexts
>   [for example, parameters and arguments for subprograms, tasks, and generics
>   all have basically the same syntax and semantics]).

Absolutely right! Most of the books out there just follow the LRM and
don't focus on things like this. 

>3) Suitability for advanced CS classes (e.g. data structures, concurrency)
>   and as vehicle for teaching software engineering.

>4) Resources (e.g. quality textbooks, course materials, cheap compilers
>   [should be FREE compilers...]), reusable libraries and repositories.
>   Conferences, seminars, periodicals, significant papers, professional
>   societies. SEI.

I will post separately a list of CS-oriented Ada books. There are more than
some of you may think.

>5) Success stories from actual educators who use Ada in their classes
>   (stories should span variety of applications, from CS-1 to multi-person
>   graduate projects of significant size and complexity).

This is just the kind of thing Rich Pattis is doing with his "school profiles"
appearing in each issue of AdaLetters. And what he, John McCormick, Jim Smith,
and I did in the SIGAda booth at the SIGCSE conference in March.

>6) De-mythification of the DoD "taint"--stress European origin, international
>   peer review process, limitation of DoD's role to mostly providing the
>   funds (as opposed to designing the language itself) and validating the
>   compilers.

I quite agree. This is one reason I don't think DoD is necessarily the right
organization to push this. SIGAda's various groups are better, I think,
because they are at least moderately independent of the defense community.

>Other things that might be good to discuss:

>1) European academic interest in and involvement with Ada (Ada seems to be
>   more popular with academics in Europe than in the U.S.--this might lend
>   it some legitimacy as an academic topic in the eyes of U.S. academics).
>   Current areas of research.

I don't think Ada is significantly more popular in the European universities,
at least not according to the data Rich and I are getting from our surveys.
Europe has fewer universities, though. Australia is really into Ada.

>2) Success stories of Ada in COMMERCIAL sector, including internationally.
>   Emerging viability in Japan and Europe.

The CAUWG meetings at Ada conferences try to press this point. I agree that
CAUWG and AdaIC ought to work harder to get the word out beyond the borders
of the Ada community. They preach to the choir a lot.

>3) Comparisons of various metrics between Ada systems and comparable systems
>   written in other languages; cost factors, business advantages.

For non-mandated projects, this would be subsumed under (2).

>4) Job prospects for new graduates with Ada experience.

Always a good incentive. On the other hand, the Ada crowd was telling us years
ago that our students would never find jobs if they didn't know Ada. This
was hype then, and it still is. Ada knowledge surely doesn't hurt, though!

This thread is getting really interesting. I look forward to more.

Mike
---------------------------------------------------------------------------
Prof. Michael Feldman
Department of Electrical Engineering and Computer Science
The George Washington University
Washington, DC 20052 U.S.A.

phone 202-994-5253
fax   202-994-5296
email mfeldman@seas.gwu.edu
---------------------------------------------------------------------------