Комментарии 46
Но почему годы идут, а Битрикс по-прежнему продаётся?
За покупку Битрикса 1С откатывает веб-студиям (официально), а веб-студии − ЛПРам (неофициально). Вот и весь секрет.
За покупку Битрикса 1С откатывает веб-студиям (официально), а веб-студии − ЛПРам (неофициально). Вот и весь секрет.
1) Не 1С, а Битрикс-1С. Это две разные компании.
2) Почему ОПТОВАЯ цена вдруг стала откатом? Не любая студия получает скидку при продаже, а только авторизованная. Сперва квест нужно пройти.
3) Почему это вызывает негатив? Вот самое непонятное. Почему кто-nj должен работать БЕСПЛАТНО? Компания продает продукт. Логично, что она покупает его дешевле, а продает — дороже. В случае с Битриксом и с 1С — оптовая цена вполне адекватная и подогревает интерес к продукту. В случае с Microsoft, мне, извините, вообще не интересно его продавать. Мне интереснее клиенту продавить инфраструктуру на Линуксе. И клиенту сильно дешевле, и я при делах. А все почему? Потому что мне, как дилеру, отпускают винду дороже, чем авторизованный реселлер — конечнику.
4) В самой статье какая-то солянка. Знаю кучу примеров и когда интеграция с 1С из коробки заработала. Настраивали буквально пару часов. И когда клиент безмерно доволен. И разработчики довольны.
Joomla + VirtueMart. Это кошмар, а не интернет-магазин. У стандартного шаблона верстка едет так, что не собрать. Работа с характеристиками жуткая. Интеграции с 1С нет.
OpenCart — из коробки со стандартным оформлением — вроде работает, но с 1С нормальный обмен настроить так и не получилось. Компонент есть, обмен проходит, товары не появляются. Для типовой установки типовых продуктов — слишком много танцев с бубном.
А вот на битриксе, при всех его недостатках, интернет-магазин заводится с полпинка. Два часа работы и готовый магазин готов к работе.
И мне, как пользователю/программисту, интересны альтернативы. Может быть в Umi все прекрасно (не пробовал)?
Вы пробовали с полпинка поменять страницу оформления заказа в Bitrix?
Так речь не о том, чтобы что-то поменять. Речь о том, чтобы получить хотя бы рабочий продукт. Так вот на битриксе — он получается. На джумле и опенкарте — нет. Джумлу из коробки раскосячивает так, что дух захватывает. А у опенкарта такая кривая интеграция с 1С (платная, при том), что после установки, нужно сплясать шаманские танцы для того, чтобы увидеть свои товары на сайте. MODX, UMI — не видел. UMI кто-то хвалит.
Много платных (и довольно недорогих дополнений, среди которых есть и интеграция с 1С).
MODX хотя бы написан хорошими программистами и имеет очень дружелюбную архитектуру, хотя развитие этой CMF немного затормозилось в последнее время.
По сути Битрикс должен был бы стать сервером приложений на PHP на котором разворачивались бы легковесные компоненты. Судя по количеству свистелок, которые туда добавили. Для 2000-х вполне логичное энтерпрайзное решение. Но почему-то развитие остановилось где-то посередине. Вместо универсальных компонентов, куча конкретных решений, которые настраиваются копипастой. Вам нужен список — копируй компонент новости! (из собственных воспоминаний о битриксе 8-9 версии)
Я, как разработчик под битрикс, считаю, что в статье написан бред. Потому что главное достоинство битрикса — там уже есть всё и сразу. Это тяжело принять, я понимаю. Но факт — заказчикам сайтов не нужен красивый код и новые технологии. Это — средство. А цель — запустить проект. И битрикс позволяет это сделать
- быстро
- не привлекая «гуру» за 100500 денег
- легко найти/поменять разработчиков в случае необходимости
Так вот… Главный недостаток битрикса в двух вещах:
Во-первых, из-за высокой востребованности, под него кодят все — и те, кто умеет, и те, кого вообще к коду подпускать нельзя. Причем последних — больше. В итоге — создается ложное ощущение проблемности самой cms, но вы бы видели те проекты, которые я иногда получаю! Запрос к базе вложенный внутрь трех уровней циклов? Да без проблем! Желательно — на главной. Дозапросить из базы вручную те данные, которые сам компонент битрикса может тебе выдать, если ему поставить правильную галочку? Легко! Отрубить кеширование (основу платформы!!), налепить глобальных переменных (в документации к битриксу, php и учебниках по программированию прямо написано «не надо так!!!»), данные из которых протащить по 5-6 взаимноувязанным компонентам (в документации к битриксу написано на первых же страницах написано — «НЕ НАДО ТАК ДЕЛАТЬ!!!!») и, главное, еще и увязать всё это на обработке данных в $_GET и $_POST переменных в шаблонах компонентов (полностью противоречит идеологии кеширования, в документации русским языком, красным цветом выделено, что так делать — не нужно!) — это вот всё вообще стандарт для этих гениальных программистов. А потом у нас битрикс — плохой и тормозит, ага.
Во-вторых, проблема битрикса вообще не в том, что написано в статье. Его главная проблема в том, что он нифига не развивается. Последние три года от разработчиков только и слышно, что они пилят новое ядро и под этой отмазкой больше они вообще ничего не делают:
- компонент соц. сети толком не менялся уже кучу лет
- компонент форума — древний как говно мамонта и заниматься им никто не собирается
- банальные звездочки рейтинга к товарам (компонент) написан чуть-ли не до 2010 года и с тех пор не менялся. При этом в принципе не может работать, если надо эти звездочки вывести ко всем товарам в списке товаров, а не только в карточке (наиболее частый случай использования. Прям вот 99,9% клиентов это хотят)
- больше двух лет назад битрикс выкатил модуль для организации рассылок с сайта. С тех пор к нему не было ни одного обновления функционала. При том, что в списки адресов для рассылок, например, можно вручную вписать ФИО клиента (чтобы подставить в шаблон письма), но сделать это при загрузке из csv/текстового файла — нельзя (прям вот 110% клиентов, кому вообще нужны рассылки — в это упираются). Причем апи для формирования кастомного списка адресов написано каким-то извращенцем для галочки и в принципе неработоспособно, если туда пытаться засунуть хотя бы с пару тысяч адресов
- под новое ядро они переделали способ хранения данных оплат и доставок, расширив функционал (что плюс) и при этом убив совместимость у всех клиентов, кто ранее настроил обмен заказами с 1с. Вплоть до того, что если проект новый — это всё работает, а вот если он старый — то наступает полная жопа, которая решается разного рода костылями
- кстати, апи работы с заказами писал тот же самый гений, поэтому там, где раньше на старом апи вызывалась одна-две строчки кода, теперь вызывается пара десятков, причем в строго определенной последовательности и не дай бог ошибиться! Зато модно-молодёжно и на классах. Все это дополняется полностью отсутствующей документацией по новым апи в принципе и частично поломанной — по старым.
- компонент оформления заказа переписывал тот же гений, поэтому теперь она работает полностью на яваскрипте поверх json-данных, получаемых аяксом. При том, что это единственное место в cms где вообще сейчас есть такая схема работы и кроме того, это единственное место, которое вообще все переписывают под себя. Но «современный» шаблон — это просто адская жесть (300+ кб яваскрипта без единого комментария, который парсит адский массив данных из json и по ним строит весь html формы заказа — это жесть, честно)
- кстати, при оформлении заказа необходимо указать город — это базовая часть, по ид города вычисляется возможность доставки/оплаты и формируется список способов доставки/оплаты. Ид города это, фактически, ид строки в базе. При попытке актуализировать список городов, все старые заказы превращаются в тыкву, т.к. старые ид, записанные в эти города больше ни на что не ссылаются, т.к. этих записей в базе больше нет. Этой проблеме — больше десяти лет. Отдельный привет тем, кто использует geoip. В битриксе, например, в модуле аналитики есть поиск города клиента по geoip, но эта база закопана глубоко-глубоко и про нее никто не в курсе, а кроме того, список городов в ней вообще никак не связан со списком городов для заказов, причем русские/английские названия тоже могут не совпадать (например — для многих городов Северного Кавказа)
И там еще много-много-много таких же вещей. И если бы хоть часть из этого было написано в статье — я бы еще понял. Но человек, который использует шаблонизатор в битриксе (сложившаяся практика полностью отрицает использование шаблонизаторов!), использует прямые запросы к базе (в документации прямо, по русски, выделено цветом и жирным шрифтом в рамочке написано, что так делать — не нужно. А если прям вот очень-очень нужно — пишите свой модуль), не понимающий, что за широкий функционал битрикс расплачивается сложностью запросов к базе данных и кеширование в битриксе и предназначено для того, чтобы уменьшить тормоза и нагрузку на железо… Ну, не этому человеку жаловаться, имхо. Потому что документацию таки надо сначала читать, а не пропрыгать по всем граблям системы, отматериться и уйти прыгать на граблях в других системах, ага. А! да! и еще оставить «привет» клиенту, потому что когда на этот проект придут те, кто все-таки разбирается в платформе, то единственным выводом будет — «все сделать с нуля заново, это уже не починить».
P.S.: помнится мне как-то рассказывали такие же гордые разработчики, что клиент очень хотел битрикс, поэтому они запилили сайт на yii-фреймворке, поверх админки битрикса. Ну клиент же «хотел битрикс™»!!!
Больше всего меня бесило, что они везде пихали свой javascript BX, вместо использования того же jquery. Обосновывали это тем, что не хотели зависеть от сторонней библиотеки. А потом в новых компонентах тупо начали пихать bootstrap, например. Видимо, самих же свой код задолбал, плюнули, а разработчиков мучали десяток лет.
Вообще, у меня создается ощущение, что битрикс продается по инерции. Они активно занимались развитием в конце 2000-х, начале 2010-х, но сейчас они тоже понимают, что развивать такой продукт в нынешнем виде невозможно, поэтому просто его поддерживают и плавно подводят к скорой смерти лет через 5. Угнаться за рынком и создать современное решение они уже не успеют, да и не зачем. Битрикс как CMS дал очень хороший финансовый трамплин Рыжикову для развития Битрикс24. Думаю, что все силы давно переведены в этот проект, там просто больше денег в перспективе.
Так что если кто-то еще работает только с Битриксом, то осталось совсем немного времени актуализировать свои знания по PHP, выучить symfony/laravel, magentom composer, react, vue.js и прочие современные технологии.
у битрикса много проблем и их гораздо большем чем перечислил автор, вот только ни одна из них не попала в статью. жаль
Я не долго писал под Битрикс, но ощущения те же.
Главная мораль статьи в том, что Битрикс это вообще какая-то параллельная и крайне тупиковая ветвь развития стека PHP. Поэтому если ты себе мозг не сломал под Битрикс, то будет вечная боль. С другой стороны цена слома мозга довольна высока — ты на годы отстаёшь от мейнстрима, если варишься только в Битриксе.
Одна из основных проблем битры это обратная совместимость, что в сочетание со сменявшими друг друга подходами дает веселый зоопарк. Сейчас они хотят прикрутить туда vue не потеряв свой BX.create и работоспособность всех своих старых компонентов, и желательно чтобы старые компоненты могли работать одновременно с сайтом на частично на vue. Что же, посмотрим.
А вообще битрикс это инструмент, он может хорошо решить две задачи — создаить интернет магазин без особых навыков программирования, одной настройкой стандартных компонентов. Либо немного изменить внешний вид этих компонентов. А если вам надо сменить поведение оформления заказа, готовьтесь к боли. Все остальное по интернет магазинам к счастью можно решить стандартными средствами если не лениться искать как их так и правила их правильного использования. Если вам не интернет магазин и вы не знаете битрикс, ну что же тогда уже спорьте с менеджером, думаю аргумент бесплатности других решений решит вопрос.
1. В Битриксе нет MVC, вместо него используется архиктектура «песочница». Я её называю метод плюх. Создаём пустой index.php и кидаем туда чего не попадя — контент, вызов компонентов, запросы к БД и тд. Так создаются страницы в Битриксе! Одного этого достаточно, чтобы забраковать эту систему. Неразделённая логика порождает кучу проблем: сложно и неудобно менять внешний вид сайта, неэффективные ajax запросы, много лишних файлов и тд.
2. Битрикс очень медленная и ресурсоёмкая CMS. На всех конференциях по Битриксу докладчики говорят, что скорость сайта очень важна и намекают на то, что Битрикс работает быстро. Сколько не встречал сайты на этой CMS все работали очень медленно.
3. В документации к Битриксу написана большая статья, что всю работу с БД лучше вести исключительно через ORM, а не прямыми SQL запросами. Здравая мысль, только ещё бы эта ORM была бы нормальной. Чтобы удалить или изменить несколько строк в БД надо запустить PHP цикл, который построчно выполнит нужную операцию, хотя все БД позволяют это сделать за одним запросом! Причём указать строку можно только через id, а если его нет, то надо сначала его получить.
4. Очень сложно и неудобно вести разработку на Битриксе. Частично это следствие выше названных проблем, но так же из-того что разработчики подходят весьма не гибко. Как-то раз мне нужно было чуть-чуть изменить корзину товара, но посмотрев сколько мне придётся сделать сопутствующих правок, пришлось от этой мысли отказаться. По этой причине не рекомендую веб студиям надеяться, что если они продадут сам Битрикс, плюс шаблон к нему они получат лёгкие деньги, даже если заказчику не нужны будут «перламутровые пуговицы». Кстати автор статьи не прав, программисты на Битриксе получают весьма неплохо, наверное это компенсация за все те мучения, которые они испытывают.
5. Очень плохо приходится и человеку, который добавляет информацию на сайт. Визуальный редактор там свой и его поменять никак нельзя. Работает он крайне плохо. HTML код получается сумбурным и «замусоренным».
6. Если что-то в Битрикс попадает оно там остаётся навсегда, старые методы не удаляются. Даже более того, если открыть свежий дистрибутив Битрикса, то можно встретить такие конструкции, которые рекомендовались ещё в PHP4. Например объявление атрибута класса через var.
Я преклоняюсь перед маркетологами Битрикса, что столь плохой продукт они ухитряются успешно продавать, а он стоит весьма недешево, при этом столько существуют полностью бесплатных решений. Да и вообще очень многие около компьютерные люди в России скажут, что Битрикс самая лучшая система для создания сайта.
2. Кэширование во многом решает проблему быстродействия.
3. ORM в новом ядре D7 позволяет передавать массив id для удаления (Bitrix\Main\ORM\Data\DataManager::delete()).
4. Со сложностью разработки абсолютно согласен. Из-за того, что разработчики Битрикс во многом не предусмотрели возможности кастомизации — приходится временами городить лес костылей, чтобы не вносить изменений в ядро.
5. Делал кастомизации для визуального редактора через событие «OnBeforeHTMLEditorScriptRuns», теоретически можно и поведение редактора так поменять.
6. Это так, даже новое ядро добавили параллельно со старым, чтобы не рушить совместимость.
В целом, со стороны программиста много боли. Самая жесть — это страницы админки: 2000+ строк лапши из PHP, HTML и JS — обычное дело в Битриксе.
2. Не правда, даже с включенным кэшем сайты на Битриксе работают очень медленно.
3. Не уверен что это правда, но даже если и так, то сколько пришлось ждать это «счастья», во-вторых почему нельзя отобрать записи по другому полю? В БД данных такая возможность есть, в других CMS'ках где пошли чуть дальше одних только прямых SQL запросов то же есть.
5. Другие визуальные редакторы имеют свои нюансы, но во общем и целом работать в них комфортно и добавив к ним своих плагинов можно было бы реализовать свою архитектуру — песочницу, но почему-то в Битриксе так не сделали.
Битрикс это единственная CMS, где используется кодировка CP-1251 и в некоторых местах ты должен писать только на ней, но никак ни на UTF-8.
2. Зависит от множества факторов. На любом движке можно сделать тормозящий сайт и быстрый.
3. Правда: bxapi.ru/src/?module_id=main&name=DataManager::delete
В документации написано, что метод появился с версии 12.0.0 (октябрь 2012 года).
4. В Битриксе много чего не сделали изначально, а некоторые вещи перестали обновлять, так что исходный код попадается прямиком из 2000-ых.
6. Если разработчик при установке не выбрал UTF-8 — это вина разработчика. UTF использую везде с 2010 года — никаких проблем не возникало.
Тех поддержка Битрикса это АД! Я давно не сталкивался с таким отстойный сервисом. Например, когда я столкнулся с таким сервисом в МОЕМ СКЛАДЕ я быстро свалил в Бизнесру, но тут свалить сложнее… и на данном этапе не могу. Я уже купил малый бизнес и вовсю готовлю сайт к продакшену через пару тройку недель. Переодически возникают вопросы, в данный момент в плане интеграции битрикс + бизнесру, так вот при импорте товаров не импортируются модификации. В бизнес ру сказали, что все делают по CommerceML и вот мол можете скачать Ваши же файлы там то и показать Битриксу…
ок — создал заявку, объяснил с кем интеграция, сложил файло, жду…
проходят сутки!!! Битрикс пишет:
— Сдайте, пожалуйста, проблему в поддержку установленного решения Бизнес.Ру
Мы оказываем поддержку в рамках стандартного функционала Битрикс
— я пишу вы офигели, текст читали вообще?
проходят еще сутки:
— Уточните, каким образом получены данные XML файлы? Согласно каком API и куда они отправляются?
рукалицо! как так можно? я заплатил за битрикс, туда входит поддержка где написано про SLA даже! а они мало того, что долго отвечают еще и не хотят работать…
я в бешенстве… даже не знаю что делать с ними…
Такая техподдержка в битриксе — норма.
Более того, любая информация, которая есть на форумах, или изначально ошибочна, или же приведенный код в принципе не может работать. Т.е. не зная платформы, понять в чем проблема в большинстве случаев скорее всего не удастся. А если уже знаешь — то видишь идею решения и все равно делаешь уже по-своему. Я очень сильно подозреваю, что это делается специально. Понимают только те, «кто в теме», а остальные — вынуждены им платить.
CommerceML разработан фирмой 1С, в которую в том числе входит Битрикс. То, что какие-то
Напишите, пожалуйста, номер диалога или адрес вашего портала личным сообщением, разберемся в ситуации.
они открыли этот АПИ для других контор, это их фича, С КОТОРОЙ они продают свой продукт. Им пишут, вот мы шлем по Вашему АПИ инфу, считаем ее верной, проверьте…
— не наш стандартный функционал — платите деньги… может повезет, разберутся.
Ну представьте, некий Вася паяет на коленке магнитолы для автомобилей, а потом оказывается, что у его магнитол кнопки на руле не работают, потому что он нормально CAN шину не осилил. Но вы почему-то предъявляете претензии не Васе, а производителю автомобиля, чтобы тот поправил руль.
Битрикс для программиста и менеджера: любовь и ненависть