[REBOL] Re: teaching rebol
From: gerardcote:sympatico:ca at: 3-Apr-2003 19:53
> Hi Graham,
> GC> I was thinking of more of a problem solving approach ...
> GC> but that may be too hard. Give them a few basics, a
> GC> problem to solve and help them thru it. I was thinking
> GC> that formal curriculae might be too boring for my 10 year
> GC> old... though I guess she manages school okay :)
> Thanks for scribing things Graham. My son is 12, and we have a little
> girl who's almost 8 (and loves Age of Empires :).
> We home-school, as do many of our neighbors. I think a problem solving
> approach is exactly the right way to go about it. I have a very crude
> Logo dialect which we might put to use. I'll have to do some research
> to refresh my memory on some of those things, but I think we could do
> something similar, starting with small dialects (for them to work in)
> and working our way up to raw REBOL.
> -- Gregg
I agree too that this the problem solving approach is the way to go.
You can also look at the following article about problem solving : http://www.cs.ukc.ac.uk/moved/stork/Html/Courses/probSolving.html
if some doubts lie in your spirit (Which I don't think so anyway).
But it seems that here in Quebec City the math teachers of my 2 sons
already use this approach and do it well. Seems to me like this fact has
changed for the better from the time I was myself studying my maths.
Furthermore this other language can be a useful reminder as to how we
could (or should) consider small languages as a useful mean to help
youngsters to learn programming :
In fact what fools me is what kind of problem I have to select for
really being helpful to them at home while at the same time keeping their interests
high too and later being useful in their way of using the computer at work.
I have to admit that except for spending most of time alone some
fun time with my computer I don't really see how tu use it quickly for
many of the home tasks I have at hand - except may be for writing letters
and msgs for correspondence with friends, create interesting birthday
cards, manage home finance, etc...
Most of the time I'm experimenting some programming concepts that don't
really interest any of my family members or even friends and that are not
really useful to anybody else even if I would like to do much more
- but time is at premium and programming as it is now is not to be
considered a help in this way... and this has not changed a lot since I did
my first program on my first computer : a Commodore PET with its
own 8k RAM back in 1977 !!!
I feel myself like a hobbyist doing something for himself most of the time
instead of being really useful to others ... and keeping inside instead of going
outdoors - but the two can't easily be mixed I think.
It's a matter of personal taste and life is definitely too short for me to fulfill both
Coming back to what you expressed before, what would you like to consider
now as a basis of experiment for the problem solving approach, some LOGO
style (see the following links http://caesar.elte.hu/~eurologo/lectures/koutlis.htm
and http://www.thrace-net.gr/bridges/koutl.html where is driven Logo these days!)
or a more natural current life situation ?
(See : http://www.edweek.org/sreports/tc99/articles/tools.htm).
I must admit that I would favor the last one but this is also prone to getting too
much details to cope with for true beginners - so I'll do my best in this way
since my children are now playing some advanced video games and they
no more maintain interest while keeping up with the required effort to do
somethning useful in a short time.
In this way Graham, I found your reference (or does it come from someone else ?)
to Stagecast's Creator suggestion very interesting.
I personally think the visual way of doing things as used by stagecast's Creator
represents some part of the solution necessary to decrease the TIME bottleneck
currently associated with programming. Even somewhat limited as it is in its
current use, I see it as some kind of a code generator paired with a macro recorder.
That is by applying to the visual objects selected to appear on the screen
some predefined canned actions that the stagecast team called RULES,
everyone can create some kind of program related to many of the required
tasks to solve without having to rebuild again and again the basic blocks used
for similar tasks - instead instantly reusing old knowledge already canned for us.
If we could come up with a similar product using REBOL and translate these
underlying actions into some corresponding DIALECT that could then be
extended to open at large the canned effect, the reuse could be more efficient
than if everybody had to learn the DIALECT in the first place instead of using
a visual metaphor like stagecast did with its Creator.
Only later - if necessary to study them - the CODING produced could be
studied by interested ppl and worked on directly, but in this case there must exist
some bilateral link that should also permit to see the evolving piece into its visual
counterpart for others to see and use it again as it is now evolved.
See the update about this old link I visited some years ago :
I personnaly think this is the only sure way we will be able to pave the future
of programming in the context of reusing what has already been done -
putting aside many details for end-users. Here is what some experts have
to say about it : http://e-slate.cti.gr/Resources/IEEEComputerArticle.pdf
And I also think REBOL is actually one of the best platforms to render this
concept as universal and dynamic as it could be - that is distributive and
For the moment E-Slate educational components are programmed using Java.
While I'm touching components, if you want get a refreshing view about a real case
regarding the development and implementation of components and their reuse,
look at :
There you'll see how those developed reusable components can now provide real
interoperability amongst many existing programming languages.
It could be a dream come true for REBOL too if some parts were put in place
by RT or some knowledgeable team. I must say that this is not in my competency
field however and this is missing me a lot...
For sure before the advent of stagecast Creator, many other ppl already tried in
some way to apply the same visual approach for teaching youngsters programming as
Tha many flavors of Logo and the use of "microworlds" or turtle but this generally
falls short of real apps outside the Academic World.
Squeak Alice (look at http://minnow.cc.gatech.edu/squeak/1861) is another which was
also implemented with the Squeak programming language but that seems too complicated
to me to be of real use for youngsters because of the 3D world coordinates and
then what kind of use can we do with it.
Lego (Mindstorm) robotics system and other similar games are other potential members
where fun can be associated with future usefulness but nevertheless I can't see this
very useful for day to day app. (See also how some students learn how to program
their own customized robotized car for racing against others' one using this simulator
program before trying their real car constructed around the Lego RCX at : http://www.mindrover.com/mindrover/Education.htm
Even if this is a bit complex for youngsters, this can sustain some interest in programming
with an implicit goal ... having his own car to be the winner of the many different races
Sorry for being lengthy ...
Thank you again Graham for publishing your REBOL School Vanilla web site.
I already submitted some references to other articles and plan to offer
many others soon.
The important thing is the momentum your post suddenly created.
I hope we'll be able to put something useful for teaching first programming concepts
for youngsters using REBOL and may be REBOL programming too
while keeping it fun and useful ... (See Tim Johnson ML post!)