Будущее PHP

Підписуйтеся на Telegram-канал «DOU #tech», щоб не пропустити нові технічні статті.

Недавно задумался, что же будет с моим уютным PHP в свете того что происходит на рынке сейчас. Если раньше сказки про «смерть» пыха смешили, то теперь что-то совсем не весело. Конечно, есть 7, а в перспективе обещают еще и JIT-компилятор и кучу других ништяков, но мне кажется, что семерка опоздала. Двое моих коллег уже как пол года ушли с пхп на ноду и на го (лол), только ради того чтобы снова не стать джуном. Я уже и сам понимаю, что если бы начинал сейчас, то скорее всего взял бы js-стек. Смешно еще то, что большинство заказчиков (даже крупных) хотят хайповые технологии в проект, даже не понимая зачем им это. А стартапы так всегда строили на хайповом стеке.

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

Работы хватит на много лет, легаси никто не отменял, только поддерживать легаси код написанный протоиндусами 2000 лет назад, желания особого нет.
Многие мои знакомые говорят, что тренд пройдет, а PHP останется, вспоминая период с RoR (дабл лол), но сейчас тенденции совсем другие. Яркий пример — потуги переписать куски Вордпресса на js.

Символом начала конца, стал мой поход на фриланс биржи, где как я думал, для небольших проектов будут и дальше юзать пых, но такую картину увидел только на СНГ-биржах, что как бы намекает.

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

👍ПодобаєтьсяСподобалось0
До обраногоВ обраному0
LinkedIn

Найкращі коментарі пропустити

У PHP есть как миграция туда, так и миграция в него. Согласись, что именно благодаря фреймворкам, порог входа в PHP очень низкий, притом результат буквально сразу.

Так что умирать он будет долго и счастливо, и когда оставшиеся в стране будут ныть что раньше-то была пенсия, их выслушает сервер под управлением PHP.

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

последнее время пыха развивается дай боже, особенно по скорости, понемногу исправляют косяки заложенные в начале, по скорости дрюкает руби/питон, ( питон хорош, но для веба лучше пыха), вот руби скорее всего помрет. 26% сайтов мира написано только на вордпрессе и никто его переписывать на чем то другом не собирается. А так доля пыхи 80% в мировом вебе. Так что, про смерть пыхи это как про смерть доллара. Стартапы может и строят на чем то хайповом, но как показывает практика потом переписывают на чем то нормальном. А вот бизнесу нужно быстро и дешево, поэтому пыха переживет еще и go и все остальное

Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter

Я все ваши spa, стартапы, жабы, на wordpress натягивал. PHP forever.

Я стартап принципиально строю на пыхе. Вопрос у меня больше именно на счет фронта.

Как по мне PHP уступит часть своей доли таким технологиям как:
1. JavaScript (NodeJs) с одной стороны
2. И Go / Kotlin / Java с другой

Но это будет касаться только новых проектов. Либо в рамках реструктуризации больших систем на микросервисные системы.
ИМХО, мы все вступаем в эру доминирования на рынке JavaScript (в области дешевого некритичного ПО).
Количество JS’еров растет, стандарт JS наконец-то начинает эволюционировать(поворачиваться в лицом) в сторону классического ООР. Также поддержка корутин (generators / async / await).

Как по мне основной недостаток (в это же время и приемущество) PHP — то что он изначально преспособлен только для Short term исполнения.
Второй его недостаток не возможность организции Shared memory и inprocess cache.
А так, PHP — язык как язык. Отлично решает проблемы организации и представления контента. А также разработки облачных решений для малого и среднего бизнеса.

Вывод:
PHP будет еще долго жить. Но спрос на программистов PHP будет падать. )

Совет:
1. Учите JavaScript что бы иметь гарантированный кусок хлеба c маслом.
2. Учите Java + spring / Python + Tensorflow (или другой ML фреймворк) что бы иметь гарантированный кусок хлеба с маслом и икрой.

приходит заказчик такой говорит хочу корпоративный портал а ты ему говоришь легко на пхп — n$ на ноде n в квадрате на джаве и го n в кубе , и тут он такой дааа нам надо откусывать долю у пэхэпэ давайте на джаве пилить, внесем маленькую лепту в уничтожение пхп

Уточнение — с порталами ходят к галере, причем к её продажникам, а не к кодерам. А уж они постараются продавить то что принесёт больше прибыли.

а к фрилансерам джаваскриптерам -кто ходит?:)

Стартаперы. Или те, кто где-то слышал что это круто (но лучше стартаперы)

Чем стартаперы хорошие? Они же за 5 баксов хотят клон фейсбука)

То фигня какая-то, а не стартаперы. Настоящие стартаперы хотят дешевого по меркам их страны контрактора (по крайней мере я так вижу ситуацию)

а шо на жснике галера больше зарабатывает чем на пыхере?

Дольше писать. И если выше з/п — выше и доход, они же процент берут наверняка, а не фиксированный доход с человека. Возможно даже жаву пропихнут

а якщо замовник піде до 3-х галер? дві скажуть n в кубі грошей і джава , а третій скаже n грошей і ПХП. Кого вибере замовник?

Зависит от заказчика. Почитайте о маркетинговом ходе редбула :)

Конечно, есть 7, а в перспективе обещают еще и JIT-компилятор и кучу других ништяков, но мне кажется, что семерка опоздала

Я сам очень рад выходу семерки — на рабочем проекте в продакшене уже достаточно давно и успешно используется 7.1. Дополнительная строгость, много синтаксического сахара, скорость — все это очень здорово, все идет в правильном направлении. Но почему вы думаете, что семерка опоздала? В отличие от революционных релизов 5.0 и 5.3, мне кажется, все остальное — это нормальное эволюционное развитие. И в этом плане у PHP все очень даже неплохо.

ПХП умрет только тогда когда найдется то, на чем разработка будет дешевле...

Интересно, как изменится PHP с выходом JIT-компилятора, над которым довольно активно работают. Что думаете?

Думаю что он так надо, как зайцу стоп-сигнал. Иначе бы давно сделали.
А вот если как на Java, смогут поднять виртуальную машину — то всё, жаба свою долю рынка потеряет, хайлоад уйдёт на пэху.

Иначе бы давно сделали.
А вот если как на Java, смогут поднять виртуальную машину

hhvm.com

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

Иначе говоря, нужен ДЕМОН, который будет подчиняться PHP и держать в себе PHP-потоки, PHP-данные, PHP-классы. Фактически это уже есть, просто оно не на PHP, для пэхи не даётся доступ к базовому процессу. С точки зрения PHP это некое божество, создающее окружения.

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

Мало что понял из твоего описания боюсь у тебя какие-то особенности с пониманием матчасти.

Что тут понимать? Говорит: «react-php хочу». Вот только там многое по-другому, ресурсы не очищаются после респонса так как скрипт не умирает и тут мы натыкаемся на PHP is meant to die.

Справді, стаття за 2013?) так пхп взагалі виключно для сайтів візиток годиться Personal Home Page жеж.

Там и для 2013 ересь немножко, как по-моему. Сначала он пишет про комплексные проекты, которым нужны фоновые задачи, а потом вдруг про shared hosting. Хотя в 2013 сервера уже не стоили огромных денег, да и shared-хостинги позволяли довольно многое, включая тот же крон и ssh.

давно ловили «внезапно» отвалившийся коннекшн внутри консюмеров или так же «внезапно» текучий по памяти долгоиграющий процесс? Статья хоть и старая, но на данный момент всё ещё актуальна.

Я вообще сейчас php вижу пару раз в месяц, и то саппорт — поправить если что сломалось. Я не спорю что в php5 проблемы при попытке запускать демонов были (не знаю что там в 7), хотя вот висит на сервере пара gearman workers с аптаймом 119 дней и нормально выполняют задачи. А статья, в которой говорят про «you don’t have access to ssh, cron or any similar tool in your $5/month shared hosting server» — ну какая там актуальность? В 2013 у меня уже были пара облачных серверов — для разработки и для gitlab. О каком shared hosting вещал автор и каких долгоживущих процессах? Тут уж что-то одно — или долгоживущие процессы, или хостинг за 5 в месяц. Иначе любой язык плохим будет.

Проблема этих всех долгоживущих процессов не в только в самом php — на вход может просто прийти плохой ввод, который автор скрипта не предусмотрел. И тогда возможно всё, от простого падения до бесконечного цикла. Но это всё решается stackoverflow.com/...​y-restart-child-processes. Правда решение требует более-менее опытного программиста, которого не бывает у тех, у кого хостинг по 5.

Свежее что я видел «интегрируйте нам программу на erlang в наш сайт на вордпрессе».

давно, точно не після переїзду на 7.0

для пэхи не даётся доступ к базовому процессу. С точки зрения PHP это некое божество, создающее окружения.

у пыха есть несколько sapi (интерфейсов для «божества создающего окружения»). Т.е. ты сам выбираешь, что будет крутить твою пыху — модуль апача, демон реализующий cgi api, или что-то еще.

нужен ДЕМОН, который будет подчиняться PHP и держать в себе PHP-потоки, PHP-данные, PHP-классы.

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

Don’t worry — be happy 😊
Я починав 10 років тому, PHP вмирав, і сьогодні вмира... А ніяк не здохне.)))

Просто почитайте наскільки велика мадженто платформа😉

Але не читайте що думають про мадженто ті кому її встановили. Мадженто мастдай.

Маджента помре рівно тоді, коли на ринок вийде продукт, який буде простіше, швидше, зручніше ніж вона. До тих пір їй нічого не погрожує

да Битрикс тоже на ПХП написан, поэтому в любом случае..

Ви ще забули про частку ринку і простоту додавання розширень) А якщо глянути на більш велику картинку — суть в тому що маломальсько відомі поширені інструкменти для блогів, магазинів, форумів, сайтів візиток, корпоративних сайтів і т.д. написані на PHP.

Я думаю десь там пишеться щось на іншому «вбивці» пхп, але як можна в серйоз говорити про вимирання php якщо альтернативи зараз немає.

P.s. щоб починати дописувати свої речі на node.js, java, python і т.д. і все це ложити в мікросервіси — вам ще треба до цього дорости.

А коли ви доростите до цього рівня проблем — ви можете матюкатися в сторону синього слоника. А якщо у вас хайлоад в 300 людей в день — то не витрачайте свої сили )) Зусередьте увагу на бізнесі і його потребах.

Я не казав, що треба писати вбивцю мадженти не на PHP ;)

Это, наверно, справедливо для всех технологий в вебе. Поэтому PHP и держит свой кусок рынка.

Я встановив. Після 2 місяців ненависті і несприйняття нової версії — ти просто починаєш її розуміти і навіть радіти )) Але я думаю вам, java-девелоперам все видніше ;-)

Деякі речі на PHP написати на порядок простіше, ніж на Java. Особливо це стосується трансформації та обробки даних. А якщо використовувати універсальні засоби, то тут стає пофігу взагалі, Java там під капотом, чи PHP.

Коли використовуєш «унівресальні засоби», продукт можна одразу викинути. Бо це означає що ти ніхєра не автоматизуєш логіку, лише плодиш бюрократію, а логіку мають реалізувати люди які із тим працюватимуть.

Погоджуся, що за умови низького навантаження і обмеженого кола задач — бекенд краще робити на PHP. На жабі треба робити коли реально треба мати серйозний кеш живого коду і живих даних. Якщо все те саме зможе колись на себе взяти база даних, чи буде реалізовано на PHP (можливо вже є), жаба буде непотрібно через складність підготовки спеціалістів — на пеху вони явно дешевші.

Коли використовуєш «унівресальні засоби», продукт можна одразу викинути.

Бугагашеньки. Поки ви будете писати свої милицепідперті продукти, я вже три рази концепцію поміняю.

Бо це означає що ти ніхєра не автоматизуєш логіку

Це лише означає, що ви не зрозуміли того, що я написав. Логіка тут ні до чого, бо в процесі обробки інформації та її трансформації вона тупа що двері: щось одне перетворити за один або більше кроків на щось інше.
Якщо вам треба автоматизовувати саме логіку (процеси), то тут вам треба переходити на інший рівень абстракцій, наприклад BPM. А тут знову ж таки, різниця між PHP та Java буде мінімальною.

На жабі треба робити коли реально треба мати серйозний кеш живого коду і живих даних

Тут погоджуюсь цілком та повністю. Правда знову ж таки, є нюанси. Цей живий кеш можна реалізовувати на інших системах, наприклад в KVS, а живі дані можуть легко кешуватися DBSM. Все залежить від задачі, яку ви хочете вирішити.

Коли ТИ встановив — то одне. А от коли ТОБІ встановили, а ти в тому не в зуб копитом — ото кілок в дупу бізнесу.

Magento 1 EOL скоро — ще рік здається, тому всі переходять на magento 2. Щодо архітектури системи — одна з найбільш цікавих і добре продуманих систем на PHP.
І всеж нічого кращого з такими можливостями на ринку нема.

Сударь, к сожалению вам про свой код даже прочитать нечего)

Отвечу статьей — medium.com/...​s-php-anyway-672115ab81de

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

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

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

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

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

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

Как по мне, Python достаточно хорош для большинства проектов. Для этого у него как минимум есть фреймворки Django (Для большниства проектов + можно приправить «Django Rest Framework» по вкусу), Flask (если проект «мелочь» или «очень особенный гигант»), Tornado (асинхронщина). Это касательно бекенда в вебе.

Так же Python лезет и во фронтенд, создавая реализации, которые транслируются в JavaScript (Например «TransCrypt» и не только).

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

И особый плюс: если надоест веб, то тебе открыты множество других сфер (Сисадминство, Научные вычисления/искусственный интеллект, Игры и даже «программирование микроконтроллеров» (MicroPython)). Или можешь подружиться с другими языками через реализации типа Jython (java), IronPython (C#) и т.д.

Я люблю пых. Но питон читается намного легче пыха и отсутствие фигрных скобок этот как раз одна из причин, почему так.
Это реально со временем приходит.

Дебажить код без фигурных скобок — то ещё удовольствие. Особенно достаёт количество пустого места, необходимость которого — не более чем религия времён, когда работу учитывали в количестве строк кода.

Вы же текст не пишете каждое слово с новой строчки, а каждый абзац с новым отступом плюс все предыдущие? Так вот, на пыхе компактно писать можно. А на пайтоне — как ни крути, пайтон выходит.

Дебажить код *С* фигурными скобками — то ещё удовольствие.

Дебажить код без фигурных скобок — то ещё удовольствие.

Лол, в чем проблема-то?

привычка свыше нам дана
замена счастию она

©древний писака рифмами

А на пайтоне — как ни крути, пайтон выходит.

И это плохо, потому что..?

Это самый странный взгляд на Питон, который я когда-либо видел.

Ок, я понимаю разные нападки относительно его производительности (довольно объективно) или хотя бы его типизации (субъективно/объективно). Но, епт, приписать Пайтону в недостатки отсутствие скобочек — это...
Дилетантство, наверное. Единственные люди, которые жалуются на это, — разработчики, никогда не пробовавшие на нем писать. Но такие обычно не берутся рассуждать о языке по отдельно взятым синтаксическим элементам.

Пришлось писать свою свою «прослойку», чтобы более логично работать с временем.

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

спрашивали на конфе как-то Расмуса. он сказал, шо его часто спрашивают.
мол, когда была первая версия — надо было максимально упростить использование для Сишников. потому самые старые функции имеют сигнатуру такую же, как у сишных либ.

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

Хорошо что phpStorm показывает подсказки для стандартных функций

разовая настройка инструмента для разработки — не считаю тратой времени

Вот этого абсолютно не понимаю, Рубимайн у меня лагал уже после 10-15 контроллеров и моделей, а после переезда проекта на PHP в PhpStorme с полсотни классов — и все нормик. Хотя казалось бы все IDE ot Idea в сути одинаковы.

Это да. Хер пойми как объяснить чудакам из PHP, что юникод мастхэв.

то вы не в курсе, почему не вышла 6я версия, а сразу вывалилась 7я.

одной из главных целей для 6й версии было внедрить юникод в ядро
несколько эмоциональных заметок
What happened to PHP6?
PHP 6 не будет, не осилили

хорошая иллюстрация, когда разумный рефакторинг провалился из-за своего размаха

Есть примеры культовых вещей типа phpbb или wordpress, написанных на nodejs/python/go/rubby/[other hipster tech]?

культовых вещей типа phpbb или wordpress

я бы сказал «популярных»)
ибо в nodejs/python/go/ruby/ наверняка есть свои культовые вещи (что-то типа генератора сайтов jekyllrb.com , который, если не ошибаюсь, породил одно время моду на написание своих блого-генероторов на других языках — Hakyll (haskell), Ghost (nodejs) и т.п.).

А зачем? Есть куча CMS на php. Зачем делать CMS на node?

Тем более что большинству пользователей CMS реально похер на чём они. Зато не похер удобство выбора хостинга, а хостеры предлагают то что уже популярно.

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

Не могу сказать убьет или нет, но каких-то преимуществ ноды я тоже не вижу. Да, штука хорошая (вроде бы), но:
— всё равно нужно учиться нею пользоваться, опыт браузерного js не совсем релевантен, особенно если это опыт jquery без тех же промисов. И там тоже есть свои фреймворки, которые нужно учить чтобы быть бэкэндщиком.
— не слышал о чем-то, что можно сделать на ноде и нельзя на php. Действительно, делят рынок.

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

У ноды однозначное преимущество — это поддержка асинхронного ввода / вывода. Согласен, она далеко не в каждой задаче критична, но там, где это действительно нужно — PHP, по крайней мере, 5.x ничего взамен предложить не мог.

И да, я знаю о попытках скрестить PHP и libevent. По отзывам коллег-профессиональных PHP разработчиков, получилось не очень :(

reactphp.org php 5.4.0 and upper
користуюсь, проблем не було.

от прямо таки починаючи з 5.4 користувались?

Л — логіка.

по крайней мере, 5.x ничего взамен предложить не мог.
от прямо таки починаючи з 5.4 користувались?

На 5.6 вже все ок було. Раніше я не пробував. Чи 5.6 — це не 5.х?

Есть у меня огромное желание выучить ПхП ,JS и iOS, пока что читаю книги, вопрос берут ли в куда то на стажировку или курсы+стажировка?

Спасибо за совет, буду выбирать что то одно

Ну и что бы совсем просто выбирать — ios это два языка каждый с которых сложнее php

Три. Там внутре ещё чисто сишечка и на плюсах тоже можно считай даже четыре.

сишечка и на плюсах тоже можно

а можно чуть подробнее? Не о самом коде а о процессе релиза такого кода.

Хм... хороший вопрос ну вообще можно начать с того что любой сишный код (вменяемый пез суперхаков) без каких-либо специальных усилий скомпилируется и в objective-c поскольку последний это «чистая ооп» (тут надо правильно понимать термин «чистая ооп» потому как в objective-c она как раз pure) надстройка над чистым си что касается си++ опять же ж таки прямо никто не мешает но тут как в классической истории про сову «нарисуйте сперва круг потом добавьте детали» и всё дело в деталях что именно тебе (здесь обобщение) нужно какое-то сверх-взаимодействие «плюсовых» объектов с objective-c или наоборот очень тонкая прослойка или скажем вообще какой-то отдельный запуск совсем отдельно но внутри программы которая из objective-c только говорит некоему абстрактному коду run() но скомпилироваться вообще должно без проблем просто переименовать may_objc_code.m в may_objc_code.mm и готов уже objective-c++ и можно писать:

MyCppClass * pMyCppClass = new MyCppClass("hello my cpp class");

Ну и конечно не забывать что мусорщик на него не работает и когда всё то таки «плюсовые»:

delete pMyCppClass;

И соотв. процесс релиза не отличается от обычного objective-c «без плюсов».

Или может какая-то хитрость имеется в виду?

Да, objective-c действительно начинался как куча директив препроцессора ещё в доплюсовую эпоху, это я знаю. Думал на текущий момент это уже полностью отдельный язык, но если general c code компилируется в яблоприложение то кто помешает творить странные штуки с арифметикой указателей?
Но вопрос был больше о том — я наслышан что яблоки имеют свой процесс QA для всех приложений попадающих в стор. Думал он и код ревью (хоть автоматом) включает а не простое проклацывание.
И о плюсах — то что внешний модуль можно динамически подгрузить и выполнить, наверное, на любой системе это тоже понятно. А можно как-то совсем без objective-c, swift, etc?

яблоки имеют свой процесс QA для всех приложений попадающих в стор. Думал он и код ревью (хоть автоматом) включает а не простое проклацывание.

Это так они используют глубокий анализ кода.

И о плюсах — то что внешний модуль можно динамически подгрузить и выполнить

Не «динамический модуль» а «плюсавая часть прямо вкомпилирована во всё остальное». Хотя да .so тоже слинковать можно по крайней мере в Mac OS X она же ж внутре фря обыкновенная.

А можно как-то совсем без objective-c, swift, etc?

Можно но API Cocoa/Touch на Obc-C.

Смотреть на «бегущих» из PHP — всё равно что смотреть на убегающих от цунами в последний момент, перед этим стоящих и снимающих на телефон. Да на каждого «ушедшего» прибежит ещё четверо свежевыпустившихся студентов и с полсотни клиентов вайтишных курсов.

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

вот кстати с командой — пхп реально легче найти. если ты не на галимой галере работаешь, то это часто 80% успеха — вовремя набрать норм команду за норм деньги.

С пэхой можно сразу идти на CTO стартапа, если ты знаешь что собираешься делать и зачем. И тогда до синьора можно дорасти за месяц. Но можно и сломаться, я и таких знал.

Но если ради денег, то лучше никогда CTO не становиться — пэха постоянно даёт повод волноваться за безопасность, из-за её популярности от обнаружения дыры до глобальной лавины эксплойтов проходит менее суток. Зато сеньорить можно очень даже запросто, в том числе очень удалённо.

Почему на пэхе скорее разрешат удалёнку: самих кодеров больше, никто не посчитает незаменимым, то есть не боятся что человек куда-то внезапно пропадёт, расслабит булки и т.п., и некем будет заменить.

И тогда до синьора можно дорасти за месяц

Можно и пиздеть поменьше ;)

Я ж сказал ЕСЛИ. Почему-то этот пункт всегда пропускают, заменяя на АВОСЬ.

Двое моих коллег уже как пол года ушли с пхп на ноду и на го (лол), только ради того чтобы снова не стать джуном

Эм, а пхпист в ноде будто не джун? И вообще, имхо, нода — это просто тренд. Точно так же не так давно nosql пихали просто везде

Работали и с этими технологиями долгое время, поэтому и свичнулись.

Ты случайно мне не приходишься родственником?

Автор стал "выгорать".Видимо Вы слишком много работаете/работали/.У меня такое тоже было.Просто забейте на какое-то время на IT вообще!!! Потом вернетесь с новыми силами!

Потом вернетесь с новыми силами!

Когда кушать захочется :)

ничего не будет. Яваскриптовое безумие закончится как рано или
поздно заканчиваются все модные тренды. PHP был остается самым эффективным языком разработки веб приложений.

Сомневаюсь что тренд на Js пройдет, а с выходом WebAssembly (в более менее юзабельном состоянии) этот тренд получит толчок в развитии и росте.

разработка на JS более трудоемка и никакие костыли тут не помогут. Хотя бы потому что бекенд все равно надо писать. Как ни крути а собрать html на бекенде и выплюнуть целиком в браузер гораздо проще и ничего больше для этого не нужно. И для подавляющего большинства сайтов этого более чем достаточно — пользаку сайта пофиг что там за язык програмирования. Просто пока тренд — разрабам удается впаривать заказчикам что js это круто иначе ты — лох колхозный. Хотя никаких преимуществ js не дает — только тормоза в мабиле и дергающийся за каждым движением мышки интерфейс на десктопе.
Именно поэтому спрос на фронтэнд програмистов сейчас — там где управится один PHP программер надо троих мазохистов на каком нибудь ангуляре.
Единственно где оправдан js это какие нибудь браузерные игры где почти вся бизнес-логика и данные на стороне клиента. Ну еще соцсети — где там мгновеные сообщения и все такое — но таких сайтов доли процента.
Попросту говоря js займет подобающую нишу как и все предыдущием модные штуки которым пророчли великое будущее. Nosql базы например. Поигрались и поняли что на серьезном проекте а не на чатах и кешах, реляционные Бд не обойдешь.

Без JS конечно можно, но очень сложно будет продать клиентам такое решение, посмотрел скриншоты Вашей разработки Zippy ERP.
Вам разобраться с JS и CSS нужно прям обязательно (знания boostrap c jQuery плагинами недостаточно)

я не сказал совсем без js

Вам разобраться с JS и CSS нужно прям обязательно (знания boostrap c jQuery плагинами недостаточно)

вообще то более чем достаточно. Для учетной системы и подобных решений — достаточно с головой.
А пользаку, вбивающему накладную, до заднего места сколько там яваскрипта.
И тем более этого достаточно для более простых сайтов коих подавляющее большинство.
А если мне понадобится продвинутый дизайн я найму специалиста дизайнера или верстальщика. Но в любом случае никакие яваскриптовые фреймворки и что ли-бо сложнее jquery не понадобится.

Но в любом случае никакие яваскриптовые фреймворки и что ли-бо сложнее jquery не понадобится.

В 2005-2008 так и было ))

Было и остается.
А что изменилось? Люди как то по другому стали инетом пользоватся?
Не изменились в том числе попытки разрабов найти некую серебряную пулю чтобы писать веб приложения быстро и с минимальными усилиями.
То давай js на сервер перетащим. то давай бизнес-логику на клиента. И т.д. и т.п.
Завтра убедившись в несостоятельности попыток придумают что то еще. Это и есть модный тренд.
Сегодня в моде красные штаны завтра желтые тапки.

Вот мой пример ERP: www.screencast.com/t/QEu8DrKpGp подобное проще продать клиенту.

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

А в данном случае клиент скажет а какого хрена мне надо ставить в браузере флеш плеер чтобы просто посмотреть демку или что вы там хотели показать.

Ну чего, я бы сказал года до 2010

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

Ангуляр це ніразу не заміна PHP, а доповнення, при чому досить класне. На ангулярі за пару годин робиться динаміка на UI яку на чистому PHP не зроби а на JS+PHP можна но довго.
А от node навряд хоч якось витіснить PHP.

во первых далеко не несколько часов. А во вторых — на фига она эта динамика для большинства сайтов?
Какая такая динамика нужна например для DOU на который вы смотрите сейчас?

Ну на DOU динаміка не потрібна, але і Ангуляр і саму архітектуру сінглпейдж аппки не тулять вот прямо всюди.
А потрібна вона на складних формах, на адмін частинах і тд. З ангуляром готовими компонентами (до речі менедмент ui компонент через bower крут) можна досить швидко набудувати дуже кльові фічі.
Це звичайно не означає що це все не потребує бекенда, але просто технології треба застосовувати для задач які вони найкраще вирішують.
Вот ангулар допомогає будувати складний UI, нода прекрасна для мікросервісів, nosql для кешів, еластік для пошуку, php для швидкої розробки вебаппок, і тд, а головне — нічого на заважає використовувати все це в одному проекті якщо в вас є така потреба, або не використовувати :) якщо задачі не потребують.

Ну просто навскидку — на ангулярі я за 20хв зроблю дропдаун з пошуком, за 10 притягну uitools і зроблю валідацію і форматування телефонного номера, а Ви на чистому PHP+JS скільки будете таке робити? :)

Ну на DOU динаміка не потрібна, але і Ангуляр і саму архітектуру сінглпейдж аппки не тулять вот прямо всюди.

В том то и дело что пытаются тулить хотя она не нужна в ПОДАВЛЯЮЩЕМ большинстве случаев.
О чем и речь.

Ну просто навскидку — на ангулярі я за 20хв зроблю дропдаун з пошуком, за 10 притягну uitools і зроблю валідацію і форматування телефонного номера,

валидация делается патерном в атрибуте поля без всякого яваскрипта. А для поиска полно плагинов на jquery. Тот же search2 — строка кода и все дропдауны с поиском.

JS не ограничен одним jQuery

Спасибо кэп.
Речь о том что для 99 сайтов из ста нафиг не нужен js за пределами jquery. А бекенд все равно нужен. И старый добрых пых с этим отлично и дешево справляется.

Например отображение 1000+ записей с infinite scroll, добавить в накладную товары из большого перечня товаров, который необходимо отфильтровать, т.е это все нужно, чтобы увеличить скорость отклика приложения

Это кто ж в здравом уме будет показывать клиент тыщу записей? И как вытаскивание товаров на клиента увеличит скорость отклика? А если там тысячи позиций ? Все потащите на клиента? Вы серьезно думаете что яваскрипт (особенно на мобильном девайсе) отфильтрует быстрее промышленной реляционой СУБД.

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

Это кто ж в здравом уме будет показывать клиент тыщу записей?

используя компонент грида для подгрузки данных во время скроллинга, активные только записи которые видны пользователю.

И как вытаскивание товаров на клиента увеличит скорость отклика? А если там тысячи позиций ?

увеличит скорость работы с базой особенно когда данных много (посмотрите демонстрацию которую я предоставил, там есть наглядный пример добавления товаров)

используя компонент грида для подгрузки данных во время скроллинга, активные только записи которые видны пользователю.

Используйте что хотите — не будет клиент Листать тыщу записей.
А если там милион — будет скролить до посинения? А если там фильтр то он должен обеспечить вывод актуальных данных а не вывалить тыщи и сказать — а дальше у меня клево скролится.
И опять же если вы подтягиваете аяксом вам все равно нужен бэкендэнд. И что вы выиграли? Писанина API на каждую таблицу это никак не выигрыш а кагбе наоборот.

увеличит скорость работы с базой особенно когда данных много

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

По сути Вы правы, для нашего клиента можно делать и так, платят все равно мало, лишь бы работало да побыстрее )) Но я так не хочу.

да побыстрее

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

— Американскому заказчику делаешь несложный UI с поддежкой только десктопов от 1280 шириной. Yes! This is amazing! Thank you!

И наш бы сказал и не спорил за цену. Кто вас заставляет делать то что не просят?
Разница в том что иний заказчик спорить не станет — просто не заплатит за то что вы сделали то что он не просил. И правильно сделает.

Кто вас заставляет делать то что не просят?

Когда просят сделать чтобы на айфоне нормально отображалось — нужно взять конкретную модель айфона как у заказчика и сделать только под неё? Это говнокод называется. И говноспециалист, который так делает.

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

Но ихний клиент не станет платить пока вы не обоснуете почему для работы его сайта (а это как правило часть бизнеса) нужно переплатить за фронтэд что то кроме необходимого дизайна.
Конечно гугл с его милиардами может тратить деньги на что угодно начиная с ноды и кончая ангуляром (или реактом — не помню что она там пиарит).

Вы хотите как вы хотите и как умеете.

Из ваших комментариев такой вывод можно сделать за вас. Вы не хотите изучать современный фронт и хотите делать как умеете.

Ихние програмисты делают то чего хочет клиент и за что он платит.

Ихние — это из страны Говнокодии?

лиент лох который ничего не понимает

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

Пофиг что дороже и неудобно.

Неудобно что кому? Неудобно другим тру-программистам выучить какой-то один современный фреймворк?

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

Так я обосную. Приложение на нормальном фреймворке с restful-бэкэндом по ощущениям будет в два раза отзывчивее чем MPA на голом пхп. Это так же важно, как и дизайн. И забудьте о сайтах. Я лично никогда не буду даже говорить о сайте. Если клиенту нужен сайт-визитка или блог или, не дай бог, «портал» — я просто жму decline и выбираю причину «not interested».

Конечно гугл с его милиардами может тратить деньги на что угодно начиная с ноды и кончая ангуляром

Гугл пиарит angular и typescript. Но выбирают angular не поэтому, а потому что лапша из jquery имеет пределы применения, за которыми костылей становится больше чем собственно нужного кода.

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

Это верно, и спор, собственно, как раз об этом — для многих ли Веб-решений действительно с точки зрения бизнеса оправдан динамичный отзывчивый интерфейс, который потребует выхода за пределы применимости условного jQuery?

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

у самого есть похожый проэкт
зависит от задачи и доступных ресурсов, иногда это оправдано
самому пришлось выбрать именно вариант с выгрузкой пару тысяч строк в дататейбл — чтобы разгрузить базу от постоянных запросов на фильтрацию
если есть база с приличным массивом данных для работы + много юзеров которые активно юзают эти данные — при одновременной работе и сложных запросах на выборку — база легко может начать подвисать
поэтому легче показать юзеру прэлоадер на пол-минуты при загрузке данных, чтоб потом он без тормозов пользовался актуальными данными какихто пол часа час, до следующей перезрузки страницы

Если юзеры просто юзают данные, то да. А если они еще все и постоянно редактируют, обновляют общую базу данных с различными правами? (бухгалтерская программа или ERP)

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

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

datatables.net/...​_sources/server_side.html

Это не провал клиента что вы «тупо прикрутили», не подумав о крайних случаях.

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

И для подавляющего большинства сайтов этого более чем достаточно

На ноде это тоже несложно сделать, шаблонизаторов валом (и не нужно спрашивать зачем — я не знаю).

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

Единственно где оправдан js

Любое веб-приложение, которое активно работает с пользовательским вводом.

вводом куда? Что то мне подсказывает что ввод данных предназначен для бекенда с субд или типа того. Как и вывод.
И зачем мне для этого яваскрипт на клиенте? Кроме валидации с которой и HTML5 справляется.

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

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

Даже вот доу, и тот аяксом новый комметарий шлёт

На любой товар найдется покупатель, даже на неотзывчивую ERP/CRM систему.

Отзывчивость — это даже не сотая проблема в разработке систем класcа ERP.

Написал комментарий — перезагрузилась вся страница, че такого.

При нынешних скоростях инета действительно нет разницы с перезагрузкой страниц..
Основные тормоза при перезагрузке как раз потому что браузеру приходится перелопатить мегабайты яваскрипта. Если его свести к минимум — будет летать.

Но пример некоректен — сацсети составляют мизерную долю в общем количестве сайтов. И яваскрипт там, как я уже писал, в основном оправдан.

Отзывчивость — это даже не сотая проблема в разработке систем класcа ERP.

Это пока клиент не увидит отзывчивой и красивой альтернативы. История точно как с SSD — попробовав, никто на HDD возвращаться не хочет. Хотя тоже «та дорого», «та недолго живут», «да и так нормально».

Основные тормоза при перезагрузке как раз потому что браузеру приходится перелопатить мегабайты яваскрипта. Если его свести к минимум — будет летать.

Ну, если пользоваться компьютером 10-летней давности и IE7 — то да. Chrome на современном железе перелопачивает мегабайты жаваскрипта довлльно быстро. И тормоза бывают не от js, а от DOM и манипуляций с ним. Разработчики современных фреймворков уделяют много внимания как раз этой части.

История точно как с SSD — попробовав, никто на HDD возвращаться не хочет.

Во первых далеко не все пробуют не только потому дорого а потому что подавляющее большинство пользаков вполне устраивает HDD. Они даже не понимают разницы. Вы вообще отдаете себе отчет что подавляющее большинство пользователей компьютеров и интернета — не айтишники и понятия не имеют что означает JS, PHP, SSD? И для ихней работы, пользованию вордом или скайпом, это не имеет значения.
Так же и с сайтами.

Во вторых пример был бы корректен если бы ваш клевый язык на фронтенде заменил бы бекенд. Но он не заменяет. И в 99 случаях из ста не предоставляет пользователю никаких существеных преимуществ в использовании интернета как повседневного инструмента. В этом и суть.

Chrome на современном железе перелопачивает мегабайты жаваскрипта довлльно быстро.

не на мобильных девайсах коих все больше.

И тормоза бывают не от js, а от DOM и манипуляций с ним.

а что еще там делает яваскрипт? Решает системы нелинейных уравнений? в том то и дело что ворочает DOM без видимой пользы для конечной задачи приложения —
положить данные в Бд на бекендес помощью старого доброго пыха.

Разработчики современных фреймворков уделяют много внимания как раз этой части.

Ну да — создать гемор в виде очередного фреймворка а потом героически его преодолевать. Помню восторги от несравненной архитектуры первого ангуляра и безграничных его возможностях. Вышел второй — все переделали. Шо ж это за такая клевая архитектура была которую пришлось слить в унитаз и переписать наново.
Теперь каждая вторая статья на хабре про некий vue который делает то же что ангуляр только на порядок проще (правда полезнее с моей точки зрения он не становится — так и не придумал куда его могу прикрутить в своих проектах чтобы убедить заказчика что стало лучше. )

Я один раз имел несчастье «курировать» дешевого фрилансера, который вот прям как вы доказывал что фреймворки не нужны, у него всё своё. Только речь шла о бекенд-фреймворках. Проект с ним не просто не взлетел, заказчик отказался от идеи и проект закрыл. Потому что чел только ныл что верстальщик плохо всё сверстал и выдавал в качестве результатов жесткие баги.

Шо ж это за такая клевая архитектура была которую пришлось слить в унитаз и переписать наново.

Фреймворки по-вашему боги пишут? Или провидцы? Все взрослые фреймворки были изрядно переписаны и абсолютно не похожи на первые версии. Точно так же как современная компьютерная мышь не похожа на первый прототип. Сделали, потом придумали как сделать лучше, потом ещё как лучше. Популярность vue понятна — он прост в синтаксисе и по результатам тестов очень быстрый.

Вы вообще отдаете себе отчет что подавляющее большинство пользователей компьютеров и интернета — не айтишники и понятия не имеют что означает JS, PHP, SSD?

И тем не менее, даже не очень разбираясь в железе, они купят то что лучше в пределах доступных средств. А уж разбираясь — тем более не будут отставивать устаревшие и медленные технологии. Или вы хотите сказать что Intel, AMD, Nvidia работают только на айтишников? Другие же не разбираются, зачем они будут менять видеокарту или процессор.

Во вторых пример был бы корректен если бы ваш клевый язык на фронтенде заменил бы бекенд.

При чем здесь бекенд? Мы в ветке про фронт.

Для этой задачи не нужен single page application. Как раз, с AJAX запросом и обновлением ячейки таблицы прекрасно справится и «небогоугодный» jQuery.

Другое дело, если пытаться реализовать в браузере некое подобие Excel — вот здесь уже без продвинутого фронт-енда, действительно, не обойтись. Но и здесь поддержу Леонида — такой функционал нужен в единицах процентов от всех создаваемых Веб-приложений.

Вообще слабенький наброс

а вроде ничо так вышло. Я задолбался читать

i.imgur.com/3HG46JR.png
Не вижу проблемы

Уж на что примитивны цианобактериальные маты, которые появились в архее (от 4,0 до 2,5 млрд лет назад), а и те и преспокойно живут себе до сих пор а Австралии, не претерпев никаких особых изменений. Или вот Internet Explorer..
Не вымрет это ваше РНР, займет подобающую нишу и будет там себе перерабатывать свежие идеи интернет-магазинов в компост из вордпресса.

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

Вторая начала появлятся с выходом PHP7

почему не 5.3?
PSR, autloading, SPL

Тому що через скудність типізації було тяжко дизайнити дотримуючись SOLID, а типізація фактично була тільки на рівні анотацій які підтримувала IDE. Це до речі одна з причин появи hack+HHVM а поява php7.1 напевно буде причиною смерті hack.

А можна приклад? Наче для дотримання SOLID достатньо мінімуму і взагалі це не дуже пов’язано з можливостями мови, скоріше з тим, як напише код программіст і як цей код буде розвиватися далі.

Так можна, наприклад навіть зараз в PHP не вистачає дженеріків, до 7 не можна було використовувати примітивні типи і тип який повертає метод.
Це якби трошки заважає повністю імплементувати згнідно SOLID, звичайно є воркераунди типу анотацій в коментах, які підхоплює IDE, але це все ж таки не конструкція мови. Також трейти зявились тільки в 5.4

Це якби трошки заважає повністю імплементувати згнідно SOLID

я щось не можу зрозуміти, як type hinting з прімитивами, трейти або дженерики(це ж мова про <T>?) заважає структурувати класи згідно SOLID.
Interface, public/private/protected, extends є з версії 5.
І навіть замість new <T> можна створювати экземпляр за ім’ям класу(хоча не впевнений, що дженерики мають відношення до SOLID).

Та можливо з ранніх версій, але тепер це в більшій мірі. Наприклад зараз можна створити інтерфейс і типізувати його краще. Ще один крок до джави :)

Типи і дженеріки мають звичайно, бо в інтерфейсах ти можеш задекларувати вхідні і вихідні типи методів.
Зараз в PHP використовують костиль типу анотацій (при чому в коментах), які дозволяють підказати IDEшці елементи якого типу в масиві (наприклад). Але по суті ти можеш повернути в методі будь-що і синтаксис мови в php5 цьому ніяк не суперечить.
Якщо коротко, створюти контракт через інтерфейси краще в строго типізованих мовах. Вот php7 має бенефіти строгох типізації для чіткішої побудови архітектури апки (за викобченням дженеріків) + там де це не потрібно(темплейти наприклад) можна користуватись бенефітами автоприведення до типів.

Я всех вас ненавижу за то что обижаете мой любимый пхп.
Учите и переходите в питон. Синтаксис языка реально глаз радует.

Я бачу, що очевидний фактор ринкової долі PHP не зовсім очевидний для розробників: мода.
PHP був зовсім какою, коли веб вже існував десятки років. Коли був Perl, коли був С++, і все це в досить зрілій стадії. Коли cbi-bin — то був мейнстрім. Але переміг PHP. Переміг через легкість старту.

Так само колись Bootstrap переміг Html — він дозволив писати одразу нормальну шнягу, не вивчаючи фундамент взагалі. Коли він здохне — мабуть лише коли щось інше займе нішу.

Проте PHP зробив те, чого від нього вже майже не чекали — оптимізацію пам′яті та швидкості. І це дозволить продовжити тренд ще на добрий десяток років. CMS вже нікуди не дінуться. Мільйарди статей з інету вже нікуди не зникнуть.

І ще ключовий аспект: форумні движки написані на PHP. А це означає, що величезний тренд тих хто ледве війшов у IT, проте використовує його можливості монетизації — будуть працювати саме із PHP, і що коротший термін життя їхніх проектів, то менше їм потрібно щось фундаментальне.

Простий приклад — спробуйте знайти нормальний хостинг під Java-проект, чи під той самий Go, чи тим більше під .Net — усюди якісь підводні камені. А під пеху — та просто кожен перший! І все вже працює «із коробки», бери та плоди.

Зрозумійте! На лайно є попит. І допоки пошукові сервери жертимуть лайно — їх будуть цим годувати.

Нашел бесплатный хостинг на 3 месяца для ASP.net, так же на Digital Ocean дроптелы для .net core.

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

Это как с MySQL — ведь откровенно не лучшая база. А порог перехода на другую достаточно скромный. И тем не менее, огромные проекты крутятся на Мускуле. А всё почему? Сначала дефолтный выбор, потом лень менять.

По мускулю очень много гайдов, написанных «человеческим языком», вот и выбирают, чтобы 500 джунов за 300$ быстро клепали.
Ради интереса, про какие именно другие базы пишете?

Я думаю что имеются ввиду другие популярные rdbms- такие как Oracle, SQL Server, PostgreSQL, порог входа для них совсем чуть чуть выше чем для MySQL- однако они не столь широко распространены. Возможно, потому, что за первые две- надо отвалить не мало $$$

мне наоборот кажется что хайп «ну теперь точно РНР умрет — ведь есть node.js/go/etc..» спадает
под 99% веб задач он оптимален
на западе развивается — даже в appl-ах вакансии есть (раньше не было)
значит и сюда вакансий отсыпят

Якщо GO можна зрозуміти як варіант для переходу — то нода це для мене просто альтернативний інструмент для мікросервісів, на ноді дуже швидко замучешся писати хоч якось комплексний серверсайд.

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

четыре как бы
PHP 5.3 PHP 7 Python 2.x Python 3.x
и еще старый мерзкий табурет PHP 5.2, но не в счет

И киллер, чтобы отстреливать тех кто не в состоянии перевести проект на совместимость с PHP7.

аж интересно стало, шо ж там такого необычного в 7й

Оффтоп. Поищи стопиццот лонгридов на эту тему. В том числе официальные доки достаточно лаконичны.

Если кратко, то устранили с пару десятков синтаксических непоняток, бывших изначально бредовыми. Но нашлись те, кто на них завязал свой код, и теперь впадло прогнать тесты и разрулить несколько строк.

Немного изменились дефолты настройки. Ну это уже дело поправимое в конфиге. В частности, с $GLOBALS есть определённый геморойчик.

В том числе официальные доки достаточно лаконичны.

с них-то и начал, но «changes that breaks compatibility» оставили ощущение «эээээ, нафига на такие нюансы надо было завязываться вообще?»

поищу те самые лонгриды, может, там ответ будет?
буду благодарен, если кинешь прямую ссылку на какую-то попоболь.

Лол, а шо на счёт PHP 5.4, 5.5 и 5.6?

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

5.3 уже давно не поддерживается, вроде даже секьюрити патчи не выпускают (могу ошибаться). Это мертвая ветка.

я в 2008 встречал хостинги с РНР4
достаточно часто, чтоб офигеть

было дело, да. Но это чисто для лигаси проектов, которые на 5-ку не перешли. А там разрыв ого-го был. С 5.3 и 5.6 не сравнить.

зрада нахлынула? пых не умрет пока будет самым дешевым

последнее время пыха развивается дай боже, особенно по скорости, понемногу исправляют косяки заложенные в начале, по скорости дрюкает руби/питон, ( питон хорош, но для веба лучше пыха), вот руби скорее всего помрет. 26% сайтов мира написано только на вордпрессе и никто его переписывать на чем то другом не собирается. А так доля пыхи 80% в мировом вебе. Так что, про смерть пыхи это как про смерть доллара. Стартапы может и строят на чем то хайповом, но как показывает практика потом переписывают на чем то нормальном. А вот бизнесу нужно быстро и дешево, поэтому пыха переживет еще и go и все остальное

ну руби и рельсы уже с 2005 года умирают, да вот все никак... разве что на волне популярности Ноды и будет спад популярности РОР, но посмотрим что будет в 2020, когда выйдет руби 3.0. Все таки обещают тройку сделать в три раза быстрее чем вторую версию

На скільки я пам’ятаю, PHP створювалась, в першу чергу, для спрощення написання шаблонів для веб-сторінок. На сьогодняшній день, очевидним є факт, що з цією задачою значно краще справляються JS-фреймворки, причому вони дозволяють не лише спростити написання в’юх, а й додають абсолютно недосяжні для PHP можливості.

Ви хочете сказати, що PHP зможе відчути, наприклад, коли користувач проведе мишкою над певним елементом на веб-сторінці?

вы же в курсе, что тут про бекенд речь? в курсе, правда?

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

Тему створив PHP-шник й справедливо побоюється, що скоро у нього не буде нормальної роботи. По-вашому — значить це тема про бекенд? По-моєму, про «чи варто переходити на JS, і по яким причинам».

согласен, можно и так трактовать.
я понял автора именно в формате «свичнуться на другую платформу»

Лол, нет) Тема, есть ли будущее у PHP там, где он используется сейчас. А сейчас только на PHP фронтенд делают разве что упоротые люди.

[trolemode]
omg. а что в 21 веке еще не утранили это древнее как г*** мамонта- разделение на бекенд и фронтенд???
Всё будет JavaScript
[/trolemode]

Наверное, даже если со страницы напрямую делать запрос в БД, все равно БД будет бэком?

ничто не ново под луной.
Помню один альтернативно одаренный парень говорящий на хинди( на предыдущем проекте)- умудрился сериализировать десятки мегабайт данных и прятать их в хидден поле- аргументируя это тем что зачем базу трогать- данные меняются редко- проще на каждый чих 15MB страницу пользователю отдавать на которой доступно только 20 записей и пейджинг реализованный на сервер сайде на основе того самого хидден поля.
Как вспомню- так вздрогну.
То-то пользователи жаловались — что сайт медленно работает.

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

а потом смотришь на код который фронт энд пишет для сервера и ужасаешься, впрочем наоборот обычно тоже не лучше

Да не надо пыху это «чувствовать». Потому что пых — серверный язык. Уже давным давно разделили бек и фронт, на беке напиливают API, а фронт его дёргает и всё было бы нормально, если бы JSбои не захотели полезть в чужой огород — на сервер. Ну полезли, появилась нода, но, как по мне, она существенно проигрывает пыху во всём и применима только как микросервис для какого-нибудь висящего в памяти демона (да и это с выходом пыхи7 стало ненужным, т.к. утечек памяти стало существенно меньше и демоны на пыхе 7 прекрасно и долго живут).

Конкуренты у пыха — это языки общего назначения, потому как пых долгое время был исключительно вебовым языком и прогрывал всем остальным значительно. С пыха во все времена спрыгивали на джаву (спринг) с симфони, например. Которая вдохновлена спрингом. Или с йии/ларавела на руборельсы, где тоже много магии. :) На пайтон спрыгивают. Но на JS — нет. Пехапешники учат JS, становятся фуллстеками, но не забрасывают пых полностью. Целиком переехавших серьезных проектов на ноду с пыхи я не видел ни разу. Даже в стартапах, где смузисосы с жиденькими бородёнками сидят за макбуками и гладят своего ручного Бобика, которого им позволено приводить в офис, пишут на ноде только маленькие части. Например, чатики, где надо через сокеты общаться или еще что-то такое. А основная логика — всё равно либо пых либо другие нормальные языки вроде джав/рельс/питонов.

и применима только как микросервис для какого-нибудь висящего в памяти демона

немного злобно, но точку зрения поддерживаю :)

Я перейшов з PHP (4 роки стажу) на TypeScript і пишу на ньому бекенд під ноду, і фронтенд під Angular 4. На PHP взагалі нічого не пишу, бо немає ні потреби, ні ностальгії.

пишут на ноде только маленькие части. Например, чатики, где надо через сокеты общаться или еще что-то такое.

Згоден, зараз про ноду найчастіше згадують саме в такому контексті, не даром я створив тему Давайте поговоримо про ES2015+ OOP-фреймворки під Node.js. Як я і написав у цій темі, думаю що досить скоро ситуація може відчутно змінитись...

Вы можете писать на чём хотите, но вы — не большинство. И, судя по вашему профилю в linkedin, вы этим большинством не хотите быть и намеренно отметаете всякие рыночные карьерные перспективы. Один лишь только этот абзац уже о многом говорит:

Прохання до рекрутерів: «Будь-ласка, не запрошуйте в мене резюме англійською мовою». Я програміст, а не філолог, не шукаю роботи, де в мої обов’язки входить, наприклад, написання документації англійською мовою, чи усне спілкування англійською. Також не розглядаю варіантів переїзду в іншу країну.

Так вот, вы можете писать на TypeScript, CoffeeScript, хоть на VBScript за бесплатно. На гитхаб коммитить или складывать в стол. На нищих украинских заказчиков, которым надо сделать магазин/сайт-визитку типовую и поскорее «чтоб работало». Им бы подошла CMS, но можно жи сделать на Angular+Node и всякие другие хайповые JSы заюзать! Выйдет в несколько десятков раз дольше, чем установить CMS, украсть тему с themeforest и отчитаться на следующий день о выполнении. Пишите на чём угодно, только не меряйте всех по себе. На пыхе есть симфони и там водятся 3к+. За инглиш хорошо досыпают дополнительно, за работу в команде, лидство и т.д. JSбои не востребованы в качестве людей-оркестров. Фуллстеки всё еще — это _бековый_язык_+JS, а не JS на фронт+JS на бек.

А основная логика — всё равно либо пых либо другие нормальные языки вроде джав/рельс/питонов.

Смехуечек ради, я бы убрал слово «другие» из этого предложения.

Пехапешники учат JS, становятся фуллстеками, но не забрасывают пых полностью

Истину глаголишь, брат

Ой вот это вот сравнение хрена с пальцем просто обожаю.

додають абсолютно недосяжні для PHP можливості.

Да, на пхп трудно написать то говнище из коллбеков над коллбеками, которые js-макаки называют кодом.

Как там обезьяны — не в курсе, но это уже прорыв, если они в принципе программировать научились :)

А вот нормальные PHP разработчики не смешивают доступ к данным и рендеринг HTML уже лет надцать как. В современных PHP фреймворках применяется такая же архитектура Model-View-Controller, как и в «конкурирующих» технологических стеках.

говнище из коллбеков над коллбеками

Тебя вчера разморозили?

Что бы PHP ушел, должна появиться хорошая альтернатива. Из имеющихся, Ruby on Rails — специфический синтаксис + на сегодня уступает по производительности 7; Python-Django — опять же синтаксис — не все кто привык работать с С подобными языками его воспринимают, хотя он очень даже ок, и скорость разработки высокая, но по производительности тоже уступает; Node.js — не под все задачи, которые охватывает PHP, хорош, под SQL базы на нем писать на любителя; .NET, Java = enterprise. Поэтому вряд-ли PHP куда-то денется в обозримом будущем

Что бы PHP ушел, должна появиться хорошая альтернатива

Она уже появилась и отжимает долю у пхп — это go.

да ладно ))) попробуйте переписать средний проект с пхп на гоу, никто за такое и не возьмется

Пока отжимает только у node и python. В идеальном мире останется лишь Go и PHP. А JS на фронте полностью заменит css )))

php будет жить вечно даже если его перестанут поддерживать и обновлять (что есть не реально) ибо большинство сайтов построены на нем.

О флеше что-то похожее говорили ))

cobol, netware, flash, IMS, Delphi, VisualBasic, Symbian, Windows Mobile — Всі колишні лідери на ринку. І де тепер вони ? список можна продовжити

Если бы я хорошо знал кобол, то сидел бы не на DOU, а форумах типа «куда деть мешок денег».
А почти все технологии, что вы перечислили, были за одной конторой (в смысле за flash — только Adobe, за Symbian — только Nokia) и проприетарные.
Т.е. на развитие этих технологий сообщество влияло аж никак.

моя думка інша. Будь яка технологія помирає, НО залишається сапорт старих систем. Тому

php будет жить вечно

якось так собі аргумент

Это все технологии, которые так или иначе прекратили развиваться, потому и перестали быть лидерами рынка. А сейчас PHP может всё из того, что мог раньше, и постоянно появляются всё новые и новые возможности. 80% рынка + постоянное развитие = 80+% рынка в будущем.

Если брать апворк, где говна хоть лопатой, то да -бeз js и wordpress будет тяжко(против js ничего не имею, скорее смешит хайп вокруг него). Если же в более менее хорошей компании, на среднем/крупном проекте — не вижу смысла парится. Думаю, вы лучше меня ориентируетесь

Интересно, что в обоих случаях картина меняется на противоположную, если добавить фильтр по опыту 5+

JS-а очень много + mobile. UpWork старается развивать то, что пользуется спросом support.upwork.com/...​Programs-for-Freelancers

— Web Development: Ruby on Rails; Python using Django; Javascript using Angular, React, or Backbone; PHP; WordPress
— Mobile Development: iOS using Objective-C, Android using Java
— Admin Support: Data Entry, Web Research, Salesforce Administration, Virtual Assistance
— Customer Service: Phone/Email/Live Chat Support

У PHP есть как миграция туда, так и миграция в него. Согласись, что именно благодаря фреймворкам, порог входа в PHP очень низкий, притом результат буквально сразу.

Так что умирать он будет долго и счастливо, и когда оставшиеся в стране будут ныть что раньше-то была пенсия, их выслушает сервер под управлением PHP.

Порог низкий не во все фреймворки. Laravel и Yii — да, низкий, а Symfony или Zend — вряд ли.

У жабы современной выше раз в 5 чем всё это вместе взятое. И это только на джуна.
А пыхе этот порог вообще брать не надо, у неё и так всё хорошо. Производительность же проще купить, чем нанимать дорогих кодеров.

Поріг низький не через фреймворки, вони вже потім зявились. А через динамічну типізацію, простоту і можливість наваляти алгоритмік прямо в темплейті + здоровенне комюніті і мільярд HOWTO. Ну і звичайно це все працювало під специфічні задачі веба тодішнього. Зараз з ростом комплексності задач, росте і поріг входу і сама мова, PHP7.1 вже має можливість строгої типізації і на ньому можна цілком собі прогамувати з дотриманням SOLID (на відміну від того ж пітона).

А про джаву так, там складніше почати, це факт.

Динамічна типізація — це покарання, а не простота.
Так само, як і відсутність примусової качиної типізації за допомогою відповідної директиви.

PHP був досить складним до CMS. CMS фактично є пандусом для інвалідів, особливо модульні CMS. Можна спочатку підняти проект, а вже потім лізти у його механізми.

Неочевидна істина: мови програмування просувають не аутсорсери. А ті, хто пише для власних потреб чи для потреб організації на яку працюють.

Java, як не дивно, була простіша за пеху. Коли я туди входив, то було взагалі елементарно, як bat-файл написати. Але через її популярність і відвертий батхьорт випустити поскоріше щось нове — наплодили 100700 тон лайна, яке тепер кожен має знати просто щоб увійти. Більше скажу, java виграла там, де вона ж тепер і програла — перша і майже єдина задача Java з самого початку — створювати легко керований GUI, здебільшого віджети для web. І за стільки років GUI в жабі так і не доробили, жодну із технологій.

Але через її популярність і відвертий батхьорт випустити поскоріше щось нове — наплодили 100700 тон лайна

Под этим подпишусь!

ну не в 5 раз выше, джуны не сильно паряться по поводу JMM и канкаренси

Поганой метлой таких джунов. Благо нормальных на рынке валом.

А давно ль РНР стало управлять серверами? О_о

Макс, подымись на 8 этажей вверх, прямо от входа — увидишь что они с php творят. Больше написать не могу, совести и nda всякие, ну такое

Низкий порог входа не недостаток языка.

А кто говорил что недостаток? Это наоборот, жирное преимущество, дающее ПЕРВОЕ место в вебе, и держащее далеко позади конкурентов. Настолько позади, что при очередной просадке рынка ценовой фактор может серьёзно покоцать позиции более продвинутых платформ — в результате их офередная волна фич останется недоработанной (не первый раз), и тем самым ещё более перекосит рынок рабочей силы.

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

Язык развивается, может быть, к этому и придёт

сам себе противоречишь. Будет это сделано — порог входа возрастёт резко. Отсутствие смерти скрипта заставит следить за памятью, а это мало у кого выходит хорошо. Более детально описано здесь (было в дайджесте) о том почему PHP-the-environment взял свою нишу не смотря на то что PHP-the-language оставляет желать лучшего

«Будущее PHP» === «Go»

Ага, «Будущее С = С++», да?
Уже 30 лет, да?
И где?

отсутствие генериков и тд?)

Скорее одинаковый интеллектуальный уровень у похапистов и гопников

Знаю-знаю, только не использую

echo «Hello, world!»; // ещё далековато от «знаю».

За годы развития всякого мастхэв-счясьтья на нём наплодилось столько, что можно трактат написать не хуже Корана с названием «введение в PHP-фреймворки». Знаешь — это пишешь хоть на одном из них, или хотя бы можешь нормально читать код на фреймворке. И не самом древнем.

Впрочем, начать можно и не зная. Даже школоте. Что они собственно и делают.

Ну да. Знал, но забыл.

язык на котором пишут показывает интеллектуальный уровень?

Ну, у Гугла ведь особое отношение на интервью к .NET-чикам, видимо неспроста. Хз как они к PHP-стам относятся. Так что, думаю, да, по языку можно сделать некоторые выводы. Ведь язык — это инструмент для решения определенных задач, которые в том числе влияют на интеллект. Вон даже табы с пробелами на зп вляют.

у всех джавистов особое отношение к дотнетчикам

Да, но в контесте Гугла это скорее, Win vs. Linux и связанные с этим штуки: более глубокое понимаение системы, инструментов, коммандного интерфайса, а в .NET — программирование мышкой. Но это все стререотиры на самом деле. Особенно в свете развития .NET Core.

В Гугла було особливе відношення і до людей які вміли пояснити чому каналізаційні люки круглі. Але по факту — самі ж гуглери визнали що були не праві.

И так сойдёт, многие ливнут в другие направления и гляди зп поднимутся у пихеров.

Это так не работает. А работает примерно так — з/п заоблочная, но специалистов нужно 10 на всю планету. Если ты входишь в 10ку самых крутых на планете, то все, жизнь удалась.

Підписатись на коментарі