Фрилансер Павел
IT инженер
pavel@wisetip.ru
root4web

Почему именно PHP?

На сегодняшний день существует достаточно много языков программирования, с помощью которых можно создавать web сайты и приложеиня. В числе наиболее популярных следует отметить Python (Django), Ruby (Ruby on rails), Perl (Mojolicious) и конечно же PHP. Можно было бы еще отметить и JavaScript (Node.js/Express), но ввиду специфики проектов, где его использование полностью оправдано, ставить в один ряд с другими перечисленными языками — несовсем корректно. Поэтому его учитывать в дальнейшем не будем.

Начнем с того, что Python, Perl и Ruby – языки общего назначения. Они создавались для решения общесистемных задач. Например написание скриптов для автоматизации процессов администрирования и тому подобное.

PHP изначально создавался как встраевыемый язык для разработки динамических страниц. То есть, говоря проще, для создания сайтов, в том понимании, которое мы вкладываем в этот процесс сегодня. Поэтому в данном языке программирования изначально предусмотрены возможности для решения задач, связанных с web. К примеру, тот же DomDocument. С помощью него можно «распознавать» (парсить) HTML. Альтернатива в Python – beautifulsoup. Но, к сожалению, сравнивать DomDocument и beautifulsoup по возможностям и удобству использования просто глупо... Можно привести еще много примеров, но дабы не загромождать статью техническими подробностями, предлагаю на этом остановиться. Итак понятно, что специализированный инструмент гораздо лучше инструмента общего назначения.

Иногда можно встретить ошибочное, на мой взгяд, убеждение, что среди Perl или Ruby программистов гораздо меньше неквалифицированных специалистов. Ну тут и вовсе получается бред. Образно говоря, это все-равно что утверждать, что среди авангардистов меньше плохих художников, чем среди абстракционисов. Глупость? Разумеется! Я вас уверяю, в процентном соотношении и хороших и плохих кадров ровно столько же. PHP разработчиков гораздо больше, чем вообще каких-либо, поэтому и складывается ложное впечатление, что во всем виноват язык программирования. На самом деле качество конечного продукта на 99% зависит от исполнителя, а не от инструмента.

Безусловно PHP не идеален. В нем есть свои минусы, в сравнении с другими языками. Но они носят больше эстетический характер и ничего кроме холиваров (споров не имеющих достаточно весомых аргументов) не вызывают даже среди очень квалифицированных профессионалов.

Но давайте уже перейдем к доводам, которые очевидны и понятны заказчику. Человеку, который чаще всего очень далек от web программирования, а иногда и вообще — от компьютеров.

Во-первых, как уже было сказано выше, количество разработчиков на PHP просто огромное. Даже если хорошего специалиста не получится найти с первого раза, все-равно останется огромный выбор. В случае с Ruby, например, поиски могут стать серьезной и даже трудноразрешимой задачей. Даже если закрыть глаза на качество, просто найти человека, который создаст/исправит сайт «хоть как-нибудь» может быть крайне непросто. У вас много разработчиков на Ruby или Python среди знакомых? А разработчик на PHP есть почти наверняка... Поспрашивайте через своих, и я уверен — найдется.

Во-вторых хостинг. Для тех кто не знает хостинг - это площадка, где ваш сайт будет размещен. PHP поддерживается буквально везде. Перед вами открывается огромный выбор по самым различным ценам. Попробуйте найти хостинг для Ruby или Python и вы поймете, что их практически нет.

Возникает вопрос: для чего же тогда использовать что-то еще, вместо PHP? На мой взгляд ответ достаточно простой. Разработчики выбирают для себя язык наиболее знакомый. Кто-то раньше занимался написанием скриптов на Python. Его выбор будет очевидным. Еще остались разработчики из эпохи, когда PHP не было. И динамические страницы создавались на языке Perl через CGI. Эти люди скорее всего будут использовать фреймворк Mojolicious.

Вполне очевидно, что каждый будет хвалить именно то, что лучше всего знает. Засыпая заказчика непонятными терминами и полувымышленными доводами. Более того, открываются целые студии, где основное конкурентное преимущество «не PHP». И к ним идут люди в надежде получить качественные услуги. Хотя сам факт использования какого-то другого языка не делает продукт лучше или хуже. Увы, далеко не все осознают столь простой факт. Очевидно не все до конца понимают, что PHP, Python, Perl – всего лишь инструменты.