Today, I had a discussion with my co-worker on the best languages for web applications. While I argued that Perl, and Ruby performs better than PHP, my co-worker had an opposite opinion. He believed that PHP is the best language overall because it is widely used. It brings me to think of a question, does the most popular imply the best?
Let’s answer this question by examples:
|Category||Most Popular||The Best||Why The Best?|
|OS (Desktop)||Windows||OS X||User friendly, secure, stability, and performance.|
|OS (Server)||Linux, Windows Server||FreeBSD||Fast, stable, secure, simple design, and centralize management.|
|Browsers||Internet Explorer, Firefox||Safari||Fast, secure, stable|
|Programming languages (Desktop/GUI)||C#, Java||C, C++||Fast, secure|
|Programming languages (Web/Server)||PHP, ASP||Ruby, Python, Perl||Fast, fewer lines of code.|
|Database||MySQL, Oracle||Berkeley DB, Tokyo Cabinet||Fast I/O, simple design, smaller size of the database file.|
|Software company to work for||Microsoft||Start-up||Rewards, opportunity to grow|
I think there are several reasons why the most popular things are not the best.
1. Most popular thing is always backed by the best marketing strategies. Marketing strategies is simply a way to let people know about the product and convince them to use it. It has nothing to do with the quality of the product at all.
Example: The ads of Internet Explorer 8 look very attractive. Is it the most secure browser ever?
2. Most people are followers. They are not good in selecting good products from bad products(i.e., filtering the noise). They believe that the choice form most people (most popular) should be the best one. This is similar to election. The choice of most people is more likely to be better.
Example: Is MySQL really the best database?
3. Different people have different preferences. So a popular product must have the general taste. For example, an extremely hot and spicy food may be better to the body, but it is not as popular as a mild one, because the number of people that can take extremely hot and spicy food is smaller.
Example: Linux is very easy to configure comparing to FreeBSD (GUI vs command line) from the end-user perspective, but it is less powerful and stable overall.
Think twice before your move.