Python... both languages are along far enough that they will meet all four of your points, but people that program in python are on average better programmers than PHP programmers. So it makes hiring good hackers easier by eliminating many of the bad hackers.
Other than that, if you like the syntax of PHP, it is as good as python as long as you program using the MVC paradigm. Personally I like the syntax of python a whole lot more than PHP.
Python brought me back from a bored and frustrated programmer using Java to a hacker. I have programmed in Java since then and have been much better as a result of my work with Python.
PHP in my opinion is a very weak option today, and I think you would be crazy choosing it in 2008. I worked extensively in it about 8 years ago, but it's time has passed.
Like you mentioned, consider using MVC with Python. The separation between business logic and display code is priceless, and I guarantee if you do not clearly break apart these two you will run into huge problems.
I guess, for a lot of people, PHP would be easier to dive into than Python?
I get your point; without any other knowledge, you'd be better off selecting from a pool of Python developers than PHP developers when looking for good hackers. Correct?
Although I would be able to somehow separate the good hackers from bad by initially chosing Python, would you say that good hackers would also stay clear of opportunities where PHP is involved? What would facebook think about that? ;)
You won't find any PHP hackers. The good PHP developers realized that PHP was a waste of their time a long time ago. All the novices have significantly lowered the average PHP developer's salary compared to other languages. Basically, there's no skill and no money in PHP, so the good people don't use it.
This is stated as an absolute where there are certainly good PHP developers that work at Yahoo and Facebook... still, a less extremely worded version of your statement is true.
You won't find any hackers who use sweeping generalizations. Oh, wait!
I'm a hacker. I use PHP. I use Python. I use C++. I use Java. I use JavaScript. I use Prolog. I use C#. I use whatever language or tool is best for the job and I innovate with them however I can. I love getting my hands on new SDKs for every language and framework, learning their quirks and implementing fun things with them.
There is skill in any language you choose to use. That's up to you, not the language. In fact, a "bad" language require significantly more skill to use successfully and securely.
Now, I'm not going to disagree with someone if they provide cons/pros for different languages, PHP has its faults, maybe even more than other languages. But it strikes me odd that you'd be upvoted so much for saying that no hackers use PHP.
The presence of "novices" aren't going to scare away someone who likes to code and get the job done in clever ways. I'll also note, as someone who runs a game scripting community around Python, that novices produce some of the cleverest little tricks and really shouldn't be shunned anyway. We were all novices once.
In fact, a "bad" language require significantly more skill to use successfully and securely.
You seem to be passing this off as an advantage, but that doesn't make sense. Let's say you make furniture for a living, and one day you intentionally slice your arm off. Now you brag that having one arm is better than having two, since you now "require significantly more skill" to do the same work you could do before.
That doesn't make you a better furniture maker. It makes you a cripple.
Using PHP is the programming equivalent of cutting off your arm. It makes work more difficult, more painful, and slower.
You've really got a bad taste in your mouth regarding PHP. I'm sorry to hear that because it's just yet another tool. It only has to be as painful and slow as you make it when you use it. I hope you have a chance to revisit it sometime with a modern framework like Code Igniter or CakePHP. I used to have a shade of the type of biases you show now, but after we've made half a dozen MVC web apps using Code Igniter (and Django) I've had to change my tune.
I used to have a shade of the type of biases you show now, but after we've made half a dozen MVC web apps using Code Igniter (and Django) I've had to change my tune.
The possibility exists that you just don't know enough about programming to make an informed decision.
This isn't true in my very recent experience. I was recently (briefly; hired now) looking for a job in the DC metro area, and I find that even places that want you to primarily use Python or Java seem to also desire PHP experience, presumably because they have lots of legacy PHP code.
Other than that, if you like the syntax of PHP, it is as good as python as long as you program using the MVC paradigm. Personally I like the syntax of python a whole lot more than PHP.