Pull to refresh

Comments 180

мыши плакали, кололись, но продолжали есть кактус
UFO just landed and posted this here
Первая часть «Вместо вступления» очень хорошо описана и я согласен с вами, но на самом деле так можно сравнивать любую CMS с любым фреймворком.
Статья в целом все верно описывает, хоть и замечаются нотки страдания автора. Но как верно было замечено, маркетологи в битриксе знают свою работу и это позволяет быть продукту востребованным на рынке.
Тут есть определенная доля несправедливости. Ведь ничего же не мешает авторам Битрикса следовать тем же стандартам, что и фреймворки. Однако они упорно игнорируются. И это одна из самых больших проблем. Авторы CMS просто не прислушиваются к сообществу, и игнорируют его потребности.
Возьмите тот же Drupal. Они прислушались к сообществу и положили в основу 8й версии Symfony. Да, там тоже есть свои тонкости и шероховатости, но в целом оно стало на много лучше.
Если разработчики Битрикса прислушаются к таким постам, то возможно в будущем мы сможем получить годный коммерческий продукт.
Согласен с вами, но согласитесь тогда им придется переработать огромное количества кода, а это думаю будет им в убыток. С точки зрения бизнеса, потратить (все условно) 6 месяцев на разработку фичи/модуля или же это время на переработку старого, им выгоднее первое потому что во время презентации лучше сказать «Вы внедрили новую технологию „ФАу-хрень“» чем «Знаете мы тут пол года переработали старый код, так что нечего нового нету, но зато теперь это элегантный код, и ваши программисты будут визжать от счастья»
Дык это элементарно продаётся же.
Вот пример: «Мы переработали ядро на ядро Yii. Теперь найти разработчиков станет проще, с скорость генерации страниц увеличилась в 10 раз, теперь гугл сильнее полюбит ваши сайты и вы будете в топе поисковых систем!».
Или так:
«Мы переработали ядро, теперь это Битрикс 2.0 — еще лучше чем раньше. Вы можете сделать свой новый проект на битрикс управление сайтом старой версии, или же использовать Битрикс 2.0 и получить огромное конкурентное преимущество.»
1. Начальник: — Не, это наш конкурент, он забыкует и поменяет-что-нибудь и мы деньги потеряем.

2. С точки разработчика станет непонятно, зачем изучать Битрикс 2.0, если есть, например, Yii?
Да ведь по тексту куча ссылок на решения, которые уже сильно улучшают ситуацию.
Могли бы интегрировать это, использовать в своих решениях, пойти на диалог с сообществом.

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

Но есть один момент, я 10 лет разрабатываю системы на платформе 1С. Не смотря на то что платформа 1С это абсолютно другой проект, проблемы на 90% такие же.
Проблема в том, что тогда придется отказаться от обратной совместимости. И все те, кто уже, например, лет 5 поддерживают и развивают свой сайт встанут перед выбором того, что они больше не получат обновлений и нового функционала, а если они хотят новинки, то им нужно сделать свой сайт с нуля на новом битриксе.
Когда началась вся эта заваруха с D7, на конференции Битрикс всем так и сказал, что новое ядро не будет совместимо со старым вообще никак, мол «надо двигаться вперед, отказываться от устаревших решений» и т.д. Видюшку даже могу найти, где Рыжиков об этом рассказывает.
Однако нет, в итоге они решили пойти по пути обратной совместимости и слить старое и новое ядро, делая постепенный переход. Только вот совместимость от этого только страдает, регулярно что-то отваливается при обновлениях.А новый модуль интернет-магазина таки не имеет полной обратной совместимости совершенно официально.
Ну так как заявлялось, так и делает. Ядра между собой не совместимы.
Но есть большое НО! Битрикс никогда не заявлял, что выйдет новая версия продукта, где не будет старого кода и только новый код и что откажутся вообще от принципа обратной совместимости. Т. е. весь старый код продолжает работать. Методы заменяются заглушками, которые под собой содержат вызовы нового ядра. Весь новый код пишется только на D7. А все это требует массу усилий.
Например инфоблоки: огромная головная боль, как это все переписать на D7 и ORM, но так чтобы и весь старый код работал.
Проще было бы с нуля реализовать все это по новому, убрав сразу все исторические недостатки, возможно даже частично реализовав функционал по новому.
UFO just landed and posted this here
Для 1С это вообще не проблема: 1С 7.7 вообще не совместима с 8.0. Затем 8.1 совместимая с 8.0 затем 8.2 с Клиент-Серверной архитектурой, частично совместимая но по сути нужно все заново написать. Переход с 8.2 на 8.3 тоже задча не на на один месяц для больших проектов.
Все таки 1С: это другой случай. Цикл жизни 1С бухгалтерии иной, нежели сайта.
Да и если битрикс уже поддерживает обратную совместимость 10 лет, то нельзя вдруг все поменять. Да и в любом случае нужно будет поддерживать две версии (ведь старую нельзя совсем бросить)
Давеча делал анализ-разбор топа крупнейших интернет-магазинов в кое-какой сфере. Магазины на битриксе есть, да, в конце хвоста списка.
Что интересно, каждый (еще раз, каждый) из них в течении 4-х дней, пока я с ними ковырялся или падал или тормозил. Тормозил — это я называю от 7 секунд на генерацию страницы. Падал — это обычная ошибка «DB query error. Please try later. ».
Если говорить просто о топе интернет-магазинов в целом — то в нём (в самом конце) — только один битрикс — это эльдорадо. Прямо сейчас он генерирует свою страничку 1.7 секунд. И это не скорость загрузки картинок, не время загрузки страницы, это генерация страницы.

Причем видно, что люди изгаляются, от стандартных компонентов отходят (господа хейтеры, прошу хотя бы в этом посте перестать мне доказывать, что я ничего не знаю, и разработчики магазинов используют стандартные изкоробочные модули).
А можно узнать что за сфера такая «кое-какая», и топ CMS которые используются, вангую Magento, Prestoshop или самописные.
Если Эльдорадо, то, наверное, Бытовая техника и Электроника?
Не, эльдорадо это из ТОП 10 магазинов вообще: http://rusbase.com/news/top-100-ecommercer/ или http://www.ruward.ru/ecommerce-index-2015/
Кстати, какие CMS я не смотрел. А битриксы определялись сами по себе — если уродливые (субъективное) узнаваемые урлы в фильтрах, или же внезапные тормоза — лезу смотрю, да, битрикс.
Я посмотрю, если получится, отпишусь.
Кстати тоже это заметил, битрикс сразу в глаза бросается)
Первые топ 5 — не CMS. Остальные либо не определить, либо не знаком.

1. Фронтенд часть поверх CRM, не CMS
2. На Java или .NET (скорее Java) написано, не CMS
3. .NET
4. не CMS
5. не CMS

Разумеется, не Prestashop. Ребят, вы бы ещё youtube на джумле делали.
То есть стэк не PHP+Mysql, а упециализированные решения под конкретный бизнес? Тогда какой смысл их сравнивать с Битриксом который расчитан на широкую публику?
Потому что выше в комментариях Вы попросили. Я первоначально на это и не смотрел совсем.

Отвечая шире, можно сказать, что сравнение топовых магазинов с утилизированными решениями может охладить пыл некоторых заказчиков, которые должны решить, они «широкая публика» или хотят «как м.видео».
первый в http://rusbase.com/news/top-100-ecommercer/ Exist — это ASP.NET
Второй — скорее всего дотнет (они на ultima erp, которая написана на дотнете)
Не, ulima им только erp предоставляет, как сейчас, так и до того, как у них sap был. Кроме того, их (Ультимы) веб решение «просто добавь дизайн» использует битрикс (пруф) и Ultime EStore на Zend Framework (пруф).
А сайт делают не они, а ребята из DZ. Их профиль — Java, недавно (года 3-4) на .NET перешли.
Используйте wappalyzer, так быстрее узнавать на чем сайт.
Эльдорадо не на битриксе. И генерирует главную за 60 мс.
Эльдорадо на битриксе, может тупо глянуть код страницы. только у них и версия не за 50к и команда разработчиков своя
Извиняюсь, у них главная похоже не на Битриксе: на ней нет заголовка X-Powered-CMS: Bitrix Site Manager, а вот на странице с товаром уже есть. Либо главная кешируется целиком чем-то сторонним.
У меня сайт с открытками http://www.ktokogda.com/ тоже не показывает никак заголовков о CMS и генерируется за 60 мс, скорость достигается с помощью композитного кеша, а отключить заголовки не сложно. На локалке при разработке показывает вообще 6 мс., видимо сеть съедает остальное.
Кстати не вижу у них 60 мс, вижу 120 мс.
Композитный кеш наверное единственное, за что можно поставить плюс Битриксу. С другой стороны порог вхождения очень низкий, и можно наломать больше дров если делать не зная толком технологию.
Если за тормозитный композитный кеш ставить плюс битриксу, то люди способные скопипастить microcache в конфиг nginx очень огорчатся
микрокеш никак не поможет вам с персональными данными, корзина, данные аккаунта и т.п., эти данные должны вычислиться и подгрузиться фоном после того как страница загружена из мемкеша, в битриксе это как раз и решили композитным кешом. Почему он тормозной? у меня страница генерируется за 6 мс на локальном компе.
Окей, почему мне не нравится:
1. Не хочу платить 300к за снятие кнопочки
2. Революции не вижу, аякс подгрузка блоков или ESI — вполне известная гражданская штука
3. Насчёт персональных данных, корзины и прочих данных аккаунта не могу ничего сказать, так как один из сайтов статьёй которого хотел заручиться, работает на битриксе и лежит прям сейчас
1. Решается одним html тегом и стилями.
2. Понятно что это не революционная технология, просто удобная вещь из коробки. не нужно самому заморачиваться, только ставишь в компоненте метку, ложить в кеш, или грузить после загрузки страницы. Мне кажется это очень удобно.
Я не уверен, что ESI удобнее и практичнее композитного кеша, быстрее да, но мы же уже говорим про 6 мс., куда быстрее.
3. Ну тогда закончим сей спор ))
1. Решается одним html тегом и стилями.

Ой вей, как нехорошо нарушать лицензионное соглашение
Вы еще скажите, что фильмы с торрента не скачивали :)
Не силен в юридических моментах, но там вроде ничего не сказано про визуальное оформление кнопки.
Сказано, при условии «сохранения визуальной кнопки», а как и где вы её разместите, ваше дело. Они для этого даже предусмотрели проверку на пользовательский контейнер.
Понятно, что мы не говорим про уровень Эльдорадо, там никто не будет хитрить и зажимать 300К )
Собственно, не качаю, либо смотрю в кинотеатре, либо вообще не смотрю.
Но в этом году согрешил, Catch Me If You Can качнул, и чтоб совсем котолампово было, я его минут за 20 до вашего вопроса удалил
Она не генерируется за 6 мс, а выдается из кеша /bitrix/html_pages/<адрес_сайта>/<страница>.html
это понятно, я имел ввиду что страница загружается из мемкеша и отдается за 6 мс, выше так и написал.
Эльдорадо на битриксе, это 100% информация, так как я когда то работал на этом проекте :)
Эльдорадо вроде собирается мигрировать с битрикса на что-то java подобное. Буквально полгода назад набирали java-программистов для разработки магазина.
в итоге этот проект завершился провалом, поэтому пока все остается на битриксе, но действительно такая попытка была
В статье вы рекоммендуете изучать Symfony, Laravel, Yii. А что вы думаете про magento? может стоит попробовать его?
Как я писал выше, кроме битрикса мне пока не удалось плотно поработать с другими CMS.
Могу точно сказать о Magento (на основании того, что я читал о ней в интернетах), что это достойная альтернатива битриксу, если вы хотите сделать интернет-магазин. Он в своем движке тоже использует компоненты Symfony. Один из минусов, который не дает развиваться этой платформе в России, это тот факт, что там пока не хватает готовых модулей интеграции с различными партнерскими, платежными, логистическими системами, CRM.

Некоторые идеи в битриксе, насколько я знаю, перекачали как раз из Magento. Например конструктор скидок.
Magento — это пример того, как нужно делать современное коробочное решение для интернет-коммерции.
> В статье вы рекоммендуете изучать Symfony, Laravel, Yii. А что вы думаете про magento? может стоит попробовать его?

думаю будет не корректно сранивать их. Symfony, Laravel, Yii это фреймворки, в то время как magento это система управления интернет-магазинами
Будет корректно сравнивать Magento и Bitrix.
Я же рекомендовал изучать Symfony не столько, как альтернативу Битриксу, а как средство для получения более правильных навыков для веб-разработки. Да, на Symfony можно развернуть любое приложение, но это не всегда будет оправдано.
Magento требует не малый порог вхождения т.к. работает на ядре Zend(а) и имеет на первый взгляд сложную архитектуру.
Еще весомый минус — документация. Если бы не stackoverflow, все было бы очень плохо.

Я бы рекомендовал для начала начать именно с ZendFramework.
UFO just landed and posted this here
Так продукт и позиционирует себя как e-commerce, а качества кода там на очень высоком уровне, в полном мере использует все преимущества ООП, и архитектура продумана для своих целей на строгую пятерку.
UFO just landed and posted this here
ахахаха)) посмотрел, согласен, мне казалось в двойке уже нет таких классов. В любом случае если сравнивать этот код с кодом Битрикса, то это 5 из 5. Можно ли лучше сделать? Безусловно, но это можно отнести к любому продукту.

> Мы говорим только о e-commerce?

Так просто Маджента под другие задачи не годиться :) Поэтому релевантно сравнить их можно только по этому критерию.
Зачетный конструктор класса)
Хорошо вы говорили по сути только про интернет магазины, а как насчет корпортала?
Корппортал = Битрикс24. Я немного коснулся этой темы, но и в корппортале тоже активно используются механизмы интернет-магазина. Например CRM отчасти использует возможности торгового каталога и ценообразования, а сделки — это есть ни что иное, как заказы.
С Б24 мне приходилось работать, и работать с ним гораздо сложнее. Если вы хотите в Б24 доработать какой-то штатный механизм, то будьте готовы к тому, чтобы при следующем обновлении исправлять совместимость своих правок с новыми правками ядра, т.к. битрикс не следит за этим.

В остальном, все написанное выше, также относится и к корппорталу, т.к. он также построен на основе тех же принципов а-ля MVC и Компоненты 2.0
Позвольте узнать вы правите ядро? Или компоненты?
Опять же, в битриксе есть:
1. Сихнронизация с LDAP (да во фреймворках тоже есть), а тут из коробки
2. +- Чат корпоративный
3. Видеочат
И так далее.
Я не защищаю битрикс да местами он ужасен, но у него тоже есть своя ниша.
Нет, ядро править себе дороже выходит. В 99,9% случаев обходимся без правок ядра. На моей памяти это было лишь единожды, когда мне не хватило обработчика события еще до инициализации подключения основного кода битрикс.

Что касается стандартных компонентов, то сами компоненты в ядре мы тоже не правим.
Очень часто бывает проще написать свой собственный узкоспециализированный компонент, который решает узкую задачу и не зависит от других. В остальных случаях, если создание своего компонента неоправданно, то пользуемся теми средствами, которые предлагает битрикс, а это либо наследование компонентов (если они поддерживают), result_modifier.php, ну и в самом крайнем случае копипаста этого компонента и документированная доработка под версионным контролем.
Ниша есть.
А вы смотрели на другие продукты в этой нише? Он же не одинок там. Да, у него сильный маркетинг в РФ, но это же ничего не значит.
Можно примеры, на вскидку что видел:
Elma
Lement.PRO
и еще парочку.
исходя из статьи я так понимаю отечественный рынок катится кое куда (не весь конечно же)… это прискорбно.
не теряйте надежду. В российском сегменте IT есть качественные продукты (например Nginx, Parallels). Я был бы очень рад, если разработчики Битрикса принимали во внимание все то, что о нем пишут и двигались навстречу к сообществу.
UFO just landed and posted this here
Заказчик обычно приходит и говорит «Я вот купил лицензии на Битрикс, сделайте мне на нём сайт.» Всё. Можно либо сделать, либо отказаться целиком. Объяснять заказчику, что его уже развели — себе дороже, не поверит, обидится и решит, что это ты нихрена не знаешь и не умеешь — так ему морально проще.
UFO just landed and posted this here
юзайте webpack, который можно спокойно с битриксом подружить

Расскажите подробнее, пожалуйста.
Вы про локальный вебпак в ноде разработчика или о каком-то более плотном способе интеграции?

Ну да, про локальный вебпак. Все сырцы при разработке собираются вебпаком, и нативно подключаются битриксом с помощью какого-нибудь способа Asset-management'а (Классы Asset, или \CJSCore).
Точно также они собираются и при деплое. Благодаря плагину assets-webpack-plugin все собранные бандлы прокидываются в php с помощью связующего json файлика.

На самом деле у меня в задумках есть и более плотная интеграция, которая позволит хранить ресурсы там, где их предлагает хранить битрикс, т.е. непосредственно в компонентах. Но это пока в проекте.
То есть вы предлагаете, обычному магазину еще и nodejs тащить?
Почему бы нет? А в чем проблема? nodejs ставится в одну команду, зависимости из npm ставятся в одну команду. JS для большинства веб-разраотчиков не является преградой. Все хорошо и прекрасно.
Я же не заставляю вас использовать webpack. Вы можете точно также подключить Assetic из Symfony и пользоваться им, он на php. Но он что-то в последнее время не очень развивается, к сожалению.
nodejs легко ставится только большинство php разработчиков трудно поменять синхронный подход на асинхронный и не запутаться в колбеках
Это уже тонкости профессии
UFO just landed and posted this here
Assetic исключен из третей версии, предлагается использовать сборщики Webpack, Gulp, etc.
Он ставится на машину разработчика, на машину хостинга иногда приемлемо только итоговый файл ставить. Так что строго говоря на сервере node.js не обязателен. Но лучше конечно делать по человечески, как mmjurov написал.
сколько вы берёте за такие магазины?)
Сколько бы ни брали, все равно этого будет недостаточно для того, чтобы покрыть все то, что описано в этой статье :)
Зачем тогда брать?
У меня один коллега вечно обижен на всё, всё время ненавидит проект, над которым работает. На резонный вопрос — почему ты не уйдёшь, он ответил так: «пока мне платят столько, сколько я хочу, я никуда не пойду, это меня устраивает более чем».
Вывод только один. Суммы сделок покрывают то, что описано в этой статье.
Одно слово «Битрикс» у меня всегда вызывало раздражение, а теперь я знаю почему.
5 лет работать с ЭТИМ? Да вы очень терпеливый!
Жить захочешь — не так раскорячишься :) Вот, например, человек сам себе стандартную библиотеку написал code.google.com/archive/p/lib1c
Первый раз вижу, что кто-то использует английский синтаксис в 1С pastebin.com/iRqHinJu
Если вы с помощью визуального редактора поменяете параметры комплексного компонента, то файлик с настройками адресации (urlrewrite.php) будет перезаписан системой. Причем, если вы вдруг что-то неправильно там написали для других страниц обязательно что-то сломается без какого-либо предупреждения. На практике это может привести к потере работоспособности целых разделов сайта.


Ох как я плевался от этого, причем столкнулся в первое же знакомство с Битрикс…
Да, ваша статья пожалуй самая объективная из написанных на днях (ссылки на них вы приводили) — виден опыт работы как с «пациентом» так и с другими продуктами (популярными фреймворкам).
Если у вас нет выбора, то изучайте Битрикс, но в свободное время лучше все-таки пытаться погрузиться в мир фреймворков, чтобы поставить мозги на место.

Разве существуют такие ситуации когда нет выбора? Рабство и крепостное право вроде как отменили, а работу всегда можно поменять…
Я думаю да, существуют. Например в регионах, где Битрикс монополист. Для новичка может быть сложно переехать из региона в столицу, чтобы найти работу для начинающего в сфере веба. А работу с Битриксом найти в регионе не очень то сложно, т.к. берут всех подряд, низкий порог входа, можно очень быстро обучить.
Возможно и так, сугубо для тех кто не готов прыгать сразу «в овраг», сменить работу будет не просто. В принципе даже на битриксе, человек имеющий опыт (а точней знания) работы с адекватными MVC-архитектурами будет продуцировать вполне качественный код, но вопрос остается открыт — почему такого «качественного» кода до сих пор с огнем найти сложно, а само «ядро» битрикса и его документация пестрит перлами уровня junior и «программируем как умеем»? Из этого вытекает что над «битриксом» работают лишь студенты или те, кто не желает развиваться?

Я, например, сейчас живу в регионе (Челябинск), и тоже в начале своего пути столкнулся с битрикс и у меня остались точно такие же ощущения от него. Но вот я перешел на Python/Django и нарадоваться не могу и совершенно спокойно нашел удаленную работу, т.е. хочу сказать переезжать в столицу не обязательно.

Вы счастливчик, и видимо, обладаете хорошим чутьем и способностями к самообучению, что является очень ценным качеством!
Большинство начинающих, которые приходят к нам в компанию, не обладают не то что навыками Junior'а, они и просто не могут простейшую функцию написать. Такие люди особо не нужны никому на удаленную работу, т.к. их обучением заниматься удаленно банально физически невозможно.
Я, наверное, странный разработчик. Пишу под одну русскую CMS в основном, которой реальный конкурент разве что PHP-Fusion (но по коду он хуже: множество точек входа, строение — перемешка PHP. if...ifelse и HTML). Остальные CMS не интересны (у WP примерно такая же мешанина, Joomla тоже к себе не располагает). Смотрел Symfony2, но она как-то монструозна. В ней можно разобраться, но не понимаю для чего все эти навороты с 4 разными видами конфигов.

В итоге сейчас тоже ухожу в сторону Python, правда взял Flask — легкий и гибкий, это мне нравится. Django мне понравилась (в отличии от Symfony2 она более логичная, нет этих 100500 наследований и неймспейсов). Но для текущего проекта ее не стал брать, ибо кажется, что она заточена под определенные задачи (так ли это на ваш взгляд?), для чего и поставляются в ней «батарейки» (готовая админка, правда с русским у нее не очень. модель пользователя, ORM и прочее). Вот типовое на ней вроде магазина, блога делать за милую душу: модели, несколько вьюх, сказать админке что и как выводить — сайт готов. А если нужен профиль пользователя сложный, с разными видами авторизации — тут веселее (до какой-то версии с этим были трудности, как я помню).

Может где-то и плох мой подход, но я предпочитаю писать специализированное решение на чем-то минимальном, чем переопределять и перепилировать крупный фреймворк. Но в этом точно есть плюс: решение получается более легкое, производительное, заточено под требуемые задачи. Минус в том, что архитектуру нужно строить самому и тут можно накосячить…
symfony2, zf2, django, ruby on rails, всё это mvc фреймворке и очень похоже. У php есть композер и такие же готовые решения, и процесс разработки схожий, подымаете проэкт -> устанавливаете нужные компоненты -> определяете свои view и всё готово.
Знаю про все это, просто не понимаю чего это Symfony2 все боготворят и с радостью используют (я вижу в ней академического монстра). Видимо, проф разработка на PHP — не мое…
1. Не скажу за всю разработку на Bitrix, но то, что в коде мешанина — это да! Плюс к тому же на прошлой работе сайт был сдан, видимо, в спешке, так что пришлось погрузиться и в документацию, которая тоже «впечатлила». Вроде и чувствуется, что люди стараются всё разжевать, но сама монструозность и сложность системы не дает в короткие сроки усвоить объём всех знаний.

2. В общем-то п.1 не был моей основной работой, а больше приходилось работать с контентом. Соглашусь с автором, что создание разделов и страниц не всегда понятно и однозначно.

3. Уважаемый mmjurov и комментирующие, что можете сказать по поводу встроенной «Проактивной защиты»? Неоднократно приходилось вычищать сайты на других CMS (а после обложить либо chmod 555, либо прочими способами защиты), но сам видел и логи «Проактивной защиты», и не имел в этом плане проблем с Битриксом. Как обстоят дела в фреймворках из коробки?
Могу точно сказать, что проактивная защита решает те задачи, которые на нее возлагаются. Как мне кажется, этот модуль создавался для того, чтобы покрыть недостаточный уровень защиты того кода, который производят разработчики платформы. Мой коллега, пентестер Sudo, тестировал много разных сайтов, и битрикс оказывался наиболее защищенным по его статистике.
Но за все приходится платить, и модуль проактивной защиты добавляет свои сотые, а то и десятые доли секунды к общему показателю скорости генерации страницы.
Да, имхо так сказать:
Какой бы ни бил Битрикс, но обычно ничего страшнее XSS'ок не обнаруживается. Я тут не считаю за уязвимости phpinfo (и т.п.) на «секретном» url, смотрящие наружу репозитории и dev-ресурсы, слабые пароли или уязвимые версии установленного ПО — все это не проблема самого Битрикса, хотя и приводит в итоге к его компрометации.
Я думаю, на это есть несколько причин:
  • Наличие уже упомянутого проактивного фильтра в базовой поставке
  • Изначально платный продукт, из-за чего его вряд ли выберет подавляющее большинство компаний без выделенного бюджета «на сайт»
  • Малая распространенность самой CMS за пределами СНГ
Уточнение по последнему пункту списка:
Имею в виду, что по этой причине, в частности, в паблике практически нет описаний уязвимостей и эксплоитов под Битрикс

Например:
https://www.exploit-db.com/search/?action=search&description=bitrix
Знаю уязвимость в одном из «инструментов для битрикса» которые дают скачать в документации. Позволяет получить полные права на сайт. Подвержено очень много сайтов. Но в документации так и написано, что очень опасно оставлять такие скрипты на сайте. Это уже на совести разработчиков.
TL;DR — проактивная защита работает хорошо, но не является панацеей. С фреймворками ситуация всё равно лучше. Про Joomla-только печально вздохнуть.

У битрикса проблемы с уязвимостями видел (не связаны с проактивной защитой). Просто по FTP вирусом заливается файл, который спам шлёт. Тут проблема битрикса только в том, что чистить сложно и подход к работе связан с FTP, часто этот FTP для доработок выделяется заказчику. Ещё одна причина взломов популярных CMS — как правило, (не все, но многие) вирусы ищут файлы «index.php» и в них вклиниваются. У ООП фреймворков файлы называются Dispatcher.php или UsersController.php. Это на небольшую йоту понижает вероятность заражения.

Joomla, Worpdress тоже самое, а также взламываются из за уязвимостей. Гораздо чаще битрикса. Битрикс, взломанный изнутри через уязвимость не видел никогда.

Взломанных сайтов на Yii и фреймворков не видел никогда, ни в каком виде. Видимо, сказывается подход, например, код отдельно, публичная директория отдельно, загрузка кода через git, что легко палит новые файлы, доступ к базе данных и обработка POST запросов только через точно отмеренный REST, и в целом как то легче живется с этим.
В Yii нет index.php?
Я бы сказал скорее правильные выставленные права, потому как обычно при установке битрикса делают chmod -R 777 ;)
Их два. При этом оба — не в public директории. Т.е. даже после заражения вызвать их напрямую не получится.
Заголовок спойлера
{ yii2-master }  » find . -name  'index.php'
./framework/requirements/views/console/index.php
./framework/requirements/views/web/index.php



Два — не 1000. Меньше вероятность заразиться. А вирусы, которые лезут только в index.php, есть. Ясное дело, не панацея, но вероятность уменьшит — вирус просто не находит знакомых для него названий файлов. Многие находят папку components (джумловскую) и в них лезут, например.

Ну и да, выставленные права — один из аспектов подхода и экосистемы.
в паблике у yii2 есть index.php
но, ничто не мешает у www-data забрать права на запись туда…
Я прочитал треть статьи, где еще что-то понятно простому человеку, сам параллельно решил в это время сделать резервную копию своего магазина на Битриксе и он видимо понял что на соседней вкладке его ругают и решил не загружаться)

Мне, как простому пользователю, обидно что они до сих пор еще не сделали простую выдачу поиска с картинками из коробки, может хоть здесь прочитают, а то прямые обращения не сильно помогают.
Спасибо за статью, приятно было читать. Сам работаю с Битриксом уже 5 лет и готов подписаться под каждым словом. За это время стал тимлидом и попал в «золотую клетку», платят хорошо и стабильно, а работать с Битриксом — это боль каждый день.
У меня та же фигня была, правда я с Sharepoint работал, там боли поменьше, но все равно до «Best Practice» и «Как уменьшить скорость загрузки страницы с 700 до 400мс» далеко. Специально искал место, где я бы смог развиваться как разработчик, ибо реально стал чувствовать, что конечно и платят хорошо, и коллектив замечательный, но я уже давно не развиваюсь. В результате нашел, первые пару недель было довольно тяжело, новый коллектив, скрам вместо водопада — вот это все, весьма непривычно. Однако сейчас птички поют, все прекрасно, вместо боли с шарком изучаю ASP.Net Core 1.0, запускаю кроссплатформенное приложение на шарпе под линуксы, использую свежайший фреймворк… В общем, изначальные сомнения «стоит ли уходить из зон комфорта» полностью растворились. Стоит обязательно, если вы чувствуете, что не развиваетесь, потому что отсутствие развития есть деградация, вспоминаем Алису в стране чудес. Так что стоит бежать еще быстрее, и все получится.
Продолжаю убеждаться в том, что правильно советовал мелким магазинчикам не мучаться, а выбирать Wordpress + модуль онлайн магазина, которые развернуть можно в один клик на любом захудалом копеечном шаредхостинге, ибо магента сложна, битрикс смердит — на текущем продакшене одного проекта, который я переделываю с нуля на рельсах, цены надо менять минимум в 4х местах, если повезёт, и автор сего поделия уже сам не помнит, как это всё исправлять, хотя 10 лет назад это было огого!
Я не знаю, честно, что там используют клиенты в своих сайтах — каждый крутит как умеет, если умеет — у меня их сотни на каждом сервере.
Для тех, кто спрашивал — я рекомендовал как минимум wp-admin закрыть htaccess'ом на айпишники офиса/дома,
В панели управления хостингом, которую пишу сам — имею несколько идей для помощи клиентам, а так — я и php не очень совместимы, поэтому не подскажу.
Да и сам в феврале сменил wp на jekyll
Значит в WordPress с ООП и архитектурой стало все хорошо ?:)
А то что там миллион плагинов для кэширования надо поставить это так тонкость.
У меня собственный хомяк на WP грузится быстрее, чем корп. страница местной 1С франчайзи (на 1С-Битрикс) примерно в 10 раз. Генерация быстрее также в разы. При этом, у них сайт делали сертифицированные специалисты (тм), крутится он на нехилом дедике (тм), а у меня это VPSка за 5 у.е./месяц, на которой живет целая куча сервисов и сайтов, настроенная моей левой пяткой.
Насчёт ООП — я и php совместим на уровне phpinfo(), а вообще то, что я вижу по своим хостинг проектам и дружественным — сам по себе вордпресс стал очень и очень неплох — в 90% случаев ломают или криво написанные плагины/темы или это украденные плагины/темы с пиратских сайтов с закладками.
Про Битрикс правда написана, но где взять альтернативу редакции Бизнес по функционалу с грамотной архитектурой? Подобную статью про любую CMS можно написать.

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

Так грамотная архитектура и есть гарантия не зависимости от разработчика.
UFO just landed and posted this here
Самописная CMS — это CMS-от-студии или написать CMS с нуля для конкретного проекта? Потому что второе — это изврат извините, это лапша, говнокод и уязвимости, а первое — дешевле аналогичного функционала на битриксе зачастую, по наблюдениям.
«К слову, дорабатывать компоненты в коробочной версии Б24 — та еще задачка. Компоненты, которые генерируют js код, который с помощью ajax обращается к php коду, который в ответ генерирует html+js. Это адовая смесь, в которую очень не хочется погружаться.» — полностью поддерживаю. Пишу в коробочной версии, у некоторых компонентов просто нереально изменить вид, потому что это js, который прописан где бы вы думали? — ну конечно в классах модуля.
Отдельная тема — это обновления и техподдержка. После обновления перестал переключаться месяц в стандартном компоненте «Календарь». Ответили — мы знаем, мы делаем. Они тупо забыли засунуть в компонент код js. Жду второй месяц, пользователи нервничают.
Понадобился компонент выводящий таблицы, есть такой стандартный системный компонент grid, в принципе неплохой. Вся его беда, в том, что он системный — это значит, что на него нет документации. Официальное обоснование Битрикса — если вы разработчик, вы и так разберетесь, а если нет, то сломаете. Поэтому документацию grida мы писать не будем.
По поводу введения новых красивых фич. К сожалению ссылки не сохранил, но нередки подобные темы на оф. форуме:

Посетитель: Что-то не работает фича ххх. Просто перестала работать. странно, ведь в релизе обещали (ссылка на обещания)
Посетитель: Что-то ссылку закрыли… В бета-версии вроде работала…
Админ: Этой фичи больше нет.

Посетитель1: бла-бла… Кастомные статусы заказов коряво подгружаются на сайт
Админ: Разработчикам сообщено, скоро поправят.
[9 месяцев спустя]
Посетитель1: До сих пор не работает.
Админ: Уже поправили, в ближайшем релизе будет.
[ЕЩЕ 9 месяцев спустя]
Посетитель2: Как там что? Уже работает?
Посетитель3: До сих пор нет.
Это не «не редки», это норма для битрикса. Ощущение, что он хорошо рванул вперёд года четыре назад, а потом его убили маркетологи, которые быстро внушили программистам, что нужно деньги зарабатывать, а не мир к лучшему менять. В результате сначала были заброшены все направления, кроме интернет-магазина, а потом всё, кроме bitrix24.
А сейчас Рыжиков без стеснения говорит, что на рынке победят только те продукты, которые выпускаются недоработанными.
Мне страшно писать комментарии к этим статьям. Ладно, мне не страшно, я readonly. Очень понравился обзор, действительно наполнен пруфами. Особенно понравилось про интеграцию с 1С. Могу лишь добавить, что в том случае когда бизнеса у заказчика ещё нету и он покупает 2 коробки (1С Битрикс, 1С Предприятие), то интегрировать всё равно не получится. А знаете почему? Потому, что у заказчика как и у 90% реселлеров конкретный продукт идентифицируется по связке артикул+бренд, а не просто по артикулу. Я разговаривал с тех.поддержкой 1С, отгадайте что мне сказали? Мне сказали вести учёт по баркодам либо дописать обмен так, чтобы там присутствовали необходимые параметры. Нет, дописать не скрипт в битриксе, это само собой, не подумайте, что всё так просто, дописать в 1С Предприятие обмен. На языке мордора (ЕСЛИ, ТО, ИЛИ и.т.п). И тогда, в моём блин очень не стандартном случае всё будет работать. В общем есть бизнес, нету бизнеса — придётся заплатить интегратору + web-разработчику, либо поломать голову и выучить мордор-лэнгвич в 100% случаев. И нет, вы не исключение. И я кстати не знаю ещё что хуже, когда уже есть боевая 1С или когда знакомство с интегратором ещё предстоит…
Я тоже readonly. У 1С Предприятия много недостатков, но относить к ним русский язык в модулях как то странно.
Насчет «выучить» там в общем то практически стандартный бейсик.

Например что тут не понятно https://gist.github.com/anonymous/73fead42abf2b25e46b1c5d9ab4a8823? Непривычно? Вполне может быть но за несколько дней можно привыкнуть. Я пробовал писать используя английский синтаксис но довольно не просто переводить «бизнес термины» на английский язык:
ВВод показаний ПУ(Приборы учета), Закрытие дебиторской задолженности, МакетФормыНДФЛ2, АдресныеСокращения, АдресныйКлассификаторУСЗН, Бригады ТО (Тех обслуживания)

Да для всех этих терминов можно подобрать аналоги на английском, только зачем?

Я в целом понимаю почему в программировании принято использовать английский (это сразу понимаешь когда читаешь например код C# написанный на французом) т.к. при создании продуктов рассчитанных на WORLD не красиво использовать свой язык т.к. другим будет не понятно.

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

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

В общем на мой взгляд проблема «русского» языка преувеличена.

Очень приятно, два удивительно ленивых (readonly) человека (вы с 2011, я с 2012) встретили друг друга. Я не то чтобы совсем против русского языка в коде бухгалтерии для России. Скажем так, я больше против бейсика. Крути не крути — язык устарел. А когда он ещё и кириллицей, ну извините… Язык мордора получается. И Вы из года в год пишите на этом языке. Я так понимаю, что это больше нигде и не может пригодиться. Вот представьте: случилось чудо, компания 1С перешла на Ruby или Python и Вы будете не программистом бейсик-кириллицы, а программистом современного, востребованного языка. Вот я мыслю именно в таком ключе. Деньги деньгами, а инвестиции в себя (в знания) никто не отменял.
По поводу интеграции с 1С вспоминается случай. Года 3 назад одному клиенту ребята обещали сделать супер-пупер-магазин на Битриксе и даже с 1Ской его связать. Полгода попыхтели и слились со словами «у вас гранаты не той системы 1С v7, мы и Битрикс с такой не умеем работать»…
у нас даже близко не 1С, а Access, однако сопрягли через CommerceML2 используемый в 1С с Битриксом и все хорошо.
Ну так вы не мне, а тем ребятам расскажите :)
Есть 2 интернет магазина, которые я не люблю посещать из-за того что они дико тормозят, бывает по 10 секунд ждешь страницу и это не во время диких распродаж(во время распродаж сделать заказ там — настоящий чалендж), это штатная работа магазина. Эльдорадо и Дочки-Сыночки, сейчас проверил — оба на Битриксе.
Ну не знаю, эльдорадо довольно быстрый сайт, а вот есть юлмарт. Только мобильная версия и выручает.
Юлмарт иногда тормозит, но это редкость, я бы не назвал его быстрым, но скорость удовлетворительная, хотелось бы шустрее. А вот у Эльдорадо страница со списком товаров после применения фильтра грузится секунд 15 и это не время полной загрузки с картинками и скриптами, это время между запросом страницы и началом её отдачи. Кешированные ясное дело быстро отдаются.
Совсем недавно один мой старый давнишний клиент из штатов, после того как попробовал bitrix24 в облаке, поставил меня перед фактом, что, мол, купил standalone версию для установки на сервер, мол, хочу точно такой-же но свой — на своем хостинге. Мол, нужно все тоже самое, но чу-у-у-у-ть чу-у-у-у-ть подправить под свои нужды.
Зная, что клиент под чуть-чуть подправить обычно имеет ввиду довольно значительные изменения, попытался его отговорить — всё безуспешно. Клиент уже купил эту штуку, и советоваться с технарями в его планы не входило с самого начала. Ну да ладно, купил клиент этот Битрикс24 — будем работать — так как я работаю с Клиентом через Upwork на почасовой ставке — много работы это всегда много денег, а клиент всегда хорошо платил, кто мы такие чтобы считать деньги клиента. Причем Битрикс 24 это не Битрикс сайт — это полный фарш и стоит он значительных денег. Начали работу.
Вообще говоря, с самого начала мне бы нужно было занять более настойчивую позицию и убедить что затея не стоит усилий — Битрикс это не то что легко поддается модификации. Но, имея за плечами значительный опыт разработки под Web, мне захотелось познакомиться и с Битрикс тоже. В целом, да, все так как написано в статье, много кода который не просто с душком, а который давно умер и воняет…
Что можно сказать, я, конечно, видел код и похуже. Сделать простую модификацию какой нибудь ерунды выливается в то, что измененными оказываются десятки файлов. Работать с кодом вполне можно, код простой и понятный, но его много и написан он разными программистами в разное время. Если вдруг вы решили накатить обновление — все ваши изменения оказываются затертыми и надо всё делать заново, использование git частично решает проблему, но не полностью.
Кроме того, прежде чем купить Битрикс — продавцы уверяли что продукт на сто процентов open source. Однако, это оказалось наглой ложью — под open source они имели в виду что php код серверной части не обфускирован (хотя некоторые основные файлы все же оказались обфускированными). К исходным кодам, разумеется, не прилагалось никаких юнит тестов. Клиенты под мобильные платформы и настольные компьютеры идут без исходных кодов и заказчику, который купил лицензию они не предоставляются. Работают эти приложения довольно паршиво, у клиента из четырех компьютеров видеозвонки заработали лишь на одном — а поскольку исходников нет — исправить проблемы самостоятельно не представляется возможным.
В результате после года безуспешных попыток модифицировать Битрикс «под себя» решили от этой затеи отказаться, уж слишком долго и дорого выходил проект.
Так как клиент был старым и проверенным, ко мне вопросов у него нет — я с самого начала его информировал а таком финале, но зато теперь я получил незабываемый опыт «работы» с системой и могу аргументированно объяснять клиенту почему ему не нужен Битрикс. До этого я мог только ссылаться на чужой опыт.
«Если вдруг вы решили накатить обновление — все ваши изменения оказываются затертыми и надо всё делать заново, использование git частично решает проблему, но не полностью. »
Данное высказывание говорит о том что вы абсолютно не знакомы с продуктом, боюсь даже подумать что вы там год модифицировали
Чем же битрикс так хорош,
Стоимостью в тыщи?
Ведь внутри-то код на грош — Палки да говнище!
UFO just landed and posted this here
Сколь маркетинг ни крути,
Не заглушишь глас народа.
Битрикс, мать его ети,
Лучший сборник говнокода!
UFO just landed and posted this here
Интересно, я один нахожу забавным, что даже блоки на картинке для MVC не сочетаются друг с другом — у Компонента есть цифра 2, которая подразумевает, что у других должно быть 1 и 3, но у них их нету. (если только 2 — не часть иконки Компонента, но это не имеет никакого смысла).
2 — как раз часть иконки компонента. Это же Компоненты 2.0
Ну что могу сказать, автору хочу сказать спасибо за статью! Сам эти стадии, но к сожелению или к счастью не все пришлось пройти! Эти уровни! Я не понимаю почему он еще остается на плаву! Битрикс ужасно медленный, не продуманный, сомнительный, тьфу хотел его фреймворком назвать, вернее: его лучше назвать Кривая СМСкА, для рекламных агенств, Типа вчера будет сайт гоТОВ!!!
Полностью согласен. На хабре уже целая коллекция ужасов битрикса (к примеру habrahabr.ru/post/280226).
Но вот если подумать кому нужен битрикс?
Адекватному fullstack / backend / fronend разработчику — нет.
«true-менеджеру» (или человеку который не разбирается) который любит плюшки в интерфейсе и/или попался на рекламу — возможно.
Я понимаю как может мыслить руководство:
«Вот продукт А — он бесплатен, но имеет ряд недостатков, за ним нужно ухаживать. Создавать свой продукт — долго и не все могут. Потому мы купим продукт Б — недорого, вроде все есть.».
То есть человек не представляет что его за деньги (да небольшие) будут кормить экскрементами )).
Отчего же небольшие? Вот средний интернет-магазин, он же не остановится на коробочной версии и пойдет к партнерам, которые сделают его хотелки. А сколько час стоит у этих партнеров? А насколько говнокодеры там работают? Знаю пару вариантов, когда итоговые затраты на внедрение Битрикса превосходили по стоимости какой-нибудь небольшой отдел разработки оплаченный на 4-5 месяцев.
UFO just landed and posted this here
Я пол года назад переехал с битрикса на ruby. И вот недавно взял два заказа на битриксе. И я почуствовал разниц. То, что я на ruby пишу за 10 мин, с api битрикса, я с этим разбираюсь 2 часа.
UFO just landed and posted this here
Интересно, когда-нибудь снова появятся массово подобные статьи про PHP в сторону Ruby & Python?
Не вижу в них смысла. По одной простой причине:
Я знаю не одного, очень годных по квалификации и качеству кода, програмистов, пишущих на PHP, Python, Perl, RoR, Java, C#.
Некоторые пишут на нескольких из вышеописанных, каждый выбрал себе свой основной язык/Фреймворк, перебрав остальные в качестве альтернативы, где-то они помогли на проектах.

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

P.S. Я не Битрикс разработчик. Аминь.
Нужен интернет магазин со всеми интеграциями и прочее: на чем делать, если не на битриксе?
Наймите хорошего программера (teamlead-а), объясните свои требования и спросите у него.
А какие «все» интеграции вам нужны? Вы уточните — думаю, Вам подскажут.

По опыту могу сказать, что интеграция с платежками — задача не сильно трудозатратная даже «с нуля» (благо документация к API везде есть).

Насчет интеграции с 1С могу сказать, что если оно у вас без плясок с бубном сразу заработает с Битриксом «из коробки», то с очень большой вероятностью оно у вас так же без проблем заработает с большинством CMS, у которых либо изначально заявлена эта самая «изкоробочная» интеграция, либо есть модуль/плагин для этого дела.

> на чем делать, если не на битриксе?

Я не имею ничего против битрикса как явления, но я согласен с не раз уже озвученным здесь мнением «если Б не покрывает 90% ТЗ из коробки — стоит задуматься и прикинуть другие варианты».
Возьмите OpenCart, наймите студента, пусть делает нужные интеграции которых там не окажется. Получится не хуже, а то и лучше :)
OpenCart динозавр с сотней шаблонов, копипасты, и вообще не адаптирован для России. Его чтобы заточить нужно хорошо постараться, Без покупок модулей типа оформление в один клик с опенкартом лучше не связываться.
Во многом согласен с автором, особенно насчет того, что Битрикс отучает правильно кодить, да и отстал он уже, там до сих пор куски пхп.4 виднеются. Повторять не буду, просто добавлю — если изучить все его особенности (читай — косяки) и требования, то можно сделать приличный ИМ в разы быстрее, чем на других CMS, потому что в нем очень много заложено. Но не все освещено в документации, хотя у многих CMS и такой нет. Я его не защищаю ни в коем случае, потому что приобретение этого опыта обходится в годы, которые можно было потратить гораздо более продуктивно. Я просто был вынужден его приобретать, поэтому знаю, что говорю :) Ну а если пишем не ИМ, а что-то другое — тут Yii2 или вообще Django подойдут. Спасибо за внимание!
Для начала я предлагаю вам провести мысленный эксперимент. Давайте попробуем взять двух backend-разработчиков примерно одного возраста и примерно с одинаковым стажем работы (допустим, 1 — 1.5 года), только чтобы один из них работал все это время с 1С-Битрикс, а другой — с Symfony(например). Можно легко сравнить, с каким набором технологий работал все это время один, а с каким — другой, и какой в итоге набор знаний они получили за это время.

Мне кажется что вы слишком привязываетесь к инструментам. Сами инструменты изучаются очень быстро в процессе работы, если есть хорошая база. Symfony и PHP — это не база…
В таком случае и Битрикс, и Symfony можно рассматривать как инструменты. Очень быстро Битрикс выучить не получится, также как и Symfony.

Мой посыл тут был в другом. Если сравнивать начинающего разработчика под Symfony и начинающего разработчика под Битрикс с одинаковым стажем, то кругозор у них будет очень разный, и это не будет зависеть ни от каких базовых знаний. Ну да, если начинающим веб-разработчиком будет старпер из мира С++, у которого до этого был 10-ти летний стаж, то для него не составит особого труда быстро освоить все эти инструменты, но это совсем другой случай.
Да, можно познакомиться с дополнительным инструментарием и если разрабатывать под Битрикс, но… я как раз говорю о том, что Битрикс очень сильно этому сопротивляется, не в пример Symfony. Из коробки Битрикс не даст вам легко использовать инструментарий, а встроить его в системы вы сможете сами только после очень долгого изучения самого Битрикса, тогда как в Symfony уже все есть из коробки — бери и пользуйся.
Ну извините, тут уж от человека зависит, если он кодит на битриксе в рабочее время, а прийдя домой не занимается самообучением, то сам виноват.
Если оба этих начинающих будут дома заниматься самообучением, то оно по определению будет разным. Битриксоид будет пытаться изучить те инструменты, которыми Symfony разработчик пользуется в повседневной жизни, тогда как Symfony разработчик будет изучать те инструменты, о которых Битриксоид узнает только через много месяцев.
А может корни всего этого не в «нежелании слушать комьюнити и делать правильно», а в банальном желании повторить путь большого 1С и построить достаточно закрытое решение, с которым нормально могут работать только «свои специалисты». Вырастить таких вот «1С: Битрикс программистов», как ранее вырастили «1С программистов». Монополизировать по максимуму рынок с «желтой майкой лидера».
Если подрихтовать статью и заменить примеры получится вполне себе такой рассказ о доработке типовых конфигураций 1С. Тот же спагетти-код, структурное программирование образца 90ых, та же ломка доработанного функционала после обновление, раразработчики типовых не знают ни что такое ООП (вернее уверены, что это обращение к свойствам объекта через точку), ни про unit-тесты (их тоже делает комьюнити), не говоря уже об, прости господи, SOLID и интерфейсы. И ничего — цветет и пахнет. Плачем, колемся и продолжаем есть кактус.
Бизнес-модель один раз сработала и заработала огромный контингент поклонников в среде бухгалтеров и бизнесменов. Почему бы не попробовать еще раз. Рынок конечно более конкурентный, но кто сейчас вспомнить всех конкурентов 1С Бухгалтерии? Опять-таки «импортозамещение», а если не будут брать можно и какое-нибудь гос.регулирование подтянуть.
PS
Все вышесказанное можно считать параноидальным бредом :-).
Интересная точка зрения, которая, на мой взгляд, не лишена смысла.
Тогда уж надо было не на php создавать этот продукт. а написать свой язык пхп, с кириллическим синтаксисом, блекджеком и женщинами. С такими выходками нужно бороться, не давать им завоевать мир снова. Благо, альтернатив хватает пока, нужно только эту информацию донести до потребителя системы, нужно больше статей, хороших и разных, о том, почему Битрикс хуже и дороже будет решать задачи бизнеса, чем прочие решения.
" а написать свой язык пхп, с кириллическим синтаксисом, блекджеком и женщинами."… ну это все-таки радикально как-то… не взлетело бы… все-таки бухгалтерская система работающая для гос.органов и web — решение — это разные вещи. Но лейбл «1С» они эксплуатируют во всю. Ко мне постоянно приходят бизнес-заказчики с предложением докрутить Битрикс силами моих 1с программеров. Очень удивляются что там внутри не та же «1С Бухгалтерия». Большой 1С активно развивается в сторону web — так что 100% гарантии, что однажды Битрикс не выкатит новый продукт, который будет представлять собой написанный на JS клиент к решению на 1С Платформе никто не даст. Причем наверняка это будет свой самописный плоходокументированный фреймворк, который придется учить 1С и Битрикс программерам :-)
Я выше именно об этом и писал, аналогия с 1С: Предприятие прослеживается весьма четко.
Вообще Вы очень ёмко описали все проблемы текущей платформы.
И еще не стоит забывать, что цель компании — не написать хороший, красивый, оптимальный код, не сделать нам всем хорошо, а в первую очередь заработать денег. Они основные силы направили именно на маркетинг и в этом у них пока все получается. Они нам, в общем-то, ничего не должны, не хочешь — не работай с Битриксом, в конце концов. И опять же, я их не защищаю, сам немало непечатных слов произнес, пока изучал тонны «странного» кода и задавал себе вопрос «НУ КАК ТАК МОЖНО ПИСАТЬ КОММЕРЧЕСКИЙ ПРОДУКТ???». Просто стараюсь взглянуть независимо.
Маркетинговая пирамида, никаких иллюзий. Только что сайт СОГАЗа вернул 502-ую ошибку с уведомлением Bitrix Enviroment, а я всего-то хотел посмотреть Контакты.
Не скажите. Считаю ЭТО очень удачным проектом. Когда на заре эпохи мы нулили даталайф с одним рыжим мальчиком и у него появилась идея сделать СВОЙ, эта была революционная идея. Всем не давала покоя слава красивого «икс» в конце названия, с этого всё и началось… Ну и что, что сейчас это разросшийся мегамонстр, идея-то хороша, признайте! Самореализация и заработок неплохих денег, всё, что нами тогда двигало. Затем 1с и меддокс со своими мегаидеями, — выросло золотое дерево, обросло молодыми, которые даже не помнят, да откуда, что главная мысль «стартапа», тогда еще таких слов небыло, — это продажа коробки, И не поддержка системы. Тоесть, купи, поставь сайт, продай клиенту, вернее, возьми денег у клиента, купи битрикс и собери сайт как можешь. Не было других идей.
Это сейчас, когда любой молодой человек за пояс заткнет динозавра с 15 летним стажем разработки на коленке, нужно развиваться, а как? Такого монстра только заплатками, ведь денег то жалко на всё с нуля и возраст не тот.
Скажите, почему вы продолжаете работать с/на Битрикс несмотря на вот это вот все?
Ждал этого вопроса с самого начала :)
Если не брать в расчет личные обстоятельства (семья, ипотека), то переход к разработке на Symfony сейчас для меня будет большим дауншифтингом. Не говоря уже о других языках(Rails и Django у нас вообще, считай, нет). В мире 1С-Битрикс я обладаю достаточными знаниями, чтобы решать задачи любой сложности, тогда как мой уровень знаний Symfony не позволяет мне этого делать.
В моем регионе, по большому счету, и некуда уйти работать с фреймворками, т.к. Битрикс, считай, монополист. Если же появляются вакансии, связанные с разработкой на фреймворках, то они по уровню оплаты на 40-50% ниже того, что я имею сейчас, а личные обстоятельства (читай выше) не позволят мне так просто перейти на зарплату вдвое меньшую.
Я для себя сейчас выбрал несколько иной путь. Я хочу склонить компанию, в которой я работаю, к разработке на Symfony. Это принесет гораздо больше профита (как для меня, так и для всей компании в целом), при этом совсем не обязательно отказываться от разработки под 1С-Битрикс. Мы можем разрабатывать свои решения качественно, и знаем как это делать, благодаря накопленному опыту и коллективным знаниям, выложенных в Opensource.
Жаль что пост не в корпоративном блоге «1С-Битрикс» ;)
UFO just landed and posted this here
Лично я тоже ждал реакции от Битрикса, хоть какой-то. Но в ответ ничего не было, видимо были заняты подготовкой публикации по новой бот-платформе, а также примеров кода к ней, которые тоже не блещут наличием каких-то красивостей.
ребята, им просто срать, что это меняет, ну что?)))) Они перестали вступать в публичное общение давно, на график продаж это никак не влияет.
Это, к слову, тоже очень «одинэсовский подход». Зачем работать с разработчиками? Те же все время не довольны… какие-то умные слова говорят… архитектуру требуют. То ли дело бухгалтера да генеральные да прочие ЛПР. Вот туда все ресурсы и вваливаются… Кто платит, тот и заказывает музыку. Ну а если что не так, то «обратитесь к системному админитартору (программисту, франчу)».
PS
Тут есть блог разработчиков 1С: Платформы. Но при первых неудобных вопросах они всех отправили на Хотлайн 1С :-)
Разрабатываю под Битрикс уже 1.5 года, подписываюсь под каждое слово в посте!
Битрикс хорош своей административной частью. Если рассматривать интернет-магазин, то его функционал покрывает бОльшую часть потребностей среднего магазина. Через те же инфоблоки можно делать вполне хорошие каталоги товаров, есть всевозможные виды скидок, рассылок и прочего. Да, весь функционал усреднён и для уже состоявшегося интернет-магазина потребуется не мало доработок. Но то что можно получить из коробки — впечатляет.
Вообще, мне кажется битриксу стоит выделить некоторую часть своего продукта в опенсорс — например работу с инфоблоками, ORM, минимальный набор функций административной части, авторизацию, проактивный фильтр. Может быть в таком случае, получится избавится от тяжкого наследия ранних версий.
Но то что можно получить из коробки — впечатляет.

А много ли решений на маркетплэйц чтобы этот ф-ционал реализовать?
Насчет мультиязычности — посидел, подумал и сделал все в пределах одного сайта и без использования LANG-файлов, просто не смотрел на Битрикс, а сделал по-своему. Теперь добавить новый язык — полчаса труда программиста, а дальше в админке тупо вносить переводы в highload-блок, для этого они как раз подходят, простая табличка. Так что тут просто нужен свежий взгляд :)
Хм, как без ланг-файлов?
Не, я понимаю, их можно все слить в один ланг-файл на язык на сайт. Но это тоже ланг-файл. Это стандарт для большинства приложений — ланг-файлы все в одном месте.
Альтернатива — пихать все языки в каждый шаблон, но поддерживать такое — ад
14 лет разработки под битрикс. Подписываюсь под каждым словом. К тому же деградация битрикса в последние годы всё более заметна — продукт начинает развиваться сильно медленее, чем технологии вокруг. Даже появилось ощущение, что Рыжиков пытается из продукта выжать остатки, а потом забить на него, сконцетрировавшись на битрикс24 в облаке. Думаю, самим разработчикам в битриксе развивать CMS уже очень тяжело, проще всё выкинуть и сделать заново на том же symfony.
Sign up to leave a comment.

Articles