Pull to refresh

Comments 183

Судя по краткости вашего списка вы сталкивались с весьма ограниченным количеством продуктов 1С — иначе список был бы больше.
Не критикуют — потому как бесполезно.
И судя по
Знаком с 1С начиная с версии 7.7 Являюсь сертифицированным специалистом по платформе v8
у вас скорее всего уже проф деформация (к сожалению никто из нас от этого не застрахован) и рассказывать насколько ужасны эти продукты в «подкапотном пространстве» (я имею ввиду работу с ОС, с базой данных) будет бесполезно.
При чем тут список продуктов? ТС рассказал о доставших его бедах. Часть мне тоже показалась «на любителя». Например менюшки мея никогда не парили. А вот с «фсе функции» — да, актуальненько. Мало того, что ее нужно включать отдельно, так еще и после каждого вызова лезть вверх, вызывая ее. Особенно запарило, когда я чинил базу со слетевшими индексами обмена. Про Ctrl-P ТС конечно погорячился, но в целом мысль верная.
Часть вопросов я просто видимо не задевал, цвет баннера менюшек — просто восхитил!
Опять же с лицухой, точнее с окном — тоже траблы. Сделалибы компактным и легко копируемым (в одно-два касания).
Так что мнение ТС имеет право быть, мне кажется.
Про ужастность — да, согласен, но продукт в типовом варианте заточен под определенные нагрузки. Надо круче? Тюнинг! Это массовый продукт! БП не рассчитана на 100 пользователей с 1000 документов каждый, но и стоит в пределах 20 тыс. ERP рассчитана, но стоит как крыло самолета.
А в чем проявилась «профдеформация» топикстартера?
На всякий случай поясню, торопился немого.
Первые менюшки
Например менюшки мея никогда не парили
-это которые в режиме пользователя, горизонт или вертикаль. Мне очень нравится вертикаль, но горизонт (ЗУП например) — так горизонт.
цвет баннера менюшек — просто восхитил!
Это про окна меню в режиме конфигуратора.

Про проф-деформацию метко подмечено. Чего стоит только вот это:


Думаю всех бы устроило Ctrl + P

Для нормальных людей это быстрый вызов окна печати документа. Т.е. системные горячие клавиши, причем не только в Windows. Меня бы сильно и неприятно удивило поведение программы, которая по Ctrl + P не выводит документ на печать.
Но автор все равно молодец :), хотя бы просто по тому что ему хватило решимости и усердия написать эту статью в ключе Критикую/Предлагаю.

Пойду снесу Visual Studio Code, да и Sublime заодно)

// Хотя когда нажимаешь Ctrl+P, думая, что ты в редакторе или консоли браузера (а ты не там), эффект бывает сюрпризовидный.

PPS (для тех кто не в теме). В профредакторах кода Ctrl+P «нечёткий поиск». По нажимабельности хоткеев уступает только Ctrl+S и копи-пастам. Де факто промышленный стандарт.
Эти текстовые редакторы в принципе не умеет в печать. И это очень печально.
В целом согласен. Остался непонятен один момент:
Вам нужно сделать тоже самое, только подключаться нужно не к Windows, а только к процессу 1С, который мы специально запустили на отдельном компьютере, допустим сервере.
Мне почему-то казалось, что в тонком клиенте так и происходит. И под слабые тачки я просто рекомендую 8.3 в клиент-серверном варианте. Буквально около полу-года назад дошло до того, что один из заказчиков после нашей демонстрации принял решение взять сервер начального уровня, серверную лицуху, а в качестве локальных машин поставить «компы из подсобки» (ну, он их мысленно туда уже убрал, мысленно плача над ценой новых тачек).
И могу сказать, что бюджет внедрения был уменьшен на 19% от предложенного самим заказчиком.
Ну а в остальном да, особенно предложение по цвету рамок — реальный зачот, камрад!
Я бы сказал, что это переизобретение Remote App, но я не силён в 1С. Только недостаток Remote App перед тонким клиентом один — извороты с печатью.
Ну вряд ли, RA — полностью выполняется на сервере, кроме отрисовки, тонкий — есть процессы, которые происходят на локальной тачке. Другое дело, что сложные отборы как-раз вынесены в серверную часть.
А так да, идеологически вполне возможно, что RA. Правда с таким же правом можно и переизобретением ВЕБ-клиента назвать, если бы последний появился раньше :).
Не то что бы прям уж извороты, но некоторые проблемы имеют место быть, да…
Если изобрести Company Viweer, то есть проблемы взаимодействий:

  1. С файловой системой пользователя
  2. С локальным оборудованием
  3. С печатью

Наверняка в фирме «1С» думали об аналоге RemoteApp, но видимо что-то не устраивало в архитектуре.

Вот вы наивный конечно человек ;)
Фирма 1С даже на партнерском форуме, где партнеры сидели за свои взносы, не спешила исправлять баги с детальными описаниями и дампами. Я помню, три месяца убил доказывая баг который затрагивал у нашего клиента 10 тыс. рабочих мест (к их чести, все-таки исправили).
"Тяни лямку, пока не выкопают ямку!".
Батники вам в помощь при обновлениях. )

Понимаете, когда была 1с 77, я отгадал несколько фич, которые сделали в v8. Но сказать то я об этом не могу, потому что нигде не записано. Я теперь, если я что-нибудь отгадаю, я скажу, а вот смотрите я это еще когда говорил.

Что уберут периодические реквизиты? Или впилят sql? )

Вы ещё SAP не видели, там с UI ещё печальнее.
Преподавал для студентов управляемые формы, почти все прошли курс на ура, по вашим замечаниям больше похоже, чтобы вы продвинутый пользователь, нежели разработчик 1С, напомнило мне одного моего знакомого, который долго не хотел переходить с стандартных форм на УФ (в конце-концов он плюнул и перешел на .NET).

Тем не менее, у 1С есть другие проблемы, с которыми лично я каждый день сталкиваюсь:
1.Нет ООП, устаревший язык
2.Все еще устаревшая IDE, ждем DT, ну он очень долго рожается и сделан на Eclipse (что не очень обнадеживает)
2.1.Внутренний закрытый бинарный формат файлов
3.UI ужасный, было бы круто что-то наподобии JAVAFX / Electron…
4.Мобильный клиент не стабильный для серьезных проектов (а для мелких и не нужен)
Кривая работа веб-клиента, WS-сервисов, http-сервисов.

Это все критика, но в реальности, на рынке платформ разработки бизнес приложений, 1С нет аналогов по скорости разработки, кроссплатформенности и удобноству.
Ну вы придумали — Electron прикрутить к 1с)) Оно вообще умрет)

А так к слову Electron вообще ui не имеет)
Ну лично я бы не отказался получить какой-то шаблонный UI на HTML5 / CSS, и дальше самому его допилить до нужного вида. Что касается Electron, это как пример.
>>Это все критика, но в реальности, на рынке платформ разработки бизнес приложений, 1С нет аналогов по скорости разработки, кроссплатформенности и удобноству.
Шутите? В реальности ни у кого нет такого штата разрабов и консалтов отслеживать все изменения в РСБУ, включая подзаконные акты министерств. Поэтому любая альтернатива 1с: Бух ненадежна и дорога. С другой стороны сама 1с Бух — это безумные пол гига кофигурации из коробки.
Я рассматриваю 1С Предприятие в пеорвую очередь как платформу (вы же как продукт 1С Бух), например в стране где я работаю законодательство не такое страшное и отслеживать его под силу одному бухглатеру. Кроме того, в последнее время, 1С я использую больше для создания решений для склада в связке с мобильной платформой и обменом с NAVISION, SAP.
>Просто дайте 1 раз в год 1 стабильный релиз

:))

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

Тот же Майкрософт может себе позволить более длинные циклы разработки и более редкие выпуски релизов, т.к. они глубже контролируют стек технологий, которыми оперируют — начиная со слоя виртуализации у них все свое и можно более качественно оттестировать разные комбинации.

> Но я считаю, что клиент серверное соединение полная фигня.

Стратегический выбор был сделан в пользу работы в браузерах. Т.к. это проще для конечных клиентов — браузер есть везде, ничего ставить не надо, доступиться до программы можно отовсюду… Ну а все остальное (упр. формы, раздельная кл. и серв. логика) — просто технологические следствия.

> Разработка стала сложнее и дороже!

Прогресс не бесплатен, факт.
Ключевое — вот это:
они физически не могут

Плюс привыкли и не особо и хотят.
>Просто дайте 1 раз в год 1 стабильный релиз

Наше любимое законодательство зачастую не дает.
Какие новинки законодательства требуют менять платформу чаще раза в год?
гыы, ну на вскидку самое простое в этом году, изменения в таможенном законодательстве, изменения в части учета по кассам… это вот я так человек, который за этим вообще не следит и не обращаясь куда то…
а так ну откройте список изменений там больше половины скорее всего будет связан с тем или иным изменением законодательства — это прям одна из причин почему 1С рулит, остальные не успевают так оперативно… )
В статье речь идет про релизы платформы, а не релизы конфигураций.
Те, которые затрагивают взаимодействие с криптой. Это онлайн-кассы, онлайн электронные счет-фактуры, онлайн-склады, онлайн-отчетности, онлайн-еще-какая-нибудь неведомая фигня, поддерживаемая на территории РФ или других стран, где есть официальные центры разработки.
Далее, платформа, но не из-за законодательства:
-Уязвимости в библиотеках для всего зоопарка выше
-Те части, которые затрагивают взаимодействие с физическими устройствами (кассы, весы, штрих-принтера, штрих-ридеры и т.п. ритейл-оборудованием).
-Изменения ОС и СУБД. Да, Windows обновляется, кроме Windows присутствует еще и Линукс, кроме того, разные поддерживаемые СУБД требуют постоянного внимания со стороны разработчиков платформы.
Да выпускают пусть сколько угодно. Главное, чтобы типовая конфигурация требовала только последний стабильный релиз прошлого года. (Использовать можно что угодно, но работать должна на декабрьском)
>Стратегический выбор был сделан в пользу работы в браузерах.
Хреново он сделан. Вот я живу в браузерном 1С: документообороте. Он тупит как я не знаю что. Зато я знаю пяток способов его уронить. Ну и гонку команд он не переживает. Если я вдруг ошибусь и нажму в браузере подряд открыть форму выбора реквизита и закрыть документ с этим реквизитом, то всё умрет в половине случаев. Так как попытается открыться окно с уже убитым владельцем.
В тонком же клиенте все вертится довольно шустро даже в том же режиме работы через веб сервер.
Кроме специально подогнанных под это форм, массовой работы в браузере я не вижу, несмотря на то, что упр формам сто лет в обед. Даже для как угодно удалённых пользователей гораздо стабильнее работает клиент 1С. Лучше — толстый ;)
И по поводу тонкости клиента — на той машине, где летали обычные формы с «толстым» клиентом и обсчётом на клиенте, управляемые — тупят. Потому, что всё это js браузерное великолепие оказалось более требовательным как к памяти, так и к процессору, чем бизнес логика. А тяжёлые запросы выполняются на стороне сервера что в тонком, что в толстом клиенте.
>Главное, чтобы типовая конфигурация требовала только последний стабильный релиз прошлого года

Вам это главное. Но есть ведь и другие точки зрения, правда?

Те же 1С решают свои задачи, например:
1. Переводят часть логики, которая решалась ранее на уровне прикладного кода на уровень платформы для упрощения прикладных решений. Из первого что приходит на память — объект Планировщик, история данных — это все раньше делалось вручную, а сейчас съезжает на уровень платформы

2. Задействуют новые вкусные фишки (о которых партнеры просят, что характерно). Из первого что приходит на память — новые средства скд, подсистема взаимодействия

Иногда к изменениям подталкивает окружение:
— уход от модальных окон был не от хорошей жизни затеян, а от окончания их поддержки разработчиками браузеров
— проверки при открытии внешних обработок — реакция на вирусы, написанные на языке 1С

Ну то есть, конечно, то что вы говорите по-человечески понятно. Но жизнь сложнее )

>Хреново он сделан

Пока, соглашусь, это средство для совсем ленивых. Если есть возможность, то стоит работать через тонкий клиент.
Если 1С-система настолько чувствительна к драйверам — то её надо выпускать в виде виртуальной машины. Тогда она бедт полностью изолирована от драйверов хозяйской системы; а драйверы в виртуальной машине — стандартные.
Но если работать с операционкой законными способами — то от драйверов вообще ничего не будет зависеть. Другие программы ведь не зависят (ну, кроме разве что игр — от видеокарты).
А от железа вообще ничего не может зависеть — оно скрыто за драйверами. Или надо очень уж сильно извратиться.

Браузеров — мало. Вполне можно протестировать на всех популярных.
Они может быть и хотели бы релизы выпускать редко, да не могут. В добавок к сказанному еще и потому что платформа быстро развивается.

Но вообще такой подход (Continuous delivery) сейчас в тренде

Continuous delivery это если бы когда ты контролируешь до конечного продукта. То есть для платформа как сервис подходит, а при продаже коробок деливери всё одно до клиента не долетает. В корп сегменте вроде больше LTS в моде.
У 1С практически монополия на рынке зачем им стараться. Все равно пользак никуда не денется.
14 лет назад я сбежал с 1С и сбежал от 1С в другой город. И эти 14 лет назад проблемы были те же самые, ничего не меняется. Как хорошо, что я решился завязать с этим периодом моего развития :)
Вместо тонкого клиента вам нужно написать программу назовем ее “Company viewer”. Знаете же программы «team viewer» и «radmin», и как они работают. Например, программа teamviewer подключается к другому компьютеру к Windows, и отображает полностью рабочий стол, то есть обеспечивает удаленный доступ. Вам нужно сделать тоже самое, только подключаться нужно не к Windows, а только к процессу 1С, который мы специально запустили на отдельном компьютере, допустим сервере. Этот процесс будет отдавать на клиента картинку, в формате jpeg например. А от клиента будет приходить информация о нажатиях мышки и клавиатуры. Надеюсь уже все понятно.
А разве можно по-другому? (шутка)
На моём предприятии именно так и приходится работать, обыкновенный «Удаленный рабочий стол Windows» используется… И да, меня, как простую доярку, система 1С выбешивает… а ведь я только с 1С КСЭД имею дело…
Сначала думал что будет очередная статья от аникейщика, который и не видел никаких других учетных систем в своей жизни, кроме как 1С, но считает своим долгом ее пнуть. С претензиями в стиле: «да и вообще что это за программирование на русском языке ахахах, вот то ли дело я в институте на бейсике программы писал!»

Но нет, статья подробная и по делу, за это спасибо.
Впрочем, с большинством пунктов я или не согласен, или они мне кажутся не сильно актуальными (но тут дело вкуса). Про Ctr+P — забавно, конечно :)
Ну и насчет CompanyViewer — полная фигня ИМХО. Выбор в сторону клиент-сервера правилен и органичен. Даже необходим. Когда все и всё уходит в веб и приложения, сидеть на десктопе — прямой путь в могилу для бизнеса. Чтоб оставаться на месте, надо бежать из всех сил.
Другое дело, что реализация могла бы быть получше, наверное.

Лично у меня претензии к 1С другие:
1) Прожорливость конфигураций. Я сейчас уже довольно редко сталкиваюсь с 1С, но когда сталкиваюсь с новыми конфигурациями, то мне становится не по себе. На каком-нибудь среднем ноуте запустить пару бухгалтерий уже испытание. Не дай бог конфигурация будет снята с поддержки, обновление на несколько релизов может и полдня занять, если не больше. Даже простые решения в духе УНФ или Розницы Базовая жрут больше, чем КА 1.1. Ну куда такое годится?

2) Юзабилити и функционал. Я помню на партнерском семинаре году в 2012 кто-то, кажется из Раруса, спрашивал:
— поднимите руки, кто работал с УТ 11?
(весь зал поднимает руки)
— а кто до сих пор вместо нее при возможности рекомендует клиентам ставить 10.3?
(весь зал поднимает руки)
Nuff said, что называется.

Прозрачные и понятные механизмы, которые были в УТ 10.3, Рознице 1.0 и т.д. превратились в нечто извращенное в последующих редакциях. Даже специалистам многие элементарные в прошлых редакциях операции поначалу были совершенно неочевидны. Что уж говорить про простых юзерах? Много нового функционала, зачастую классного, но зачем было так кардинально ломать отлаженные и всем нравившиеся механизмы?

Впрочем, это все риторические вопросы.
А в конторе 100 компов, да еще 10 удаленных точек

Вот бы кто придумал хотя бы способы удаленной установки ПО, не говоря уже об автоматизации этого дела, системах управления конфигурациями и т.п., как бы здорово тогда жилось...


Вместо тонкого клиента вам нужно написать программу назовем ее “Company viewer”. Знаете же программы «team viewer» и «radmin», и как они работают. Например, программа teamviewer подключается к другому компьютеру к Windows, и отображает полностью рабочий стол, то есть обеспечивает удаленный доступ. Вам нужно сделать тоже самое, только подключаться нужно не к Windows, а только к процессу 1С, который мы специально запустили на отдельном компьютере, допустим сервере.

Вы как-то узко мыслите. Этот подход надо на веб распространить, а то какие-то идиоты сидят, корпят над всякими стандартами HTML/CSS/и т.д./и т.п., потом браузеры пыхтят над поддержкой разных фич, а могли бы тупо рендерить картинки на сервере, проблем-то никаких… или все-таки есть? :)

Вот бы кто придумал хотя бы способы удаленной установки ПО, не говоря уже об автоматизации этого дела, системах управления конфигурациями и т.п., как бы здорово тогда жилось...

  • Active Directory.
  • Powershell.
  • Батники.
  • VBScript.

Я думаю, Вы не уловили сарказм в словах автора.

Какой кашмар, прости, Господи, после критики интерфейса стоило остановиться, а, может быть, и до.
Критиковать 1С можно бесконечно, но за другое и не так. Когда конфигурация требует обновления терпимой версии платформы на заведомо бажную — это лютый фейл, согласен.
Клиент-сервер — ну извините, вам не надо, а кому-то — воздуха глоток и «давно было пора».
Кроме того, наблюдая пациента с ранних версий 7ки, делаю вывод, что прогресс у ребят гигантский. С продуктом (когда он не глючит) приятно работать и с пользовательской стороны и с разработошной. На средних объёмах — лучшая подделка, у кого заводы/параходы, стальные нервы и лишние $$ — пилите сап.
Когда конфигурация требует обновления терпимой версии платформы на заведомо бажную — это лютый фейл, согласен.

Вспомнил историю примерно 2012-2013 года. В Украине в очередной раз решили, что какие-то из отчетов снова нужно сдавать по-другому. Обновление реготчетности компания ABBYY выдала вместе с новым релизом Бухгалтерии, который для своей установки требовал новый на днях выпущенный релиз платформы. И так совпало, что именно в этой новой версии платформы был лютый баг, который удалял значение субконто у проводок. Вот это был фейл!
Встроенный RDP был бы полезен, по крайней мере многие пользовались бы.
На счет горячей клавиши для «все функции» согласен, но лучше crtl shit F…

Переход на релиз раз в год означает, что все конфы должны разрабатываться под старые релизы и не использовать возможности новых? Плохое решение.

Клиент сервер… я все надеюсь, что 1с серверную часть выкинет внутрь СКЛ, с мемори таблем компилируемом в джаву это должно летать.

Есть вещь которая в 1с бесит — доступ к списку перечислений доступен только на сервере. Помойму это бред. Не ясно, зачем такое ограничение.

Не ясно почему время запроса отчета пишет 0.02 с, а появляется он через 10 с. Так тормозит СКД?
Есть вещь которая в 1с бесит — доступ к списку перечислений доступен только на сервере. Помойму это бред. Не ясно, зачем такое ограничение.

Почему только на сервере? Чтобы обратиться к предопределенному значению перечисления на клиенте нужно использовать функцию ПредопределенноеЗначение(). Например:

ПредопределенноеЗначение("Перечисление.ВидыНоменклатуры.Материал")

Подробнее на сайте 1С.
на клиенте нужно использовать функцию ПредопределенноеЗначение()
Которая все равно генерит неявное обращение к серверу.

см. синтаксис помощник ПредопределенноеЗначение():
Результат выполнения кэшируется при первом обращении до изменения конфигурации или версии платформы.


Еще есть ОбщегоНазначенияКлиентСервер.ПредопределенныйЭлемент с кэшированием на время сеанса и проверкой существования предопределенного в ИБ.


А еще с недавних пор (БСП 2.4.3 вроде) ОбщегоНазначения.ЗначенияРеквизитовОбъекта можно вызывать с передачей имени предопределенного и сразу получать его значение (только на сервере).

Результат выполнения кэшируется при первом обращении до изменения конфигурации или версии платформы.

Это есть. Речь шла про «не ходить на сервер», что в некоторых случаях, может быть не очень удобно. Но в целом как низкоуровневый инструмент кеширующий обращения к серверу пойдет.

А еще с недавних пор (БСП 2.4.3 вроде) ОбщегоНазначения.ЗначенияРеквизитовОбъекта можно вызывать с передачей имени предопределенного и сразу получать его значение (только на сервере).
Ничего не понял.
“Company viewer” это и есть реализация через http
а если придумывать другое то нереально решить проблему с x(икс)'сами и тд

да и собственно уже придуман «сервер терминалов» и на win и lin в котором можно запускать какую нужно программу.

я же добавил бы минус в 1с за то что они мало делают для linux систем. Платформы в которой половины не работает, это для чего такое выпускать, для тестов?
На директивы "&НаКлиенте", "&НаСервере" и др. зря наехали. Поначалу, когда переползаешь со старых форм на управляемые — да, задалбывают, но потом осознаёшь, что понимание того, где конкретно исполняется кусок кода — ни разу не лишнее. Вплоть до того, что начинает сильно не хватать этой фичи в старых «обычных» формах.

Настоящее ацкое зло в платформе 1С — это взятый курс на отказ от модальности. В результате этого код, предполагающий диалог с пользователем (задать серию вопросов, попросить что-нибудь выбрать из списка и т.д.), превращается в кучу мелкой маловразумительной вермишели, которую и делать мучительно, и особенно развивать и сопровождать. Если бы я предлагал фирме 1С улучшайзинг, первым делом посоветовал бы срыть к чертям собачьим эту тупиковую ветвь человеческой мысли и забыть её как страшный сон.
Настоящее ацкое зло в платформе 1С — это взятый курс на отказ от модальности.

Ждём, когда осилят перевод на русский промисов, потом асинк/авейтов, это порядочно облегчит разработку, но добавит веселья в отладке. Ну или прикрутят функции высшего порядка, что будет радостно и печально одновременно.
В любом случае, требуемая квалификация и зарплата толкового разработчика будет только расти.
И ещё очень не хватает функций-генераторов (как оператор yield в Питоне).
Все же как по мне — функций первого порядка не хватает больше всего. И сами по себе полезны + можно было бы практически замутить аналог ООП на структурах.
В принципе, в особо клинических случаях выкручиваемся через Вычислить() и Выполнить(), хотя это, конечно, харам.
Ну все же это именно что для исключительных случаев, если бы было платформеннй фичей — гораздо шире и свободней можно было бы использовать.
Проясните, пожалуйста, для того, кто не в теме, но интересуется — «клиент-сервер» здесь — это что подразумевается? Web-клиент или десктопное приложение?
И то и то. Клиент-Сервер
Сервер имеет доступ к базе данных.
Клиент имеет доступ к интерфейсу пользователя.

Если надо по нажатию на кнопку вывести значение поля из базы, то клиентский модуль обрабатывает нажатие, вызывает серверный, который читает данные, и выводит результат.
А в случае с Web где выполняется клиентский модуль, в браузере?
Весь список полная фигня. Проблемы у 1С есть, но совсем не эти. По всей видимости вы 1С только слегка коснулись.
Буду рад услышать. async await не предлагать.
5.3 плох ибо ОРМ/ 1с должна изолировать от структуры базы.

5.6 нужен, в действительности простое сокращение кода.

остальное есть в Эклипсе.
5.3. Причем тут ORM — речь о оптимизации запросов. Кроме того, в языке запросов есть ряд ограничений (например коррелированные подзапросы), которые не работают только из-за того, что нет их поддержки в определенной СУБД. Когда идет внедрение — СУБД клиента известна и глупо не использовать ее возможности.
5.6. Дело не в сокращении кода, а в производительности. ROW_NUMBER работает на порядки быстрее подсчета номера строки

В эклипсе решен только п.5.1. п.5.8 для модулей решили и в обычном конфигураторе. Кроме того эклипс еще далек от применения на реальных проектах. А вообще проблем прибавилось конечно. Но ничего лучшего все равно нет.
UFO just landed and posted this here
UFO just landed and posted this here
UFO just landed and posted this here
UFO just landed and posted this here
Делай, как большинство клиентов — плати деньги за лицензии, а компьютеры патч. Ну, если там дебилы сидят, которым охото весь этот гемор с разработкой защиты и ключей выделывать…
Ой! Я тут к подсудному делу призвал?..
Даже, если захочешь поддержать 1С и купить лицензию, для разработки, усрёшься разбираться, что нужно и где покупать. Сколько не спрашивал из окружения, как купить и где, все теряются в ответах. Вот так вот и работаю в 1С только с работы.
Но, зачем?!.. Видимо я не их клиент. 1С то сильно не обогатится от таких бедолаг, которые хотели купить, а потом из-за сложностей забили и сидят на работе, на рабочей лицензии через RDP на этой грёбанной винде. Вот это крик души!..

Есть такой IT-мем "тупой 1С-ник". Собственно корни его восходят к тому, что 1С настолько проста, что худо-бедно осилить и стать "программистом 1С" может практически любой дегенерат от мира IT. Поэтому, когда человек пишет "1С сложная" — я начинаю волноваться за человека.

стать «программистом 1С»
1С-ник — не программист. 1С-ник — не бухгалтер. Это уродский мутант-гибрид этих двух профессий, берущий из них только верхушки. Можно 10 лет спокойно «разрабатывать» на 1С, но так и не узнать разницы между процедурой и функцией и не знать за каким хером нужны забалансовые счета. Про сложные алгоритмы расчета тех же налогов можно вообще не говорить: в ответ услышите «Это невозможно. Это ограничение платформы». После «внедрятелей» мне досталась печатная форма накладной, которая при открытии жрала 12 Гб оперативки. Печатная форма, Карл! Если первым «языком программирования» для вчерашнего студента оказывается 1С — все, финиш. Как программист он кончается, не успев толком начаться.
PS: Все вышесказанное основано на личных наблюдениях. Никого не хочу обидеть, сам больше 5 лет по долгу работы занимаюсь быдлокодерством «программированием на 1С».
Я заминусил (сорри за это), хотел было откомментить, что бред написан, не бывает такого. А потом вспомнил пару живых примеров… И понял, что написано излишне радикально, но ведь не совсем неверно.

Особенно это проявляется в некоторых франчах, где главным качеством «внедренца» становится не умение программировать, проектировать или консультировать, а грамотно разводить клиента на часы и умело их подписывать.

Знаю случай, когда «спец» не знал, что регистры накопления должны «схлопываться» по измерениям, но это не помешало ему уйти из франча в одну госкорпорацию на 200к (sic!) зп. Оставив после себя невероятное количество фееричного кода у клиентов, конечно.

Правда, такой пример скорее исключение, но ведь бывает же.
Можно 10 лет спокойно «разрабатывать» на 1С, но так и не узнать разницы между процедурой и функцией

Это классное свойство языка (Бэйсика) называется «низкий порог вхождения»
UFO just landed and posted this here
Я просто поддержку по всем пунктам кроме ctrl+P
Мне кажется за такой отзыв автору должны заплатить… Такая работа проделана, с анализом и предложениями. Но видно, конечно, что наболело.
Как же жизненно про немецкий :) Прям слово в слово диалог!!!

Согласитесь, это проблема не 1С, а конкретных людей, чуть ленивых, и туповатых?)

Самособой 1С тут ни при чем. Это тип: женщина, гослужащий, 40+… у меня такие же кастомеры :)
P.S. Сам я 1С никогда не юзал и не супортил.
А 1С — это только для фонтанирующих рабочей энергией и с дипломами ВУЗов?
У автора претензии из разряда, добавьте мне красивостей, разукрасьте, сделайте лучше, вот так вот… А мне, многие идеи глупыми показались, я бы по другому сделал… Всем хорошо будем делать?.. Вот интерфейсные моменты может и плохи где-то, но это конструктор, с определёнными ограничениями… Привыкать надо… Либо пиши свою 1С с нуля, как правильно.
Я сам не в восторге от многих идей 1С, и по характеру её работы. Только популярность у неё как раз потому, что всякие «программисты» вытворяют с объектами, что им вздумается, меняют «по сто раз на дню» структуру данных, интерфейсы… А потом ещё и говорят, что херово придумали, не удобно…
Попробуй так же быстро на голом Python, PostgreSQL, PHP, и прочей дребедени своять быстренько рабочий продукт, и потом в середине отчётного периода, для бухгалтера, где-то в серединке учёта, пару записей изменить, чтобы «красиво было»! Хрен! Не выйдет.
Все, кто мог лучше, сделали лучше и уже не 1С… А кто остался в 1С, тому удобно.
С раскраской окон — это, прям, обхохочешься. Вы ещё узоры на уголках окон предложите сделать.
1С вполне себе хорошая система для российского бизнеса хаотичного, неорганизованного, и такими же программистами, и аутсорсерами «два брата из ларца».
Ну, и последнее… Напишите хотя бы свою конфигурацию, бухгалтерию, со всеми бизнеспроцессами, документами отчётами, и так, чтобы не подглядывать, как это в 1С. А когда закончите, переделайте всё, так, чтобы было, как у 1С. Именно переделайте, может тогда поймёте масштаб изменений. Это вам не браузер, какой-то, где тут добавил, там удалил, и всё это ништяк работает.
Как вам критика статьи?.. Не нарвится… Вот 1С тоже не нравится, что все гундят, воняют, пользуются, зарабатывают деньги, а потом ещё и говорят, что продукт говно. Что-то я не нашёл на просторах сообществ 1С, где всё бы открыто бесплатно все «пилили», как на гитхабе, распространяли, бесплатно, улучшали… Инфостатом тыкать в меня не надо, та ещё меркантильная хрень.

Инфостарт просто входная точка. А так, поищите хотя бы по моему нику, выйдете на 1С-часть гитхаба.

xDD
Свой ник как точка входа в новый мир бесплатных инструментов 1С)
Лучше не придумать!

Вся критика по делу. Но мелковато и местечково, как то. У других пользователей будет совершенно другой список проблем которые он хотел бы порешать и которые считает более важными и приоритетными по сравнению с цветом менюшек.
За исключением клиент-серверного взаимодействия. Это была реальная подстава со стороны 1С.
Действительно, разруливать взаимодействие клиента с сервером по уму должна платформа, а не программисты.
1С прекрасна тем, что это язык высокого (сверх высокого :-) уровня. Вы оперируете такими понятиями, как Документ, Отчет и сосредотачиваетесь на логике бизнес процессов клиента.
А теперь приходится думать о том, что эти вот данные на сервер нельзя передать, а за вызов клиента с сервера вообще расстрел на месте.
Все неоправданно переусложнено.

Вы на джаваскрипте попишите, а потом сравните подход к клиент-серверному обмену там и в 1С.


Да хотя бы статью мою про управляемые формы на инфостарте посмотрите, возможно проще станет.

0. ТС постарался и у него вышел пост про «наболело», Я совершил над собой волевое усилие и дочитал. В первую очередь потому, что сам играю в 1С.
1. Это не те проблемы, которые на первом месте для меня и для фирмы 1С, насколько мне известно. Цвет менюшек это не то, чем заняты лучшие умы фирмы. (кстати, есть слухи что скоро можно будет менять цветовую стилистику под корпоративные цвета и это гораздо круче чем ЛГБТ-интерфейс)
2. Пункты по масштабу не сопоставимы. Обсуждать цвет менюшек, а потом в 11-ом пункте внезапно объявить что клиент-серверная архитектура это провал и надо все поменять… ну такое. Я не считаю что клиент-сервер это плохо от слова «совсем». И считаю хорошо, что стоимость входа стала дороже.
3. Я не считаю что 360К и 1,25 млн для УХ — это дорого для коробки 1С. Стоимость поддержки какой-нибудь аксапты в год может составлять 60 лямов в год.
4. Я не считаю что продукты 1С (БП, ЕРП, УХ) перегружены функционалом. Я считаю, что они реализованы в принципе не верно с точки зрения развития ИТ-ландшафта крупного бизнеса.
5. Я считаю, что главная проблема 1С — это «1С». Мы обсуждаем решения B2C и B2G и B2B в одном месте. Сори, но между УНФ (кто в теме тот поймет) и УХ общего меньше, чем между Android и iOS.

Вывод — автор описал проблемы с точки зрения автономного разработчика, который в штате средней конторы. И это не плохо. Но есть и другие точки зрения. Например, создание тиражных продуктов. Управление разработкой в большой команде. И т.д.

Ну вот на самом интересном месте… )
Рюшечки — это здорово… Но главная проблема в том, что типовые конфигурации стали унылым гуано. Они тормозят все.


Дистрибутив типовой бухгалтерии 3.0 — 1 гигабайт, дистрибутив бухгалтерии 7.7 — 10 мегабайт. Первая тормозит, вторая летает, а функционал по сути не изменился.

Первый вопрос который задают все, кто в первый раз видит конфигурации на УФ после обычных форм или тем более после 77: «А чего она так тормозит?»
Company Viewer/Radmin/да и RDP это чушь несусветная. Как раз в RDP все передается не картинками, а элементами и координатами, а вот когда начинаются картинки, то начинается слайдшоу. Пользователи в магазине на дохлом 3G будут вам так благоданы за это нововведение, икать не перестанете.
Насколько я понимаю 1С, было выбрано как раз очень компромиссное решение, как раз в духе нынешних web решений, но есть legacy, поэтому мучайтесь вы, программисты, в конечному пользователю должно быть если не хорошо, то более-менее.
у 1C нет конкурентов и поэтому они даже смотреть на это «накипело» не будут. А зачем? Пипл платит и баги хавает, сидеть и еще что-то изобретать типа ремоутвьюера — лишние телодвижения.
Посему забил на v8, проект на семерке дорабатывает и потихоньку мигрирую на веб приложения, естессно, самописные, благо ЗиК не нужен
Если автору так все не нравится, так возьмите и смените область деятельности или язык. Как я два года назад. Да, будет даунгрейд по зп (в моем случае это в 2 раза), или не будет, и все сразу гораздо интереснее и увлекательнее.

Но! Сменив платформу разработки и сферу деятельности я не ругаю платформу 1С. И ушел я из 1С разработки потому что стало скучновато, а не потому что меня задолбал &КлиентСервер.
Клиент-серверное в 1С v8 это чуть ли не самое лучше что там есть! Вы просто не умеете его готовить! В первую очередь это асинхронность.

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

Да и на самом деле, если вам не ясна аббревиатура «HASP4 ORGL8 1» то что уж, читайте документацию.

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

Вот он, синдром эмигранта. Я пишу отвлеченный пост, но обязательно что-нибудь напишу херовое про бывшую локацию и похвалю себя, что уехал. Это чтоб самого себя убедить что-ли, не пойму? Есть тысячи причин покинуть страну, но из-за 1С? Может валерьяночки?

На самом деле очень много есть вещей по которым я скучаю. На 1Се сидел потому что рынок того требовал. Из за этого я упустил кучу всего интересного в мире софтастроения. Я очень рад что мне пришлось заставить себя учить вещи совершенно не связанные с 1С. Врядли мне пришлось бы, если бы не уехал. Монополия 1Са на рынке exUSSR губительна для всей индустрии. Вообще я понял что не нужно гнаться за самым популярным языком, платформой, инструментом. Если гоняться за тем «что приносит деньги сейчас» ни мастерства ни достигнуть, ни удовольствия от работы в долгосрочной перспективе.
Ждем IDE от JetBrains для разработки под 1C. Навеяно цветовой схемой объектов.

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

Уважаемый автор
Всё на самом деле просто решается.
Напишите свою учётную программу, так сказать со своими «настольными играми» и «Снегурочками». Используя преимущества энтузиазма пользователей сети, наработки жёлтой компании по построению продаж и, может быть, набирающего силу блокчейна.

Честно говоря, не стал читать дальше "горизонтальных менюшек". В экосистеме 1С довольно много проблем, ждал увидеть их обсуждения и предложений. А все свелось к разноцветным кнопочкам.

ругал мелкософт, пока не столкнулся с 1с, теперь думаю, что мелкософт это ангелы
UFO just landed and posted this here

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

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

Можно примеры?

1С 8х — еще один язык программирования (не самый простой и стабильный)

1С 8х — это не язык программирования. Это технологическая платформа в первую очередь. Имеющая свой язык программирования. Но язык не на первом месте.

«выезжающий» на начальной популярности 77

Очень спорное утверждение (как по мне, так в корне неверное). Но оно субъективное, так что спорить тут нет смысла.
UFO just landed and posted this here
Сейчас очень много альтернатив, которые позволяют сделать большой проект очень быстро и лучше, чем на этой платформе.

Ссылками бы подтвердить на эти платформы, исследования какие-то чего и сколько на них уже сделано из разряда «больших» проектов в сравнении с 1С. Начните с малого — с классификации «большого» проекта: какие у него по вашему признаки. Чтобы можно было как-то осмысленно далее продолжать дискуссию.

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

У вас как-то все совсем весело. «Куча программистов 1С» — это не само-генерящийся субстрат, который сам себя в «каждой фирме» нагенерил. С учетом того, что этот субстрат был нанят, в большем своем случае частным бизнесом, а не бюджетом, то вдойне не понятно, как, Карл, владельцы/собственники/считающие деньги и их руководители ИТ-отделов/служб/департаментов и т.д., пришли к выводу — что ненужных 1Сников, которые «кроме 1С ничего не знают» нужно:
1. нанимать на работу и платить им деньги;
2. Брать в качестве основы платформу, у которой, по вашему в каких-то «больших» проектах есть реальные альтернативы, которые позволяют сделать «большой проект быстрее и лучше». По вашему, частный бизнес по собственной воле прострелил себе оба коленных сустава и один плечевой? И потом у вас, странно, что программист 1С «доказывает» руководству — что он — нужен этой организации :) Вы понимаете, всю гротескность ваших тезисов?

У вас произошла подмена следствия и причины. И если бы, 1сник — как собирательный образ, был бы «лишним» в частном бизнесе — его бы уволили самым первым, потому что бремя содержания такого бойца — весьма и весьма достойное в материальном плане. Однако, почему-то этого не происходит, а наоборот, спрос медленно и верно продолжает расти. А вы это воспринимаете, как будто инфекция попала в организм, и теперь размножается :) Повторюсь, хозяин тела давно бы выпил антибиотик и выздоровел — однако он не только этого (почему-то) не делает, но и сам, все больше и больше вступает в симбиоз с этим «вирусом». Скоро, видимо по вашему, вообще в Чужого превратится.
как, Карл
Не без участия маркетинга же. Да и энтерпрайз — штука консервативная, эксперименты не любит.
UFO just landed and posted this here
Например Yii практически из коробки, потом можно взять связку NodeJS+AngularJS

И вы на этом быстрее и лучше построите учетную систему, как на 1С?
С теми же механизмами (разграничение ролей, гибкая настройка отчетов как в СКД, аналоги регистров, характеристик, планы обмена и т.д. и т.п.)?

"… и при этом будет полный контроль над системой, а не черный ящик с багами. "
По факту для конечного заказчика обычно получается наоборот. Если систему на 1С, кроме клинических случаев, можно передать на поддержку другому франчу/специалисту за разумные сроки, то в случае самописных систем зависимость от конкретного разработчика гораздо выше.
UFO just landed and posted this here
UFO just landed and posted this here
Например Yii практически из коробки, потом можно взять связку NodeJS+AngularJS.

И много, по вашим сведениям, организаций/частных бизнесов, которые делают «свои большие» проекты — пошли по этому пути? Затем, зачем хозяеву_денег платить вам и вашей команде за имитацию регистров в вашей предложенной связке, если он может сразу (здесь и сейчас) получить это в отлаженном и оптимизированном виде + еще 100500 других платформенных фич + готовую конфу с уже заложенными типовыми кейсами бизнес-процессов + практически все механизмы выгрузки обмена всего_чего_надо по закону + работа с практически любым типом внешнего оборудования из коробки БПО, которая идет в составе конфы + все это будет работать под вебом и десктопе +… и я могу этот список продолжать, продолжать и продолжать — и это все владелец бизнеса, заказчик, хозяин денег, получает сразу из коробки. Зачем ему нужно оплачивать ваш труд, труд ваших коллег, ваших организаций, если все это уже написано, оттестировано, аппробировано и чик-чик и в продакшене уже несколько лет по каждому актуальному направлению. Только из-за того, что лично у вас будет:

полный контроль над системой, а не черный ящик с багами.


Абсурд же, как считаете сами? Ваше решение когда имеет право место быть? Когда вам нужно сделать очень легкую учетную систему, суть которой сводится к «забивке цифр в таблице» скорее всего в веб-клиенте, при том, что параллельно это могут делать количество пользователей ну пусть больше 1000. Тогда, с экономической точки зрения, конечно выгоднее для хозяина_денег вам денег заплатить за такое решение. Почему выгодно? Да потому что, это будет стоит дешевле чем 1000 клиентских лицензий и лицензию на сервер и субд. В такой нише 1С будет проигрывать только исходя из экономических соображений. Если завтра все веб-клиенты сделают бесплатными, то все это лишается абсолютно всякого смысла, ибо этот кусок неведомой задачи скорее всего проще запилить в самой конфе, которая как вы мудро подметили, есть уже почти везде :)

Вы ниже писали, что:
Большой плюс 1С — стандартные объекты.

Это и есть смысл «платформы». И именно поэтому, даже на голой платформе с нуля, учетные задачи будут решать с космической скоростью, по сравнению с аналогичными платформами. Если же рассматривать возможности платформы вместе в прикладной конфигурации, типа 1с ERP последней редакции, с миллионами строк кода, уже написанными за вас — то по сути, вся ваша работа сведется к работе с open source проектом где вам точечно, как хирургу, нужно что-то подрезать, вырезать, добавить, сшить и т.д. Но вам не нужно тратить годы, чтобы переизобрести велосипед. Более того, вы получаете «на шару», повторюсь уже продуманные за вас кейсы построения бизнес-процессов по направлениям деятельности: торговля (опт/розница), складской учет, wms, crm, вся обслуживающая нси, фантастические способы по настройке всего этого без программирования вообще, скд, — это заметьте все «глазами» пользователя, а не разработчика. Ну т.е. в данный момент, догнать 1С во всем этом, в любые осмысленные сроки, может пафосно скажу, но это — невозможно. На отечественном рынке в данной нише нет конкурентов. И не из-за того, что как мне выше подметили «маркетинг» же, а из-за того, что по совокупности факторов — все остальное — тлен. Серьезные дядьки с бизнесов, представители хозяев_денег в ит-направлении, если бы были альтернативы — давно бы сменили, как вы пишите «черный ящик с багами» на красивый, модный, молодежный и самое главное, надежный «ящик» без багов и прочего. Однако, почему-то тренд противоположный. В тех сферах автоматизации, где еще несколько лет назад про одно только упоминание «1C» можно было получить галочку на себе как нерукопожатого идиота, а возможно и мысленно получить по щам — теперь плавно прогресс идет в сторону платформы 1С. А сама же авторская статья — это не более чем «крик» души коллеги с которым я отчасти согласен только по нескольким пунктам. Подчеркну — только отчасти. Другие пункты, по которым лично у меня бомбит, я озвучивать не буду, исходя вот из каких соображений — коммент, это не то место, где я бы по поводу своей несостоявшейся бомбежки смог получить конструктивный фидбек :)

Ну вот как-то так коллега. Вот так у меня получилось вам ответить. Не знаю, поняли ли вы мои аргументы или нет.
UFO just landed and posted this here
Если предложенная вами «платформа» из Yii, NodeJS+AngularJS — это альтернатива этой «игле» и вы, без тега сарказм и иронии, так действительно считаете, то не до конца ясно (из контекста ваших рассуждений и логики), что есть в 1Снике такого, что он посредством только своих прекрасных ораторских способностей к убеждению, смог окучить кажется 80% всего отечественного ит-ландшафта по учетному софту? Это гены, гендерная исключительность, может быть какие-то гипнотические способности? )) Как редиске удается год за годом не только держаться на своем месте, но еще и обосновывать свое размножение в виде себя подобных? Как 1Сник проникает в те области автоматизации, где еще несколько лет назад, правили бал совершенно другие, правильные. По настоящему, правильные платформы. И действует согласно раковой опухоли- проник, размножился, поубивал всех хороших, и до самой смерти хозяина, питается его питательными веществами :)

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

Слушайте, может 1сники заряжают как Чумак, воду перед монитором, а потом тайком подливают ее в офисные кулеры? Вы, вообщем подумайте — если разгадаете этот феномен-убедительности рядового 1сника vs все остальные, пишите!
Галактика, Парус, SAP, MS Dynamics AX/NAV, плюс все эти облачные системы, наплодившиеся за последнее время показывают, что вы не совсем правы в своей категоричности. И все они предлагают не только платформу, но и отраслевые решения (конфигурации) и за исключением облачных решений — почти все имеют возможности для расширения. Так что не 1С единым.
Сейчас очень много альтернатив, которые позволяют сделать большой проект очень быстро и лучше, чем на этой платформе.

Если проект ну очень специфичный и делается «с нуля» — может быть. Если стандартная торговая конторка — все уже есть. Разве что напильником доработать.
Но вы попробуйте реалтайм отслеживать все грядущие изменения в налоговом законодательстве, бухгалтерской отчетности, отчетности в фонды, в статистику, изменения в регламентированных формах и пр. и пр. Достаточно детально, чтобы загодя подготовить свою самописную систему. Чтобы ваши бухгалтера не рвали волосы с криком «завтра последний день сдачи, где моя новая форма ЕКЛМН-60/2бис?! Ее же уже два дня как объявили обязательной!»
А потом расскажите руководству, что вы нашли другую работу и теперь пусть ищет нового специалиста по NodeJS+AngularJS, который сможет сходу подхватить вашу (скорее всего плохо документированную) кастомную систему, которой до этого он в глаза не видел.
Справедливости ради, если мы говорим не о самых популярных конфигурациях 1С, то там тоже бывают такие случаи, что форма (отчет, расчет, ваш_вариант) уже обязательны, а обновления конфигурации еще нет. И не совсем понятно когда будет. А если мы говорим о конфигурациях, разработанных не самой 1С (или регионального партнера №1 в стране зарубежного присутствия), а о разработке какого-то там франча (и не особо крупного), то оно выйдет, скорее всего, с опозданием, и с большим количеством багов конфигурации.
Справедливости ради, если мы говорим не о самых популярных конфигурациях 1С, то там тоже бывают такие случаи, что форма (отчет, расчет, ваш_вариант) уже обязательны, а обновления конфигурации еще нет.

Бывает, да, но довольно редко. И на фоне общего объема постоянных изменений — это мелочь. Тем более, что речь как правило о довольно узких вещах.
А если мы говорим о конфигурациях, разработанных не самой 1С (или регионального партнера №1 в стране зарубежного присутствия), а о разработке какого-то там франча (и не особо крупного), то оно выйдет, скорее всего, с опозданием, и с большим количеством багов конфигурации.

Ну это от разработчика зависит, разные бывают, да. Но даже в этом случае есть вариант выдрать нужную форму/отчет/расчет из другой конфигурации и доработать рашпилем. При этом речь только об отдельных формах, основная масса изменений и у сторонних разработчиков проходит вовремя. Особенно когда конфа на базе типовой одинэсной. Всякие там Аудит-Эскорты и пр. А тут речь о том, чтобы самому вести все с нуля.
на клиента картинку, в формате jpeg например

Чушь полная. Давайте каждое приложение начнет заниматься написанием своих teamViewer.

По поводу первого пункта статьи про два релиза в месяц, безотносительно продукта из статьи.


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


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


Естественно, такие релизы в продакшен раз в две недели содержат огромное число ошибок ("багов"), и вся разработка представляет собой перманентную борьбу с багами — выглядит это так, как будто в ступе толчется вода, или вода же носится в решете.


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


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


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


Интересно, когда появится тренд со статьями статьи вида "Как мы отказались от Agile и вспомнили забытые практики Waterfall".

Забавная перепись 1Сников в комментариях к статье :)
Не все из того, что описал ТС, я знаю.
Не со всем, что сказал ТС, я согласен.

В 1С я уже 10 с половиной лет. И у меня тоже накопились некоторые претензии к 1С.
Но вот что я для себя смог понять:
1. Язык 1С, язык запросов 1С, объектная модель 1С не скоро будут переработаны (если вообще будут).
Причины — а. всего этого и сейчас вполне хватает для того, чтобы писать конфигурации; б. фирма 1С зарабатывает НЕ на развитии средств конфигурирования, а на своих типовых конфигурациях, на их внедрениях, на поддержке, на лицензиях. Т.е. средства конфигурирования для них НЕ основной продукт. Потому этот продукт и развивается слабо.
Разработка DT и переход на Eclipse — это, всего лишь, изменение в методологии и технологии разработки. Но это НЕ изменение платформы — сама платформа в этом случае остается такой же, как и была.

2. Стабильность релизов — согласен, хромает.
Я не берусь судить в чем там дело. Но иногда мне мечтается о том, чтобы разработчики PVS-Studio вышли на контакт с фирмой 1С и предложили бесплатно один разочек проверить всю кодовую базу платформы 1С (вдруг найдут что-то) с обязательным обнародованием результатов проверки.
Но если серьезно, то думаю, что это один из немногих случаев, когда 1С надо «понять и простить».

3. Низкий порог вхождения — фича и, в то же время, бич 1С.
Многие из нас знают не по наслышке, что это такое — разбирать код новичка. Причем новичка не в 1С, но в программировании! (И такие у нас были)
С опытными разработчикам тоже не все гладко: далеко не все из них могут хоть как-то описать хотя бы пару известных паттернов программирования (например, фасад или наблюдатель). Не могут просто потому, что на языке 1С большинство паттернов либо вовсе НЕ реализуется, либо реализуется с большими трудностями.
Грустно. Но тут, как говорится, см. пункт 1.

4. Не самая удачная объектная модель платформы.
К такому выводу пришел потому, что в типовых (и не очень) конфигурациях применяется, в основном, такой способ работы с данными — данные из БД читаются с помощью запросов, и только запись данных в БД производится с помощью методов и объектов объектной модели.
Т.е., видна, на самом деле, попытка 1С разработать нормальную объектную модель. Но разработчики, наверное, поняли, что для нормального чтения данных потребуется очень серьезная доработка методов объектной модели. И когда они это поняли — начали развивать язык запросов 1С и возможности механизма запросов.
Но скажите мне — когда было последнее нововведение в языке запросов и в механизме запросов? ЕМНИП — году так в 2010-м. Но уж точно до 2012-го года.
А почему? См. пункт 1.

Вообще можно долго и много высказывать претензий и пожеланий к фирме 1С и ее продуктам.
Только вот думаю, что это тщетно — фирма 1С делает то, что ЕЙ приносит деньги.
И да — 1С монополист. И пока монополия не будет устранена, ситуация останется практически без изменений.
UFO just landed and posted this here
Но иногда мне мечтается о том, чтобы разработчики PVS-Studio вышли на контакт с фирмой 1С и предложили бесплатно один разочек проверить всю кодовую базу платформы 1С (вдруг найдут что-то) с обязательным обнародованием результатов проверки.

Цитата из https://habrahabr.ru/company/1c/blog/273591/


Мы используем три разных анализатора:
CppCheck
PVS-Studio
Встроенный в Microsoft Visual Studio

Многие из нас знают не по наслышке, что это такое — разбирать код новичка.

Нехрен давать коммитить в продакшин новичкам, пусть сначала пройдут внутреннюю аттестацию по стандартам https://its.1c.ru/db/v8std


Continuous Delivery, Code Review: не — не слышали. 1С, как компания, виновата в том, что код новичка попал в рабочую базу) Зашибись подход)))


Но разработчики, наверное, поняли, что для нормального чтения данных потребуется очень серьезная доработка методов объектной модели.

Настольная книга 1С: Эксперта по технологическим вопросам http://v8.1c.ru/metod/books/book.jsp?id=499
Пожалуйста, сначала прочитайте зачем нужна объектная модель, а зачем модель запросов, а потом рассуждайте об удачных и неудачных моделях.

Я, наверное, непонятно написал фразу «разбирать код новичка».
Суть не в том, что код новичка попал в продакшен.
Суть в том, что перед продакшеном этот код надо проверить! (Типа Вашего Code Review)
Потом вернуть новичку на доработку. И так раза три-четыре (а доходило и до десяти раз), пока не получишь более-менее нормальный вариант.
И вот вопрос — как долго новичок должен учиться, чтобы пройти сертификацию? Месяц? Два? Полгода? И все это время бизнес будет ему платить за работу в «песочнице»?
Думается, что фирма 1С НЕ является таким учебным заведением.

К тому же сертификация — это как водительские права в России: они могут быть, а ездить их владелец не умеет! (Приходил к нам на собеседование один такой кандидат — весь в сертификатах. А код — ужас-ужас!)

Просто низкий порог вхождения позволяет называть себя гордым словом «Программист» тем, кто написал «Hello, World» мелом на заборе. И вообще высший класс — если это написано без ошибок!

Про объектную модель — согласен, может быть не так назвал. Я имел в виду программные объекты для работы с данными.
Суть в том, что перед продакшеном этот код надо проверить!
Потом вернуть новичку на доработку. И так раза три-четыре (а доходило и до десяти раз), пока не получишь более-менее нормальный вариант.

Вообще-то именно так это и работает. Автоматизированная проверка конфигурации. Требование разрабатывать юнит тесты на свой код. Если ошибок автоматических нет и юнит тесты не выдали ошибок — выполнить код ревью. И так это работает не только в командах с 1С новичками, а в любых командах)


И вот вопрос — как долго новичок должен учиться, чтобы пройти сертификацию? Месяц? Два? Полгода?

Зависит от способностей юниора. Обычно от полугода до двух лет. И речь не о сертификации и экзаменах от самой 1С, а о внутреннем устройстве команды разработки.


У всех разный уровень знаний и разное понимание красивого кода, потому надо придерживаться стайл гайда единого, и этот стайл гайд есть стандарты разработки. Это соглашение о том, что хорошо, а что плохо. Не зная их даже оценить ни свой ни чужой код нельзя, либо эта оценка будет субъективной. Требовать от только что пришедшего программиста красивого кода можно только если принято соглашение о том, как и что нужно разрабатывать.


Можете написать свои стандарты, но вряд ли вы это сделаете лучше и учтете все нюансы, которые аккумулируются в стандартах от 1С последнее десятиление.


В python тоже очень низкий порог вхождения, можно сесть и начать писать. Сразу. Но не придерживаясь стайл гайда (например, от Гугла https://google.github.io/styleguide/pyguide.html) можно натворить делов.


В javascript тоже очень низкий порог вхождения, и опять же — если писать не придерживаясь стандартов будет хаос (https://standardjs.com/)


В чем разница подготовки специалистов 1С от подготовки любого другого инженера?
В лени руководителей? В том, что за 1С они не замечают всего остального мира?
1C — это прекрасный инструмент, и хаять надо в первую очередь не его, а тех, кто не умеет им пользоваться. Если что-то нельзя сделать с помощью 1С — это можно сделать иначе. Но чтобы понимать что и как надо делать — надо растить специалистов.

Во многих языках/фреймворках порог вхождения низкий.
Но у многих языков/фреймворков есть а) достаточное количество примеров качественного кода; б) достаточное количество литературы (в т.ч. и бесплатной и от именитых авторов), чтобы можно было учиться хорошему стилю.
Новичок, начиная работать с этими языками/фреймворками, с самого начала знает, что рано или поздно он обратится за помощью к какому-то сообществу, покажет свой код и получит фидбек.
А чем 1С может порадовать новичка?
Платная подписка ИТС? Платная литература? Где на официальных ресурсах 1С можно бесплатно найти стандарты программирования в 1С? Где на официальных ресурсах в свободном доступе описаны хорошие практики проектирования конфигураций? (Паттерны проектирования?) Где инструментарий типа статических анализаторов? Где инструментарий типа JSLint как минимум для соблюдения единой стилистики кода? (Стандартное форматирование в конфигураторе не предлагать, т.к. оно само уже в некоторых моментах не соответствует текущим стандартам программирования) Где бесплатно с официальных ресурсов можно скачать технологическую платформу? (Я в свое время купил «1С-Деньги», чтобы иметь доступ к сайту с платформой и обновлениями)

За 10 лет я видел много пиратских версий Радченко-Хрусталевой-еще_пары_тройки_писателей. Но качественной бесплатной литературы с примерами и объяснениями правил хорошего тона в 1С — я не видел.
На чем учиться новичку? На типовых конфигурациях?

Может быть такие ресурсы уже есть (Инфостарт и мисту не предлагать). Просто года три назад я прекратил их искать.

Я клоню к тому, что при низком пороге вхождения в 1С наблюдается небольшое количество действительно доступных официальных ресурсов, с помощью которых новичок мог бы повышать свой уровень. А без подобных ресурсов — новички варятся в собственном соку и в соку своих товарищей, которые когда-то были такими же новичками. После чего и появляется мем «тупой 1С-ник».

Т.е. складывается впечатление, что фирма 1С не заинтересована в развитии сообщества 1С: выпустили продукт, выпустили описание. Но доступ к продукту и описанию ограничили. И так же складывается впечатление, что данная ситуация саму фирму 1С не волнует — ибо фирма зарабатывает НЕ на сторонних программистах и их поделках.

А что касается организации процесса разработки — то это отдельная тема, которую я не намеревался поднимать.

И, пользуясь случаем, хочу попросить — можете показать какую-нибудь небольшую конфигурацию, в которой объекты метаданных (как минимум документы) написаны с применением юнит-тестов? Интересует все — от организации кода документа и тестов, до организации выполнения тестов формирования движения документов по регистрам.
Ибо в инете есть только искусственные примеры разработки обработок. А вот документов не видел.
Справедливости ради: многие 1С-френчайзи предоставляют оплачиваемые стажировки с сертификацией. Там всё это будет. Те еще галеры, но если цель — научиться, то возможностей достаточно.
Многие это сколько? По крайней мере у меня да, стажировка была, но что то на ней никто не рассказывал про паттерны разработки конфигураций, или принципы написания чистого кода. А когда я пытаюсь с кем нибудь поговорить на какие нибудь интересные и полезные в теории темы вроде юнит тестов, принципа единственной ответственности, соблюдении одного уровня абстракции в функции, связность и связанность, и т.п. то обычно окружающие крутят пальцем у виска и говорят иди лучше к какому нибудь сертификату 1сному в свободное время готовься вместо «этой чуши». И не сказал бы что франч совсем мелкий, сотрудников недавно за сотню перевалило, имеется несколько своих разработок, стоимость проектов в миллионах считается, а то и в десятках…
Многие это сколько?
Сложно оценить, когда мопед не твой) Но среди моих знакомых все свой путь в этой сфере начинали именно через такие стажировки, в разных организациях.

на ней никто не рассказывал про паттерны разработки конфигураций, или принципы написания чистого кода.
Если брать совсем уж фундаментальщину, там есть какие-то отличия от других технологий? То, что сотрудники лоботрясы — это их личная печаль, ведь у вас же такие правильные мысли есть.
Для того, чтобы пользоваться правильными мыслями, человеку нужно будет использовать платформу, которая, вероятно, отличается от находящейся в использовании. Далее, конфигурация, созданная на обычных формах, скорее всего эти плюшки не поддерживает. Потом конвертация конфигурации (даже если УФ не нужны) под самую крайнюю версию платформы, для того чтобы включить все эти возможности. И так далее и тому подобное. В общем, мысли и желаниями ими и останутся.
Для того, чтобы пользоваться правильными мыслями, человеку нужно будет использовать платформу, которая, вероятно, отличается от находящейся в использовании.
Версия платформы не позволяет писать годный по SOLID код?
Версия платформы/конфигурации не позволит юнит-тестирование, Enterprise Development Tools, нормальное версионирование (а не эту поделку-на-коленке, называемой хранилищем), и многое, многое другое, что есть у других экосистем, и что пытается появиться у 1С.
И да, 1С в ООП умеет плохо, а SOLID был придуман для ООП.

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


Неужели примитивы описанные Бруксом и Виртом зависят от языка?
Неужели 1С, как язык, не полон по Тьюрингу?
Неужели паттерны банды четырех не применимы к 1С?
Неужели Роберт Мартин писал только об определенном языке?


Если интересно — то занимаештся и знаешь, если не интересно — отмахиваештся.
Много ОдинЭсников не интересуются, потому что программирование — это вообще не их.

Рад за франчей.
Просто я работаю не во франчайзи.
На Гитхабе есть примеры юнит-тестов документов для ERP на базе нашего фреймворка xUnitFor1C.
Много примеров есть для vanessa-behavior — это больше поведенческие/сценарные/функциональные тесты

Ну если серьезно: сделать юнит тестирование документа в 1С все таки нельзя)
Либо это фактически будет не юнит тест, а интеграционный тест. Без рефлекшина дергать отдельные элементы мы не можем. Так же как и создавать моки с определенными свойствами.
Но можно придерживаться определенных правил: делать код разделенным, не делать в событиях непосредственную логику, т.е. изначально писать такими блоками, для которых можно написать юнит тесты, а после серии юнит тестов каждого блока одним интеграционным проверить взаимодействие блоков между собой.

Конечно, в 1С нет чистых юнит-тестов, а есть функциональные приемочные.
Но возможно создание псевдо-юнит-тестов, которые используют только платформенные механизмы и проверяют работу только одного модуля, класса и т.п.
Я лично давно не употребляю термин «юнит-тест» для 1С, говорю просто о тестах.
Многие пункты критики высосаны из пальца. Предложение делать релиз платформы раз в год сулит заморозке развития возможностей платформы. Она действительно активно развивается, а баги, увы есть везде. Если делать релиз в год, то новые технологии платформы будут обкатываться по пять лет. Кому столько захочется ждать? Например, только в этом году 1С отлично потрудилась над оптимизацией платформы, добавила новый механизм реструктуризации, проапгрейдила технологию расширений и многое другое. Если вы этим не пользуетесь, то не значит, что другим это не надо ;-)

Наезд на директивы тоже не понял к чему. Да, есть особенность. Она обоснована. Не важна производительность — используйте &НаКлиенте и &НаСервере. Важна — разбиритесь с особенность контекстных/без контекстных вызовов. Возможно подход выглядит странно, но он реально работает и позволяет 1С-разработчикам делать вполне себе рабочие приложения, которые можно транслировать в web.

Про «внедрение» цветовой гаммы шутку не понял. Поймите, если в вашем мире так удобней, то не значит, что все остальные пользователи живут в нем :) Платформа не запрещает менять цвета — хотите меняйте на здоровье, но делать это повсеместно — увольте.

Ну а что, стало быстрей? Да что то не заметно. Пользователи полюбили работать с 1С в браузере — да ничуть. В толстом клиенте работать удобней чем в браузере.


Стало. И как вы собирали статистику, что пользователи не полюбили работать в браузере? Ок, давайте уточним. Мы сейчас говорим в контекте типовых конфигураций? С ними действительно неудобно работать в браузере (не со всеми), но ведь есть те, кто пишет конфигурации специально заточенные под нужды компании и вот там, такие технологии показывают себя прекрасно. Отраслевых решений полно и среди них есть те, которые ориентированы в первую очередь на работу в браузере.

Например, в нашей компании есть полноценный сервис на 1С для партнеров. 200-300 пользователей в online через web-клиент, отдельные части сервиса поставляются через HTTP-сервисы. Работает прекрасно и развивается.

Все условно.
Company viewer

В своё время на citrix делали то же самое.
Возможность самому управлять что выполняется на сервере, а что на клиенте — это хорошо. Со времен перехода на управляемые формы за это время решил кучу оптимизационных задачек. Гибкость приложения тоже растет.
Асинхронность — это шикарно. У меня пользователь запускает обработку, считающую финансовые индексы по большому массиву данных и продолжает работу пока оно считает себе там на сервере.
У 1С на самом деле куча проблем с архитектурой, но автор почему-то ищет их совсем не там.
Я не являюсь сотрудником компании 1С. Я штатный «программист» 1С, да именно тот который не является программистом, в работе приходится/лось применять языки C++, C#, Java, JavaScript, а так же css3 html5 в т.ч. canvas и powershell, bash. Статья от человека явно далекого даже от сертификата 1С: Профессионал, и хотел бы обратить внимание что данный человек приглашён на habr
13 декабря 2017 в 16:44 ;) И удивительно видеть сегодня такую статью в топе habra… После получения сертификата 1С: Профессионал вы можете получить сертификаты 1C: Специалист, крутым считается сертификат 1С: Эксперт — человек который должен уметь решать проблемы производительности у >60Tb баз 1С развернутых на MS Windows или DEB/RPM-based Linux-систем и MS SQL или Postgress или Oracle, как понимаете решать проблемы это выше чем ставить и настраивать. Чтобы не нарываться на баги платформы/конфигурации перед обновлением необходимо проводить полное тестирование бизнес процессов компании, я считаю это парадигма касается обновления любого ПО или ОС. Насчет багов, обновления надо как вино выдерживать — ожидать, не надо хватать первую вышедшую версию/подверсию 1, 2 или 3 знака, например сейчас уже выпустили 8.3.11… но не кто не заставляет вас ее ставить, сейчас считаю стабильной 8.3.10… да и если читать порядок обновления то там написана рекомендованная версия платформы, сейчас для бухгалтерии например это 8.3.10.2667. В таблице рейтинга экспертов 1С есть проекты, по которым определяется рейтинг, по проектам люди далекие от 1С могут составить некоторое представление о текущем положении продуктов компании 1С.
И удивительно видеть сегодня такую статью в топе habra…

Ничего странного. Напишите статью о каком-нибудь программировании микроконтроллеров, получите 10 плюсов и 5к просмотров.
Вбросьте статью с какой-нибудь «болью» и кричащим заголовком — получите хайп.
Это не хорошо и не плохо, просто так работают соцсети и СМИ. Кликбейт и все такое.
Я думаю, два релиза с багфиксами за год — это позор.

nightly build, green/blue deploy. Слышали такое? Или вы 1С устанавливаете вручную, «next», «next», «next» мышкой?

Ох уж эти 1С-программисты…
Какие, к лешему, найтбилды для платформы? На кой мне потенциальные проблемы с кодом, который я никак не контролирую и доступа к которому не имею? Тестовый сервер с копией базы, обвешанной ТЦ с юнит-тестами, любое обновление сперва там и только после тестового прогона — на боевой сервер. Естественно с огнетушителем в руках. Естественно только когда уже совсем пора. Естественно не на свеженький релиз вчерашней сборки, а на тот, который уже обкатан мазайцами.
Этот процесс будет отдавать на клиента картинку, в формате jpeg например.

Скринкаст в формате jpeg? Серьезно? Ну хотя бы «в формате avi» написали бы.
Вы видимо не совсем хорошо понимаете, для каких целей применим jpeg, чем отличается просто набор из 25 картинок от потока 25 кадров/сек.

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

И потом, как масштабировать такую систему? Например, сейчас не гарантируется, что два последовательных вызова сервера не только выполнятся в рамках одного процесса, но и вообще будут выполнены на одном сервере. Т.е. система довольно легко масштабируется по горизонтали. Ваше предложение предполагает «приколачивание» пользователя к конкретному серверу, т.к. сервер должен знать, что именно находится у клиента в точке с координатами (135, 394).

Честно говоря я не понмаю две вещи почму она ткакя тормозная? Притом каждая новая платформа все тормознее и тормознее. Второе — интерфейс такси непродуман сосем почему он увидел свет? Вот взять к поимеру отчет — извините у меня на 1920×1080 со всеми шапочками этих ваших СКД влазиет три или пять строк и это не лечится без переработки конфигурации. Вообще места для полезной информации мало

1080 по вертикали это вам киношки смотреть, а не таблички, которые, как известно, растут вниз. Зачем так себя мучить?
Соглашусь, что типовые конфигурации от 1С стали тяжелее во всех смыслах. Но это зачастую и происходит из-за того, что модули пишут бывшие программисты на платформе 7.7 или студенты, которые только учатся или перешли с других языков программирования. В текстах программ не соблюдаются выставленные требования и методические указания самой же фирмой 1С. Вот такие программисты и хотели бы скорее всего избавиться от клиент-сервера и упростить себе жизнь. Думаю по вопросу «клиент серверное взаимодействие» критика неуместна.
На фоне того же JAVA, С++ итд. у 1С есть много недостатков и детских болячек.
И самый большой недостаток с моей точки зрения это:
1) Простота использования — то есть конфигурации разработаны не для пользователя или бухгалтера.(За частую фирма тратит много времени на запуск продукта в эксплуатацию).
2) Сложность поддержки и доработки стандартных конфигураций.
3) Отсутствие ООП и прочих плюшек.(После изучения JAVA я как то похолодел к 1С хотя мой путь разработчика лежал именно через 1С, так уж сложилось).
За такое время существования можно было поднять язык разработки на уровень.
Согласен с автором на тему бесконечного выпуска релизов платформы.
Директивы препроцессора это достаточно удобно, сразу видно что где выполняется.
Действительно было бы неплохо разрабатывать отдельно клиент и сервер.
Но увы так исторически сложилось.
1. Но проблемы с запуском как правило вообще никак не связаны с тем, как разработаны конфигурации. Проблемы как правило в том, что в учете бардак. Который при запуске любой нормальной системы необходимо ликвидировать или хотя бы минимизировать.
2. А в чем сложность? Ну если в сравнении с 7.7 — то да, сложность выросла. Вместе с функциональностью.
3. ООП — да. Нормального ООП сильно не хватает. Какой-то дикий гибрид из объектного и процедурного подхода получается.
Они монополисты, поэтому так происходит.
Вся критика и предложение по 1с заключается в 3-х словах «Напишите 1С 7.8». Учтите в ней некоторые современные доработки по интерфейсу и всё — 90% бухгалтеров будет достаточно.
Вы со своими монстроидальными тормозными 8.x, честно говоря, уже задолбали. Есть 10% мазохистов, которым «ЭТО» нравится — вот пусть они и мучаются.
Поддерживаю автор двумя руками, особенно:
«Конфигурации усложнены и переусложнены, там много не нужного функционала. Привычный функционал зачем то переделан или спрятан. Иногда конфигурации выглядят как настоящая магия. „
И УФ в том виде, как их сделала 1С — большая ошибка 1С.
На мой взгляд, первые 12 пунктов это про вкус и цвет фломастеров. А вот 13 — это да, эпик фейл. Кстати у SAPа (а точнее ABAP), насколько я в курсе, такой проблемы нет, но это больше по причине того, что они большинство возможностей платформы в язык запихивают, а 1С держит язык чистым, а все остальные возможности реализует через библиотеки, захардкоженные прикладные объекты / классы. Во втором подходе сделать прозрачное и при этом эффективное взаимодействие сервера с клиентам куда сложнее (хотя теоретически возможно, действительно сделав своего рода RDP, только все же не на уровне картинок, а на уровне контролов и значений их свойств).

Но вообще 13 пункт — это следствие общей политики 1С. Это хорошо автор про управляемые блокировки не вспомнил. Нет, чтобы сделать корректный откат и перестарт транзакций, после чего просто перевести СУБД в версионный режим, и получить нормальную конкурентность (когда читатель не блокирует писателя). Что сделал 1С? Барабанная дробь. Переложил всю ответственность на разработчика. То есть из ACID просто выкинул средние две буковки (а это одна из самых главных функций СУБД). При этом задача многопоточности одна из самых сложных задач в программировании. И ее переложили на 1С-разработчика, которым когда-то давно должен был быть бухгалтер. Но как тут правильно заметили:

Но теперь есть куча программистов 1С, которые кроме 1С ничего не знают, они есть в каждой фирме и конечно же докажут руководству, что для очередного проекта нет альтернатив 1С))
Поставил бы 100 плюсов…
Сам не сильно разрабатываю, но приходится сопровождать, и тоже уже устал от кучи платформ, и интерфейс тоже напрягает, причем не меня а бухгалтеров. Уже не дождусь когда на рынке появится альтернатива.
Дружище, всё не то — описал третьестепенные вещи какие-то. Тема недостатков не раскрыта.
П. 13 — проблема описана верно, но решение не учитывает, как минимум подключаемое оборудование.
Если по существу, то последние версии платформы (начиная с 8.3.10) очень неплохи. Есть REST oData, http-сервисы, web-сервисы, появились расширения конфигурации, явилась свету клиент-серверная архитектура.и тонкий клиент.
В общем все не так плохо как раньше, хотя конечно еще есть куда расти.
Снимите метку «1С-Битрикс», это немного о другом. :)
Слабовато как-то. У 1С проблем чуть больше чем дофига. Современные конфигурации, это вообще лапша, в которой походу даже сами разрабы окончательно запутались.
Клиент-серверное взаимодействие не настолько проблема, как УФ.
Почти полное отсутствие документации, одна из главных головных болей. Автор о ней вообще не упоминает.
За то он упоминает о цвете формочек и менюшечках. Вообщем, мелковато плаваете.
>Современные конфигурации, это вообще лапша, в которой походу даже сами разрабы окончательно запутались

Можете чем-то конкретным подкрепить такое сильное утверждение?

Мне оно кажется неверным. 1С, занявшись большими конфигурациями (УП2), стали активно использовать СППР (https://infostart.ru/public/275471) для построения непротиворечивых моделей, прототипирования и документирования.

>Почти полное отсутствие документации, одна из главных головных болей.

Документации буквально по чему из экосистемы 1С почти нет?

Все здорово, берем расчет аванса от оклада ЗУП 3. В моем случае 18 вложенных вызовов работают некорректно, при просмотре временных таблиц запросов понимаешь, что один и тот же запрос выполняется много раз и аккуратно под разными именами плодит временные таблицы. Идеальное решение. Правда весь стек со вложенными таблицами, похоже, смотрел только я :( https://forum.infostart.ru/forum9/topic159717/

Одно время тоже думал устроиться в 1С, но почему то передумал. Сейчас прочитав эту статью я реально осознаю как бы сильно изменилось бы мое отношение к программированию. Сижу на веб разработке. И каждый день просто писую кипятком от удовольствия как же все здесь быстро развивается. Каждые пол года появляется какой то новый фреймворк, движок, концепция которая круче всего предыдущего. А судя по отзывам всех 1С-ников каждые пол года мы фиксим баги прошлого года. Но самое главное, мне больше всего не понятно — почему закрыто ядро? Почему нельзя сделать открытое ядро, но поверх него уже делать что-то закрытое. Пусть каждый залезит в эти исходники и что-там подправит. Хочешь быстро и красиво — на тебе открытое ядро с нашей платной оболочкой поверх него (закрытой). Хочешь свое и бесплатно — вот тебе ядро, собирай что сам захочешь. Хочешь вообще из исходников собери свою версию. Заранее говорю что я знаком с 1С только из курсов в вышке, и может что-то не понимаю но в целом что думаете?
Приветствую, коллега! Если ваше мнение сложилось после прочтения именно этой статьи, — то оно по большей части заблуждения. У коллеги и крик души и бомбежка и вообще все перемешалось :) Позволю себе немножко покомментить ваши коротки тезисы:

А судя по отзывам всех 1С-ников каждые пол года мы фиксим баги прошлого года.

Сейчас в экосистеме 1С все развивается не просто быстро, а очень быстро. За последние пару лет чтобы поспевать за всеми изменениями, приходится очень много учится. Так что, для тех, кто любит это делать — сейчас тут полный простор для раздолья.

Почему нельзя сделать открытое ядро, но поверх него уже делать что-то закрытое.

У вас попуталось чутка все. Сама платформа — закрыта. Код типовых — открыт. Открывайте, правьте что хотите, как хотите, когда хотите — со всеми вытекающими. Насколько я понимаю, технологическая сложность платформы достигла такого уровня, что она не может быть постижима одним человеком, двумя, тремя и т.д. Когда-то то проскакивала инфа, что там уже миллионы строк программного кода. Поэтому, сложно представить, кто бы там в одиночку смог хоть что-то понять на уровне «я понимаю, что если я изменю вот тут что-то, то получу вот это». Кроме того, также не понятно, кто б ее смог собрать и на чем. Да и повторюсь, непонятно откуда растет эта задача.

и может что-то не понимаю но в целом что думаете?

Скорее всего да, так оно и есть, вы не понимаете как все это работает. Есть платформа — движок, на основе которой разрабатывается прикладное решение. Без движка ничего не работает. Прикладные решения есть типовые — их пишет сама 1С, есть отраслевые — их пишут партнеры/франчи, а есть полностью свои, их называются «нетиповые» конфигурации — их пишут все кому не лень, сообразно своему пониманию правильности решения той или иной задачи. Если конфы типовые или отраслевые, то у них там внутри есть некая «библиотечная» модульность — в них внедрены стандартная функциональность от стандартных библиотек, типа БСП, БПО и т.д. Все это стоит на поддержке у разработчиков. Если вам что-то нужно править, есть различные варианты кастомизации всего этого под вас с блекджеком/мадмуазелями и прочее. С точки зрения технологического стека разработки — есть и автоматизированные средства тестирования, и средства для организации коллективной работы, и средства для организации процесса инсталляции ваших обновлений/решений, написания встроенной справки и прочего. Если вы работаете в команде и стоковые средства для командной разработки вас не устраивают — вы можете переползти на гит и использовать его (пока не так все гладко), можете использовать новые фичи, типа режим агента IDE и ставить задание на ночные ребилды конфы, подключить дополнительно стороннее средство тестирования и т.д. Для мониторинга в проде тоже есть крутые инструменты, как сторонние, так и от 1С, где можно при желании и умении найти проблему в крупной какой-то эксплуатируемой системе, локализовать ее, разобраться из-за чего она возникает и т.д. Но чтобы обладать такими компетенциями чтобы это все юзать и в хвост и в гриву, нужно:
во-первых работать в таких местах, где все это применяется
во-вторых, быть самому на острие технологической атаки и актуализировать свои знания, стремится к чему-то, а не загнивать, как вы пишите «фикся баги» в 1С 7.7 и ужасаясь «сыроватость восьмерки».

Т.е. как поется в песне — всё зависит от нас самих. Как вы уже подметили, некоторые коллеги в комментариях выше до сих пор еще где-то застряли в конце нулевых, никак не поймут чем объектная модель отличается от запросной, задают даже такие вопросы — почему в 1С книжки не бесплатные, курсы. Удивляются и негодуют, почему с трекера и файлообменника они могут скачать «усе бесплатно», а официально — нет. Ну т.е. вот так вот у нас тут все ;) Вы можете засекать таймер, когда выйдет у нас новая IDE на Eclipse, то кому-то из моих коллег-архаиков станет физически плохо. Не из-за того, что там будет все плохо, а только потому, что это — новая среда разработки, с ней нужно учиться работать, тратить на это свое время и т.д., а ведь есть теплый, ламповый конфигуратор, в нем все хорошо, «ну зачем они его хоронят?» — вот так будет, т.к. некоторым тяжело уже учить чего-то новое — это стресс физический для них. И их мозг найдет 1000 и одну причину сразу включить вентилятор и доказывать всем, почему все новое — это плохое, конечно снабжая все под соусом «а вот в семерке то, в семерке!». Коллега, который запилил этот статью, видимо понял, что его тезисы при официальном обращении (ему кстати никто не мешал это сделать) — не выдержат минимальной критики, решил сделать здесь годный вброс, зная что тут пинание лейбла «1С» — это всегда хайп, плюсы в карму, в статью, поднятие ЧСВ и т.д.

Я надеюсь у вас чутка просветлело.
Поэтому, сложно представить, кто бы там в одиночку смог хоть что-то понять на уровне «я понимаю, что если я изменю вот тут что-то, то получу вот это».

Это говорит, скорее, о качестве кода, нежели о его количестве.

Понимаете, есть очень много "Семерочников", которые не понимают принципов разделения кода, не знают паттернов, не желают учить стандарты, ноют об отсутствии ООП, не понимая, что уже есть абстрактные классы, не замечают различий между программным интерфейсом и служебным кодом.


Сейчас только БСП уже порядка 5 миллионов строк кода, на 60 базовых подсистем. Чтобы заключать о качестве такого объема кода нужны определенные показатели. Один из них — это работа более чем в 1 500 000 инсиалляций проектов. Жизненный цикл критической ошибки не более недели.


Запутанным и некачественным код видится в первую очередь людям, не знакомым с принятым стайлгайдом.

Как ни странно, инсталляции — не показатель качества кода (с точки зрения читателя).

Запутанным и некачественным код видится в первую очередь людям, не знакомым с принятым стайлгайдом.

Я не претендую на истину в последней инстанции, но мне кажется, что стайлгайды делаются как раз для удобства разработки и чем они проще для понимания человеком со стороны, тем лучше. Если они не интуитивны, то это плохо.
Лично смотрели код платформы? Там все так плохо, правда?

Информация с осеннего семинара — объем кода платформы около 15 млн строк. Преимущественно C++.
Сужу лишь по комментарию, на который отвечаю: если абстракции в должном объеме не влезают в голову одному человеку, то либо они плохие, либо у человека голова маленькая. С размером кодобазы это никак не коррелирует — SRP и все такое.
Это все здорово в теории.

На практике же если у вас реально кросплатформенная разработка большого проекта (причем под платформами здесь понимаются совокупности разных ОС/СУБД/браузеров), то одной головы и правда не всегда будет хватать для ответ на вопрос

> «что если я изменю вот тут что-то, то получу вот это»
Есть достаточно много сравнимых по размеру кроссплатформенных проектов и там прекрасно работает идея модульной независимости. Почему вы так плохо думаете об 1С?
>Есть достаточно много сравнимых по размеру кроссплатформенных проектов и там прекрасно работает идея модульной независимости.

Всегда есть компромисс между интегрированностью (взаимозависимостью) и модульностью в больших системах.

Ладно, если тема вам правда интересна — почитайте блог 1Са — там любопытно.

Как минимум

— про платформу habrahabr.ru/company/1c/blog/269611
— про СКД habrahabr.ru/company/1c/blog/336258
— про веб-клиент habrahabr.ru/company/1c/blog/315414
— про подходы к кастомизации habrahabr.ru/company/1c/blog/320018

После может более предметно получится поговорить :)
>Сужу лишь по комментарию

Если тема интересна, то имеет смысл глянуть на это — habrahabr.ru/company/1c/blog/273591

Там прям во первых строках про объемы кода, языки и устройство процесса разработки.
Там буквально в первых строках идет текст о разделении труда и разных группах программистов, занятых своими подсистемами.

Кажется, я недостаточно сакцентировал слова про должный объем кода. Это то количество логики, которое одновременно нужно себе представлять, чтобы выполнять осознанные действия с кодом и представлять себе результат, т.е. это самое «что если я изменю вот тут что-то, то получу вот это». Грамотно выстроенные абстракции позволяют гарантировать (минимизировать) зависимости, чтобы исключить всевозможный «эффект бабочки», т.е. уменьшить «должный объем кода» до минимального.
Если главное меню вертикальное, то оно занимает много места. А нам пользователям нужно больше рабочего места.

У вас что все еще мониторы с пропорцией 4:3? Как правило на мониторах 16:9 такой проблемы нет.
Сложно, все сложно, но люди «привыкли»
image
Мне в 1С не хватает сахарку.
Сейчас приходится писать так:
СУперПуперВстроенныйОбъектИмениБорисаНуралиева.Имя = "Прелесть"
СУперПуперВстроенныйОбъектИмениБорисаНуралиева.ПолноеИмя = "Моя прелесть"
СУперПуперВстроенныйОбъектИмениБорисаНуралиева.Цена = Null
СУперПуперВстроенныйОбъектИмениБорисаНуралиева.и_так_далее = "и т.д. и т.п."


Хочется, чтобы было так:
Вместе СУперПуперВстроенныйОбъектИмениБорисаНуралиева как мояпрелесть Выполнить
        .Имя = "Прелесть"
        .ПолноеИмя = "Моя прелесть"
        .Цена = Null
        .и_так_далее = "и т.д. и т.п."

как в питоне:
    with controlled_execution() as thing:
         some code

Лямбды хочется, да…

СуперПуперВстроенныйОбъектИмениБорисаНуралиева = Новый Структура("Имя,ПолноеИмя,Цена,и_так_далее","Прелесть","Моя прелесть","Null","и т.д. и т.п.");

Only those users with full accounts are able to leave comments. Log in, please.

Articles