From: sjk6119@ritvax.isc.rit.edu (Sgt. Kleper)
Subject: Re: Simple programming language for Mac
Reply-To: sjk6119@ritvax.isc.rit.edu
Organization: Rochester Institute of Technology
Date: Mon, 11 Jan 1993 23:19:17 GMT

In article <1993Jan11.045343.7138@Princeton.EDU>, jdunning@phoenix.Princeton.EDU (John Alan Dunning) writes:
>In article <1993Jan10.224520.11539@ultb.isc.rit.edu> sjk6119@ritvax.isc.rit.edu writ
>>>How can a programming language be _too_ easy?
>>
>>Here's how:
>>
>>HyperCard is great. I luvvit. However, when I was first using HyperTalk
>>and HyperCard, I didn't consider it programming. It was just the feel
>>of the environment. It was too "easy" to link things together. There was
>>no feeling that I had created a program, but rather linked cards, and 
>>done some simple scripting. HyperCard/HyperTalk is great for doing custom
>>stuff, but IMHO, it is not the appropriate way to get people interested
>>in programming. It's tough to explain, but if you're trying to figure
>>out what would appeal to a kid, take a kid's point of view (i'm a kid).
>>I was hooked on programming after taking a BASIC course so long ago. When
>>I took HyperTalk, it was too "fun" and "easy", and just didn't seem like
>>something I wanted to continue with. If you can present HyperTalk to kids
>>in such a way that they'd feel like they were really building applications,
>>that's great! Another option is SuperCard. That can do color, and can do
>>stuff that's a little more application-like. I don't want to start a flame
>>of HyperTalk vs. BASIC, because that's obvious. HyperTalk is a better
>>language. However, more of my friends and classmates know and use BASIC
>>than HyperTalk. It's just something about writing actual code that's "fun".
>>
>>-Scott J. Kleper
>>"Sgt. Kleper"
>>age 15
>
>I agree that writing actual code is fun.  But I think most people
>can't imagine why anyone would want to program.  Too many piddling
>little details, which I can certainly sympathize with.  The current
>code-compile-debug cycle is incredibly primitive and inefficient.
>There's simply no excuse for runtime or compile-time syntax errors,
>the sorts of errors which really frustrate beginning programmers.
>The computer knows what the correct syntax is; it should be checking
>it as you're writing the code.  We've all better things to do than
>look for misplaced semi-colons or missing braces.  So if you can spare
>beginners these frustrations, why not do it?
>
I thought the whole idea here was how to get kids interested in programming the
easiest and most beneficial way. If they don't like code, then guess what? They
wouldn't like programming. It's better to find out now! Primitive or not, code-
compile-debug is what's gotta be done. Actually, some BASIC implementations
don't need to be compiled, you can just say i=i+1 and it does! Newer compilers
like Think's wonderful environments, will help with the misplaced semi-colons.
Such compilers are good for beginners, yet powerful enough for experts.

>I think we're coming at this problem from two different perspectives.
>It seems like you're looking for a powerful, open-ended language
>which beginners can really sink their teeth into once they get beyond
>the basics.  HyperTalk certainly isn't that language, which is why you
>suggest BASIC, because it's more challenging.

True. I'm contradicting myself, I'm sure. It's a two-ended topic. Ease of
use vs. actual programming. I think the big problem, though, is that many
couldn't learn HyperCard or BASIC even if they wanted to, and most don't
even know what they are. For example, there's a kid in my English class 
who wants to be a computer programmer. Why? I don't know. How many languages
does he know? zip. It's tough to start learning.

>But I think the vast majority of computer users don't want anything to
>do with coding, and never will.  Very few people can see the elegance
>of "while (*t++ = *s++) ;".  But why should they?  Why would anyone
>want to program in the first place?  Because they like the process of
>coding and/or they want to accomplish something which they are unable
>to with the currently available tools.  I think most users feel the
>second way sometimes, but almost never the first.  

My first reason for wanting to program was games. AFter that it was because
there'd be something I wanted to do, and a little utility to do it was $50.
The point I'm at right now is just learning things as I want to learn them.
Sure programming is tough, but I'd rather be up til 4AM writing a program
then looking around a BBS trying to find a utility to do what I wanted.

>So I think what needs to be developed is a system that lets average
>users customize their computer and make it do exactly what they want
>it to.  Something like Unix shell scripts or AppleScript, but at the
>same time both more powerful and easier to use.  That's why I
>suggested something that lets you link ready-made objects graphically
>to create new apps.  It lets users create new functionality quickly
>and painlessly.  You can also give the same system to kids to learn on,
>because it takes an easy-to-learn building block approach, and they
>can continue to use the sam system as they get older.  I think it's
>important to have something that's both fun and easy to interest most
>kids and most adult users.  But for the more adventurous, like
>yourself, you can always just open up the individual obects and start
>writing real code to create new objects.  

AppleScript looks like something good, though I have the CD right here and
haven't even opened it.

>Sorry for ranting on like that.

Don't apologize, you weren't ranting. There are a lot of aspects to the
problem...is it a problem?

>John

-Scott J. Kleper
"Sgt. Kleper"