Regular Visual Basic has been pretty much replaced by Visual Basic .NET, which is quite a different language in many respects. Maybe not so suitable for young children anymore.

Python’s use of indentation for block delineation is a bit odd, but it’s used in other languages as well, such as Elixir and occam (does anybody remember occam?). It helps to keep the code clean-looking and I like that. Definitely a good “beginner’s” language.

Ruby may be good, too, though its semantics may be a bit convoluted.

I think either Python or Ruby could be used to teach children. Personally, I like Smalltalk, which is just about the simplest, purest programming language in the world. It hardly has any syntax at all! The syntax is all about sending messages to objects: <object> <message>, where <message> can be unary, binary (infix), or keyword (taking on a parameter). The rest of the language comes down to the class library. (Conditionals, for example, are implemented with the message ifTrue: or ifFalse:.) Truly a beautiful language and the finest implementation of the class-based OOP paradigm there is. Alan Kay created Smalltalk to teach children programming.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store