I agree wholeheartedly. I started out with JavaScript, and it was a brilliant language to learn. I was doing cool stuff--websites with content and pictures and color--almost immediately; with other languages like Python or even Scheme, I would probably still have been writing dry command-line programs.
There's a place for command-line programs, but it isn't at the very beginning. JavaScript is great not only because it lets you start with concrete stuff immediately, but it's stuff you're already familiar with: everybody uses the internet now. I also found the basics of HTML much easier than any other UI framework I have ever used (Swing, WPF and TK mostly).
All of this is coupled with the fact that, ultimately, JavaScript is a really nice, really expressive language, also makes it my choice for a first language.
However, if not for JavaScript, I probably wouldn't point people towards Python/Ruby so much as Logo, which has many of the advantages of JavaScript and is well regarded by CS educators.
There's a place for command-line programs, but it isn't at the very beginning. JavaScript is great not only because it lets you start with concrete stuff immediately, but it's stuff you're already familiar with: everybody uses the internet now. I also found the basics of HTML much easier than any other UI framework I have ever used (Swing, WPF and TK mostly).
All of this is coupled with the fact that, ultimately, JavaScript is a really nice, really expressive language, also makes it my choice for a first language.
However, if not for JavaScript, I probably wouldn't point people towards Python/Ruby so much as Logo, which has many of the advantages of JavaScript and is well regarded by CS educators.