LINUX.ORG.RU
ФорумTalks

Откуда растут ноги ненависти к php?

 , , , ,


1

0

В очередной раз натыкаюсь на лучи ненависти в сторону php, сам не программист и сабж тыкал только в составе готовых продуктов (wordpress, drupal, zabbix, freepbx) ну и самое «страшное» - это что для zabbix надо в конфиге php прописать правильный часовой пояс, а в остальном работает в фоне и норм (ну для высоконагруженных сайтов рекомендуют ставить связку nginx+apache, но это уже другая история, тут и с другими языами понадобятся оптимизации).

Из страшилок, которые про него слышал:

  • В одном из интервью кто-то и разработчиков ляпнул, что: «проще раз в день перезапускать демон php чем искать проблему почему он падает»
  • «Неполноценное ООП» - так про каждый второй язык пишут (оно вообще где-нибудь полноценное кроме smalltalk?), но подробностей не приводят
  • Жрет ресурсы как не в себя - а js/python/go на бекенде не жрут?
★★★

Последнее исправление: Kolins (всего исправлений: 1)

Ответ на: комментарий от shimon

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

https://yosefk.com/blog/c11-fqa-anyone.html

«Why is PHP – a language full of quirks which at least gives you memory and type safety – is universally ridiculed and the developers, while defending the language, never ridicule back, while C++, an absolutely insane language, is ridiculed often enough but C++ developers always counter-attack viciously? For that matter, why isn't Lisp ridiculed for EQ, EQL, EQUAL and EQUALP, if comparison operators are so funny?

The reason, IMO, is simple: PHP is not taught in academic CS courses. C++ developers are much more likely to have a CS degree, therefore both they and others treat their knowledge of crazy C++ arcana as something of intellectual value. And Lisp is the poster child of academic programming language development. Educated proponents deter attempts at ridiculing a language...

In a „rational“ universe, PHP would be held in high esteem given the amount of output produced by PHP developers with little training.»

Вкратце: PHP — достаточно простой язык на котором можно написать рабочий сайт с минимальными усилиями и знаниями. В отличие от C++, который настолько сложен и нелогичен, что даже опытный кодер не всегда может написать рабочее решение. То есть, речь даже не столько про документацию — это в принципе простой для освоения язык. А вот C++ «до конца» не сумело освоить 99% крестовых программистов, это такой волшебный язык, на котором можно писать пять лет коммерческий проекты, а потом в один день удивиться «о, а я про эту фичу ещё ничего не знаю». И так же на шестом, седьмом, восьмом годах. Особенно с выходом новых стандартов.

byko3y ★★★★
()
Ответ на: комментарий от crutch_master

Асинхронщина без колбечной лапши

Чувак, промисы как бы не требуют никаких специальных фич, а если ты про async/await то это делается на генераторах. Единственная разница, что эвент луп нужно явно запускать, он не встроен в язык (и это хорошо).

Так-то асинхронные движки на пыхе (swoole, workerman) рвут любую «прогрессивную» скриптоту в тестах.

no-such-file ★★★★★
()
Последнее исправление: no-such-file (всего исправлений: 2)
Ответ на: комментарий от no-such-file

а если ты про async/await то это делается на генераторах

Ну да. То есть через одно место.

Единственная разница, что эвент луп нужно явно запускать, он не встроен в язык.

И асинхронные функции не встроены в язык. Чтобы можно было сделать свою асинхронную функцию её надо оборачивать во что-то, чтобы yield работал и кто-то её правильно вызывал, после получения колбека. Так и жсники какое-то время делали, до того, как им даровали родной async/await, без которого вообще не было смысла за этот самый жс браться.

промисы как бы не требуют никаких специальных фич

Колбеки не требуют фич. Чтобы async/await'ом можно было пользоваться по-человечески, нужны фичи языка, иначе будешь ходить на поклон к своей либе (которой из, кстати) и молиться, чтобы там ничего не сломали.

crutch_master ★★★★★
()
Ответ на: комментарий от ixrws

Особенно интересно послушать тех, кто сталкивался с набором кадров и знает что такое кадровый голод как не поднимай планку зп. Ну то есть поднять до небес можно, но потянет ли бюджет? Вот те, кто имеет опыт, знают что каждое решение имеет свои плюс и минусы. Конечно можно пилить крупный веб проект хоть на C++, хоть на Ocaml, хоть на Smalltalk, но где взять кадры и каков будет бюджет?

Довольно странное заявление. С одной стороны, да, хорошего спеца за еду нанять под экзотику непросто. С другой стороны, говеный спец на PHP за еду напишет тебе гарантировано плохой код. Я люблю приводить пример знакомого кодера на PHP, который не знаком с работой DNS. Веб-кодер, мать его. Да, его проще найти — а какой смысл?

Как делает Букинг со своим сайтом на перле, который они не стали переписывать? Они нанимают кого попало и обучают этих людей перлу. Не скажу за других, а мне достаточно пару месяцев для освоения нового языка со фреймворком на уровне, достаточном для написания достаточно сложного прода. Но да, на рынке очень много старых людей, которые будут на JS писать как на крестах, а на Go писать как на PHP, с рефлексией и ассоциативными массивами.

Это не мешает набирать молодняк и просто обучаемых людей. Особенно удобно будет их сохранять у себя на проекте в случае экзотики, потому что крестовик может внезапно убежать на фриланс, а дельфист никуда не убежит. Или Clojure — во всём СНГ примерно штуки три конторы, которые на ней пишут код. И тогда убогость подбора кадров в IT наоборот играет тебе же на руку — кто в СНГ возьмет человека, например, с двумя годами опыта разработки на Clojure? Всем нужен программист с двумя годами опыта PHP.

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

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

Под большим проектом я бы поставил знак вопроса. Разве что ты понимаешь под этим полное копирование стэка Facebook с их компилятором PHP-подобного языка. Сейчас увеличиваются минимальные требования к сайтам по фичам. Например, нужно обязательно иметь полнотекстовый поиск, потому нужно вкорячить эластик, А экземпляров пыховой логики у нас несколько — задачи между ними нужно разбросать каким-нибудь кроликом. Поскольку обычная РСУБД такую нагрузку не подымет, то нужно еще и redis/memcached, как завещал нам livejournal, земля ему пухом. И у нас уже получается эдакий Крэнг, у которого большая часть его тела уже совсем не его, от него самого остались мозги, которые дёргают за ручки. А сейчас к этой групповухе уже добавляются сервисы на Go, которые обслуживают задачи с высокими требованиями по производительности. В питоньих проектах при этом уже давно стало нормой в аналогичных случаях писать расширения на C/C++.

byko3y ★★★★
()
Ответ на: комментарий от vertexua

А где из кучи пхп макак ты найдешь нормально разраба, который шарит в пхп7 и как там писать демоны на пхп правильно?

В Facebook

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

byko3y ★★★★
()
Ответ на: комментарий от leave

За время существования пипа и виртуаленва у питона вышло 10 релизов

Разве что тройка была значимой, 2008 год.

родился тайпскрипт

Это JS с минимальным сахаром, позволяющий даже не используя этот сахар пользоваться преимуществами статической проверки типов.

руби лег в могилу

Никуда он не лёг, он просто менее популярен, чем PHP. Чего стоит только рельсовый GitHub/GitLab.

появился v8 и нода

Ты удивишься тому, насколько это старая технология:

https://en.wikipedia.org/wiki/Active_Server_Pages
https://en.wikipedia.org/wiki/JScript

Гугла даже не существовало, когда на JS уже писали скрипты для серверов.

появились gcp и azure

В чём их революционность? Виртуальный хостинг, SaaS, широкий канал интернета — этим вещам где-то 20 лет. Но по софтовой стороне это скорее применение готовых решений в новой форме, нежели разработка нового софта. Например, какой-то значимый скачок сделал гугл в начале нулевых, создав cgroups, который стал фундаментом для контейнеров и докера в частности. Конечно, революционность cgroups спорна, но это хотя бы что-то — а что принесли облака?

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

Я еще раз подчеркну, что в мире существуют единицы бизнесов/вебсайтов, которым реально нужна сложная система распределенных серверов. Хорошо реализовать их очень сложно, с амазоном или без амазона, амазон позволяет лишь запустить в прод плохую систему, которая по итогу под ноль выкачает все деньги из вашего бизнеса — в этом и состоит основная причина расширения предложения облачных сервисов. К этой движухе присоединились даже опытные разводилы из Oracle, SAP, и IBM, которые подобным консалтингом без гарантий занимались задолго до облаков, а теперь они включили в свой репертуар еще и облака/SaaS.

умер дельфи

В середине-начале нулевых.

дотнет приехал нативно в онтопик

Mono уже 17 лет.

жквери уступил место вуе/ангуляру/реакту

jQuery (2006) никуда не делся — все удачные функции из него перекочевали в браузеры и используются теми же реактом/вью/ангуляром. Значимость же реакта/вью/ангуляра сильно переоценена — это довольно тонкие прокладки, в которых методологии больше, чем кода. Для справки, Google Docs — 2006 год.
———————————————————————————————————————

Подводя итог: самые-самые технологии на острие прогресса в IT появились примерно 15 лет назад, и, как правило, связаны с распространением интернетов. Если же смотреть на общую картину, то там будет 25-30 лет: Linux, Windows, Java, JS, PHP, Python, Ruby. История сложилась в этом виде не просто так: девяностые стали периодом бума микропроцессоров, когда производительностью компьютеров росла с наибольшей скоростью одновременно с увеличением спроса на микропроцессоры; депрессия же началась в 2008 (13 лет назад) в результате мирового экономического кризиса; какое-то время ситуацию спасали смартфоны, но они исчерпали свой потенциал и по итогу в 2021 индустрия пребывает в стагнации — потому современным IT технологиям 15-30 лет.

Но ты можешь по-прежнему вспоминать о временах развала СССР, конечно

Кстати, довольно забавная аналогия — СНГ так же живет на руинах былого величия.

byko3y ★★★★
()
Ответ на: комментарий от crutch_master

её надо оборачивать во что-то

Как будто это что-то плохое. Это напротив, показывает что язык достаточно гибкий.

Кроме того на async/await свет клином не сошёлся, в голанге вон нету и ничего, вполне нормально живут.

В любом случае, корутины в пыхе есть, асинхронщина на корутинах делается, так что твоё кукареканье мимо кассы.

no-such-file ★★★★★
()
Ответ на: комментарий от vertexua

ситуацию по JS-кодерам, которые в фейсбуке очень средние.

Ты как определил?

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

В Facebook есть отдельные талантливые JS-кодеры. В Microsoft они есть — они написали VS Code. Но Office 365 писали индусы, потому он постоянно глючит и в подмётки не годится Google Docs. Я могу поверить, что в гугле есть высокая концентрация хороших JS-ников, но аргументов у меня мало — ещё могу привести разве что «создателя Vue.js выгнали из гугла за говнокод», и я бы тоже выгнал его после моего глубокого знакомства с кодом Vue.

byko3y ★★★★
()
Ответ на: комментарий от byko3y

С другой стороны, говеный спец на PHP за еду напишет тебе гарантировано плохой код.

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

no-such-file ★★★★★
()
Ответ на: комментарий от MOPKOBKA

Язык популярный и везде используется, а как говорил Страуструп, есть всего два типа языков – те, которые ругают и те, которыми не пользуются

Буквально пару часов назад в соседнем треде постил пояснение, неполный аналог которому я уже давал здесь:

http://yosefk.com/c fqa/picture.html#fqa-6.2

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

За PHP не стоит какая то компания, а 99% мнения программистов формирует реклама и прочий маркетинг

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

byko3y ★★★★
()
Ответ на: комментарий от no-such-file

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

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

byko3y ★★★★
()
Ответ на: комментарий от seiken

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

Для этого нужно много времени, а на каждый фреймворк всей жизни не хватит. Может быть предложишь мне PHP освоить? По опыту с питоном я уже понимаю, что PHP, как implementation-defined язык, целиком слеплен из специальных не согласованных друг с другом фич, которые нельзя понять — их можно только запомнить. Если бы я был, как современные школьники, профессиональным разрабом на одном только PHP, или питоне, или JS, и в принципе отказывался бы браться за любой другой язык — то я бы знал все эти детали. А так я даже бессмысленных узкоспециализированных деталей работы JS не знаю, как ты можешь увидеть выше по треду — я просто стараюсь избегать сложных фич.

byko3y ★★★★
()
Ответ на: комментарий от MOPKOBKA

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

Perl, ColdFusion.

byko3y ★★★★
()
Последнее исправление: byko3y (всего исправлений: 1)
Ответ на: комментарий от byko3y

Короче я понял, логика такая: ты не согласен с тем как что-то сделано -> логический пробел -> в Фейсбуке плохие инженеры

vertexua ★★★★★
()
Ответ на: комментарий от vertexua

Короче я понял, логика такая: ты не согласен с тем как что-то сделано -> логический пробел -> в Фейсбуке плохие инженеры

А я тебе разве намекал на то, что собеседовал каждого инженера в фейсбуке? Аргументы косвенные, но достаточно серьёзные. Если бы в фейсбуке было достаточно талантливых JS-еров, то они точно так же высказали бы несогласие с навязыванием вредного инструмента для разработки. Причем, я еще раз подчеркиваю позицию Дана Абрамова и кто там еще у руля разработки реакта сейчас — они согласны с тем, что изначальная методология реакта была неудачной. Так почему же все остальные молчали?

byko3y ★★★★
()
Ответ на: комментарий от lucentcode

За большое количество низкоквалифицированных разработчиков, что когда-то вошли в IT, PHP и не любят. Начало 90-е и начало 2000-х позволили войти в IT большому количеству, мягко говоря, не подходящих для этой сферы людей. Чем у других, более квалифицированных людей, которым потом приходилось расхлёбывать последствия от прихода новичков со слабым уровнем знаний, этот ЯП и вызвал дикий батхёрт. И до сих пор вызывает. Вы можете подобный батхёрт только в области jQuery и некоторых JS фреймворков наблюдать

С JS всё ясно — альтернативы в браузерах нету. А PHP почему? У него ведь альтернативы были: Perl, ColdFusion, ASP.

byko3y ★★★★
()
Ответ на: комментарий от xwicked

В Qt полноценный ООП

ОФФТОП: А Qt это не просто gui-шка к крестам, а полноценный ЯП? Не, я правда не вкурсах если что...

Kolins ★★★
() автор топика
Ответ на: комментарий от Kolins

ОФФТОП: А Qt это не просто gui-шка к крестам, а полноценный ЯП? Не, я правда не вкурсах если что

Qt переписали всю стандартную либу крестов. Там вдогонку еще собственных DSL-ей и трансляторов завезли.

byko3y ★★★★
()
Ответ на: комментарий от srg666

теперь у хипстеров есть модная абревиатура SSR (server side rendering), они вынуждены страдать этим и по старинке генерить на сервере чтобы каталоги нормально индексировались

Создаем себе трудности и потом героически их преодолеваем? Вот у меня есть тенависть к современному web за то что они перекладывают работу червера по генерированию страничек на клиентов (и от этого бровсер становится самым прожорливым приложением), а тут выходит что они сами от такого подхода страдают...эпик вин!

Kolins ★★★
() автор топика
Ответ на: комментарий от tfeartx

Аналогов толком нет

А что должно быть в аналоге вордпресса (и нет сейчас в далеких аналогах)?

byko3y ★★★★
()
Ответ на: комментарий от crutch_master

В Facebook

Ну так, где мытищинский предприниматель со своим бизнесом и где пейсбук

Пацантрэ, у меня есть под боком годный кодер на JS плюс я. Вы если не знаете, где найти JS-макак на удалёнку — маякуйте.

Я это к тому, что смысла искать хороших кодеров на PHP и JS в фейсбуке нет, потому что они там в большинстве своём переоцененные, даже если найдете. Это фейсбук может позволить себе платить $20k в месяц кодеру — зачем этому кодеру из фейсбука идти куда-то еще?

byko3y ★★★★
()
Последнее исправление: byko3y (всего исправлений: 1)
Ответ на: комментарий от Kolins

ОФФТОП: А Qt это не просто gui-шка к крестам, а полноценный ЯП? Не, я правда не вкурсах если что...

Раньше я психовал, а сейчас я угораю с вас робята. :D ООП - это принцип. Он не относится конкретно к ЯП. В библиотеке Qt всё правильно завёрнуто, в полном(100%) соответствии с принципом ООП.

xwicked ★★☆
()
Ответ на: комментарий от rechnick

Какой цикл? По-моему, в php циклы совершенно классические. Чего там можно не понять?

Сейчас погядел циклы - всё в порядке, вроде бы. Тогда точно не помню, что мне там не понравилось...

xwicked ★★☆
()
Ответ на: комментарий от byko3y

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

А ты повторяешь стандартную мантру которую на ЛОРе написали уже 1000 раз по поводу чего угодно «Х инструмент для быдлокодеров». Каждый написавший ощутил теплую волну удовлетворения что он не такой как все. По сути для этого и была высказана мантра - самоудовлетворение.

vertexua ★★★★★
()
Ответ на: комментарий от crutch_master

а если ты про async/await то это делается на генераторах

Ну да. То есть через одно место
Чтобы можно было сделать свою асинхронную функцию её надо оборачивать во что-то, чтобы yield работал и кто-то её правильно вызывал, после получения колбека. Так и жсники какое-то время делали, до того, как им даровали родной async/await

В JS async/await реализованы на тех же генераторах, и транспиляторы превращают async/await именно в генераторы. И это всё на самом деле есть сплошные костыли, потому что ЯП с поддержкой настоящих зеленых и нативных потоков позволяют работать с синхронным и асинхронным кодом одинаково, в отличие от JS/Python, в которых из обычной функции нельзя вызвать асинхронную функцию/генератор — так что оборачивать придется в любом случае, с генераторами или без.

byko3y ★★★★
()
Ответ на: комментарий от Kolins

Действительно, что более масштабируемое, сервера вшивого стартапа без доходов или компы потенциально неограниченого числа пользователей, которым непосчастливилось зайти на этот сайт

vertexua ★★★★★
()
Ответ на: комментарий от grim

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

под нормально индексируются имеется ввиду именно это, а не то что гугл и яндекс не умеют исполнять говно-js

srg666
()
Ответ на: комментарий от Kolins

Вот у меня есть тенависть к современному web за то что они перекладывают работу червера по генерированию страничек на клиентов (и от этого бровсер становится самым прожорливым приложением)

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

byko3y ★★★★
()
Ответ на: комментарий от vertexua

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

Мне было известно — я неплохо помню мой первый месяц знакомства с SPA и JS, и у меня реакция была стабильно одна «этим говнищем невозможно пользоваться, фреймворк перекручивает руки так, что любая организация кода будет выглядеть как говно». Проходит время — я узнаю, что такое мнение не у меня одного. Но почему-то мне для осознания понадобился месяц, а фейсбуку — годы. Причем, они ни разу не спешат отходить от реакта, хотя он убивает производительность — им даже пришлось покупать сторонний модуль для карт, потому что на реакте невозможно реализовать динамичный интерфейс с большим число сущностей так, чтобы любое действие пользователя не приводило к зависанию браузера на несколько секунд.

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

Каждый написавший ощутил теплую волну удовлетворения что он не такой как все

Не ощущаю никакого удовлетворения от того, что я не такой как все. Скорее одиночество и безразличие.

byko3y ★★★★
()
Ответ на: комментарий от byko3y

Не ощущаю никакого удовлетворения от того, что я не такой как все.

Ты до боли в зубах такой как все.

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

То что ты не осилил SPA когда они были молодые ты спутал с прозрением что они не могут работать. Это как сидеть дома на диване, смотреть на ракету Илона Маска и говорить «Ща рухнет. Опа, рухнуло, ну я же говорил.». При том что ты не обладал 99% информации и не присутвовал при принятии решений

vertexua ★★★★★
()
Последнее исправление: vertexua (всего исправлений: 3)
Ответ на: комментарий от vertexua

Действительно, что более масштабируемое, сервера вшивого стартапа без доходов или компы потенциально неограниченого числа пользователей, которым непосчастливилось зайти на этот сайт

По факту те же одноклассники захлебываются от потока запросов с клиента. Так что от кривой архитектуры не спасет никакой перенос логики на клиент — там потенциальная реализация логики на статичных HTML страницах не отсвечивала бы на фоне общей нагрузки на сайт.

Не только лишь все видят, что перенос логики с сервера на клиент идет не столько для разгрузки сервера, сколько для упрощения разработки и добавления свистоперделок. Разработка упрощается потому, что в статичном HTML довольно бедные инструменты для пользовательского ввода, потому даже грамотно реализованное веб-приложение на статике будет довольно убого в плане UX. Причем, это убого оно будет выглядеть сейчас, а лет 15 назад оно бы выглядело совсем отвратительно без флексбоксов, без CSS grid, и без продвинутых современных интерактивных CSS стилей. Исходный HTML изначально был создан для простого текста с картинками и ссылками, ничего более в нём не должно было быть. А тут на тебе — пошли какие-ни интернет-магазины, блоги, форумы, бизнес-приложения, социальные сети.

byko3y ★★★★
()
Ответ на: комментарий от vertexua

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

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

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

Причем, учитывая то, что IT индустрия копирует с FAANG методы подбора персонала, и то, насколько ужасно работают эти скопированные методы, я даже понимаю, каким образом индусо-маганеры могут оказаться большинством в кодерском штате. Инфы про подбор кадров в самом Facebook у меня почти нет, потому полноценно эту теорию я подтвердить не могу.

То что ты не осилил SPA когда они были молодые ты спутал с прозрением что они не могут работать. Это как сидеть дома на диване, смотреть на ракету Илона Маска и говорить «Ща рухнет. Опа, рухнуло, ну я же говорил.». При том что ты не обладал 99% информации и не присутвовал при принятии решений

В отличие от ракеты, я таки могу написать фреймворк для SPA, потому сравнение с ракетой некорректно. Более того, я примерно понимаю мотивы создателей React, какие цели они преследовали своим творением, и почему до сих пор от него не отказались. То, что я не сидел с ними в одной комнате при этом, не является большим недостатком.

byko3y ★★★★
()
Ответ на: комментарий от fernandos

У этой статьи нет цели описывать все изменения, там только их результат

Очень спорный результат, но спорить там не с чем, потому что сплошная вода и мнение.

byko3y ★★★★
()
Ответ на: комментарий от crutch_master

Вот это проблема!

да для многих начинающих проблема, ибо забывают, но не для меня.

Кто-то на sql не писал ничего сложнее select * from

ну не только запросы на выборку и посложнее

XoFfiCEr ★★☆☆
()
Последнее исправление: XoFfiCEr (всего исправлений: 1)

Откуда растут ноги ненависти к php?

Оттуда же откуда руки многих людей, кто на нём пишет.

ya-betmen ★★★★★
()
Ответ на: комментарий от byko3y

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

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

EXL ★★★★★
()
Ответ на: комментарий от EXL

плюсую, у vk идиотская прокрутка просто жутко раздражает

XoFfiCEr ★★☆☆
()
Ответ на: комментарий от byko3y

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

Да!Да!Да! И чтобы не надо было бровсер раз в пол года (иначе опять что-то где-то работать криво будет) обновлять и плеваться с нового видения UI/UX разработчиками!!!

Kolins ★★★
() автор топика
Ответ на: комментарий от byko3y

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

P.S. ASP это не нода, это пыха от MS в чистом виде. То, что языком был (vb|j)script не делает его нодой вообще никак. Остальное комментировать даже не хочется, особенно часть про мировой заговор.

leave ★★★★★
()
Ответ на: комментарий от byko3y

С JS всё ясно — альтернативы в браузерах нету. А PHP почему? У него ведь альтернативы были: Perl, ColdFusion, ASP.

Perl

write-only

ColdFusion

нишевый продукт, плохое позиционирование

ASP

винда, IIS==гроб-гроб-кладбище

leave ★★★★★
()
Ответ на: комментарий от byko3y

Преподают в школе? Можно крякнуть и не платить разработчику?

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

Pascal тоже преподавали, но популярность получил Delphi.

И какие были альтернативы? Турбо паскаль был настолько хорош, что просто уделал все альтернативы.

Да, в 90-ых Pascal был популярен в т. ч. за пределами Windows. Вспоминаем Classic Mac OS, где его активно использовали в системе. Но в нулевых итак небольшую популярность Pascal серьёзно затмил Delphi, являющийся диалектом Object Pascal. Коммерческий софт на Delphi под Windows до сих пор пишется/поддерживается, а вот оригинальные реализации Pascal и софт на них по сути мертвы. А альтернативой Pascal’ю тогда был конечно весь стек Microsoft-технологий шедший в комплекте Visual Studio, который в долгосрочной перспективе победил и убил все эти Delphi и Pascal’и от Borland, Embarcadero и др.

Именно паскаль еще был популярен где-то в девяностых, но интересная политика Borland и отсутствие альтернативных реализаций (что в том числе есть политика Borland) привела к тому, что FPC появился только в конце девяностых, а Lazarus — в начале нулевых, когда Delphi уже подыхал и Borland выпустил .NET-only версию, пытаясь сменить нишу.

Delphi в начале нулевых далеко не подыхал, а цвёл и пах. Подыхать он стал только в конце нулевых, в годах так 2008-2009.

EXL ★★★★★
()
Ответ на: комментарий от Kolins

Не обращай внимание, это ещё один программист на Qt, а не на C++

Сейчас таких стало много, прямо как во времена Delphi, когда каждый вопрос по этому диалекту начинался с «есть ли компонент???»

Qt серьёзно снижает порог входа в C++, отсюда и появляются такие вот кадры.

EXL ★★★★★
()
Ответ на: комментарий от byko3y

Qt переписали всю стандартную либу крестов. Там вдогонку еще собственных DSL-ей и трансляторов завезли.

Всегда задавался вопросом, можно ли Qt считать диалектом C++ примерно с той же степенью, с которой Delphi является диалектом Object Pascal?

EXL ★★★★★
()
Ответ на: комментарий от Shadow

Borland VCL и турбовижн пипец как популярны были. Потому и дельфи на ура пошёл.

Несомненно связь между популярностью Turbo Pascal и Delphi есть, но компиляторы и среды для разработки на C++ вроде Turbo C++, Borland C++ и C++ Builder не были особо популярными.

P.S. И Borland VCL тоже был написан на Delphi/Object Pascal с биндингами под плюсцы, что говорит уже о многом. Ибо их фреймворк OWL на C++ не снискал должной популярности тоже.

EXL ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.