in reply to Learning ***** as a second language

First, great question!

Second, there is not enough information supplied to answer the question properly... so the answer is "it depends"

Perl has so much flexibility that you can use it for almost anything (note the "almost" part). There are many other languages, each serving their purpose, and they tend to be somewhat more narrow-focused.

So you know shell scripting (and perhaps batch scripting on Windoze) and want to delve into the realm of *real programming* languages...

If you mostly work on *NIX computers, I would strongly recommend to learn C followed by C++. You can think those are old languages, but so far no newer languages can beat them in system programming field (just my opinion of course).

If you're in the Windows realm, you can learn Visual Basic for dealing with Databases (IMHO it's the only thing VB is good for - easily make connections to MSQL DB and manipulate data in visual way). VBscript is somewhat useful for pulling information from systems and Active Directory (using WMI).

For Web-oriented programming, Java is the most advertised/marketed language, even though a little cumbersome (MS JVM vs SUN JVM, applets security etc etc). PHP and Python are pretty good languages too, but if you want to "increase your marketability" as well, pick Java...

However, the main thing about programming (again, personal opinion) is not about knowing a particular language. It is about being able to think logically - identify the problem/find its cause/devise logical solution/implement in the most appropriate way. If you know and can create block diagrams (the logical flow of a process/program/whatever), you can take a book on any language to learn a syntax and be able to implement your solution in the matter of days (or less if you already know the language). That being said, I would recommend you to get a few books on the topic of programming itself, not restricted to a particular language. When you understand the general concepts, use the language you want to get what you need.

An idea is not responsible for the people who believe in it...