You can not make "the most popular language for web development" without attracting a few jealous people and their negativities.
Like it or not, PHP is THE most popular language for developing web applications. And it didn't reach that rank without merits.
Sun pushed Java, Microsoft pushed C#, Google pushed Python in direct and indirect ways (but Google gave up on Python and created Go).
No big company spent a lot of money to push PHP (Yahoo started using PHP when it was already popular). PHP reached there because it had some merits in it.
- PHP is easy to get started and it helps people without CS background to learn it quickly and code apps to solve problems.
- PHP doesn't force you to use OOP unless you need or want that.
A musician named Derek Sivers who had no CS background created CDBaby website after following instructions in a PHP book. When Rails fanboys were making a lot of news, Derek decided to use Rails and scrap the original PHP codes [1]. He hired a top Rails developer and spent a lot of money (compared to the money - i.e. cost of a book on PHP - spent on his original PHP code) to rebuild CDBaby in Rails. The project eventually failed - time and money lost. CDBaby continued to grow rapidly and the site was powered by PHP codes. By telling this story, I am not trying to say Ruby and Rails are hard or bad. Ruby and Rails are tools just like PHP. The point I want to make with this story is PHP can get almost anyone up and running without much difficulties. Many people could get into business easily because of the ease of PHP. Just think if Derek had tried to make his first site using Rails! Probably, we would have never known the story of CDBaby.
I believe, the purpose of a programming language is to make it easy for user (of the language) to create solution instead of trying to prove the greatness (e.g. lot of features) of itself or it's creator.
Why is PHP easy?
PHP is easy because Rasmus Lerdorf didn't have CS background. He didn't want to create a language to have all the features and concepts taught/learn in a CS class of programming languages. Rasmus just wanted to create a tool to easily publish pages dynamically on web.
On the other hand, you can take a look at Java if you want to know how a language looks when the creator has PhD in CS and wants to apply all his knowledge of CS in the language. I am NOT trying to bash Java or Gosling, just trying to explain why some languages are created complex and difficult.
TL;DR: PHP is just a tool like Ruby or C. It has plus and minus points like any other language. PHP makes it easy to get up and running (even if you don't have a degree in CS). If you like PHP (after you try it), stick to it (because with PHP, you can get atleast as big as Facebook). If you don't like it, pick another language that works for you. And this last point is mainly for Snake lovers on HN : never bite a language (or users of that language) because you don't like or use that language.
2007, you know that then he revise him opinion about the ruby/rails.
Some language are better than others. I've work with php for some years. PHP suffers for some serious design. The are A LOT of articles on the internet.
Is so easy to start with php that even a non programming guy will succeed! The same for java/ruby/python/go. When you start is easy and fun. But when you have to use your brain, when you have to do some stuff that are than CRUD then is complicated. And is so fuckin' easy to screw up in php. OMG!
btw, facebook is using php not because is cool, but because of legacy code.
"2007" Yes, Derek wrote the article in 2007 but the facts are still correct.
"then he revise him opinion about the ruby/rails" : Derek didn't revise his opinion (at least I am not aware of that). But I know this. The creators of Rails read the article [1] by Derek. Since, Derek is a popular person on the Internet and he has a lot of followers, his article on his failure to switch to Rails can really make a lot of people stay away from Rails. And this is bad news for the the creators and promoters of Rails. So, the obvious strategy, for the creators of Rails, was to convert Derek into a Rails user to reduce the damage on popularity of Rails caused by Derek's article. So, he was invited to RailsConf. When Derek is invited at RailsConf, do you expect him to talk against Rails at the conf? So, you get the point! Derek can get invited to RailsConf and talk a bit of good things about Rails (and he tried to learn Rails, once more, later), but that doesn't change the original experience he had with Rails when he tried to switch from PHP to Rails. * I don't dislike Rails. I just made an attempt to present the the facts in response to your comment *
"Some language are better than others" : Some language are better than others depending on what you are building.
"PHP suffers for some serious design" : True. So, does any other language. There is no perfect language available on this Earth.
"The are A LOT of articles on the internet" : True. There are many articles that point out problems - Some of them list problems in PHP, some list problems in Rails, some list problems in Python and so on.
"Is so easy to start with php that even a non programming guy will succeed!" : Yes, That is why Derek, without a background in CS, could buy a book on PHP and create first CDBaby site. There are many other examples available on Internet.
"The same for java/ruby/python/go" : I don't deny, because I am not here to talk against any language. If a language works for you, that's great.
"But when you have to use your brain, when you have to do some stuff that are than CRUD then is complicated." : If it is not easy to get started, then you will never reach a point when you will need to use your brain.
"And is so fuckin' easy to screw up in php" : If you don't know how to handle something you can screw up easily with anything. Programming is a skill one acquires over time. It takes time because you learn to avoid the ways that make you screw up. You can screw up easily with any language if you don't know how to use the language.
"facebook is using php not because is cool, but because of legacy code" : Where is the link to source to prove your claim? Facebook has enough money to replace all PHP codes, but instead of replacing PHP they have invested money to improve PHP (HipHop is one example).
Like it or not, PHP is THE most popular language for developing web applications. And it didn't reach that rank without merits.
Sun pushed Java, Microsoft pushed C#, Google pushed Python in direct and indirect ways (but Google gave up on Python and created Go).
No big company spent a lot of money to push PHP (Yahoo started using PHP when it was already popular). PHP reached there because it had some merits in it.
- PHP is easy to get started and it helps people without CS background to learn it quickly and code apps to solve problems.
- PHP doesn't force you to use OOP unless you need or want that.
A musician named Derek Sivers who had no CS background created CDBaby website after following instructions in a PHP book. When Rails fanboys were making a lot of news, Derek decided to use Rails and scrap the original PHP codes [1]. He hired a top Rails developer and spent a lot of money (compared to the money - i.e. cost of a book on PHP - spent on his original PHP code) to rebuild CDBaby in Rails. The project eventually failed - time and money lost. CDBaby continued to grow rapidly and the site was powered by PHP codes. By telling this story, I am not trying to say Ruby and Rails are hard or bad. Ruby and Rails are tools just like PHP. The point I want to make with this story is PHP can get almost anyone up and running without much difficulties. Many people could get into business easily because of the ease of PHP. Just think if Derek had tried to make his first site using Rails! Probably, we would have never known the story of CDBaby.
I believe, the purpose of a programming language is to make it easy for user (of the language) to create solution instead of trying to prove the greatness (e.g. lot of features) of itself or it's creator.
Why is PHP easy?
PHP is easy because Rasmus Lerdorf didn't have CS background. He didn't want to create a language to have all the features and concepts taught/learn in a CS class of programming languages. Rasmus just wanted to create a tool to easily publish pages dynamically on web.
On the other hand, you can take a look at Java if you want to know how a language looks when the creator has PhD in CS and wants to apply all his knowledge of CS in the language. I am NOT trying to bash Java or Gosling, just trying to explain why some languages are created complex and difficult.
TL;DR: PHP is just a tool like Ruby or C. It has plus and minus points like any other language. PHP makes it easy to get up and running (even if you don't have a degree in CS). If you like PHP (after you try it), stick to it (because with PHP, you can get atleast as big as Facebook). If you don't like it, pick another language that works for you. And this last point is mainly for Snake lovers on HN : never bite a language (or users of that language) because you don't like or use that language.
[1] http://www.oreillynet.com/ruby/blog/2007/09/7_reasons_i_swit...