PHP — я бы купил это за доллар

Kate

Administrator
Команда форума
Объективно можно сказать, что в настоящий момент PHP не самый сексуальный и клевый язык программирования. Онлайн-школы не стремятся рекламировать курсы по PHP, мы не видим истории успеха, начинающие с фразы «Я взял в руки учебник по PHP», да и вообще идет мнение, что лучше совсем никак, чем быть PHP-программистом (а если слышим про битрикс, то сразу можно на костер). Тем не менее, я не согласен с этим, и расскажу, почему инвестиция времени в ПХП себя окупает.

Я бекенд-разработчик, в свое время работал на Python и Java, а сейчас работаю на PHP.

5231e2e7a47dce0c76559aaa9809f77e.jpg


В чем клевость PHP

Большинство конференция по Python, начинаются с фразы «Мы собрались с вами тут, так как Python - клевый». И эта клевость чаще всего подразумевается в элегантности языка, большом количестве применений python, и огромного количества готовых библиотек и фреймворков под любую задачу. И это действительно так, ведь синтаксис Python позволяет писать весьма элегантный код, а применяется Python от небольших скриптов и парсеров до космических кораблей.

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

Скорость и качество. Если есть задача собрать на коленке быстрый MVP проект, то можно писать весьма простой код с огромным числом допущений и неявных преобразований. А если все серьезно, то включаем стрик-тайп, обмазываемся код-стайлами и дата-чекерами, которые заставляют сверять типизацию и явно убрать всю магию из кода. В итоге, можно контролировать скорость и качество разработки, отдавая приоритет тому или другому.

Вектор развития PHP. Если говорить уверенно и помпезно, то PHP в настоящий момент идет к тому, чтобы стать такой комфортной-версией Java на батарейках. Сначала была увеличена базовая скорость работы языка, а в 8 версией завезли полноценный JIT-компилятор. Перенимается строгая типизация и добавляются новые фичи из других языков.

На одной из Java конференциях была шутка про экосистему Java: «Java позволяет очень гибко настаривать систему, и ты будешь её настраивать хочешь ты этого или нет». В кейсе с ПХП у нас полная свобода, когда хотим закапываемся и делаем сложную логику, когда не хотим - работаем, как работается.

Фреймворки под любой проект. Если нам нужно разработать достаточно типичный сайт, то можно взять готовую CMS (Wordpress, Magento, Bitrix и так далее). Если нам нужно запустить гибкий стартап, то можно взять фреймворк для RAD-разработки в виде Laravel. А если стоит задача разрабатывать и поддерживать сложную систему enterprise - уровня, то в ход идет Symfony.

Более того, если вообще не стоит задача что-то разрабатывать, но есть необходимость слегка поменять стандарную логику, можно взять готовый конструктор сайтов в виде Shopify, Wix и через их апи сделать кастом. И в большинстве случаев этого будет достаточно.

Преданное и продуктовное сообщество. Так как ПХП никогда не был хайповым языком программирования (популярным был, но не хайповым и трендовым), то тут достаточно постоянное сообщество, которое любит PHP и вкладывает душу, чтобы его развивать. Иногда вкладываются так, словно продали душу, ради PHP.

скриншот с одного известного сайта
скриншот с одного известного сайта
Конечно, на некоторых митах поднимается вопрос, что было бы хорошо найти какой-то мазершип в виде крупной айти-компании, которая будет спонсировать людей, которые развивают язык. Но пока все идет на уровне популярных фреймворков и овнеров cms сиситем (и в общем неплохо).

PHP - это про сайтики?

Представьте, что на дворе 2005-2008 год, несколько парней решило сделать свои проекты. В качестве основы, они взяли PHP, так как ничего другого врпницпе больше не было. Они сделали MVP и запустили проект.

Прошло 12-15 лет.

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

Так как проекты были написаны уже на PHP, вложено в них было много человеко-часов, все разработчики знали PHP, то решено было не искать приключение на 5 точку с переписыванием на другой стек, а просто либо стали развивать свой кастомный фреймворк на PHP, либо перешли на Symfony/Laravel.

Как итог, такие тиер-1 компании, как Avito/Badoo/Mamba/VK/Sber/Mail/Jivo/SkyEng и прочие работают с ПХП и счастливы. Хватит ли теперь смелости назвать теперь PHP про сайтики?

Но они же переводят часть логики на GO?

Если посмотреть доклады с Конференций по PHP (да есть отдельные конференции по PHP), то можно заметить, что многие команды распиливают монолиты на микросервисы и выносят высоконагруженные модули с PHP на GO. А некоторые вообще заморачиваются, что делают отдельные чат-серверы на Go (и они работают!) - https://centrifugal.github.io/centrifugo. Это круто, и вот почему!

Представьте, что вы джун который хочет выучить Go и устроить на него работать? Получится ли у вас это сделать! Нет! Ведь там где используется Go, требуется высокая компетенция и опыт работы.

Однако можно будет устроиться в компанию, где используется и php и go на php стек и при желании практикловаться с GO. А может быть и полноценный переход сделать если это будет интересно с развитием компетенции.

Это же в свое очередь позволяет php разработчикам переключаться на GO и освежать впечатления от работы. Одни плюсы!

Развитость экосистемы PHP

Можно долго рассказывать о том, какой путь PHP прошел за последние 10 лет. Как он эволюционировал и превратился в язык enterprise уровня. Я лишь приведу такой глупый пример.

Если мы возьмем любую книгу по экосистеме Java и Spring, например, Spring Microservices in Action, заменим через автозамену

  • Spring -> Symfony
  • Hibernate -> Doctrine
  • Maven - > Composer
То большинство людей даже не заметит подставы! Ибо используются одни и те же принципы, одни и те же паттерны, одни и те же парадигмы и решения!

Программисты на PHP делают то же самое, что и программисты на более «серьезных» языках, если им это требуется!

Конечно, иногда особенности и ограничения языка вносят определенные коррективы, но в общем подход к работе не сильно отличается от Java.

А что по деньгам

Тут ситуация хитрая. Если мы посмотрим в лоб зп по PHP на hh.ru или хабру, то ситуация будет плачевной - практически все конкурирующие стеки дадут разницу в 15-25%. Однако нужно понимать, что php имеет особенность - на нем огромное количество дешевых вакансий на поддержку сайтов небольших компаний и разработку типовых сайтов в веб-студиях. Эти вакансии и опускают среднюю температуру по больнице.

e99b2635b19c056d88fd506652d52ec8.png

А вот если мы сделаем фильтр по названиям популярных фреймворков (Symfony/Laravel), то тут предложения пойдут на уровне достойных грейдов в приличные места. А если из этого списка предложений выбрать Tier-1 предложения, то местами начинают завидывать и Java программисты.

А если учитывать, что определенная часть php-программистов переходит на GO, то тут ситуация становится совсем хорошей.

Поэтому с оплатой на PHP все хорошо, нужно лишь понимать, что надо повышать свой уровень компетенций.

Перспективы стека

В настоящий момент у PHP нет конкурентов.

Язык Ruby проиграл бой за популярность и перспективные проекты, так как не смог ничего предложить, кроме своего главного фреймворка (который по итогу скопировали и улучшили на других стеках).

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

Стеки Java/C#, как не пытались продемонстрировать, что они тоже легкие на подъем со своим spring boot и .net core, все равно остаются достаточно сложными и дорогими стеками.

Поэтому PHP будет жить.

Что по итогу

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

Источник статьи: https://habr.com/ru/post/563074/
 
Сверху