Pull to refresh

Comments 36

Открыл статью
Например, РНР. Это неплохой язык… Но он не очень производительный.


Закрыл статью.
Собственно минусы-то за что?
Смотрим знаменитые картинки замеров производительности, коллеги:



Где же здесь «не очень производительный»?
А есть картинки с c++, go и т.п.? Автор вроде не сравнивал только эти 4.
И да, php «не очень производительный». Остальные, просто, еще менее производительные.
Вы показали… что? Что есть менее производительные решения? Ок. Или что php в лидерах?
А есть картинки с c++, go и т.п.? Автор вроде не сравнивал только эти 4.
Я показал что есть сравнения с «c++, go и т.п»
Я знаю что есть, разговор был про картинку выше, на основе которой AlexLeonov показал, что круче php ничего нет ;)
Ну, учитывая, что в итоге выбрали JS. То как бы…
То как-бы это ничего не значит)
На самом деле абсолютно верно.
Хороший программист на любом языке может написать так, чтоб работало быстро.
Плохой — на любом сделает медленно.
Мы в Авито очень любим PHP, но если производительность действительно важна — можем позволить себе не использовать динамические языки, а взять Go, например.

А Валерка вообще Rust в WASM компилирует!
Минусы за то, что не любят люди набросы в технических статьях, да и в нетехнических тоже.

Минусы за "закрыл статью". Автор утрирует в деталях, но очень точно описывает ситуацию про отсутствие серебряной пули и потенциальные грабли на любом из выбранных путей. Про java там тоже спорно, но суть то он передал)

В статье ещё предлагается очень спорное решение «писать свой компилятор». Мало того, что такое имеет смысл только для очень крупных компаний типа Фэйсбука и ВК, так ещё и вышеуказанные компиляторы по производительности примерно на одном уровне с PHP7.

И решение ставить JS на бэкэнд из-за скорости. У JS на бэке много преимуществ: и нормальная асинхронность и единый язык разработки, и много чего ещё (как и у PHP есть свои преимущества). Но скорость?
У меня приятель тоже фыркает на PHP. Точнее фыркал. Я ему заказывал несколько проектов, он на c++ написал их. Но я постоянно сталкивался с проблемой того, что не мог получить от него то, что мне действительно надо. Логи? Пиши сам. Сортировка? Не буду делать. Зависает потому-что парсинг не может найти последнюю страницу? Ну извини, тут уже ничем не поможешь. И так далее.

В итоге я плюнул, открыл редактор, #!/usr/bin/env php, создал проект в веб, научил через баш запускать потоки PHP-скриптов, отладил все. Через 4 дня у меня полностью сделанный и функциональный проект с возможностями менять граббинг, фильтрацией и отложенными заданиями. Заработал на PHP-граббере уже порядка 2 млн за несколько лет (в расчете на месяц не много, но денежка идет). Да не много, но заработал я. А не он. Он свои 10к получил, и пошел дальше.

Потом еще один проект у него слямзил, и еще… Жестоко? Не честно? А мне нужна работа, а не вечное нытье. Я пока не могу писать программы такого уровня и учу JAVA, C++, C#. Да и не буду, проще людей нанять адекватных.

Но какая разница какой язык, если он приносит прибыль? К докучи всего я еще и на FreeBSD сижу (x11+kde). Почти все сервера на этой оси строю. Ее тоже хают все кому не лень. Согласен, но она мне тоже обеспечивает прибыль. А про то, что она умирает пишут уже 14 лет. Живучая какая…

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

Может дело все таки в человеке, а не в инструменте? Ведь у плохой хозяйки всегда кот виноват…
Ну статья-то всё-таки не холиварная. Так, поверхностный обзор. Говорится, что из зоопарка языков выберем JS на бэкэнд, но особо не говорится чем он лучше PHP. Согласен, что в PHP отличная экосистема для бэкэнда, хорошая сообщество, отличный выбор фреймворков и инструментов. То что надо для быстрого старта. Но и у других языков тоже свои плюсы есть. В итоге выбор зависит от конкретного проекта.
Полностью согласен.
Думаю многим(например мне, но я уже не могу исправить минус) сначала показалось что вы просто решили набросить на PHP, т.к вас возмутила фраза «РНР. Это неплохой язык». Потом понял что вы не об этом из коммента ниже.
Ну и в принципе комменты в духе «Закрыл статью.» не очень приятны/полезны, так как наличие какой-то одной неточности или ошибки в статье в самом начале, это не повод ставить на ней крест, и публично об этом высказываться, показываю автору что он, как будто, потратил время зря.
Я понимаю, что статься не несёт цели глубокого разбора всех ньюансов выбора технологий и подходов.
Скорое это обзор с высоты птичьего полета.
Но раздел про архитектуру может ввести в заблуждение начинающих разработчиков.
Из него может показаться, что существуют два подхода — монолит или микросервисы.
Это, конечно, две крайности.
Ещё существуют, например, обычные сервисы или так называемые минисервисы.
Но в целом за статью спасибо!
Да, у исходного доклада были ограничения по времени, поэтому все ньюансы осветить подробно не было возможности.

А ещё после доклада был отличный вопрос «почему в схеме нет ничего про безопасность» — потому что это отдельное большое приключение, где есть куча других возможностей выстрелить себе в ногу :)
Спасибо за статью. Всё тлен. Пойду порежу вены…
А вообще смысл статьи в том, что в любой команде программистов должен быть Lead Programmer, который и будет задавать какие технологии все будут использовать и следить за тем, чтоб все придерживались единого стека технологий и стандартов кода.

Как говорил Наполеон Бонапарт: лучше когда армией командует один плохой генерал, чем 20 хороших :)
Как я понял, смысл статьи в том, что каким путём не пойди, всегда будут преимущества и сложности, не в начале, так потом. Вопрос лишь в том, с какими сложностями вы умеете работать и какие преимущества умеете использовать
>ставящими ORM перед базами, которые никогда менять не придется…

как-то однобоко вы на ORM смотрите. Но да, из-за него хватает боли когда джуны ни фига не думают о том, какой SQL на его базе будет построен. Но в целом он существенно экономит время при разработке всей DTO лапши и тестов вокруг неё.
«Например, PHP… Но он не очень производительный.»
Ребята из Авито умеют тонко троллить)
Какой-то вброс. Прочитал про java, напрягся. Дочитал до python и нелепое суждение о загрузке только одного ядра — закончил читать.
Надеюсь, это все толстый троллинг
Какую взять архитектуру? Ребята на Хабре пишут, что микросервисы – это клёво. Олег Бунин говорит: «берите микросервисы».

Да вроде никто не говорит, что начинать надо с микросервисов. Наоборот, сейчас во большинстве книг/статей о микросервисах пишут о том, что начинать нужно с монолита(естественно не забывая о low coupling и разделении bounded contexts) и выделять что-то из него по мере необходимости и главное наличии понимания того, какие проблемы мы решаем вынесением определенной функциональности из монолита, и какие издержки будем иметь.
идеалистами, выстраивающими по крупицам безукоризненную архитектуру, ставящими ORM перед базами, которые никогда менять не придется...

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

Ну вот не надо. В 2018 году спринг абстрактные билдеры пишет за вас.
В современной джаве вообще не надо писать бойлерплейт, ну вот ни строчки. Сразу делаешь прикладные фичи.
Lisp (очень модный среди дедушек старше 70)

За что вы нас так ). А как же Clojure? LISP, JVM, FP, STM, AST, immutable, lazy, async, go все дела ;). Скобочки наше все в этом возрасте.
ITT: люди воспринимают «пятничный» (ну почти) пост супер серьёзно, читают невнимательно, начинают войны, недочитав до секции «Итоги».

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

Где вы увидели серьёзность? Где войны? Если у меня выше, и за это минусуете, то стоит учиться видеть самоиронию и улавливать весёлый тон хотя бы по смайликам а не сразу переходить к Итогам и минусовать. Веселой пятницы всем.

очень легко приватный ключ от своего аккаунта на Amazon случайно закоммитить в Github
вы уж меня простите, но это надо быть совсем растяпой, чтобы никак не организовывать свои правки и не смотреть их перед тем, как решил коммитить. Например, в IDEA для этого можно заюзать changelists
определить кодстайл для компании
это не вариант, это аксиома, это так должно быть. Не вижу причин для замедления реализации фич, IDE умеет рефачить на лету
а интересно, почему не рассматривался c#? на линуксе работает отлично, код пишется быстро, а статическая типизация позволяет тупо писать меньше тестов. А если есть непереносимость Microsoft, можно использовать kotlin — то же самое, но на jvm.
Sign up to leave a comment.