|There's more than one way to do things|
If someone were to say you must write code in X (for any X), then I would immediately suspect them of not understanding computers.
That's like saying shoes are deprecated, you must commute to work using only a Tesla. Which specific language you use is less important than having the logic skills and knowledge that underlie everything.
For the car analogy, your language of choice can range from a pair of shoes to a bike, car, or stunt plane. They're all more and less useful in different situations, but can usually get you from point A to point B without excessive fuss. Logic and at least knowing of the existence of algorithms you can look up are like a sense of direction and the skill to read a map (and even the basic wisdom to keep control of your vehicle instead of watching a movie while the cruise control is set)
So, the analogy was fun and got away a bit, but IMO, the important point is less what language you know, but the breadth of math you know enough of to look up, and the logical patterns of thought to allow you to map your task into a series of solved problems.
Does that simplify down to "get a CS background"? Perhaps, but just from being around here for so long, it sounds like you've soaked up a some of it by osmosis.
In reply to Re^3: How does one learn perl programming efficiently - if they do not come from computer science background?