Quote:
Originally Posted by Varius
I have to strongly disagree here. When you are a good programmer, you pick the best tool available for the task; in some cases, that is PHP. You weigh practicality, scalability and other aspects when making such a decision - the best tool "period" is not always the best tool for that task.
To use your own analogy, if you are planning a trip into the mountains, you may prefer the horse. Driving a few blocks to pickup some drinks? I doubt you are going to use your private jet. Planning to head to Europe from California? I don't think you'll be driving...each fits their own situation.
Saying the best programmers avoid PHP like the plague, or that PHP is a reason adult companies have trouble finding the right talent, is ridiculous 
|
I should have emphasized "expressing intent" more as a qualifier to that statement. I agree with the gist of what you are saying. It is important to note the separation of programming concern and business concern. I was referring more to a matter of psychology when it comes to attracting and finding programmers not what is the best business case.
Surely there are requirements for a job and PHP would be the "correct" choice in certain situations. For example, PHP is a popular language so it is easy to find other PHP programmers. Or if all you have is a Godaddy shared hosting account, PHP is the only option. Or maybe if you just want to grab a bunch of scripts that already exist and tweak them.
As far as expressing intent though, a better analogy might be doing long division with Roman numerals instead of the Arabic decimal system we are used to.
Trying to convince a programmer that has a diverse background of programming languages to use PHP would be like trying to convince someone that they should be doing arithmetic with Roman numerals instead of decimal. Barring any kind of constraints that dictate I must use Roman numerals, I can think of no case where I would choose to use them over decimal.
The reasons to avoid Roman numerals would be because they are more prone to human error, and longer in length, require more calculations in your head that could be used for the task at hand, and are harder to read and write. Try imagining an Excel spreadsheet full of Roman numerals everywhere and you will begin to understand the pain. It is the same situation with PHP. When talking purely about programming, not business cases, PHP is near the bottom of the list in practically every criteria (expressiveness, meta-programming, code size, execution speed, architectural flexibility & soundness, conceptual paradigms, run-time environment). It is however strong in many business cases (sufficient number of programmers, easy to find programmers, portability, standard server configurations, lots of existing code already).
So, a programmer may suck it up and accept it if he needs to put food on his table, and that is the only job available, but he isn't going to like it and it will be a last resort.
A programmer that is in high demand is not going to choose a job that forces him to use Roman numerals when there are still jobs that allow him to use something more expressive like decimal.
That was the point I was trying to make.