comp.lang.ada
 help / color / mirror / Atom feed
* Re: Computer Programming for Everybody?
  1999-09-10  0:00 Computer Programming for Everybody? Ted Dennison
@ 1999-09-10  0:00 ` Raymond Calande
  1999-09-10  0:00 ` David Botton
                   ` (3 subsequent siblings)
  4 siblings, 0 replies; 26+ messages in thread
From: Raymond Calande @ 1999-09-10  0:00 UTC (permalink / raw)
  To: Ted Dennison

I've been reading about this in the comp.lang.tcl newsgroup. One additional
fact
related to DARPA choosing Python is that its author was directly involved in
its selection. At least that's how it was described in comp.lang.tcl.

Ted Dennison wrote:

> Today I came across a proposal that got DARPA funding for an initiative
> to teach *all* elementary-schoolers to program just like they are all
> taught geometry. Its an interesting concept, which does have some merit.
>
> The language that they propose to teach the kiddies is ...wait for it...
> python.
>
> It seems an odd choice, but I figgured they'd have a good reason for it.
> So I found the report (
> http://www.python.org/doc/essays/cp4e.html ) and skimmed down to where
> they were justifying it. I was rather dismayed at the weak logic used.
> Here's a sample:
>   "We have anecdotal evidence that Python is a good language to teach as
> a first programming language."
>   "The Python community has seen many reports from individuals who
> taught their children programming using Python."
>   "Table 1 on the next page is a (highly subjective) chart comparing a
> few relevant aspects of Python to some other languages. From
> this table (and our experience), we conclude that Python is a good first
> choice for teaching..."
>
> The "highly subjective" statement above is the author's, not mine. But
> after looking at the chart given, I'd have to agree.
>
> To make matter worse from our perspective, they didn't even bother to
> mention Ada in their report, even as a strawman. Pascal wasn't mentioned
> either, even though a cursory amount of research would show that those
> are two of the languages most commonly taught to freshman CS students.
>
> They even go so far as to admit some inadaquacies that Ada doesn't have.
> For instance:
> "We already have some evidence of where changes might be necessary.
> Prof. Randy Pausch at Carnegie Mellon University (see
> below) has conducted some usability studies of Python within their
> limited problem domain. Their users seemed most confused by
> the case sensitivity of Python's variable names..."
>
> Any way, I'm curious what the instructors here think of this. Do you
> think Python might really be a better choice for grade-schoolers? Am I
> overreacting here?
>
> (In all fairness I should have crosposted this to comp.lang.python to
> give those folks a chance to defend themselves. But I don't want to
> have to sift good information from the sea of flames that language
> comparison crossposts always generate.)
>
> --
> T.E.D.
>
> Sent via Deja.com http://www.deja.com/
> Share what you know. Learn what you don't.





^ permalink raw reply	[flat|nested] 26+ messages in thread

* Computer Programming for Everybody?
@ 1999-09-10  0:00 Ted Dennison
  1999-09-10  0:00 ` Raymond Calande
                   ` (4 more replies)
  0 siblings, 5 replies; 26+ messages in thread
From: Ted Dennison @ 1999-09-10  0:00 UTC (permalink / raw)


Today I came across a proposal that got DARPA funding for an initiative
to teach *all* elementary-schoolers to program just like they are all
taught geometry. Its an interesting concept, which does have some merit.

The language that they propose to teach the kiddies is ...wait for it...
python.

It seems an odd choice, but I figgured they'd have a good reason for it.
So I found the report (
http://www.python.org/doc/essays/cp4e.html ) and skimmed down to where
they were justifying it. I was rather dismayed at the weak logic used.
Here's a sample:
  "We have anecdotal evidence that Python is a good language to teach as
a first programming language."
  "The Python community has seen many reports from individuals who
taught their children programming using Python."
  "Table 1 on the next page is a (highly subjective) chart comparing a
few relevant aspects of Python to some other languages. From
this table (and our experience), we conclude that Python is a good first
choice for teaching..."

The "highly subjective" statement above is the author's, not mine. But
after looking at the chart given, I'd have to agree.

To make matter worse from our perspective, they didn't even bother to
mention Ada in their report, even as a strawman. Pascal wasn't mentioned
either, even though a cursory amount of research would show that those
are two of the languages most commonly taught to freshman CS students.

They even go so far as to admit some inadaquacies that Ada doesn't have.
For instance:
"We already have some evidence of where changes might be necessary.
Prof. Randy Pausch at Carnegie Mellon University (see
below) has conducted some usability studies of Python within their
limited problem domain. Their users seemed most confused by
the case sensitivity of Python's variable names..."

Any way, I'm curious what the instructors here think of this. Do you
think Python might really be a better choice for grade-schoolers? Am I
overreacting here?

(In all fairness I should have crosposted this to comp.lang.python to
give those folks a chance to defend themselves. But I don't want to
have to sift good information from the sea of flames that language
comparison crossposts always generate.)

--
T.E.D.


Sent via Deja.com http://www.deja.com/
Share what you know. Learn what you don't.




^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: Computer Programming for Everybody?
  1999-09-10  0:00 Computer Programming for Everybody? Ted Dennison
  1999-09-10  0:00 ` Raymond Calande
@ 1999-09-10  0:00 ` David Botton
  1999-09-11  0:00 ` Vladimir Olensky
                   ` (2 subsequent siblings)
  4 siblings, 0 replies; 26+ messages in thread
From: David Botton @ 1999-09-10  0:00 UTC (permalink / raw)


I particularly liked the range of choices for filling in the table:

hard so-so good very good easy

I hope I have them in the correct order, there was no key.

David Botton


Ted Dennison wrote in message <7rbkm4$pn6$1@nnrp1.deja.com>...
>  "Table 1 on the next page is a (highly subjective) chart comparing a
>few relevant aspects of Python to some other languages. From
>this table (and our experience), we conclude that Python is a good first
>choice for teaching..."








^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: Computer Programming for Everybody?
  1999-09-10  0:00 Computer Programming for Everybody? Ted Dennison
  1999-09-10  0:00 ` Raymond Calande
  1999-09-10  0:00 ` David Botton
@ 1999-09-11  0:00 ` Vladimir Olensky
  1999-09-12  0:00 ` Brian Rogoff
  1999-09-13  0:00 ` Tarjei Jensen
  4 siblings, 0 replies; 26+ messages in thread
From: Vladimir Olensky @ 1999-09-11  0:00 UTC (permalink / raw)



Ted Dennison wrote in message <7rbkm4$pn6$1@nnrp1.deja.com>...
>Today I came across a proposal that got DARPA funding for an initiative
>to teach *all* elementary-schoolers to program just like they are all
>taught geometry. Its an interesting concept, which does have some merit.
>
>The language that they propose to teach the kiddies is ...wait for it...
>python.

>Any way, I'm curious what the instructors here think of this. Do you
>think Python might really be a better choice for grade-schoolers? Am I
>overreacting here?


I think it is much better choice than MS BASIC.

I always was rather negative  towards scripting languages.
I started to hate Perl when found that  HP OpenView 6 uses
Perl  to automate OV tasks.

But when I tried Python some time ago I changed my mind.
It implements all modern programming concepts including
modules (as in M2 and M3), OO, exceptions, strong typing,
sequence data type such as lists, tuples, dictionaries.
It runs almost on all platforms.
It has access to all the APIs of underlying OS.
A lot of ready to use modules (incredible number).
It is very good for quick prototyping and writing quick small test scripts.
It is very easy to learn .
It has very good tutorials and reference manuals.


But what is more important it works as intellectual shell.
Lack of good shell was always very very big problem for MS Windows
and in less extent for Unix.
OS/2 with it's REXX was an exception.

You start Python,  load needed module/s and you
have needed level of automation within OS.
It is very good choice for IT departments to perform automated tasks.

It is very easy and enjoyable to work with Python.


Children better grasp ideas when  they may be checked in few
seconds without any mental strain.
When you try to force children to strain themselves to learn something
it may result that they will  hate that something.
It is obvious that good scripting language should be used for teaching.

So I do not think that Python  is a very bad choice.

Regards.


P.S.
Some time ago I posted a message asking about availability
of C_to_Ada translation utility written completely in Ada.
Existing  C2Ada  requires Python and GPERF.
This  C2Ada tool forced me to install Python and  have a close look at it.

If you ask that people why they have chosen Python and not Ada
they may ask you in turn why to convert C code to Ada you need
to use Python and GPERF written in C instead of using pure Ada program :-)

















^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: Computer Programming for Everybody?
  1999-09-10  0:00 Computer Programming for Everybody? Ted Dennison
                   ` (2 preceding siblings ...)
  1999-09-11  0:00 ` Vladimir Olensky
@ 1999-09-12  0:00 ` Brian Rogoff
  1999-09-12  0:00   ` mitch
  1999-09-13  0:00 ` Tarjei Jensen
  4 siblings, 1 reply; 26+ messages in thread
From: Brian Rogoff @ 1999-09-12  0:00 UTC (permalink / raw)


On Fri, 10 Sep 1999, Ted Dennison wrote:
> Today I came across a proposal that got DARPA funding for an initiative
> to teach *all* elementary-schoolers to program just like they are all
> taught geometry. Its an interesting concept, which does have some merit.
> 
> The language that they propose to teach the kiddies is ...wait for it...
> python.
> 
> It seems an odd choice, but I figgured they'd have a good reason for it.
> So I found the report (
> http://www.python.org/doc/essays/cp4e.html ) and skimmed down to where
> they were justifying it. I was rather dismayed at the weak logic used.
> Here's a sample:
>   "We have anecdotal evidence that Python is a good language to teach as
> a first programming language."
>   "The Python community has seen many reports from individuals who
> taught their children programming using Python."
>   "Table 1 on the next page is a (highly subjective) chart comparing a
> few relevant aspects of Python to some other languages. From
> this table (and our experience), we conclude that Python is a good first
> choice for teaching..."
> 
> The "highly subjective" statement above is the author's, not mine. But
> after looking at the chart given, I'd have to agree.
> 
> To make matter worse from our perspective, they didn't even bother to
> mention Ada in their report, even as a strawman. Pascal wasn't mentioned
> either, even though a cursory amount of research would show that those
> are two of the languages most commonly taught to freshman CS students.
> 
> They even go so far as to admit some inadaquacies that Ada doesn't have.
> For instance:
> "We already have some evidence of where changes might be necessary.
> Prof. Randy Pausch at Carnegie Mellon University (see
> below) has conducted some usability studies of Python within their
> limited problem domain. Their users seemed most confused by
> the case sensitivity of Python's variable names..."
> 
> Any way, I'm curious what the instructors here think of this. Do you
> think Python might really be a better choice for grade-schoolers?

Better than what? Ada? Yes. Python is a lot easier to learn than Ada, IMO. 
Of course, I'm not a grade-schooler :-). 

> Am I overreacting here?

Yes. If you were advocating Logo or Smalltalk or some other language which 
had "kid friendliness" as a design goal, you might have a point. 

My choice would probably be Scheme. Maybe Unicon when it is finally ready. 
But Python is OK. Ada requires a bit more sophistication, and is also 
lacking when it comes to interactive environments. Interactivity seems
important for teaching to youngsters

-- Brian






^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: Computer Programming for Everybody?
  1999-09-12  0:00 ` Brian Rogoff
@ 1999-09-12  0:00   ` mitch
  1999-09-13  0:00     ` Brian Rogoff
                       ` (4 more replies)
  0 siblings, 5 replies; 26+ messages in thread
From: mitch @ 1999-09-12  0:00 UTC (permalink / raw)


In article <Pine.BSF.4.10.9909121557150.1131-100000@shell5.ba.best.com>, Brian
says...
 
>
>Better than what? Ada? Yes. Python is a lot easier to learn than Ada, IMO. 
>Of course, I'm not a grade-schooler :-). 
>

Easier to learn does not make something better :)

It would be possible to teach a small subset of Ada to high school
students. I think that Ada teaches better programing habits than most other
quick-and-easy languages. 

I wonder why they did not choose Java as it is the hotest things these
days. most books and most seminars and speakers.

Java for example, is easy to learn, and one can quickly start writing
working programs in it, but Java does not teach good programming habits,
actually I've seen worst programming code in java than in any other
language (except may be in VB). Java is like the Visual Basic of OO languages,
quantity over quality is what it is.

I've seen Java programmers who do not understand what is a 'RECORD'.
The power of OO at its best right there.  
 
What is the programming world comming to, I wonder.

What we need is a book called 'Ada for dummies' and 'Ada in 21 days' to 
help make Ada more popular. (I always wondered why they picked the number
21 days? what is so special about 21 days? why not 22 days?).
 
cheers,
Mitch.





^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: Computer Programming for Everybody?
  1999-09-12  0:00   ` mitch
  1999-09-13  0:00     ` Brian Rogoff
@ 1999-09-13  0:00     ` Larry Kilgallen
  1999-09-13  0:00       ` John Duncan
  1999-09-13  0:00     ` Mike Hall
                       ` (2 subsequent siblings)
  4 siblings, 1 reply; 26+ messages in thread
From: Larry Kilgallen @ 1999-09-13  0:00 UTC (permalink / raw)


In article <7ri1ls$1rf9@drn.newsguy.com>, mitch@nospam.com writes:
> In article <Pine.BSF.4.10.9909121557150.1131-100000@shell5.ba.best.com>, Brian
> says...
>  
>>
>>Better than what? Ada? Yes. Python is a lot easier to learn than Ada, IMO. 
>>Of course, I'm not a grade-schooler :-). 
>>
> 
> Easier to learn does not make something better :)

Why is Python any better for this job than Logo ?

It seems to me that the connection to physical models made Logo a
strong contender for young children.  Am I mixing my age groups ?

Larry Kilgallen




^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: Computer Programming for Everybody?
  1999-09-10  0:00 Computer Programming for Everybody? Ted Dennison
                   ` (3 preceding siblings ...)
  1999-09-12  0:00 ` Brian Rogoff
@ 1999-09-13  0:00 ` Tarjei Jensen
  1999-09-13  0:00   ` Richard D Riehle
  4 siblings, 1 reply; 26+ messages in thread
From: Tarjei Jensen @ 1999-09-13  0:00 UTC (permalink / raw)



Ted Dennison wrote in message <7rbkm4$pn6$1@nnrp1.deja.com>...
>Today I came across a proposal that got DARPA funding for an initiative
>to teach *all* elementary-schoolers to program just like they are all
>taught geometry. Its an interesting concept, which does have some merit.


I think it is a hideously bad idea regardless of language employed.

I don't think anybody at that age need to learn to program. There are a lot of
other things that needs to be learnt and mastered.


Greetings,







^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: Computer Programming for Everybody?
  1999-09-13  0:00     ` Preben Randhol
@ 1999-09-13  0:00       ` Matthew Heaney
  1999-09-13  0:00         ` Preben Randhol
  0 siblings, 1 reply; 26+ messages in thread
From: Matthew Heaney @ 1999-09-13  0:00 UTC (permalink / raw)


In article <m3lnabrq0z.fsf@kiuk0156.chembio.ntnu.no> , Preben Randhol 
<randhol@pvv.org>  wrote:

> I think we need more Ada programs that are free and with available
> source code.

There are many small toy programs, with complete source code, in the Ada95
patterns archive.

<http://www.acm.org/archives/patterns.html>

The Ada95 design patterns list is a low-volume list.  You can subscribe by
sending the message (body)

subscribe patterns <your full name>

to the ACM mailing list server.

<mailto:listserv@acm.org>





^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: Computer Programming for Everybody?
  1999-09-12  0:00   ` mitch
  1999-09-13  0:00     ` Brian Rogoff
  1999-09-13  0:00     ` Larry Kilgallen
@ 1999-09-13  0:00     ` Mike Hall
  1999-09-13  0:00     ` Preben Randhol
  1999-09-14  0:00     ` tmoran
  4 siblings, 0 replies; 26+ messages in thread
From: Mike Hall @ 1999-09-13  0:00 UTC (permalink / raw)




mitch@nospam.com wrote:

> What is the programming world comming to, I wonder.
>
> What we need is a book called 'Ada for dummies' and 'Ada in 21 days' to
> help make Ada more popular. (I always wondered why they picked the number
> 21 days? what is so special about 21 days? why not 22 days?).
>

Because 3 (weeks) times 7 (days) is 21 (days). Even in Ada, most times.

:-)

Mike






^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: Computer Programming for Everybody?
  1999-09-13  0:00     ` Larry Kilgallen
@ 1999-09-13  0:00       ` John Duncan
  0 siblings, 0 replies; 26+ messages in thread
From: John Duncan @ 1999-09-13  0:00 UTC (permalink / raw)



Larry Kilgallen <kilgallen@eisner.decus.org> wrote in message
news:1999Sep13.044659.1@eisner...
> In article <7ri1ls$1rf9@drn.newsguy.com>, mitch@nospam.com writes:
> > In article <Pine.BSF.4.10.9909121557150.1131-100000@shell5.ba.best.com>,
Brian
> > says...
> >
> >>
> >>Better than what? Ada? Yes. Python is a lot easier to learn than Ada,
IMO.
> >>Of course, I'm not a grade-schooler :-).
> >>
> >
> > Easier to learn does not make something better :)
>
> Why is Python any better for this job than Logo ?
>
> It seems to me that the connection to physical models made Logo a
> strong contender for young children.  Am I mixing my age groups ?

I think that interactivity was one of the big stepping-stones for the
language. The problem with logo is that no one taught it right, I guess.
Kids played around for three or four years writing

TO DRAW_SQUARE SIDE
    TURTLEDOWN
    FORWARD SIDE
    RT 90
    FORWARD SIDE
    RT 90
    FORWARD SIDE
    RT 90
    FORWARD SIDE
    RT 90
    TURTLEUP

and not actually writing anything interesting. Logo was neat and
interactive, but it didn't have much relevance to kids' heads beyond
graphics. The power of the computer is outside of a little sandbox, and
python is an easy, interactive way to express yourself using that power.

Also, there was a lot of anecdotal evidence for the ease of understanding
python.

-John







^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: Computer Programming for Everybody?
  1999-09-12  0:00   ` mitch
@ 1999-09-13  0:00     ` Brian Rogoff
  1999-09-14  0:00       ` Robert Dewar
  1999-09-13  0:00     ` Larry Kilgallen
                       ` (3 subsequent siblings)
  4 siblings, 1 reply; 26+ messages in thread
From: Brian Rogoff @ 1999-09-13  0:00 UTC (permalink / raw)


On 12 Sep 1999 mitch@nospam.com wrote:
> In article <Pine.BSF.4.10.9909121557150.1131-100000@shell5.ba.best.com>, Brian
> says...
>  
> >
> >Better than what? Ada? Yes. Python is a lot easier to learn than Ada, IMO. 
> >Of course, I'm not a grade-schooler :-). 
> >
> 
> Easier to learn does not make something better :)

In case you missed the subject of the discussion, it is about teaching 
children to program. In this context, I would say being easier to learn
does in fact make it better, for the most part. 

Mitch, do you actually know any Python, or did my mild disparaging of 
Ada for this purpose just set off a rant? I assure you, I much prefer 
Ada for many tasks. However, I'll probably start my son off with Legos, 
a tricycle, and the dog-paddle. I assume you'll start yours off with 
with hammer and nails, a motorcycle, and scuba diving. 

-- Brian





^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: Computer Programming for Everybody?
  1999-09-12  0:00   ` mitch
                       ` (2 preceding siblings ...)
  1999-09-13  0:00     ` Mike Hall
@ 1999-09-13  0:00     ` Preben Randhol
  1999-09-13  0:00       ` Matthew Heaney
  1999-09-14  0:00     ` tmoran
  4 siblings, 1 reply; 26+ messages in thread
From: Preben Randhol @ 1999-09-13  0:00 UTC (permalink / raw)


mitch@nospam.com writes:

| What we need is a book called 'Ada for dummies' and 'Ada in 21 days' to 
| help make Ada more popular. (I always wondered why they picked the number
| 21 days? what is so special about 21 days? why not 22 days?).

I think we need more Ada programs that are free and with available
source code. 

<my humble story>
I hadn't heard much about Ada before. I remembered
something back ing the Amiga days, but that was only a name for a
programming language, and I was doing assembly on the Amiga :-) After
that I jumped to C cause it was the next thing I learned about. Then I
wanted a object orientated language (not a scripting language like
Python) and I of course started with C++. But I never found the time
to really learn it an it was frustrating to try to program. I also
heard a lot of bad things about it so I asked for opinions on which OO
language to learn. I got some replies, but not many languages suited
my needs. Both Eiffel and Smalltalk didn't have any GTK bindings then,
but the Gtk bindings for ADA was in the making. I thenk started
reading Ada95, but I was turned off by the fact that I didn't get the
compiler (GNAT) to work on my machine and that Ada95 looked so much
like Pascal which I had to learn here the first year at the
university. I went back to C++, but got more frustrated and now a
couple of weeks ago I started looking at Ada95 again.

Why I went for Ada95:

1. I read (cannot remember where now) the philosophy about the
   verboseness of this language. The reader as the target not the
   writer. Made a lot more sense than the first glimpse I had at some
   code. 

2. That it seems to be safer. Concerning pointers etc...

3. That it looks much more consistent, and have less syntax oddities.

4. The GNAT compiler works perfectly (on linux) and it seems to
   compile programs much faster than C++ (I haven't tested much so it
   might not be true though)

5. There are now GTK bindings for ADA. [ OK I like, Linux, GTK and hope
   Gnome will be a nice desktop in the future :-) ]

6. That it looks more portable (not that it is a big issue for me,
   but it is nice)

So now I'm starting to make way in the text books and I like Ada more
and more.

</my humble story>

So I think that if there were more programs in the "free world"* using
popular and nice widget sets as GTK, more people would notice that
there is other languages than C and C++ too. I really like the 'Ada for
Linux effort' as it made it very easy to get started with Ada. Only
had to install some packages and that was it. 

To get more software engineers to use Ada, I don't now. But
to get universities and other schools to use Ada instead of C++ or the
hyped Java would be a starting point. I guess the problem is getting
teachers that know Ada though :(

* meaning with GPL and similar copyrights.
-- 
Preben Randhol                       iEmacs is my favourite editor<ESC>
[randhol@pvv.org] 	             0cwVim<ESC>
[http://www.pvv.org/~randhol/]                        -- vim editor





^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: Computer Programming for Everybody?
  1999-09-13  0:00 ` Tarjei Jensen
@ 1999-09-13  0:00   ` Richard D Riehle
  1999-09-14  0:00     ` Robert I. Eachus
  1999-09-14  0:00     ` Wes Groleau
  0 siblings, 2 replies; 26+ messages in thread
From: Richard D Riehle @ 1999-09-13  0:00 UTC (permalink / raw)



Regarding the teaching of computer programming to elementary school
age children.  

In article <7rikv9$ibg3@ftp.kvaerner.com>,
	"Tarjei Jensen" <tarjei.jensen@kvaerner.com> wrote:

>I think it is a hideously bad idea regardless of language employed.
>I don't think anybody at that age need to learn to program. There are a lot
>of other things that needs to be learnt and mastered.

It would seem that we need perspective on what kind of problems
we expect children to encounter and solve.  We need to understand
they are still chidren and "fun" is an important part of their
education process.  

Young students can learn to feel comfortable with computers and
software using some language that presents programming at the right
level of abstraction.  Logo, Python, or Scheme might be just the
ticket for this kind of thing.  Let the children learn through their
playthings.  A problem solving tool that encourages curiosity, inspires
experimentation, and has the side-effect of being lots of fun is going
to be more useful than a doctrinaire view of good software practice.  
Most children are smarter than we might think.  

The important thing is not the choice of language.  Rather, it is
that these young students learn something about problem solving with
software abstraction. We all learn to "put away childish things" 
as we grow older and these students will adopt more sophisticated 
tools as they progress through their education.  I am not convinced 
that Ada is appropriate at this level of learning. I am absolutely
certain that languages such as C, C++, and Java are not suitable.

Richard Riehle





^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: Computer Programming for Everybody?
  1999-09-13  0:00       ` Matthew Heaney
@ 1999-09-13  0:00         ` Preben Randhol
  0 siblings, 0 replies; 26+ messages in thread
From: Preben Randhol @ 1999-09-13  0:00 UTC (permalink / raw)


"Matthew Heaney" <matthew_heaney@acm.org> writes:

| The Ada95 design patterns list is a low-volume list.  You can subscribe by
| sending the message (body)

Thanks, I will. 
-- 
Preben Randhol                       iEmacs is my favourite editor<ESC>
[randhol@pvv.org] 	             0cwVim<ESC>
[http://www.pvv.org/~randhol/]                        -- vim editor




^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: Computer Programming for Everybody?
  1999-09-12  0:00   ` mitch
                       ` (3 preceding siblings ...)
  1999-09-13  0:00     ` Preben Randhol
@ 1999-09-14  0:00     ` tmoran
  4 siblings, 0 replies; 26+ messages in thread
From: tmoran @ 1999-09-14  0:00 UTC (permalink / raw)


>I've seen Java programmers who do not understand what is a 'RECORD'.
  Recently I had a chat with a programmer at a young .com company.
He said all their work was done in Perl.  Their database and
transactions are not records in a file, but are HTML pages.
Information is extracted from those pages by Perl regular
expression scanning.  They have lots of hardware so speed and space
are not a problem.  He did allow as how it's hard to add "fields"
to those HTML pages without breaking some program's Perl scanning,
and the most of the authors of older Perl code have moved on.




^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: Computer Programming for Everybody?
  1999-09-13  0:00     ` Brian Rogoff
@ 1999-09-14  0:00       ` Robert Dewar
  1999-09-14  0:00         ` Wes Groleau
  0 siblings, 1 reply; 26+ messages in thread
From: Robert Dewar @ 1999-09-14  0:00 UTC (permalink / raw)


In article
<Pine.BSF.4.10.9909132135540.5540-100000@shell5.ba.best.com>,
  Brian Rogoff <bpr@shell5.ba.best.com> wrote:
> Mitch, do you actually know any Python, or did my mild
disparaging of
> Ada for this purpose just set off a rant? I assure you, I much
prefer
> Ada for many tasks. However, I'll probably start my son off
with Legos,
> a tricycle, and the dog-paddle. I assume you'll start yours
off with
> with hammer and nails, a motorcycle, and scuba diving.
>
> -- Brian

The idea that Python is analogous to a tricycle is not one
that should be allowed to remain unchallenged. Python was
certainly NOT designed with the objective of being a simple
language to teach at this level, and in my opinion it falls
short in many respects.

My preference here would be to teach ABC, but this thread sure
has veered far from Ada, and would probably better be moved to
other groups which spend countless effort discussing this issue.


Sent via Deja.com http://www.deja.com/
Share what you know. Learn what you don't.




^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: Computer Programming for Everybody?
  1999-09-13  0:00   ` Richard D Riehle
  1999-09-14  0:00     ` Robert I. Eachus
@ 1999-09-14  0:00     ` Wes Groleau
       [not found]       ` <Pine.HPP.3.93.990915162218.958A-100000@merle.acns.nwu.edu>
  1 sibling, 1 reply; 26+ messages in thread
From: Wes Groleau @ 1999-09-14  0:00 UTC (permalink / raw)


> Young students can learn to feel comfortable with computers and
> software using some language that presents programming at the right
> level of abstraction.  Logo, Python, or Scheme might be just the
> ticket for this kind of thing.  Let the children learn through their
> playthings.  

Today's elementary students will all (well, 95%) need to be 
comfortable with computers when they are adults.  But only
(wild guess) 60% will need to be programmers.  So introduce
some sort of computer applications from the beginning, but
save the programming AT LEAST till ten years old.  My
nine-year-old son helped me write the PDL (i.e., 
semi-English design language) for an emulation of the TV
game show "Wheel Of Fortune" but the process showed he
wasn't quite ready for programming.  (And he's bright enough 
to beat me at chess a year after I taught him the game.)




^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: Computer Programming for Everybody?
  1999-09-14  0:00       ` Robert Dewar
@ 1999-09-14  0:00         ` Wes Groleau
  0 siblings, 0 replies; 26+ messages in thread
From: Wes Groleau @ 1999-09-14  0:00 UTC (permalink / raw)


> My preference here would be to teach ABC, ....

No, APL.  We must ensure they're prepared to compete
with those (insert bigoted national reference here).




^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: Computer Programming for Everybody?
  1999-09-13  0:00   ` Richard D Riehle
@ 1999-09-14  0:00     ` Robert I. Eachus
       [not found]       ` <7ronav$shf@dfw-ixnews7.ix.netcom.com>
  1999-09-14  0:00     ` Wes Groleau
  1 sibling, 1 reply; 26+ messages in thread
From: Robert I. Eachus @ 1999-09-14  0:00 UTC (permalink / raw)


Richard D Riehle wrote:
  
> The important thing is not the choice of language.
 
    I seriously disagree.  There are two very valid reasons for teaching
a second language to young children.  The first is to insure that they
are (at least) bilingual.  The second is to "break the mold" of
believing that the map is the territory.  This requires that there are
concepts that are (easily) expressible in the second language and not
the first.

    By this standard, APL, Scheme, Ada, and Python are all good choices,
BASIC and LOGO are very bad.  (My daughter learned APL and French as a
child, and Ada later.  My son learned Ada as a child.)

>                                                       Rather, it is
> that these young students learn something about problem solving with
> software abstraction. We all learn to "put away childish things"
> as we grow older and these students will adopt more sophisticated
> tools as they progress through their education.  I am not convinced
> that Ada is appropriate at this level of learning. I am absolutely
> certain that languages such as C, C++, and Java are not suitable.

-- 

                                        Robert I. Eachus

with Standard_Disclaimer;
use  Standard_Disclaimer;
function Message (Text: in Clever_Ideas) return Better_Ideas is...




^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: Computer Programming for Everybody?
       [not found]       ` <Pine.HPP.3.93.990915162218.958A-100000@merle.acns.nwu.edu>
@ 1999-09-22  0:00         ` Wes Groleau
  0 siblings, 0 replies; 26+ messages in thread
From: Wes Groleau @ 1999-09-22  0:00 UTC (permalink / raw)


> > Today's elementary students will all (well, 95%) need to be
> > comfortable with computers when they are adults.  But only
> > (wild guess) 60% will need to be programmers.
> 
> That's a pretty high proportion of programmers. I guess we'll have
> lots of unemployed programmers :-) Today in the USA, there are only about
> one-million people employed in software development (counting managers,
> tech-writers, etc.). This is in a workforce of about 190 million with
> population about 260 million.

Like I said, wild guess.  But even today, probably one-third of the
people
who are not formally "software developers" do some kind of programming.
A friend of mine is a chemist, and does lots of it.  Computers will
become
easier to use, resulting in less programming by the "uninitiated" but I
still
think that as more and more people become able to do programming, it
will be
harder and harder for a non-programmer to compete--even in a
non-programming
job.

But I still say under ten is too young for most kids to start doing
programming.
Again, my ten-year-old son, who beats me at chess and whose math skills
are in
the top 5% of fifth graders, is NOT ready for programming.




^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: Computer Programming for Everybody?
       [not found]       ` <7ronav$shf@dfw-ixnews7.ix.netcom.com>
@ 1999-09-22  0:00         ` Robert I. Eachus
  1999-09-23  0:00           ` Preben Randhol
  1999-09-27  0:00           ` Richard D Riehle
  0 siblings, 2 replies; 26+ messages in thread
From: Robert I. Eachus @ 1999-09-22  0:00 UTC (permalink / raw)


Richard D Riehle wrote:
 
> I don't think we are in substantial disagreement on this except on
> the issue of language choice.

    I am not as opposed to BASIC as Dijkstra is, but I understand where
he is coming from.  However, I do believe that teaching a limited
language as a second language is bad form.  And yes, for many children
mathematics or some "natural" language is that second language, and they
won't be hurt by being exposed to a limited language.  (Teaching a
limited language as the first language or worse, the first and only
language should be criminal.  Fortunately almost all children today are
being exposed to English while they are young enough for it to do some
good.)

    The problem with learning BASIC as a first programming language is
that the limits it imposes on the way people think can persist for
years.  It might even convince someone to LIKE programming in C++
because of the relative freedom. ;-)  Incidently I don't include True
BASIC as a BASIC variant, and I am not sure I consider Visual BASIC to
be other than a visual programming tool.  Also I have seen many "BASIC"
programs where more than fifty percent of the lines read PEEK or
POKE--might as well program in assembler...)  There is nothing wrong
with using limited languages for limited purposes.

    Also, we have a very, very serious problem developing and I don't
know what we (as industry and academia) can do about it.  There is still
a significant need for software engineers that know how to program in
assember, or how to read assembly language.  But most of the young
people who are learning assembly code are hackers and/or crackers.  But
the jobs that need to be filled are concentrated in the safety-critical
software field...

     I'd like to see something like the old NSF summer programs, where
the first summer students learn programming in Ada, Pascal, or some
other language that favors software engineering as well as something
about Web progamming. The second summer they should do some serious
assembler programming or the equivalent.  (What ever happened to PL/M?)

-- 

                                        Robert I. Eachus

with Standard_Disclaimer;
use  Standard_Disclaimer;
function Message (Text: in Clever_Ideas) return Better_Ideas is...




^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: Computer Programming for Everybody?
  1999-09-22  0:00         ` Robert I. Eachus
@ 1999-09-23  0:00           ` Preben Randhol
  1999-09-23  0:00             ` Robert I. Eachus
  1999-09-27  0:00           ` Richard D Riehle
  1 sibling, 1 reply; 26+ messages in thread
From: Preben Randhol @ 1999-09-23  0:00 UTC (permalink / raw)


"Robert I. Eachus" <eachus@mitre.org> writes:

|     The problem with learning BASIC as a first programming language is
| that the limits it imposes on the way people think can persist for
| years.  It might even convince someone to LIKE programming in C++

The major problem is GOTO and the code this leads to. 

-- 
Preben Randhol     [randhol@pvv.org]    [http://www.pvv.org/~randhol/] 
 "If you had just boarded an airliner and discovered that your team 
  of programmers had been responsible for the flight control software, 
  how many of you would disembark immediately?"             -- unknown




^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: Computer Programming for Everybody?
  1999-09-23  0:00           ` Preben Randhol
@ 1999-09-23  0:00             ` Robert I. Eachus
  0 siblings, 0 replies; 26+ messages in thread
From: Robert I. Eachus @ 1999-09-23  0:00 UTC (permalink / raw)


Preben Randhol wrote:
  
> The major problem is GOTO and the code this leads to.

   Definitely not!  It is not the fault of the goto, which can be used
in a structured manner in most languages.  It is that in BASIC, language
limitations force the programmer to use gotos where he shouldn't, and
allow "dangerous" uses because the target is not limited.

   Ada has a goto, it is restricted to prevent misuse, and every so
often there is a discussion in this group as to whether there are other
uses for it than in implementing finite state machines.  But if you are
implementing an FSM, and  many real-time and safety-critical systems do
use FSMs (implicit or explicit), it belongs in the language.
-- 

                                        Robert I. Eachus

with Standard_Disclaimer;
use  Standard_Disclaimer;
function Message (Text: in Clever_Ideas) return Better_Ideas is...




^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: Computer Programming for Everybody?
  1999-09-27  0:00           ` Richard D Riehle
@ 1999-09-27  0:00             ` Marin David Condic
  0 siblings, 0 replies; 26+ messages in thread
From: Marin David Condic @ 1999-09-27  0:00 UTC (permalink / raw)


Richard D Riehle wrote:

> even though their relative number has diminished.   Assembler is
> especially critical in the world of microcontrollers where Ada has
> no significant role.  For example, I-8051 programmers continue to
> prefer Assembler (sometimes Forth) over C for serious projects.  These
> microncontrollers are increasingly finding their way into safety
> critical software applications.

It would be nice if Ada would play in the world of microcontrollers. We've
had a little prototype job going on around here using the MC68HC16 which is
being done in assembler. I'm pretty sure we have a C compiler around here
somewhere that addresses this chip, but it's not my project, so I don't know
for sure. Assembler usually gets used in these areas because there are no
other choices.

I don't know if full-blown Ada could be conveniently targeted to this
processor (tasking too difficult?) but even a scaled back subset would be
better than the yards of assembler currently being written for this and
similar chips. Assembler vs Ada is almost no contest when comparing error
rates and Ada would definitely be an advantage in our microcontroller
projects. Especially when you consider the potential cost of fielding a unit
that contains a spooge in the code! ;-)

MDC
--
Marin David Condic
Real Time & Embedded Systems, Propulsion Systems Analysis
United Technologies, Pratt & Whitney, Large Military Engines
M/S 731-95, P.O.B. 109600, West Palm Beach, FL, 33410-9600
***To reply, remove "bogon" from the domain name.***

Visit my web page at: http://www.mcondic.com/






^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: Computer Programming for Everybody?
  1999-09-22  0:00         ` Robert I. Eachus
  1999-09-23  0:00           ` Preben Randhol
@ 1999-09-27  0:00           ` Richard D Riehle
  1999-09-27  0:00             ` Marin David Condic
  1 sibling, 1 reply; 26+ messages in thread
From: Richard D Riehle @ 1999-09-27  0:00 UTC (permalink / raw)


In article <37E92BB5.3C2DB9BB@mitre.org>,
	"Robert I. Eachus" <eachus@mitre.org> wrote:

    [snipped your opening comment ]

>    The problem with learning BASIC as a first programming language is
>that the limits it imposes on the way people think can persist for
>years.   

Yes. This is the very same problem we have with people whose first
language is English.  They learn bad habits that make it difficult
for them to reason about ideas for much of their life.  Some never
do get past this handicap.  :-)


   [ snipped  a few lines ]

>
>    Also, we have a very, very serious problem developing and I don't
>know what we (as industry and academia) can do about it.  There is still
>a significant need for software engineers that know how to program in
>assember, or how to read assembly language.  But most of the young
>people who are learning assembly code are hackers and/or crackers.  But
>the jobs that need to be filled are concentrated in the safety-critical
>software field...

Agree, Robert.  Dr. Dewar once presented a little summary of the 
absolute number of programmers using various languages.  He suggested
that the absolute number for assembler programmers has not changed 
even though their relative number has diminished.   Assembler is
especially critical in the world of microcontrollers where Ada has
no significant role.  For example, I-8051 programmers continue to 
prefer Assembler (sometimes Forth) over C for serious projects.  These
microncontrollers are increasingly finding their way into safety
critical software applications.  

>     I'd like to see something like the old NSF summer programs, where
>the first summer students learn programming in Ada, Pascal, or some
>other language that favors software engineering as well as something
>about Web progamming. The second summer they should do some serious
>assembler programming or the equivalent.  (What ever happened to PL/M?)

PL/M actually gets used now and then for eight-bit applications.  There
are some dedicated PL/M programmers still hiding out here in Silicon
Valley.  Perhaps their absolute number is also the same as it has been
for many years. 

Richard Riehle
http://www.adaworks.com




>-- 
>
>                                        Robert I. Eachus
>
>with Standard_Disclaimer;
>use  Standard_Disclaimer;
>function Message (Text: in Clever_Ideas) return Better_Ideas is...

 




^ permalink raw reply	[flat|nested] 26+ messages in thread

end of thread, other threads:[~1999-09-27  0:00 UTC | newest]

Thread overview: 26+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
1999-09-10  0:00 Computer Programming for Everybody? Ted Dennison
1999-09-10  0:00 ` Raymond Calande
1999-09-10  0:00 ` David Botton
1999-09-11  0:00 ` Vladimir Olensky
1999-09-12  0:00 ` Brian Rogoff
1999-09-12  0:00   ` mitch
1999-09-13  0:00     ` Brian Rogoff
1999-09-14  0:00       ` Robert Dewar
1999-09-14  0:00         ` Wes Groleau
1999-09-13  0:00     ` Larry Kilgallen
1999-09-13  0:00       ` John Duncan
1999-09-13  0:00     ` Mike Hall
1999-09-13  0:00     ` Preben Randhol
1999-09-13  0:00       ` Matthew Heaney
1999-09-13  0:00         ` Preben Randhol
1999-09-14  0:00     ` tmoran
1999-09-13  0:00 ` Tarjei Jensen
1999-09-13  0:00   ` Richard D Riehle
1999-09-14  0:00     ` Robert I. Eachus
     [not found]       ` <7ronav$shf@dfw-ixnews7.ix.netcom.com>
1999-09-22  0:00         ` Robert I. Eachus
1999-09-23  0:00           ` Preben Randhol
1999-09-23  0:00             ` Robert I. Eachus
1999-09-27  0:00           ` Richard D Riehle
1999-09-27  0:00             ` Marin David Condic
1999-09-14  0:00     ` Wes Groleau
     [not found]       ` <Pine.HPP.3.93.990915162218.958A-100000@merle.acns.nwu.edu>
1999-09-22  0:00         ` Wes Groleau

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox