Я твердо уверен, что для любого языка / платформы всегда найдется подходящий вариант. Я просто думаю, что другие возникающие технологии и тенденции делают PHP вторым или третьим хорошим вариантом для сегодняшнего выбора.

Начало 2000-х

Темные века.

Когда я только начал профессионально заниматься разработкой (для Интернета), у меня было очень мало вариантов; Статический HTML, Perl, ASP (до .Net), PHP или Cold Fusion (без обид, если я пропустил). Разработчики стремились к PHP из-за его простоты, легкой установки и низкого барьера для входа.

Вы можете буквально сесть и написать интерактивную форму, веб-счетчик и т. Д. Без каких-либо знаний в области программирования и получить рабочую страницу за несколько часов. Это было младенчество того, что должно было стать современными веб-приложениями, какими мы их знаем сегодня.

Были огромные возможности трудоустройства для всех, кто мог «делать крутые вещи в Интернете». Я работал в компании, зарабатывающей 52 000 долларов, когда только закончил школу. Я научился создавать многопользовательскую платформу для 400+ сайтов, все на PHP 4, при этом ООП было совершенно неправильно. Код заставил бы меня съежиться при проверке кода сегодня. Проблема была в том, что это сработало! Его скрепляли клейкой лентой и жевательной резинкой, но это сработало!

Я все время слышу истории о разработчиках, которые были в одной лодке со мной, вместе взламывали разные вещи, на ходу разбирались в сети. В то время не существовало стандартов (за исключением магазинов Java / .Net) - все, кого я знал, были ковбойскими программистами, которые просто во всем разбирались.

2005–2010

Средние века.

Я думаю, что это период, когда разработка PHP была действительно на пике. Руби вынюхивала, Python набирал обороты, но все, кого я знал, ищущие работу или нанимавшие разработчиков, искали PHP.

Это время CodeIgniter, с его сверхнизким входным порогом, без обязательных стандартов и без единой строчки модульных тестов. Был там и Cake PHP, немного посложнее, но все же рай для хакеров. Zend и Symfony набирали популярность, заполняя нишу «настоящих» разработчиков, которым нужна была структура, стандарты и надежные кодовые базы.

Это также время Flash и jQuery.

Flash с ActionScript открыл мне глаза на новый способ программирования. Я смог полностью контролировать UX и состояние приложения и даже поделиться кодом с PHP (с AMFPHP).

jQuery начал делать JavaScript доступным и крутым. Это было началом (для меня) разделения ответственности за серверную часть / интерфейсную часть и канарейкой в ​​клетке для начала конца интегрированной разработки полного стека.

PHP по-прежнему был королем для работы / зарплаты. Но теперь вакансии jQuery и Flash появлялись повсюду на досках вакансий. Базовая зарплата PHP начала оставаться неизменной, в то время как новые развивающиеся технологии начали требовать более высоких цен.

Если исключить из уравнения зарплаты стартапов в Кремниевой долине, можно ожидать, что в то время вы получите старшего полнофункционального PHP-разработчика за ~ 100 тыс. (С поправкой на местоположение). Именно тогда так много крупных компаний начали строить свой бизнес на платформах PHP. Таким образом были созданы все устаревшие базы кода PHP, которыми мы сейчас управляем.

2010–2015

Век просвещения!

Начало нисходящего движения для PHP. Я думаю, что во многом это связано со следующим поколением, которое в то время выйдет из школы. Это «дети», которые выросли в Интернете, пошли в школу, чтобы изучить его, и в старших классах занимались программированием веб-сайтов и приложений. У них есть желание учиться, экспериментировать и пробовать новое.

Они считают PHP монолитным устаревшим языком. 75% (я только что придумал это число) кода не соответствует стандартам PSR и не имеет модульных тестов - чего люди теперь ожидают от программного обеспечения. Ruby сделал TDD стандартом в веб-разработке, и разработчики хотят этой стабильности и профессионализма. Я определенно НЕ говорю, что здесь виноват PHP или «плохой» язык, но правда в том, что большинство разработчиков PHP в то время так не думали. Конечно, были сторонники ZF2 и Symfony, которые писали чистый код, имели конвейеры CI и т.д., но это было не подавляющее большинство.

Node.js, React, Angular, теперь все начинают появляться на сцене. В Интернете есть статьи и движения, говорящие о том, как JavaScript захватит мир. Они сказали, что это самая удивительная вещь на свете (хотя она существует уже два десятилетия).

Разработчики (и работодатели) начинают требовать разделения интересов, а также в отношении микросервисов. Heroku, AWS и другие сделали развертывание и горизонтальное масштабирование «простым» и экономически эффективным, создав новую нишу для легких и быстрых приложений.

С таким спросом зарплаты горячих JavaScript-разработчиков стремительно растут. Почти каждый знакомый мне разработчик начинает усердно изучать эти новые просвещенные способы. Все прыгают с работы в поисках новой крутой штуки, над которой можно поработать. Это приводит к тому, что устаревшие приложения остаются в распоряжении более старых разработчиков и тех, кто меньше увлечен новыми блестящими вещами.

Примерно в это же время я начал замечать рост спроса на PHP-разработчиков младшего и среднего звена. Рекрутеры, с которыми я дружил (правда, такое бывает), рассказывали мне, как они могут легко занять места старших разработчиков PHP, но молодые люди иссякли. Мы видим, что все меньше и меньше разработчиков выбирают PHP как нечто, чему они хотят научиться и в чем они станут разбираться. Я искренне верю, что именно в этот момент мы начали видеть эрозию PHP-разработчика.

2015-настоящее время

Конец эры.

PHP все еще жив и здоров, его ядро ​​сильное, и люди, которые посвящают ему бесчисленные часы, потрясающие.

Тем не менее, охотясь на досках вакансий, довольно сложно и необычно найти стартап или молодую компанию, которая хочет построить бизнес на стеке PHP.

Я проработал ровно год в очень крутой компании в Орландо. Их основной код был написан на PHP. Проблема была в том, что она была на 5.3 (7 уже около 6 месяцев стабильно). У них было около 30 разработчиков, все из которых (в основном) были отличными разработчиками. Мы сделали все возможное, чтобы эта монолитная кодовая база работала. У нас были принудительные проверки кода, требуемые модульные тесты и т. Д., Но им все еще трудно найти и удержать хороших преданных разработчиков PHP - их просто не хватает.

На самом деле, я оставил работу по некоторым личным причинам, а также потому, что то, где я сейчас нахожусь, позволяет мне экспериментировать и играть с Angular, React, Node и т. Д.… Я больше не просто застрял в скуке.

Индустрия изменилась. SPA, мобильные приложения и т. Д.: Все они исключают необходимость в традиционных стеках PHP. Конечно, существует ОЧЕНЬ МНОГО API и мест, которые используют PHP, и он будет существовать еще долгое время. Черт возьми, Wordpress все еще управляет огромным процентом Интернета. Заработная плата и спрос на разработчиков JavaScript и других технологий сейчас на рекордно высоком уровне, в то время как PHP опустился в конец списка. Согласно опросу Stack Overflow 2017 Salary Survey, PHP даже не входит в число 25 лучших в мире. Интересно, что здесь, в Орландо (благодаря Обзору заработной платы ODevs), мы видим, что даже в этом небольшом примере у PHP больше всего разработчиков, но одна из самых маленьких зарплат.

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

Сразу резюмирую, PHP я не стучу, я все же думаю, что ему есть место. Но сейчас я раскручиваю сервер узла, если мне нужен API. Наша компания сейчас даже использует Angular для наших внешних интерфейсов Wordpress, используя промежуточное программное обеспечение Node.js между WP api и приложениями Angular в ожидании замены уровня данных в будущем.

Я давно не говорил «давайте использовать PHP в качестве решения», и думаю, что есть много других, подобных мне.

- Фил