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.