Pavel
Всем привет, ребятки, сделал офигенную сборку для разработки и рассказал почему докер это заебись https://modx.pro/solutions/20120
Миша
Хорошая статья но нет
Миша
Я ещё за столько лет работы не разу не наткнулся на компанию где использовали докер
Dmytro
Используем докер правда не под все проекты )
Pavel
Да и сборка делалась не для modx'a просто хотелось показать людям по ту сторону баррикад насколько разработка, деплой и работа вообще может быть удобной даже в modx, не нужны не gitify (или как там этот высер называется) ни конфиги править каждый раз не надо, все происходит автоматически, база автоматически дампится, автоматически разворачивается, конфиги автоматически прописываеются, деплой также происходит в авторежиме
Dmytro
Dmytro
И что будет если 2 разработчика внесут правки в базе, оно ж не смердитьс
Dmytro
А если все делать в 1 лицо то само собой все будет работать но там тогда докер не надо:)
Pavel
Ну ладно, проблемы не такие уж и огромные, но значительные
Dmytro
А все понял а то я уж думал нашли магию для модх :)
Pavel
Если тебе нравится писать конфиги под каждый проект, разбираться с десятками/сотнями записями в hosts устанавливать на свою машину десятки не не нужных сервисов и конфигурировать их просто чтобы пару раз поправить на пере уникальных проектов ошибку 404 и прочие прелести разработки не под докером - пожалуйста
Pavel
Я уже молчу что бывают случаи когда на твоем железе все ок, а на сервере не ок, и начинаешь сравнивать свои и серверные конфиги
Pavel
И я не только про конфиги nginx, я больше про конфиги редисов, мемкешов, php-fpm и т.д.
Dmytro
Да мы просто на дев сервере работаем и все. Для модх это самый оптимальный вариант
Dmytro
Опять де в рамках модх это окружение стандартно
Dmytro
Но опять же я за докер удобней в нем :) просто не решает проблемы командной работы и миграций в модх
Dmytro
Dmytro
Подсказки в композере есть уже в пхпшторм
Ну а если докер юзать то логично что и на сервере
Pavel
А какие с композером проблемы ? В рамках ево используем на всех проектах
И тут начинается веселье, например ты сначала устанавливаешь на локальной машине, один из компонентов требует какое то php расширение которое у тебя есть у тебя все ок установилось, vendor спокойно выкачивается на сервер и на сервере все падает, потому что там какого то из php расширений нет
Dmytro
Pavel
Dmytro
Pavel
Так оно первым алертом скажет что доставить и все
Это если у тебя vendor не выкачивается при ctrl+s а для этого нужно каждый раз в deply добавлять его в исключения, ну и опять же, делать composer install/composer update каждый раз на сервере и локально
Pavel
Pavel
Если у тебя нет файлов библиотек локально, а они есть только на сервере то подсказок не будет
Dmytro
Dmytro
Так а в чем сложность 10 раз выполнить композер апдейт ?
Dmytro
Понятно что удобней с докером но в таком ключе это не сильно спасает + потом скорей всего на проде вообще шаред будет без ssh
Pavel
Так а в чем сложность 10 раз выполнить композер апдейт ?
Да нет сложности вообще ни в чем, и базу данных можно через ручками переносить, и конфиги для каждого проекта прописывать, и 100500 раз править 4 файла config.core.php и через FTP закидывать файлы а не через какой нибудь rsync и т.д. и тому подобное, но когда ты делаешь это десятки раз в день, это очень и очень надоедает
Pavel
И логи наверное самое безобидное, некоторые либы генерируют целые компоненты
Dmytro
У меня проблема с базой ибо работает минимум 2 человека и получаем боль которую докер не разруливает :/
В целом есть костыльное решение но в целом данная проблема из за того что контент и структура это одно и тоже в рамках МОДХ
Dmytro
Дошли до создания новых страниц шаблонов и тв через миграции
Dmytro
Тогда пофиг на контент и удобно работать
Pavel
Pavel
Я когда в студии работал мы несколько раз пытались как то организовать работу над одним проектом двух бэков, так и не получилось, легче отправлять 1 бэк - 1 проект
Pavel
И сроки говорить соответствующие
Dmytro
Dmytro
Вот банально делали на ларке проект на админку ушло дофига хотя в остальном удобнейи комфортней работать
Pavel
Pavel
Я уже молчу о том что есть автогенераторы админок, не приведу сейчас ссылки т.к. не до этого сейчас, но если вечером напомнишь - поищу, там вообще все делается одной командой и пару конфигов настраивается после
Pavel
Короче скорость разработки на фреймворках вполне может быть такой же, как на CMS, все зависит только от опыта использования тех или иных пакетов
Pavel
Dmytro
Проблема в том что все админки на фреймворках печальные, модх на голову выше.
Ну и тут вопрос по большому счету в бюджете, ибо не ларке в любом случае дороже а не всегда это вписывается в бюджет клиента
Pavel
Короче в этом плане у меня двоякое чувство, с одной стороны у меня действительно админка modx вызывает восторг, с другой у меня уже не один клиент у которого один проект на modx и один на ларе с орчидом и еще никто мне не сказал что им что то не удобно там или там
Dmytro
Вообщем тут да нужно подбирать инструмент под задачу а не наоборот
Dmytro
> сейчас все хотят конструкторы контента а это у нас есть в том же орхид такого не видел
Ну в фриланс практике я уже три года как специализируюсь на интернет магазинах, а на работе поддерживаю один большой проект, по этому таких требований не слышал, но насколько я понимаю для этого достаточно всего лишь какой нибудь JS библиотеки, в орчид нет проблем сделать поле на которое будет вешаться какая нибудь либа
> Вообщем тут да нужно подбирать инструмент под задачу а не наоборот
Скорее под главную специализацию, я пока полностью не перешел на фреймворки пытался совмещать и modx и фреймворки, в итоге под простые задачи на modx у меня уходило в несколько раз больше времени, чем под сложные на том же laravel, просто потому что в modx у меня уходило 30% времени на мат, еще 50% на то чтобы заставить себя испытывать боль при разработке и только 20% на работу
По первому да все можно но нужно потратить ресурсов что б обкатать все дело
По второму я очень рад что не влез в рево и что в ево впилил основные штуки с ларки:
- базовая логика разработки стала легче, меньше костылей, один блейд и елоквиент стоят многого
- да и сейчас проще накидать с нуля, само собой навыки разработки маст хев, вариант все кнрпочками теперь не вариант :)
Pavel
Dmytro
Dmytro
У нас тоже основная специализация екоммерсе притом зачастую хотелки далеко не стандартные.
Dmytro
Сейчас кстати хорошее решение под Ево: http://docs.evo.im/04_extras/commerce.html
Базовые потребности закрывает
Dmytro
Да нет кучи модулей как под минишоп это да.
Dmytro
Но в целом с теми модулями что мы делаем под проекты там только с нуля ибо совсем не стандартные штуки
Pavel
И это еще без всяких 1С, складских учетов и тому подобному
Pavel
Так что не проблема сделать корзину и оформление заказов, проблема в том, что под ними)
Pavel
Для корзины и оформления заказов есть даже JQuery либы если уж на то пошло, которые хранят все в куках, по этому тут даже бэк не обязателен
Pavel
> Что есть им ?
Это скорее филосовский вопрос, нежели практический :D
А если без шуток, средний ИМ, это еще минимальная логистика, рассылки, и расчеты доставок и оплат, "виртуальные" и "физические" товары
Все это еще должно работать через гетевеи для легкости интеграции новых решений и быстрого переключения и т.д. и т.п.
А, ну да, конечно же еще какой никакой менеджмент заказов с историей заказов, системами лояльности, статусами и т.д.
Dmytro
Ну так а что мешает сделать рассылки ? Просчеты доставок ? Интеграции ?
Dmytro
Я вот не вижу ограничений в рамках модх хоть рево хоть ево в целом если не стандарт делаем то все равно самому пилить все
Pavel
Ну так а что мешает сделать рассылки ? Просчеты доставок ? Интеграции ?
Необходимость неплохо так заморочиться с изменением админки, а учитывая что твоя админка далеко не орчид по расширению и удобностью добавления новых пунктов, с таким количеством самописной логики гораздо быстрее будет сделать все это в орчиде где одной командой генерируются целые админ-модули
Dmytro
Dmytro
Мы вообще такие модули пилим с логикой рестАпи
Dmytro
Тогда у тебя есть отдельно компонент который отдает данные и интерфейс :
- легче пилить
- легче дебажить
- проще работать командой
Dmytro
Проблема в автогенерируемых админках что они по юзабилити страдают :/ нет многих вещей которые хочеться. Вернее со стороны разработчика пофиг можно править и хорошо
Dmytro
Но менеджерам не удобно и я вижу такие штуки когда на событие где можно в 1 клик уложиться нужно делать 5
Pavel
В чем сложность в админке вообще не вижу. Расширяй как хочем любыми модулями.
Ну смотри, тебе как разработчику этой админки нет вообще никаких сложностей, а мне, как ее пользователю совсем не хочется вникать в твой код, в орчиде я выполнил одну команду, у меня сгенерировались модули где сам орчид говорит "Братан, вот тут пиши код, остальное не трогай, вот там документация как сделать все что угодно в этом модуле, гудбай" и все, больше мне ни в чем разбираться не надо, и можно отключив мозг на автопилоте просто работать