Le basic, c'est une bonne idée si on veut permettre d'écrire un programme. Mais ce n'est pas forcément pertinent pour apprendre à construire des abstractions.
De façon générale, un langage de programmation concret n'est pas une bonne solution parce que ce n'est pas vraiment un outil fait pour ça. J'ai commencé dans mon coin par le basic, et j'ai surtout appris à faire les choses salement. En outre, il ne faut pas oublier que les outils et le rapport à l'informatique a changé (qu'on le veuille ou non, c'est comme ça : avant, le moindre petit outil demandait quelques lignes de code ; quand on voulait faire une interface visuelle en ascii art, il fallait tout penser... aujourd'hui, on dessine une IHM* et on définit - je n'ose même pas dire "programme" - des événements).
* (En dev web, au lieu de dessiner une IHM, on se fait chier pour des des conneries, mais c'est un autre problème

)