> Exposing children to C and/or C++ should be considered abuse. :) > Similarly exposing pointers is just a method of introducing bugs and security > holes into programs.
I see your point including the joke, but I don't quite agree with you. I will, of course, explain to them the dangers of using pointers and many other related etceteras. After you teach them what arrays, indexably customized, typed, named memory arrangements, are used for, you tell them about hash tables, pointers to functions, the way to kind of kind of do that in java using an array of command objects extending abstract classes ... > No! A functional language! Object oriented languages are wrong! > Linear types FTW! Multi-paradigm! Strongly typed! Dynamically > typed -- no, statically typed! In fact, it will just be an introduction, but I want to teach them to be "multilingual"/"multi-paradigm" from the start. > You need to teach them things like breaking down problems into > manageable parts and assembling parts into complex wholes. For which pointers are very useful? ;-) > To be fair, *you* are talking about "how to teach children to write > programs." The OP specifically asked about how to obtain a Debian blend > with a specific set of features/capabilities. Thank you and that blend doesn't seem to exist, right? I was just thinking of handing them a live DVD so their parents don't protest about "installing software in their computers" > To sum up, the best approach IMO is to > - base everything on a game (something with rules and goals) > - explain computer architecture (as part of the game) what is doing what and > what is a purpose of a program, how a computer and a program work ... Thank you and yes, one of the projects will be coding a game and another project will be about NLP (all my students are multilingual). I will also introduce computer architecture, the Turing test (a little bit of philosophy and why technical people have taken it as some sort of modern day "how many angels can dance on the pin of a needle" kind of thing, when IMO Turing himself never meant that computer (ultimately syntactic devices) could compare to or simulate brain/mind functions), ... but the most important aspect of it, would be that I will mainly use a Mathematical approach to teaching computer programming. I have had such ideas for a long time. It is that my students actually started to ask for it. Of course, they have no idea about how much time and mental effort professional programming takes, but again it is just an introduction. > Hey, if he's paying, we answer the question he asked. If he's not, we > answer the question we want to answer. This is how the Internet works. There goes the emperor of the Internet telling how "we" think it works ... > PPS At the top > *waving* at FEXL (Function Expression Language) I want to concentrate in the three that I mentioned because I would like to gear that introduction towards the AP CS exam. > Perhaps Python I will touch on Python is one of the languages that I will be marginally using in a project that uses youtube-dl. Another one would be Mathematica. I will also teach them about SQL's DBMS. > let me show my favorite among those languages which i never > tried: > http://www.dangermouse.net/esoteric/piet/samples.html Thank you ~ L