YiiFramework Новости Yii 2020, выпуск 1

grigori

( ͡° ͜ʖ ͡°)
Команда форума
Суть в том, что у тебя проекты не простые, не стартапы и даже не средний бизнес. Крупные. У тебя есть бюджет, есть возможность не думая вселиться в AWS или использовать облачную базу, есть необходимость и возможность перекладывать некоторые решения на devops. Профдеформация состоит в том, что ты не считаешь остальное за нормальные проекты и в том, что ты почему-то думаешь что остального мало.
Стартапы. Сколько денег надо чтобы вселиться в облако и жить в нем - $100 в месяц.
Я против понятия нормальности проектов. Разница только в количестве серверов, а решения везде одни.
Расписать маленький стек для облака - это просто и дешево.

Боюсь, что про суммарный трафик ты не вполне прав... даже мелочь, что работает на Wordpress, очень тяжело побить https://trends.builtwith.com/cms/WordPress. Это 27 миллионов мелких сайтов. Даже если в среднем на каждый ходит 100 человек в месяц, суммарный трафик превышает трафик Facebook, Youtube, Instagram, Twitter, Yandex, ***** и так далее.
1. Именно - рынок мелких сайтов занят wordpress чуть больше, чем полностью. Отличный инструмент.
2. Что дает сумма траффика мелких сайтов? Это как суммарная температура по больнице.

Ну и цель фреймворка не в том, чтобы было о чём рассказать на конференциях. Это побочный эффект. Цель дать инструмент, который позволяет как эффективно начинать проекты, так и нормально без потерь их продолжать поддерживать.
Инструмент - это то, чем люди будут пользоваться. Продолжать поддерживать - это сервисная архитектура. И дальше по теме.
 

Yoskaldyr

"Спамер"
Партнер клуба
@grigori
Ну не только вордпресс живет, а и опенкарты, форумы, битриксы и т.п. дичь. И в большинстве случаев они живут только потому что это или тупо дешевле или просто решает определенную хотелку владельца (не все хотелки можно решить wix и подобными облачными сервисами.

И таких сайтов - тьма.
И с точки зрения разработки их грубо можно поделить на 2 категории:
коробочный продукт с какими либо платными допилами, да это фриланс бессмысленный и беспощадный.
или если бизнес суть посерьезнее, то это один или пара разработчиков на фултайм с периодическими заказами на фриланс биржах специфических вещей (обычно дизайн и что-то подобное).

Но в обоих случаях ни докер ни k8s нафиг там не сдались. Если и юзают aws то как обычные вдски. Не говоря уже о каких-то расходах на девопс. И все прекрасно работает на 1 сервере среднего ценового диапазона.

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

Но можешь считать что это мои фантазии, если тебе так проще, от этого реальность никак не изменится.
 

Yoskaldyr

"Спамер"
Партнер клуба
Стартапы. Сколько денег надо чтобы вселиться в облако и жить в нем - $100 в месяц.
а потом вылазят нежданчики из-за превышения лимитов и т.п.
Если бы все было так радужно то все хостинги уже давно бы вымерли и все хостинги бы предлагадли облако из коробки значительно дешевле других услуг, но это не так.
 

Yoskaldyr

"Спамер"
Партнер клуба
И вишенка на торте - сама бизнес модель амазона насчет aws говорит о том что дешевая цена там это нае... мягко говоря обман.
Покрытие всех других расходов Амазона (сверхдешевая и быстрая доставка товаров и т.д. и т.п.) за счет прибыли с aws - это не просто гуд, а супер гуд!
 

grigori

( ͡° ͜ʖ ͡°)
Команда форума
предлагаю отделить мухи от котлет, с хостингами и битриксами все понятно, на большом рынке продать привычный хостинг можно, и решения битрикса имеют потребительскую ценность, вопрос в другом

я не пойму с чем именно вы не согласны
бессмысленно сравнивать yii с wordpress: в wordpress есть шикарный UX, установка плагинов, тем и обновлений из облака по кнопке, а чтобы не настраивать сервер, я его запустил в контейнерах - один файл на 30 строк, и живет он на vps любого провайдера за $5/mo с трафиком 1000 человек в сутки - простое решение простых задач, и это обалденно

по каким параметрам вы решили, что решения на yii лучше, чем drupal на symfony? говнокод из поведений - "лучше бы в процедурщине остались", guns don't kill people, peolle kill people

сравнивать yii нужно с laravel, надо объяснить людям какие проблемы yii решает лучше
я просто рассказываю о реальных проблемах, которые сейчас никто не решает, но платежеспособный спрос есть
 

Sam Dark

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

grigori

( ͡° ͜ʖ ͡°)
Команда форума
Вообще, мысль такая: а какие предпосылки, что решения на yii лучше, чем drupal на symfony? Говнокод из поведений "лучше бы в процедурщине остались" - раковая опухоль многих проектов на yii.
Мне уже несколько проектов пришлось спасать, вырезая и переписывая поведения, сейчас очередной, и yii 2 ничем не отличается.

Но дело же не в yii - проблема в людях, которые продают джуниоров по цене синьоров, и заказчиков, которые надеются на чудо, не способны отличить имитацию от реализации. Дней 5 назад у меня был диалог:
17:50 A
Can we eventually move away from yii to something more attractive to new hires? Laravel or symfony?

17:21 Grigori
it's actually not about yii
it's bout the way people used it
yii is outdated, true, Laravel is not very much different though

17:50 A
My Hangup about Yii is that when I was interviewing many of the yii coders they seemed to be the type uninterested in their work. Just supporting some legacy shit (in their own words) and happy doing so.

17:56 Grigori
well, in regard to legacy yii is nothing different from laravel, they have same marketing approach - make it simple rather then good

17:59 A
Right I think Symfony would attract the most experienced PHP guys
What’s the right choice now?

18:09 Grigori
right now we have Symfony microkernel that allows making fast apps, and a Laravel's Lumen micro framework for APIs, and Slim 4 solved major problems of 2nd version

18:11 Grigori
now we don't just follow one single framework, it's good to gather best suited modules - Cycle ORM instead of Doctrina or Active Record, something for dependency injection, a logger, and a router - that's it
it's called a framework-agnostic code

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

Adelf

Administrator
Команда форума
Им все-равно, что ты напишешь, это планктон, его много. Как по мне, планктон нужен, чтобы зарабатывать, а код они не смогут оценить, их код всегда одинаковый - хоть на yii, хоть на bitrix.
ЧСВ у Гриши не отнять)
 

grigori

( ͡° ͜ʖ ͡°)
Команда форума
написал тот самый человек, который делает именно это ;-)

мне стало неловко, писать так не принято, но это работает
 

fixxxer

К.О.
Партнер клуба
код они не смогут оценить, их код всегда одинаковый - хоть на yii, хоть на bitrix
Опыт работы на Toptal научил меня двум важным вещам.
Первое - спокойно относиться к говнокоду (даже если полный рефакторинг в долгосрочной перспективе выгоднее, никто на это не пойдет).
Второе - увидел, в какие огромные бабки обходится вовремя не отданный техдолг. Нет, ну я и так догадывался, но когда идентичная ситуация перед глазами вообще каждый раз повторяется, можно и не гадать.

UPD
Да, и третье. Тупой говнокод лучше, чем оверинжиниренный (к вопросу про behaviors).
 
Последнее редактирование:

Adelf

Administrator
Команда форума
Я бы ещё добавил: я увидел какие огромные бабки может приносить тот самый говнокод, от которого мы все воротим нос. Мое отношение тоже поменялось в итоге. Я стал терпимее.
 
Последнее редактирование:

fixxxer

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

Я даже целую теорию тут построил. Потом, правда, узнал, что это правило сформулировали задолго до меня. :)

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

grigori

( ͡° ͜ʖ ͡°)
Команда форума
а я не про коде, я про людей,
любой бизнес - это организовать людей, а не писать код,
главный вопрос для руководителя - не код, а команда;
если для задач проекта нужны люди, которые не хотят работать с говнокодом, задача - избавиться от говнокода, чтобы собрать команду, которая сможет сделать то, что нужно.

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

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

fixxxer

К.О.
Партнер клуба
Понятно, что код пишут люди, а не сам по себе пишется. :)

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

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

fixxxer

К.О.
Партнер клуба
Я бы ещё добавил: я увидел какие огромные бабки может приносить тот самый говнокод, от которого мы все воротим нос.
Тут еще зачастую основная заслуга за теми, кто это все придумал и раскрутил. Временами даже обидно становится, как отличные идеи гробит фиговая реализация. И хочется помочь все это исправить, но все уже настолько запущено, что можно делать только небольшие локальные архитектурные улучшения, но в целом - https://i.pinimg.com/originals/57/2e/98/572e98f0bed333d5a7089c007282384e.jpg
 
Последнее редактирование:

grigori

( ͡° ͜ʖ ͡°)
Команда форума
у меня не временами - приходят с тем, что решение не работает, система лежит, закончить не
даже не плоховато, не изменить сложно, а не работает

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

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

AmdY

Пью пиво
Команда форума
@fixxxer и часто ты встречал убитые говнокодом проекты, которые нельзя дальше развивать?

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

В своё время менторил проекты на yii1, там ребята не осилившие сифони-ларавел спокойно со всем справлялись, при том что проекты пусть и росспильные, но не тривиальные, со своей логикой и годами гавнокода.
 

Adelf

Administrator
Команда форума
Не могу припомнить ни одного такого проекта за последние лет десять, кое-где даже то сих пор код из php4 успешно крутится.
Он же говорит не об убитых, а "Обычно худо-бедно работает, но для реализации новых бизнес-требований (даже небольших) требуются непомерные усилия, чтобы и сделать, и все остальное не сломать. То есть, сделать можно - но дорого и долго. ".

И понять, что ты долго делаешь вещи - довольно сложно. Людям не хватает кругозора чтобы понять. Я помню пришел в одну конторку поработать(как потом оказалось, всего на два месяца). У них там 150к записей в таблице и поиск текстовый был страшно медленный. Они и так и эдак оптимизировали процесс поиска в MSSQL. И вроде даже fulltext колонки юзали, но искало оно секунд 5-10 каждый раз(сейчас кстати думаю, что это очень странно, наверно с запросами перемудрили) В первый день попросили помочь с этим. У меня где-то день ушел на "поставить и настроить Sphinx" и поиск стал занимать тысячные доли секунды) Там в конторе у людей просто не было знаний о том, что поиск по базе можно делать как-то по-другому чем SQL запросами. Вот на таких проектах такая же примерно ситуация часто бывает. Есть система, она кое-как работает, кое-как добавляются фичи. "Зато стабильность". Вполне вероятно, что и у меня может быть такая ситуация, а крутой проггер быстро покажет пару архитектурных трюков )
 

AmdY

Пью пиво
Команда форума
Вот у нас на "идеальном" проекте была похожая проблема. Архитектор принял такое же решение, подпёр postgres через Elastic. Гемора из-за этого было много с деплоем и синками. А всё решалось через подключение экстеншина и даже запросы с ilike не понадобилось бы переписывать.
Люди не непогрешимы и средний уровень разработчиков невысок. Потому популярны простые решения вроде вордперса, опенкарта или этого же Yii 1.
Фиксер с напрягом, но разберётся с говнокодом на Yii, а вот средний специалист по yii не сможет во вменяемые сроки доработать то, что на своих высокоуровневых решениях соберёт Фиксер.
 
Сверху