Как стать автором
Обновить

Комментарии 532

Может быть, я зря нагнетаю, но в каком-нибудь настоящем ЯП вы видели, чтобы костыли, которые улучшают IDE, продавали за деньги?

C# и ReSharper:)

Visual Studio и Visual Assist!

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

IntelliJ IDEA когда-то началась с платного плагина к eclipse, который позволял переименовывать классы/методы/переменные/etc вместе со всеми их вхождениями.

IntelliJ IDEA появилась на 8 месяцев раньше eclipse =) а плагин был для JBuilder

Ух, попутал, правда ваша

Eclipse и JRebel...

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

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

И странности- например, меня как админа просит глав бух назначить права в переписанной ОПП. Профили не прописаны, она может сказать -что бы этот пункт меню работал и этот. Что бы разобраться какие роли дать мне приходилось открывать конфигуратор и смотреть там права.. Причём с первого раза не работало т к нужны ещё и права на связанные объекты. Или вот- обновление платформы. Разработчик 1С просит поставить -иначе релиз не обновить. 8.3 очередная. А конфигурация под 8.2 сделана и пользователи к его меню привыкли, а в новом формате многих пунктов, особенно "дописанных" нет. И я изгаляюсь в каком режиме и с какими параметрами заработает нормально (причём заработал только один из видов клиента- уже не помню тонкий или толстый).Ну или какой то косяк тех же бухов с занесением информации в систему, когда надо очищать регистр.

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

"Разработчик 1С просит поставить -иначе релиз не обновить. 8.3 очередная. А конфигурация под 8.2 сделана и пользователи к его меню привыкли, а в новом формате многих пунктов, особенно "дописанных" нет."

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

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

а я и не сказал, что 1С - кусок какашки. я несколько раз подчеркнул ее достоинства.
моя статья строится на сравнении идеальной 1С из статьи @EvilBeaverи того, что есть на самом деле.

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

Тут даже речь не в том, кусок какашки 1С или нет, просто вы сравниваете её не с теми продуктами.

в оригинальной статье используется тот же прием, так что чем я хуже :)

А надо быть лучше! %)

По моим наблюдениям, бизнесу (если это не IT компания) в общей массе, нужны не программисты, а консультанты. Типовая 1С:КА + пара расширений, и только успевай обновлять)

НЛО прилетело и опубликовало эту надпись здесь

спасибо.
я просто устал от ограничений 1С, так то какая разница на чем кодить.

Для бизнеса важно решить задачу и быстро, если это делает 1С какая разница бизнесу? Специалистов по 1С в любой деревне, а какой нить SAP это медленно, дорого и к моменту запуска уже и цели у компании другие. Потому все и выбирают 1С, не просто так же сложилась такая тенденция.. А ограничения 1С больше возникают от желания сделать удобнее, красивее, быстрее, если разумно к этому подходить, то ограничения не являются такой уж и проблемой, ну при желании можно почти любой функционал через COM подтянуть или компоненты

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

Сравнивать 1С с SAP это вообще не понимать, как устроена современна система SAP. Много можете назвать компаний, где внедрена такая система, Тогда зачем пишете?

1 С это никакая не ERP- cистема. В лучшем случае учетная бухгалтерия. Есть и функциональнее и производительнее.

А вот про SAP интересно послушать. Расскажите нам, как устроен современный SAP, чтобы мы могли сравнить?

Везде где я видел сап и работал на интеграции с сапом САП был слабым зеном, тормозом проекта и говном. Основной аргумент, который говорят саперы, когда не хотят ничего делать: "САП это не умеет". Почему-то, в их среде это считается приличным аргументом. Сейчас мне расскажут, что современный сап не такой, а я видел какой-то несовременный, может быть. Но то, что ABAP-based - шлак. Даже если на него наклеить шильдик S/4 и громко обещать, что "ну теперь, все не так, теперь все-по новому".

У нашей команды был стикерпак со внутренними мемами, так там одно из почётных мест занимала фраза "Так пришло из SAP"

«Так пришло из SAP»

«так истерически слежалось»©

А не кажется ли вам, что дело не в система, а во внедренцах с лучшими практиками. Вот только, скажи, почему у нас повально столько предприятий "имеет" SAP. Наверное остальные еще хуже. Как думаешь.

Я не за САР. Я за отечественную, достойную систему, а не халявную. Монополизация приводит к деградации.

на SAPе откатить можно было побольше - одна из причин, кстати

да и "специалистов" там лучше кормили.

Причем здесь SAP? Я не за САР.

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

А вот как устроена ERP-система SAP можешь поинтересоваться индивидуально, самостоятельно, если интересно.

Да что вы, берите больше, это вообще никакая не система, это картинки просто, в которые можно мышкой тыкать :)))))

НЛО прилетело и опубликовало эту надпись здесь

У меня складывается впечатление, что вы 1С не видели совсем. Я не топлю за неё, но по скорости/качеству решения бизнесзадач, гибкости и удобству на сегодня удобнее продукта я не знаю, может я отстал где-то?.... Вроде 30 лет уж в ИТ...

Отстал. Держай.

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

На одном известном ресурсе по 1С, один такой же махатель шапкой из Фузины (кстати он в этой теме отметился) тоже говорил практически что и вы. Когда ему предложили наспор написать за неделю простейшую систему учета остатков товаров на Фузине vs 1С на УФ, то он сначала было взялся, а потом тупо слился. Хотите поучаствовать? Готовы на C# и WinForms написать за неделю простую учетную систему? Пусть даже оппонент с 1С будет не на УФ, а на ОФ. Даже беря во внимание только UI, на который вы в основном и расставили акценты, уверен что вы сольетесь уже на привязках элементов формы, даже до бизнес логики не дойдя.

"Готовы на C# и WinForms написать за неделю простую учетную систему? "

Из пластилина легко слепить детскую игрушку. Но самолет из пластилина сделать тяжело.

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

Многие 1С специалисты, и вы в том числе мыслите категориями ИП, когда нужно быстро и дешево. Я вот на ютубе смотрю канал одного человека, он там из Пеноплекса дом строит.

Тоже говорит смотрите как быстро получается, и дешево, и даже тепло.

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

Вы считаете, что построить большую и сложную систему на 1С в принципе невозможно?

Построить можно что угодно из чего угодно.

Проблема это все сопровождать, развивать, масштабировать. У меня есть опыт построения систем федерального уровня с базами в несколько терабайт, и огромными нагрузками, и работа с этими системами это в 90% случаев борьба с платформой, и СУБД. В общем все прелести монолита + отношение 1С к СУБД как набору DBF.

Мы покупаем промышленные СУБД за десятки миллионов что бы использовать их на уровне SELECT + максимально примитивный INSERT весь остальной функционал этих СУБД можно использовать только вопреки и с огромными костылями и сложностями.

Предполагаю, что это следствие универсальности 1С, т.е. возможности работы с несколькими СУБД.

т.е. возможности работы с несколькими СУБД.

парадокс в том что нормально она работает всёравно только с MSSQL и плюсминус с постгри (которую соплями и слезами лет 10 дотягивали почтиипочти до mssql)
а про db2 и oracle даже говорить смешно

Согласен.

Но 1С же не отказывается от их поддержки.

И, вероятно, не хочет/не может сделать так, чтобы для каждой СУБД можно было использовать их фичи.

У меня есть опыт построения систем федерального уровня с базами в несколько терабайт, и огромными нагрузками, и работа с этими системами это в 90% случаев борьба с платформой, и СУБД

но то, что системы такого масштаба существуют (и достаточно распространены в РФ), уже говорит в пользу 1с.

Я как то был на инфостарт и задавал вопрос Олегу Бартунову, можно ли где то ознакомиться с best practices по эксплуатции крупных монолитных баз от 1 Tb и выше.

На что получил ответ:

" best practices по эксплуатции крупных монолитных баз от 1 Tb заключается в том что бы не создавать крупные монолитные базы от 1 Tb"

И что примерно с 2002 года индустрия уходит от монолитов в сторону сервисов, так как объемы автоматизации а так же данных растут, и держать это все в одной базе бессмысленно, так как разные категории данных имеют разную критичность, разные объемы, разную нагрузку. Не просто так придумали разделение OLAP/OLTP.

Любая система на 1С это жесточайший монлит на всех уровнях от кода до субд.

Любая система на 1С это жесточайший монли

Не обязательно.

Я не зря написал "система", а не "база".

Система может состоять из нескольких баз.

Например РИБ с узлами содержащими разные виды данных.

Либо система состоящая из несколько несвязанных баз, между которыми происходит обмен информацией отдельными механизмами.

Вы действительно не понимаете разницу между РИБ и микросервисной/сервисной архитектурой?

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

Если у вас стало так много контрагентов что 1 серверне справляется вы разворачиваете еще один сервер и ставите между ними фасад который определяет на какой сервер отправить запрос (например по коду контрагента).

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

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

Как бы это работало в нормальном виде?

Просто iframe в который подтягиваются данные из системы согласования с офролемением через css. В 1С это могло бы выглядеть как открытие окна одного приложения в окне другого при том что пользователь не понимал бы что сейчас он видит данные из другной базы.

В 1С это могло бы выглядеть как открытие окна одного приложения в окне другого при том что пользователь не понимал бы что сейчас он видит данные из другной базы

Разве так сделать нельзя?

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

Не только.

Можно и запросами в другую базу организовать.

Ну вот запросами в "бесшовной интеграции" и реализовано, т.е. часть форм из ДО просто скопировано визуально.

А дальше через WEB сервис запрашивается струкутра данных и полученными данными заполняется копия формы.

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

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

Работаем в ERP, согласовываем в ДО приводит к тому что нужно переходить в разные приложения. Ну или использовать очень ограниченные костыли в виде копий форм из ДО.

Системы гарантированной доставки сообщений, то, что вы называете RMQ, не решают все проблемы. Во-первых, они не гарантируют отсутствие проблем и сбоев. Во-вторых, они не могут этого сделать. Любая внешняя система доставки сообщений действует вне транзакции записи объекта. Т.е. вы никогда не можете быть уверены в том, что объект отправится при успешном завершении транзакции или наоборот. Кроме того, никто вам не гарантирует, что объект будет получен и вы об этом узнаете. Очереди даже хуже почты и мессенджеров в этом плане.

С другой стороны 1С предлагает небезупречный механизм, но с гарантированной доставкой сообщений. Га-ран-ти-ро-ва-нной. А это важно.

Эээ, давно уже есть системы с гарантиями доставки сообщений «at least once», кажется еще что то слышал про «only once» — но не уверен потому не гарантирую.

At least once - точно доставит, но возможно больше одного раза
At most once - может доставит, может нет, но точно не более одного раза
Exactly once - точно доставит, и точно не более одного раза.

Для exactly once требуется хранить в том или ином виде состояние на клиенте: offset/ключи корреляци и тп. Самый дорогой вариант. Более того, для поддержки exactly once, требуется поддержка и отправителя и получателя

Это вы ещё на LOR не заходили.

Чем больше читал статью - тем интересней становилось, что же будет в коментах.

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

Но, многие проблемы, которые вы описали применительно к 1с, существуют и в мире «взрослого» программирования.

я шел по пунктам из оригинальной статьи @EvilBeaver и несколько раз подчеркнул, что 1С как JavaFX+Hibernate очень хороша для автоматизации заполняемых табличек.

Это, на мой взгляд, утонуло в общем настрое статьи, она больше воспринимается именно как "1с какашка". C#/Java/Go такая же какашка, просто там проблемы другие.

Дело в другом, что люди не прочитав изначальной статьи стали реагировать на ответную статью

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

Лет десять-двенадцать назад меня многие уговаривали идти в одинЭс. Мол, голова на месте, без куска хлеба не останешься. Но я всеми фибрами души ненавижу бухгалтерию. Поэтому, сразу пошел в Java и пр. Какое счастье.

Некоторое время я даже работал рядом с отделом одинЭсЭс'овцев - много общались, поэтому примерно понимаю, о чем говорит автор статьи.

я тоже устал от бухгалтерии :)

я «устал от бухгалтерии», проработав несколько лет главбухом, и пережив выездные проверки всех предприятий нашего, с позволения, «мелкохолдинга»… а с бушками общаться — иногда даже прикольно. Хотя их косяки порой надоедают.

интересная у Вас жизнь, однако

Не жалуюсь, однако…
Но я всеми фибрами души ненавижу бухгалтерию

а причём тут бухгалтерия? львиная доля — оперативный учёт, можно (условно говоря) быть разработчиком на 1с и не знать что такое план счетов.

Кстати не совсем так. Т.е. в теории оно так должно быть, когда я на 1с писал у нас своя коробка была 1с совместно, вообще никакого отношения не имеющая к бухгалтерии, да и оперативного учета (в плане расчета всяких себестоимостей и т.п. было около нуля) но во франчах и для всяких тендеров важно количество у конторы сертификатов специалистов по платформе. А в этом экзамене как раз немалая часть расчетные регистры и регистры бухгалтерии. Да и первые задачи там тоже имели мало отношения к моей реальной работе. В итоге меня все таки заставили его сдавать.
я, несмотря на стаж главбуха и т.п. навыки — просто когда брал еще одного программиста в отдел — взял специально на финансовый контур. И несмотря на то, что отслеживал изменения в нормативке, и иногда советовал прогу и даже ГБ и ФД — за 10 лет практически не касался бухгалтерии, только оперативный контур… в предществуюшие 2 года (когда уже ушел из ГБ), и за последующие 8 лет в других конторах — наверное, не больше месяца-двух рабочего времени в сумме ушло на то, где требовалось знание/понимание плана счетов. из этого заковыристых задач, где требуется понимание не на уровне «дебет слева кредит справа» было всего пара-тройка.

Автор каким-то образом даже подсчитал, что именно 80% из них не думают, когда программируют. Наверное, у него есть какая-то статистика, которую он вручную собирал.

Он видимо про копипаст кода из stackoverflow, но в упомянутых языках так не работает.

Ого, да тут целый дисс на меня и мое выступление в позапрошлом году! Придется ответ писать, что поделать...

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

В споре рождается всеобщее заблуждение, как писал классик.

даже любопытно будет почитать

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

В спорах пождается истина.

истина существует независимо от нашего восприятия и наших знаний о ней :)

Истина для индейца из лесов Амазонии и человека, который их вырубает, будет разная. Всё зависит от того места, где вы стоите и что делаете, всё-таки.

Вы путаете объективную и субъективную истины. Субъективная у каждого может быть своя, а вот объективная в том, что одни вырубают лес, в котором живут другие. И объективная истина таки одна и не противоречит никакой стороне.

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

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

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

это раздутый ORM с визуализацией табличек, где классы ORM хорошо подходят под хранение периодических данных и всяких бухгалтерских расчетов.
так что это скорее DSL.

А какие проблемы у 1С с парсингом сайтов, которых нет у других систем? Ну может либы получше, XPath2+ с регулярками, но это просто вариант использования технологий (типа я напишу этот код в три строки, а я - в пять). https://infostart.ru/1c/articles/1031620/

как отрендерить javascript код и достать текущее DOM-дерево только встроенными средствами платформы?

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

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

Задачи парсинга - это не отобразить у себя так, как где-то там. Если задача ставится именно так, то что-то тут не то.

ЗЫ: и с чего ответ про 1С и нативные методы? Какой-то бред. Ну и расскажи, где там "нативными методами" это все делается. Ага...

то есть в 1С нативными методами, никак. понял, спасибо.

Ни в одной известной мне корпоративной информационной системе (SAP, Axapta, Oracle ERP) я про такие нативные средства не слышал - вот чтобы пойти и распарсить DOM-дерево на каком-то произвольном сайте.

а библиотека — это «нативный метод»? а библиотека, написанная не «вендором» — это «нативный метод»? А библиотека, написанная на другом языке? ну и т.п.

нативный метод - это когда в коде конфигурации написал на встроенном ЯП без внешних компонент.

На встроенном языке 1С можно написать что угодно, даже RTX-рендер. Вы просто не видели код либ на JS для всех этих штукалясин, которые называете "нативными" - они там ну очень большие. Ну и не совсем ясно, можно ли считать "нативным" скомпилированный в Web-asm какой-нить PgSQL, который также можно скомпилить в 1С-асм.

Просто 1С-неги часто не пишут свою либу на своем языке, которая бы представляла из себя интерпретатор JS для того, чтобы на кой-то хрен (совершенно непонятный) отрендерить какую-то область, чтобы выдрать оттуда какой-нить innerHTML. Но если говорить о возможностях, то 1С это вполне способна сделать хотя бы через поле HTML-документа, при том 99,9999% всех тех либ, которые Вы по какой-то причине считаете нативными, делают это через очень далеко, т.к. вряд ли имеют либы интерпретатора JS (ну если это не аналог "Выполнить" в той самой JS). Но если имеют - да флаг им в руки, ибо высосанный из пальца пример нафиг не нужен в реальной разработке, и делать парсинг через какие-то клики - это попытка запилить что-то, совершенно не понимая, зачем это нужно и как это делать правильно.

На встроенном языке 1С можно написать что угодно, даже RTX-рендер

я бы посмотрел на безумца, способного на это.

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

я не претендую на бесконечную мудрость. я много еще чего не видел.

можно ли считать "нативным" скомпилированный в Web-asm какой-нить PgSQL, который также можно скомпилить в 1С-асм.

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

Просто 1С-неги часто не пишут свою либу на своем языке.

я думаю он просто дожил до окончания разработки.

интерпретатор JS для того, чтобы на кой-то хрен (совершенно непонятный) отрендерить какую-то область, чтобы выдрать оттуда какой-нить innerHTML.

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

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

естественно, JavaScript на сайтах не нужен, ведь они не защищаются от парсинга.

я бы посмотрел на безумца, способного на это.

https://infostart.ru/1c/articles/1096524/ - вот тут на "Перфоленте", языке, основанном на синтаксисе 1С. Есть и на самой 1С - погуглите.

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

https://habr.com/ru/post/656575/ - ну как бы, это. Надеюсь сумеете понять, почему статье влепили столько минусов. Думаю, что если бы Ваш друг со сбера что-то такое написал бы на хабре, то тоже бы огреб.

естественно, JavaScript на сайтах не нужен, ведь они не защищаются от парсинга

Сайты сами где-то эти данные берут. Вот я привел ссылку на статью по парсингу "защищенного от парсинга" сайта. Да, там клиентский рендеринг, который получает фактически данные в HTML с сервера в виде JSON-контейнера, и это, в общем-то, легко парсится. И есть целые конторы, которые только и занимаются, что парсят сайты. И реальная защита - это вообще генерация картинки, которую ты с джавой не спарсишь, а у всяких там OCR просто не хватит разрешения, чтобы прилично это распознать. Остальное - это игры сервера и клиента. Но сейчас многое вообще уходит на site-side-рендеринг, т.к. клиент не хочет ждать, в итоге он получает готовый фрейм, а не оболочку для одностраничника, динамически подгружающего данные.

В общем в части парсинга в 99% случаев не нужен этот вот клиентский кликер в виртуальном контейнере ДОМ-а, в остальном 1% случаев уже готовых решений овер дофига и изобретать велосипед нафиг не надо. И с 1С тут никаких проблем - она может дернуть локальный сервис, написанный на чем угодно, чтобы получить требуемое. И если проще написать это на питоне, то зачем это делать на 1С при разворачивании того же питона одной кнопкой на каком-нить аналоге хироку...

https://infostart.ru/1c/articles/1096524/ - вот тут на "Перфоленте", языке, основанном на синтаксисе 1С. Есть и на самой 1С - погуглите.

сдуру можно и металлические шарики разбить, последний комментарий - 2019, ну что ж актуальненько.

https://habr.com/ru/post/656575/ - ну как бы, это. Надеюсь сумеете понять, почему статье влепили столько минусов. Думаю, что если бы Ваш друг со сбера что-то такое написал бы на хабре, то тоже бы огреб.

это не парсер, это что-то вроде читалки XML

Сайты сами где-то эти данные берут. Вот я привел ссылку на статью по парсингу "защищенного от парсинга" сайта. Да, там клиентский рендеринг, который получает фактически данные в HTML с сервера в виде JSON-контейнера, и это, в общем-то, легко парсится. И есть целые конторы, которые только и занимаются, что парсят сайты. И реальная защита - это вообще генерация картинки, которую ты с джавой не спарсишь, а у всяких там OCR просто не хватит разрешения, чтобы прилично это распознать

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

В общем в части парсинга в 99% случаев не нужен этот вот клиентский кликер в виртуальном контейнере ДОМ-а, в остальном 1% случаев уже готовых решений овер дофига и изобретать велосипед нафиг не надо.

как я и сказал, средствами платформы без внешних компонент никак.

средствами платформы без внешних компонент никак

Даже RTX средствами платформы как, так что не о том речь. Вряд ли кто на чистом питоне будет писать ML, т.к. есть написанные на С/С++ либы типа pyTorch, Numpy, Pandas, e.t.c... И никому не придет в голову говорить, что на питоне вот нифига нельзя "без внешних компонент".

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

По поводу медленности - да, он офигенно медленный. Пример - битовая матрица недействительных паспортов строится 50 сек на С, на 1С - уже 8 минут. На питоне и прочем не пробовал, но фиббоначи на 1С считается в 4 раза дольше, хотя функции рпьоты со строками не сильно медленнее, чем на PHP, хотя пыха сильно быстрее питона..

полиморфизм - это отсутствие строгой типизации

В случае ООП, полиморфизм это другое

Да, и что же это?

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

Пример: если в 1С добавить в массив сто разных документов, то для каждого из них вообще не парясь можно вызвать Записать(). А что Вы понимаете под словом "полиморфизм"?

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

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

template<class A>
A add(A a, A b) {
    return a + b;
}

является его примером? Он скомпилируется и выполнится для любого типа, который определяет оператор +. Но дело тут не в ООП.

Полиморфизм в ООП это про то что у вас при сохранении сигнатуры метода возможно его разное поведение. Это обычно достигается за счёт наследования, а именно того что наследник переопределяет методы родителя. И что, вероятно, важнее -- это то что класс-родитель может обращаться к этим методам и менять свое поведение.

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

Ну а что классически было полиморфизмом? Вот у вас есть базовый класс, вот у него есть виртуальный метод, вот у наследников этот виртуальный метод переопределен, вот у нас переменная базового класса, вот мы кладем в нее адрес производного класса, вызываем виртуальный метод и видим поведение производного класса, а не базового. Или что конкретно Вы понимаете под полиморфизмом? Для языков без строгой типизации это вообще бессмысленно, т.к. вызывая метод класса (записи документа с проведением) мы получаем именно проведение того объекта, для которого вызван этот метод. Никаких приведений типов...

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

Увы, нельзя. Сам язык не так уж плох, там есть все необходимое. Но:

  1. Он безумно медленный.

  2. Нет ООП.

Если на второй пункт можно возразить "пишите в процедурном стиле", то первый поставит крест на любых начинаниях изобразить что-то посложнее. Кстати, тут, на хабре, был представитель 1С, и ему задавали вопрос об ускорении языка (может, даже я). Он ответил примерно так - "пока не планируем этим заниматься, так как быстродействие языка не является узким местом".

Ни медленность ни отсутствие ООП не являются причинами по которым на языке нельзя что-то написать. Это вопрос удобства/не удобства написания и выполнения, а не тьюринг-полноты.

задача может решаться очень долго, но если она в итоге была решена, то это значит что на языке её можно решить.

Сам язык не так плох. В нем, например, сильная типизация, в отличие, скажем, от PHP. Писать на нем вполне можно.

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

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

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

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

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

Хорошо ли это, плохо ли - можно спорить, но подход сейчас именно такой.

Уточню. Будет практическая ценность или нет зависит от многих факторов. И для чего-то сложного обычно ответ отрицательный.

Но бывает и по другому. Парсер JSON для конкретной задачи я на 1С писал. Давно, лет 10 назад, что бы подключить какой-то ресторанный POS. Проект успешно запустили. Но тут, во первых, требования к быстродействию низкие, а во вторых, парсер JSON пишется за несколько часов. Не универсальный, а что бы он понял данный конкретный обмен. А через год-другой 1С уже встроила этот функционал в платформу.

В 1с сильная типизация? Даже не смешно

Да, во встроенном языке 1С сильная типизация. Там почти нет неявных преобразований типов. И это хорошо.
Если не совсем понимаете, о чем речь, то информацию можно найти и на хабре: https://habr.com/ru/post/161205/

Ну да, пишем:

МойДокумент.Контрагент = Склад;

И всё работает несмотря на разные типы. Просто 1с приведет значение справочника склады к справочнику контрагентов и присвоит пустую ссылку.

С ссылками да, косяк. Ну давайте назовем "средней" типизацией )


Но она не слабая, это точно. Что такое слабая типизация можно понять, написав что-то на PHP. Там преобразовывается все что угодно во что угодно. Причем получившийся результат с непривычки сильно удивляет...


Один коллега ушел с 1С. После некоторого времени на PHP сказал, что изменил свое мнение относительно языка 1С, и это не самый худший язык))
Сейчас пишет на джаве.

Сейчас пишет на джаве.

ему в питон надо сходить, после джавы паника будет по началу

Джава ему понравилась :)

А я на джаву не смотрю. Мне нравится питон за офигительный комфорт и скорость разработки.

И так же нравятся языки, которые позволяют получать быстрый нативный процессорный код. Есть очень древний опыт на C++, но сейчас посматриваю в сторону раста, хотя еще не написал на нем ни строчки.

Нативным методом ни кто не может. Питон использует стороннюю библиотеку, ещё и написанную не на питоне. Так же и с другими языками. Я не знаю такого языка, где из коробки есть парсинг сайтов и тем более с выполнением js кода перед парсингом.

Зачем его рендерить? ВСкройте его апи и получайте даж структурированные данные.

ИМХО 1С - это среда разработки с ориентированием на работу с сущностями в разрезах периодов. Идеально для бухгалтерии, отчетности и т. п. То есть этот функционал уже готов и его не надо пилить отдельно. Ну и плюсом типовые конфы обновляются в соответствии с ветренным законодательством РФ. Всё остальное - жуткие минусы. От негибкости языка, до платности всего и вся. Шаг в сторону - только на костылях. Ну и сколько щас пустая конфа весит? Гигабайт?

Лет 10 назад, когда пустая конфа УТ весила около 600 метров, я решил поставить SAP, чтобы посмотреть, что это за зверь такой. Что конкретно ставил уже не помню, что-то типа CRM/HR, помню только, что ставилось около 9 часов и пустая "конфа" весила 32 Гб.

1С УТ на том же железа ставилась мин 4-6, весила пустая конфа около 600 метров. Ну так, для сравнения.

дело не в весе конфы, а в одних и тех же технологиях и 5 конфигурациях, в рамках которых живет среднестатистический 1С-программист.

Все же интересно было бы увидеть такой же разбор по SAP. Я участвовал в нескольких проектах (со стороны заказчика), там некоторые разработчики тоже очень похожие вещи рассказывали про архитектуру:

- много оберток
- разные модули писали в разное время разные команды, иногда даже названия одних и тех же сущностей в UI/UX не совпадают
- есть отдельная каста "писателей на ABAP" - специальном языке для SAP

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

Ну да, без крупных конкурентов... Это вы пошутили. САП, Аксапта, Навик, Галактика, Парус.. имя им было легион.

Вы забыли, что раньше была четкая сегментация: «Парус» работал в бюджетном секторе, «Галактика» специализировалась в среднем и крупном бизнесе, а «1С» – «Доступно и всерьез» (читай «ларечники» из статьи). За счет грамотного маркетинга «1С» перераспределила рынок, заняв на нем монопольное положение. Заняв монопольное положение, тут же начала поднимать цены (пресловутые ПРОФ и КОРП лицензии) – по текущему прайс-листу цены на лицензии и на поддержку «1С: ERP» практически равны ценам той же «Галактики». Но техническая часть осталась на прежнем уровне. Намедни тут пробегала статья, что «Московский метрополитен» и «Мосгортранс» переходят с SAP на «1С: ERP»… Хотел бы я увидеть тот «колхоз», который там нагородят, лишь бы обойти ограничение на 99999 строк табличных объектов. Да-да. Вы все правильно поняли – в КОРП-функционале это ограничение не снято.

Кажется, вы сами себе немного противоречите. Раз вы сами пишете, что 1С перераспределил рынок и выдавил из него остальных, значит он с ними конкурировал и смог подвинуть. Насчёт монопольного, кажется вы преувеличиваете. Маркет-шейр 1С всё это время не переваливал за 40% (максимум), если верить отчётам уважаемых фирм.

А что плохого в сегменитировании? Для "ларёчников" как было, так и осталось - 3000₽ за бухгалтерию. Вы считаете, что функционал для корпораций уровня "Газпрома" должен стоить копейку? а почему САП тогда такой дорогой?

Вы немножко неправильно поняли мою фразу: я имел в виду что 1С сначала выдавил конкурентов, а потом занялся перераспределением. Если мы ссылаемся на один и тот же источник отчетов, то лет 10 назад доля 1С доходила до 90% (максимум). Сейчас, да, цифра колеблется в районе 40%.
Я ничего не имею против сегментирования. Более того, я категорически против автоматизации учета "Сушевни на раёне" при помощи условного SAP HANA, а ПАО "НЛМК" (спасибо им за интереснейшие статьи!) – при помощи "Бухгалтерия Предприятия. Базовая версия". Главный аргумент 1Сников в борьбе с конкурентами был "Посмотрите сколько стоят лицензии и поддержка SAP ("Галактики") и сравните с нами". А вот после выдавливания конкурентов, ценник от 1С пошел вверх. Причем в разы. Повторюсь еще раз: на текущий момент стоимость лицензий и поддержки решений 1С для крупного бизнеса сейчас сравнялась с ценами на ту же "Галактику ERP". Только вот технологический базис (читай платформа) остался на прежнем уровне.

Я имел в виду отчёты IDC.

Не, вы не правы. С тех пор платформа шагнула далеко вперед. И развиваться не перестаёт.

Я думаю для роста цен есть причины.

Да и конкуренты, кстати, с тех пор тоже подросли 🤣

Наверное, вы имеете ввиду ограничение 99999 строк в табличной части объекта. А что плохого в этом ограничении? Вы когда-нибудь видели, скажем, товарную накладную, где бы потребовалось больше строк?

На количество данных в самих таблицах никаких ограничений нет.

Понимаю, тут принято ругать 1С. Но я все же за объективность.

А что плохого в этом ограничении?

На количество данных в самих таблицах никаких ограничений нет.

Кажется что Вы противоречите сами себе. Вообще-то "Количество данных" = "Количество строк". И да. Ограничение касается не только табличных частей объектов, таблиц значений, массивов и т.п., но и таблиц движений регистров, т.е. один документ не сможет сделать более 99999 записей в учетный регистр.

У упомянутых выше организаций количество основных средств может превысить сотню тысяч. Теперь представьте себе во что выливается регламентная операция расчета бухгалтерской и налоговой амортизации?
Или еще пример с "Инфостарта" как на одном заводе уперлись в это ограничение при расчете зарплаты. Разделение расчета по подразделениям не спасало ситуацию. На этом заводе работает 1500-2000 сотрудников. В "Мосгортрансе" – около 30000. И меня терзают смутные сомнения, что в "Мосгортрансе" оплата труда сводится только к "Оплата по окладу" и "Премия" (уверен что там у сотрудника не менее десятка начислений в месяц).

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

Накладную не видел. А вот прайс-лист на 120000 позиций – да. Впрочем такую накладную я могу представить: коносамент с сопроводительной ведомостью морского контейнеровоза.

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

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

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

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

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

С накладными (реализация товаров, услуг) с более чем 100 тыс. строк я имею дело. Ведь помимо купи-продай, есть производство, сфера услуг, а более глубокая детализация позволяет лучше анализировать. Другое дело, что клиенту не выдается "простыня" со всеми позициями. При печати данные группируются и остается в пределах 100-300 строк.

Ограничение в 99 999 строк удивило и я не понял, для чего это сделали. Проблему решил тем, что отказался от использования встроенной табличной части в некоторых документах в 1С. Данные хранятся в отдельной табличке (в терминах 1С это регистр сведений) Задача не тривиальная и не 2 часа работы. Однако решение позволило не только обойти это ограничение но и значительно повысило скорость открытия формы.

А что у вас в этих строках, если не секрет?

Товары, оказанные услуги.

Биллинг?

Типовые конфы это и есть источник основного ужаса, они написаны зачастую без соблюдения правил самой 1с… А если взять ЗУП… это вообще нечто

согласен, ЗУП с ее функциями для склейки запросов - нечто.
слава Богу, что я этот кошмар больше не увижу.

Теперь подробней:

Обычно такое поведение присуще ларечникам, которым IT не нужен, или когда автоматизация делается ради галочки, без реальной необходимости. Однако же в стране работают не только ларечники, а есть средний и крупный бизнес, который понимает ценность автоматизации процессов. Там я впервые столкнулся с кондовым отделом бухгалтерии, с тетеньками 50+, у которых программист всегда виноват и в апреле (время сдачи налоговой отчетности) всегда аврал. Соглашусь с Андреем, что дело не в 1С, а в людях, которые работают в типовых конфигурациях. Но почему-то именно в 1С таких заказчиков очень много. 1С – это CRUD для малого и среднего бизнеса, где обычно много табличек. И что бы мне ни говорили 1С-программисты, большая часть их задач лежит в этом заколдованном круге кусочков большой конфигурации. Это либо отчеты, призванные показать руководителю все в одном месте, либо обработки, призванные упростить какую-то хозяйственную операцию, либо отдельная подсистема, чтобы автоматизировать "уникальный бизнес-процесс", либо просто корректировка бизнес-процессов предприятия так, чтобы они ложились в типовую конфигурацию.

Так это и есть ниша 1С. Не у всех есть компаний ресурсы на айти отдел и собственный кастомный продукт. Да оно им и не надо. У них больше забот, связанных с основной деятельностью бизнеса. И очевидно, что в таких компаниях такие люди - не понимают в айти. У них не настроены айтишные процессы и вот это вот все. Зато понимают в логистике/продажах/ремонте/нужное подставить. Таким компаниям нужна стандартная конфигурация, одна-две доработки и несколько кастомных отчетов.

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

Это действительно так. Дело не в 1С. C#/Java/1C - это инструменты. Но те же самые "ларечиники" без понимания айти и процессов могут выбрать Java.

Что там с IDE?

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

По прошествии полутора лет могу перечислить, что же изменилось:

Мне показалось, что вас посадили в какую-то ограниченную песочницу. Я когда-то работал в системном интеграторе, с настроенными процессами. Было примерно так же. Сидишь ждешь описание от аналитика, кодишь, тестируешь, исправляешь, комитишь. Когда же я стал вести проекты - все поменялось. Мне и с заказчиком/клиентом надо пообщаться. И саппорт тикет разрулить на третьем уровне поддержки "почему у них там очередная цифра не так считается". И понимать "законы и предметную область", чтобы не натворить дел. Да и кэш приходится порой чистить, да и RESET нажимать. И соглашусь, что многое зависит от работодателя. Я сейчас работаю в небольшой компании, у нас тут нет полтыщи аналитиков/программистов/девопсов. Но знаете... как-то интересней... Свой проект, свое детище.

ORM в 1С – самый лучший. Один из разработчиков пришел к прямому чтению данных 1С из MS SQL. И это работало быстрее, чем платформенный ORM.

Слушайте, но причем тут 1С? Любая ORM работает медленней, чем нативные прямые запросы к БД. И многие программисты, с каким бы инструментом они не работали - приходят к нативным прямым запросам к БД для оптимизации производительности.

Мне понравился класс, приведенный Андреем на слайде. А для какого уровня в приложении этот класс?

Это сущность, отражает структуру таблицы в БД. Поэтому там BankId и Orders. Это для монолитов и маппинга ORM на БД. Да, возможно там не очень хорошо это спроектировано. В микросервисах ордера могут быть отдельно, клиенты отдельно. Но не суть. Технические претензии мне кажутся не обоснованными. Никто не обязывает отдавать заказы вместе с клиентом. Решается на уровне ORM (Fetch/Include) при построении запроса. А fetch = FetchType.LAZY - эта штука имеет неприятные побочные эффекты, начиная с N+1 и заканчивая ошибкой "транзакция/подключение к БД уже закрыто" на момент срабатывания Lazy, а так же проблемами при параллельной обработке/вычислениях.

По итогу - мне показалось у вас стадия гнева и отторжения 1С. В C#/Java/Go тоже много проблем. Видимо вы с ними просто еще не столкнулись.

Так это и есть ниша 1С. Не у всех есть компаний ресурсы на айти отдел и собственный кастомный продукт. Да оно им и не надо. У них больше забот, связанных с основной деятельностью бизнеса. И очевидно, что в таких компаниях такие люди - не понимают в айти. У них не настроены айтишные процессы и вот это вот все. Зато понимают в логистике/продажах/ремонте/нужное подставить. Таким компаниям нужна стандартная конфигурация, одна-две доработки и несколько кастомных отчетов.

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

Это действительно так. Дело не в 1С. C#/Java/1C - это инструменты. Но те же самые "ларечиники" без понимания айти и процессов могут выбрать Java.

да, но как я сказал ларечников в "большом IT" почему-то меньше.
и да, дело в работодателе, надо просто уметь выбирать.

Слушайте, но причем тут 1С? Любая ORM работает медленней, чем нативные прямые запросы к БД. И многие программисты, с каким бы инструментом они не работали - приходят к нативным прямым запросам к БД для оптимизации производительности.

при том, что в оригинальной статье утверждается, что ORM в 1С - лучшая.
моя статья построена на сравнении с оригинальной статьей @EvilBeaver
предлагаю Вам с ней ознакомиться.

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

Представьте, что мы используем C без интринсиков на современном микропроцессоре. Естественно, что мы не сможем и близко подступиться к возможностям этого ЦП. И придётся делать ассемблерные вставки.

Это сущность, отражает структуру таблицы в БД. Поэтому там BankId и Orders. Это для монолитов и маппинга ORM на БД. Да, возможно там не очень хорошо это спроектировано. В микросервисах ордера могут быть отдельно, клиенты отдельно. Но не суть. Технические претензии мне кажутся не обоснованными. Никто не обязывает отдавать заказы вместе с клиентом. Решается на уровне ORM (Fetch/Include) при построении запроса. А fetch = FetchType.LAZY - эта штука имеет неприятные побочные эффекты, начиная с N+1 и заканчивая ошибкой "транзакция/подключение к БД уже закрыто" на момент срабатывания Lazy, а так же проблемами при параллельной обработке/вычислениях.

согласен, не учел.

По итогу - мне показалось у вас стадия гнева и отторжения 1С. В C#/Java/Go тоже много проблем. Видимо вы с ними просто еще не столкнулись.

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

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

То есть, разрешая "настоящим программистам в настоящем мире" писать компиляторы на Haskell, низкоуровневый код на C, бизнес код на Java, расчётный на Fortran, а детский — на Scratch. Естественно, 1C с остальным миром конкурировать не может, и выглядит бледно.

Хотя если мы попробуем писать компиляторы на С, низкоуровневый low-latency код на Java, компиляторы на Scratch, а детей заставим учиться на FORTRAN 66, тоже ничего хорошего не выйдет.

НЛО прилетело и опубликовало эту надпись здесь

Любая достаточно сложная программа на Си или Фортране содержит заново написанную, неспецифицированную, глючную и медленную реализацию половины языка Common Lisp.

НЛО прилетело и опубликовало эту надпись здесь
я парапрограммист, поэтому спрошу — а на чем сегодня нужно писать компиляторы, и почему?

Учитывая, кого вы спрашиваете, то ответом будет Haskell.

НЛО прилетело и опубликовало эту надпись здесь
а можно слегка раскрыть тему «апочему?» (ну или пните в сторону «научпопа» почитать).
Просто единственный компилятор, который я дорабатывал — это знаменитый в узких кругах Small-C, и то в районе 30 лет назад.
НЛО прилетело и опубликовало эту надпись здесь

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

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

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

Так и какое решение? Писать с нуля аналог 1С? Чтобы вести склад, приход, выдачу, оплату с банковских карт, да? И сколько бы лет и денег на это ушло?

В итоге сайт, бэк-енд и мобилку написали на C# / Flutter. А вот для учета внедрили одну из стандартных 1С конфигураций. Плюс отдельно реализовали синхронизацию каталога товаров из 1С в бэк-енд для мобилки.

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

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

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

Я не в теме про 1С, но зачем нужен класс, если можно обойтись тремя функциями? Например, в POSIX regex их четыре, но вполне можно было прожить и без regerror(), и возвращать ошибку сразу. И ведь отлично все работает.

Я просто к тому, что это так себе аргумент.

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

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

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

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

Вопрос зачем себя мучать ужасными IDE и языком в 1с, зачем себя мучать всяким трэшем и нервотрепкой творящимся в айти отделе на производстве или в типичном франче когда можно выбрать комфортные условия работы?

Ну если вы (или кто там) мучаетесь - то конечно надо что-то менять. Работы в ИТ много, надо выбрать такую, чтобы приносила удовольствие (ну или хотя бы не мучила так сильно)

А я так в общем то и сделал. После 4.5 лет в 1с свалил на разработку под андроид и вот уже 4 года счастлив и доволен.
Большинство подобных статей можно разделить на три части. Боль от типовых конфигураций, боль от платформы и боль от менеджмента и бизнеса.
Типовые конфигурации — согласен. Переусложнены, с огромным уровнем абстракций(хотя какие многоуровневые абстракции в системе которая изначально задумана ориентированной на предметную область). В большинстве своем это «раздутая бухгалтерия» либо выросшие из неё решения с кучей всяких свистелок. Плата за универсальность, «хотели как лучше, вышло как всегда».

Платформа — очень удобная штука для своего перечня задач. Позволяет писать свои кастомные решения, при том довольно быстрые(говнокодинг не отменяется, им можно повесить все). Проблемы начинаются, когда на ней пытаются делать вещи, для которых она не предназначена. Типа как писать игры на Java. Писать можно, но разве что Just for fun.

Менеджмент и бизнес — не техническая деталь, му**ки могут попасться везде. Где то больше, где то меньше.

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

*p.s. Если слышите 1с ERP(поставить название любой конфигурации) — «лучшая в мире система» — значит этот человек пообщался с менеджером-продажником от франчайзи. Но такие-же фразы я слышал и от продажников других CRM.

Голос разума, который вряд-ли будет услышан

Не будь пессимистом.

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

согласен

Платформа — очень удобная штука для своего перечня задач. Позволяет писать свои кастомные решения, при том довольно быстрые(говнокодинг не отменяется, им можно повесить все). Проблемы начинаются, когда на ней пытаются делать вещи, для которых она не предназначена. Типа как писать игры на Java. Писать можно, но разве что Just for fun.

Менеджмент и бизнес — не техническая деталь, му**ки могут попасться везде. Где то больше, где то меньше.

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

согласен полностью, я не говорил, что не в 1С не могут попасться люди с особенностями в руководстве.

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

да, и тут Вы правы.

1 С не ERP-cистема. Неужели у нас поголовно безграмотные спецы ИТ.

Может потому что они постоянно путают платформу 1С и 1С:ERP/УПП?

В смысле перерос? Надо было реализовать MCTS или генетический алгоритм, а 1С не дала? Дерево решений переобучилось, а он этого не заметил из-за особенностей платформы? Или он выбрал неверный алгоритм генерации случайных чисел, напортачил с GLC, seed не тот поставил и у него нейронка чудит?

Что конкретно пошло не так в этой высокой сфере? Может всем пора бежать в Rust?

Платформа — очень удобная штука для своего перечня задач. Позволяет писать свои кастомные решения, при том довольно быстрые(говнокодинг не отменяется, им можно повесить все). Проблемы начинаются, когда на ней пытаются делать вещи, для которых она не предназначена. Типа как писать игры на Java. Писать можно, но разве что Just for fun.

Фреймворк для своих задач отличный. Рантайм — ну тут уже такое. Язык — полный уг для решения любых задач, даже несмотря на все возможности фреймворка.
Менеджмент и бизнес — не техническая деталь, му**ки могут попасться везде. Где то больше, где то меньше.

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

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

НЛО прилетело и опубликовало эту надпись здесь

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

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

После декабря 2014 г., разработчики на других языках/платформах, стали для внешнего рынка по стоимости разработчиков из азий и индий. В связи с этим возникает вопрос - зачем студенту 1С сейчас идти разрабатывать на 1С, если можно пилить на забугорье на модном-молодежном за деньги, порой даже большие, чем на старте в 1С? Какова должна быть его мотивация? Ровно тот же самый тезис относится и к разработчику 1С со стажем - смысл пыхтеть и находиться в ситуациях, которых находился и автор, отбиваться от тёть Галь-бухгалтера с одной сторой, Иванычей со склада, с другой, еще успевать и в код, и в новые архитектуры, при это деньги за все эти муки предлагают такие, которые итак предлагают со старта Белые господа на других платформах/языках? Заливаем сверху все это соусом "а ведь с другим языком/платформой можно и тракторок завести", и получаем на выходе классическое неудовлетворение как от решения - войти в 1С, так и от решения - остаться в 1С. А 1сники то ребята не глупые, читают и Хабр в том числе. Один парень из Техасса рассказал свою историю успеха, другой из Германии, третий - из Австралии. Причем истории таки - вот я сидел тут по месту писал не на 1С, а потом - блин! Да я могу также писать но уже по другому рейту, в другой стране. Рас рас - и вот я уже там, вот моя статья, вот моя тележка, подписывайтесь! Повторюсь, 1сник - не дурачок, он все читает, читает, тёть Мани его каждый день прессуют-прессуют, у Иванычей какие-то сканеры не сканят, фуры стоят на погрузке/разгрузе, Ген/Фин/Хрен-дир присовывает ему, присовывает по жалобам от подчиненных. И так идут годы. Вы просто представьте мета-физичную чернь, которая разрастается в голове у бедолаги 1Сника? Какой-то парень сходил на курсы по фулл-стак разработке под мобилку или веб, и уже через год, сидит в Мюнхене, пьет баварское и передает пламенный привет нашему герою, который и в предметку, и в налоги, и хреноги, и в код, и в челночную дипломатию, и даже в админство (ну а кто принтер то подключит Алевтине Никалавне?) - а получает за это зарплату индсуса работающего по среднему рейту с условного фриланса? В какой-то момент, эта вся это неудовлетворенность прорывается, как гной, наружу и матерый/старый 1сник уходит в закат в условные Java/С#/PHP/о_0 - проходит некоторое время, и если у него всего получилось, то мы читаем статейку на хабре "Почему уходят из 1С".

Вот поэтому и уходят - уровень затрачиваемых усилий не соответствует уровню материального вознаграждения как минимум. Т.е. самое первое, с чего червяк в мозгах, начинает свою деятельность - да, почему блин, чел на мобилке-вебе-кровавом буржуйском интепрайзе, зарабатывает существенно больше, чем я? Потом, под этот базис, начинается подтяжка всей технической неудовлетворенностью уже самой платформой, конфигурацией и т.д., потом подтягивается и некая уже "фасадная" часть - у ребят на "другом" веселье, конференции, выступления и все такое, а у нас - эээммм, партнерская конференция раз в год, да подобное мероприятие от инфостарта, раз в год тоже? И вот все это парится там в голове, парится. И в конце концов, находит свой логический выход в виде "Да пошли вы все на ..ер - я сваливаю".

И кстати, пока я не видел тут историй о том от тех, кто свалил с 1С и потом раскаялся в этом. Обычно все получается.

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

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

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

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

коротко и без эмоций не очень получилось. но я согласен с Вами.

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

я могу и ошибаться, но 1 года недостаточно для full-stack

Обычно все получается.

не всегда, пару месяцев назад собеседовал 1Сницу на позицию middle backend developer.
у нее нет знаний большого IT, пришлось отказать.

Приветствую, подскажите, пожалуйста, в чем у неё явно были провалы? Какое у неё образование было? Профильное? Сам изучаю дорожную карту, чтобы переметнуться из 1С в Golang, Вузовские академические знание остались (закончил магистратуру по прикладной информатике) сейчас смотрю с чего начать, что изучить перед непосредственном изучение языка.

Заранее спасибо.

Для работы с 1С знания только его языка недостаточно (только если чисто кодировщиком по готовымТЗ).

Нужно ещё понимать и предметную область - т.е. бух. учёт, управленческий учёт, торговые / производственные операции, в целом понимать бизнес процессы организаций.

Образование профильное, но давно полученное.
Провалы по работе с Linux, не знала про Kubernetes, микросервисную архитектуру, заминалась на простых вопросах, а ля разнице между TCP и UDP, разнице между HTTP 1.1 и HTTP 2.0.
Про профилировщик Golang плохо ответила.
Какие-то знания теоретические все же есть, но как только давали задание на практику - плавала, даже в примитивах Golang.
SQL запрос оптимизировала плохо, несмотря на мои подсказки.
На джуна Golang не прошла, хотя на своей основной работе - старший разработчик 1С. Да и брать джуна в 35 лет - такое себе.

ого у вас требования к миддлу ;)
я конечно на собес как сеньор ходил, и реакция интервьюверов на то что я знаю ответы на озвученные вами вопросы вызывала крайне бурную одобрительную реакцию в плане 'ого, вы это знаете. это ооочень хорошо!!' и по факту многие миддлы, практически все, не знают sql, про tcp я вообще молчу, тут дай бог сеньор знает

может я в таких конторах работал, но я работал и в известных компаниях в т.ч. забугорных (не faang конечно, но всеже)

Да и брать джуна в 35 лет — такое себе.

ну вот, ейджизм, ну как так? со мной работал коллега, он в 38 лет ушел из военки в ИТ с нуля на питон, сейчас один из лучших программеров миддлов с которыми я сталкивался

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

а потому что так и есть, найти сеньора или миддла/джуна которые могут стать сеньором — нереально
И ждать от миддла программиста что он будет знать основы tcp/ip, сети и хитросплетения протоколов, а уж темболее сисадминские знания линукса (ща работаю в конторе где половина прогов на винде сидят, питонисты) — это только лишь плюс, а не обязательные требования

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

а миддл — это тот кто прям откровенный бред не пишет в коде, типа селектнуть две выборки в базе через .all() в orm, а потом средствами языка сравнивать значения… ну типа 'а че такова, я так учился'

я и не от каждого сеньора готов таких знаний ждать кстати (несмотря на то что это все знаю) просто потому что такие люди тоже редкость

Человек открыл себе, что программирование - это не только правка форм и настройка принтера, от всей души поздравляю! То, что я всегда требовал от 1С программистов и повально не находил – уметь оценивать сложность алгоритмов и знание запросов СУБД. Без этого код на 1С часто поражал мое воображение, а народ считал, что и так сойдет.

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

Мне что интересно, в свое время все учили сначала ассемблер, потом С, потом С++ (я лично так осваивал программирование). И никогда не стоял предел числа изучаемых языков программирования. Сейчас народ гордо хвастается, что знает 2 языка программирования. А если потребуется освоить еще 2 языка? Еще 5? 1С осваивается за неделю, Питон за пару недель. Да, на джаву наверное меньше месяца закладывать не надо. Всё хорошо для своего применения, и если человек не готов за несколько недель освоить новый язык, который подходит лучше для прикладной задачи, это что, называется специалист по программированию? Ну вместо 1С будет Java, тот же станок только ручки хромированные. И что до пенсии ничем другим не заниматься? Какие то скучноватые перспективы. Кругозора много не бывает, и знать 1С как средство БЫСТРОЙ разработки бизнес приложений, мне кажется, очень полезно.

не спорю, 1С в нашей стране знать полезно, без работы точно не останетесь.

почему фраза "без работы точно не останетесь" уж очень похожа на поговорку "работа дураков любит"

Никто не вернется к работе на первой линии, а это та линия, где общаются с тётями и дядями по поводу копейки в балансе.

Вы представьте программиста, который общается с пользователями и пишет на С++ или даже C#, вот у кого жизнь летит под откос.

Просто не надо молотком забивать шурупы, а отвёрткой забивать гвозди.

я с Вами согласен, но моя статья не про этот тезис.
она строится на сравнении идеальной 1С из статьи @EvilBeaver
и того, что есть на самом деле.

НЛО прилетело и опубликовало эту надпись здесь

1C код я видел только на картинке, и если верить той картинке, программа пишется на кириллице (или я не прав?). Отсюда вопрос, а это вообще реально использовать для разработки 1С скриптов что-нибудь из популярных ИДЕ/редакторов типа VS Code, emacs, Sublime? Это же с ума сойдёшь на каждый хоткей раскладку переключать

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

И да, то что там кириллица, это минимальная проблема, очень быстро привыкаешь.
При этом никто не задумывается, что для англоговорящих большинство языков программирования выглядят как 1с для русскоговорящих.

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


Visual basic более функционален чем 1C, в нем хоть ООП есть
… а в чем собственно проблема что код на vb похож?
можно писать и на английском.
прямо причем в том-же файле.
написать всю функцию на английском.
и вызвать ее.
единственно что названия полей в справочниках и документах все равно будут на русском.

Можно писать на английском

По правде можно писать и на латинице.
Есть отдельные конфы на ней.
Кириллица традиционно используется, потому что 99% документации на ней.

А где это у нас хоткеи зависят от раскладки? Можно списочек этих криворуких мудаков?

Если очень хочется, то использовать кастомный редактор кода возможно, но нужны качественные танцы с бубном. Из-за этого 99,9% 1С-ников используют только конфигуратор. Хотя у VScode, например, есть нужные плагины для языка 1С.

Да, можно выгрузить все в XML файлы и редактировать их в VSCode. Формы правда руками придется править, хотя может быть плагин придумали уже. Результат работы загружать в конфигуратор уже. Вот если бы изначально вендор сделал хранение конфигурации в виде списка XML файлов, а в файл или табличку в базе собирал при некой компиляции, то конечно были бы трудности с преобразованием в один некий исполняемый аналог jar файла, но не было бы этих приседаний с загрузкой XML в конфигуратор. Да и git прикрутить было бы легче.

то конечно были бы трудности с преобразованием в один некий исполняемый аналог jar
но не было бы этих приседаний с загрузкой XML в конфигуратор

Вы не видите, что это одно и то же? просто конфигуратор позволяет править код прямо внутри типа jar а. Ну или точнее как там бандл для jscript называется? так как внутри все таки исходники.
А EDT работает уже так, как вы хотите. Все в распакованном виде и только при попытке запустить вызывается тот же конфигуратор, который собирает из кучи файлов аналог jar.

Ну так давайте свое организуем. Возьмем, например linq2db как ORM и blazor как UI и построим свой фреймворк аналог 1С

А вы будете свой аналог 1С в таком же темпе обновлять вслед за бешенным темпом изменения нормативки, налоговой и прочее-прочеее. И всё это за копейки.

Да всё уже есть
https://lsfusion.org/ru/

На хабре у них есть свой хабра-корп раздел

Молодцы. Знаю про них. Но опять свой язык программирования

Ага. И так в любой предметной платформе. Просто потому, что так удобнее и логичнее.

ну не в любой. В банковской автоматизации где не прижились ни 1С ни SAP все платформы не изобретают никаких новых языков, юзают либо pl/sql либо что-то высокоуровневое с элементами no-code

Я 10 лет работал 1Сником. И все 10 лет испытывал постоянный стресс, жаловался на работу и страдал. Работал и во франчайзи и на "заводе". Везде всё одинаково.

По сути, 80% всех 1Сников - это сопровожденцы/внедренцы типовых конфигураций. Ничего своего или нового не пишут. Поэтому успех ждёт тех, кто знает какой-либо учёт, т.е. предметную область, и в той конфигурации, с которой он работает.

Я страдал, потому что любил код, а не разбираться в том, куда пропала копейка или почему себестоимость легла не на тот счёт. Более того, даже если ты хочешь сделать что-то хорошее - тебе это просто не дадут сделать. Во франче главное - часы. Тяп-ляп и в продакшен. Ну не будет клиент платить за какие-то автотесты или оптимизацию/рефакторинг. На "заводе" чуть свободнее, но всё равно не разгуляешься. Свою подсистему или новую небольшую конфигурацию скорее всего не дадут написать, потому что потребности такой нет. Максимум - интеграция с каким-то документооборотом, или мессенждерами.

И что самое плохое - ты и чтец и жнец, и на дуде игрец. Человек-оркестр. Сам собираешь аналитику, сам общаешься с заказчиком, сам кодишь, сам тестируешь, сам сдаёшь работу.

Но вот уже почти год как я перешёл из 1С в Java разработку. И это небо и земля! Есть нормальное версионирование - git. Есть проектные команды с чётким разграничением ролей, т.е. я 90% времени посвящаю коду и 10% на всякие митинги внутри команды. Мне не нужно знать учёт! Вообще не парит, какие там законы понапридумывали и как это вендор реализовал у себя. 100500 бесплатных курсов, ресурсов и форумов, где можно найти ответ на любой свой вопрос (заодно и английский прокачаешь). Если есть какая-то библиотека, то есть и документация по ней. А не как с СКД в 1С, где попробуй ещё найти информацию о том, как сделать нестандартный отчёт с использованием макетов. Есть тесты!

Полная свобода! Только код. Вся сложность сводиться к умению грамотно спроектировать классы и структуру БД. Говнокод никто не отменял как и всякое легаси, но с этим на порядок приятнее разбираться, чем с такими же проблемами в 1С - просто потому, что инструментов для этого больше и они удобнее.

Полностью согласен с Вами.

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

Есть нюанс. Если на условной java почти везде хорошо, а в 1с нужно долго искать хорошее место (правда убогости инструментов это не отменит) — то может нафиг оно не надо?

А те, кто разбирается ещё и в учёте, зарабатывают больше.

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

Это довольно токсичное выражение. Это же не вопрос того, что найти легко, это просто я поленился. Предложений крайне мало. Чтобы было разделение на роли, должна быть команда. Чтобы была команда, должен быть хотя бы средненький проект. У мелкой франчи это будет 1-3 клиента с таким типом работ. У крупной больше, но всё равно далеко не все 100% работ будут такими. Всё равно все эти франчи содержат ещё армию клиентов с простенькими задачами от 4 до 40-80 часов, на которые целую команду выделять не будут. Так что в какую бы франчу вы ни попали, вам очень повезёт, если вы будете работать именно в проектной команде внутри на интересных проектах. А даже если и будете, всё равно будут привлекать на разовые работы "универсалом".

Git для 1с сейчас есть.

Если вы про EDT, то я с ней пытался работать на реальном проекте 3 года назад. И это была боль, потому что она ещё сырая. Не говоря уже про то, что только управляемые формы поддерживаются. УПП или УТ10.3 - про git сразу забываем. И отдельная боль - обновлять доработанные конфигурации. Клиенты такому "особенно" рады, когда за обновление допиленной УПП или ERP им приходиться платить чуть ли не каждые 3 месяца за 20-40, иногда даже 80 часов работы программиста.

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

Именно этим я сейчас и доволен. Мне нет необходимости знать больше, чем основы основ. В 1С ты обязан знать хорошо, если хочешь выполнять более сложные или интересные задачи, чтобы повысить ЗП. На одних тех.скилах не уедешь. Я так и написал. Умеешь кодить и знаешь учёт - сразу +грейд к должности. Если не знаешь учёт, то стать сеньором очень сложно, т.к. сеньор в 1С должен уметь внедрять самостоятельно какой-либо вид учёта. В других сферах, это гораздо гибче. Есть просто лид команды, который больше уже менеджер, если не хочешь, можешь смотреть в сторону техлида, архитектора. И вот всё равно тут нет такой завязки на бизнес-логику. Всё это не плохо и не хорошо в общем. Мой комментарий о моих предпочтениях. Я себя сейчас чувствую гораздо увереннее. И да, 10 лет в 1С мне при этом крайне мало пригодилось, нерелевантный опыт со всем этим знанием учёта. Крайне жаль потраченного времени.

Чтобы было разделение на роли, должна быть команда

1 аналитик и 1 разработчик это уже команда. Со времен 1С:УПП разработчикам в бизнес-логике делать нечего, также как и аналитикам в разработке :)

Всё равно все эти франчи содержат ещё армию клиентов с простенькими задачами от 4 до 40-80 часов, на которые целую команду выделять не будут

Ну есть проектные работы, есть работы по сопровождению, но в любом случае с клиентом будет общаться аналитик, а код писать разработчик

Так что в какую бы франчу вы ни попали, вам очень повезёт, если вы будете работать именно в проектной команде внутри на интересных проектах

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

А даже если и будете, всё равно будут привлекать на разовые работы "универсалом"

Универсалом это и на ДО, и на ЗУП, и на ERP, и на бюджет? Если разработчиков в подразделении мало, то скорее всего так и будет. Плюс работы в больших компаниях или подразделениях, что у разработчиков появляется специализация.

Если вы про EDT, то я с ней пытался работать на реальном проекте 3 года назад. И это была боль, потому что она ещё сырая. Не говоря уже про то, что только управляемые формы поддерживаются

За 3 года многое изменилось в лучшую сторону. Пока еще сырая, но работать можно. Чем больше по размеру конфигурация, тем больше времени требуется на решение проблем и тем мощнее нужна рабочая станция. Решение поддерживать только управляемые формы связано все-таки с тем, что обычные (вместе с интерфейсами) были реализованы плохо. Их нельзя выгрузить/загрузить в XML из-за того, что они содержат бинарные данные, а рефакторить все это только для поддержки EDT было избыточным.

И отдельная боль - обновлять доработанные конфигурации. Клиенты такому "особенно" рады, когда за обновление допиленной УПП или ERP им приходиться платить чуть ли не каждые 3 месяца за 20-40, иногда даже 80 часов работы программиста.

Вы думаете в других системах не так? Посмотрите как обновляют Axapta или SAP. Там нет трехстороннего сравнения/объединения и часть изменений вручную переносят, а бывает заново модули внедряют. Чтобы обновление не было болью, нужно вести доработку с учетом будущих обновлений. Нужны строгие регламенты и контроль за их соблюдением. УПП в этом плане гораздо хуже, т.к. на обычные формы нельзя программно добавлять элементы, а это закрывает возможность для технологий кастомизации.

В 1С ты обязан знать хорошо, если хочешь выполнять более сложные или интересные задачи, чтобы повысить ЗП. На одних тех.скилах не уедешь

Какие нужны знания об учете? Что такое двойная запись. Чем отличаются списания по FIFO, LIFO, средняя. БУ=НУ+ПР+ВР. Чем при расчете зарплаты период действия отличается от периода регистрации. Вот когда у конечного клиента работаешь, там действительно много ненужных знаний появляется

сеньор в 1С должен уметь внедрять самостоятельно какой-либо вид учёта

Ну да, а еще сам акты подписать и за деньгами сгонять :)))

И да, 10 лет в 1С мне при этом крайне мало пригодилось, нерелевантный опыт со всем этим знанием учёта

Ну если вы из ERP в геймдев ушли, то опыт действительно нерелевантный. Но если вы много лет внедряли ERP, перейти в ту же Axapta будет гораздо проще. Там все то же самое, только проще для понимания и сложнее для доработки.

т.к. на обычные формы нельзя программно добавлять элементы

Можно.

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

Да, неудобно, но можно.

даже в клюшках при желании можно было.

Решение поддерживать только управляемые формы связано все-таки с тем, что обычные (вместе с интерфейсами) были реализованы плохо. Их нельзя выгрузить/загрузить в XML из-за того, что они содержат бинарные данные

Это не является препятствием, бинарные данные всё равно как-то же расшифровываются, значит, можно сделать для них понятное представление.

Скорее, просто решили, что не будут их поддерживать.

Чтобы обновление не было болью, нужно вести доработку с учетом будущих обновлений.
А как предугадать, какой именно сорт мочи стукнет в голову «ребятам с селезневки»? ну, типа как с резервами в переходе с *.4 на *.5?

Методики такой разработки, в общем-то, известны.
Вот, например, достаточно подробно описано
https://infostart.ru/1c/articles/647048/

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

Естественно, помогает не во всех ситуациях.

Но, достаточно во многих это всё-таки облегчает процесс обновления.

Поддержку коллег - работа с обычными формами проще "управляемых", которые в народе называют "неуправляемыми" из-за их избыточных ограничений по сравнению с ОФ. Программное добавление на ОФ намного очевиднее и проще чем в УФ. Я еще когда только начинал работать с 1С во времена 8.0 и УПП 1.0, то развлекался тем, что с пустой заготовки делал форму со множеством закладок, всеми видами элементов управления и обработчиками их изменения. Обработчики нужно создавать заранее, но это проблема и в УФ, так как 1С не умеет в рефлексию.

Десериализацию обычных форм в XML не сделали только потому, что "ленивые жопы" и захотели подрезать свой бэклог. ОФ - это все те же группы с элементами и их свойствами. Некоторые из свойств действительно бинарные (те же картинки), но с каких пор XML перестал хранить бинарные данные (base64)?

  1. О каких ограничениях идет речь? То что нельзя разместить ActiveX объекты? Так это уже не актуально. Кому интересно возиться с координатами, размерами и привязками? Я вообще считаю, что это наследие 1С:Предприятие 7 не должно было попасть в 1С:Предприятие 8.

  2. Попробуйте выгрузить конфигурацию с обычными формами в файлы, затем изменить что-то на форме, затем вернуть обратно и вы увидите что файл стал другим. Скорее всего там хранятся служебные объекты, которые сериализуются вместе с формой. То есть чтобы сделать выгрузку/загрузку обычных форм нужно рефакторить эту функциональность.

>То что нельзя разместить ActiveX объекты? 
Да и хрен с ними. Кому надо выведут на поле ХТМЛ-документа.

>Кому интересно возиться с координатами, размерами и привязками?
Мне интересно, а так же всем, кто хочет получить красивую экранную форму. Мы много лет долбали компанию 1С на партнерском форуме и закидывали их скриншотами форм, которые на 8.0/8.1 выглядят по логике/удобству/красоте просто идеально, и которые превращаются в убожество при попытке перевода на управляемую форму - сплошное пустое пространство с минимумом полезной информации. В конце-концов они сдались и дали нам "компактный режим". Но хотелось бы все же для групп форм возможностей по визуальному структурированию, которые есть у div/span на веб-страничках.

Раньше много чего на формах можно было сделать с помощью наложения друг на друга элементов управления, свертки групп в любую сторону, скрытых командных панелей, которые можно было делать источниками для контекстных меню и так далее - ограничения только фантазиями. Это было слишком много возможностей уровня редакторов интерфейсов Visual C++ и Delphy - просто не потянули. Было принято решение максимально упростить интерфейс для облегчения верстки для веб-клиента. Хотя это не особо им помогло - даже тут в комментариях многие жалуются на наличие багов в веб-версии.

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

Кстати, я на днях столкнулся с падением платформы 8.3.22 (текущая актуальная и потому рекомендованная) при попытке открытия управляемой формы. С ошибкой, говорящей что-то про дженкинс, было ничего не понятно кроме путей сборки проекта в компании 1С. Но я заподозрил, что проблема могла быть в реквизитах формы. В XML файле просто поменял их местами и загрузил назад в конфигуратор. Все, магия свершилась! Критическая ошибка ушла (а раздражение осталось).

Поддерживаю по всем пунктам!

  1. Идеальные формы на 8.0/8.1? Это там где на одной форме десятки элементов и при скрытии ненужных будут зиять огромные пустые места? А уж сколько проблем возникало, при необходимости добавить новый элемент между двумя существующими. А сейчас это можно программно сделать за 5 минут не усложнив при этом дальнейшую поддержку.

  2. Компактный режим появился как вариант интерфейса "Такси". Что касается расширения возможности размещения элементов на форме - никто не обещал, что будут все возможности HTML. Сейчас вся индустрия идет по упрощению форм, собственно поэтому интерфейс Такси и был выпущен.

  3. Наложение элементов и скрытые командные панели это вообще зло. У веб-версии есть действительно особенности, кроме того она более остро реагирует на неправильное написание подписчиков, в которых делают недопустимые контекстные серверные вызовы.

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

1) Нет, пустые пространства - это про управляемую форму, а на обычной все именно так как вы сверстаете. Если не правильно настроить привязки, то можно сделать такого же монстра как и на УФ. Программное добавление элементарное, но нужно дополнительно потратить минуту на смещение координат для существующих элементов, но в отличии от УФ, где у вас они просто уедут вниз, тут вы можете управлять "уезжанием" и сжать 6 элементов до той же высоты, которые занимали 5 элементов.

2) То-то и оно - от разработки классических десктопных GUI ушли, а до веба не дошли.

3) Это ваше субъективное мнение. Если вы в себе не уверены, то просто не используйте подобные возможности. Но это не повод для запрета для остальных.

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

  1. Вот простая задача. При открытии формы необходимо скрыть один из элементов. Как вы это будете делать? Пересчитывать координаты всех элементов которые находятся ниже? Заголовок с полем тоже не связать, приходилось им управлять независимо. Не удивительно, что как только появилась платформа 8.2, мы все новые формы в УПП делали управляемыми, чтобы поскорее избавиться от этого кошмара.

  2. У вас есть пример веб-интерфейса, который удобнее десктопного при работе с данными?

  3. Да видел я все это убожество, когда командную панель или элемент на форме не найти

  4. По вашему ошибка только что выпущенной версии платформы (вероятнее всего там новая версия формата), которую безусловно исправят, идентична многолетней проблеме не имеющей решения? Есть много проектов, где разработчики используют Git без EDT, что-то я не помню чтобы жаловались на подобные проблемы. Служба поддержки просит проверить на последней версии, чтобы упростить себе жизнь, критичные ошибки исправляются и в предыдущих версиях. Например 14.10.2022 вышла сборка 8.3.17.2733, причем первая сборка версии 8.3.17 вышла 23.04.2022. Новые версии есть смысл ставить либо для новых проектов, либо когда нужна новая функциональность.

  1. Последовательность шагов решения: а) добавляем на форму новую панель с отключенными закладками и границы привязок по границам панели; б) помещаем элементы, которые должны скрываться на эту панель; в) элементы ниже (или справа, или слева - зависит от верстки) привязываем к границам соседних элементов, а не к границам формы г) на триггер смены видимости элементов вешаем свертку группы наверх (или налево, или направо - зависит от верстки) - это всем известный прием, которым все пользовались со времен 8.0 (пример - форма подбора номенклатуры в УПП 1.0).

  2. В том то и дело! Поэтом безоговорочное отключение десктопных возможностей было явно поспешным. Хорошо, что разрешили делать смешанные ОФ/УФ интерфейсы

  3. "Да видел я все это убожество, когда командную панель или элемент на форме не найти" на управляемой форме! В отличии от УФ на ОФ хорошо работает поиск по элементам на форме. И если ты видишь элемент на форме, то можешь с ним работать без всякой экстрасенсорики - откуда тут эта команда? на форме этой команды нет, среди общих тоже нет... а, нашел - она у совершенно левого объекта метаданных, но как параметр задана ссылка на текущий (а еще лучше задан определяемый тип, чтобы поиск использования не дал быстры результат).

  4. Ошибки - это ошибки. Зачем торговаться? На хабре есть рассказ Петра Грибанова о выпуске платформ - сначала внутри разрабатывают, потом несколько циклов альфа теста и закрытые бетта-тесты, и лишь когда уверены в функционале, то выпускают... нет не в релиз, а в открытый бетта-тест, после которого примерно через месяц закидывают в релизы. Внутри себя 1С использует всегла самую актуальную версию, а внутри фреша даже идут с опережением!

  1. Да, именно так, ради простой задачи делать кучу действий. Вот и спрашивается - зачем все это? Бывало форма при масштабировании криво работала и приходилось проверять все эти привязки. Про программную модификацию формы для упрощения обновления даже не задумывались тогда.

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

  3. Ну да, часть команд принадлежит форме, другие принадлежат объектам метаданных, третьи вообще добавляются программно. Всегда можно сделать поиск ссылок на объект, чтобы их найти

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

Разговор куда-то не туда пошел. Я не утверждаю, что на ОФ приятно работать! Многие вещи делать нужно через Ж! Да я сам еще во времена 8.0 и 8.1 писал предложения сделать возможности декларативной верстки как у HTML (как потом сделали в УФ, но не совсем).

Но я утверждаю, что хоть временами и трудно, но на ОФ можно сделать все что хочешь по визуальному оформлению! В отличии от УФ, где некоторые вещи (привязки, сокрытие по функциональным опциям или правам доступа) делают намного проще, но некоторые вещи невозможно сделать в принципе (из-за чего очень многие группы разработок выводят на форму поле HTML-документа, в котором делают все визуальные красивости).

Не сижу плотно в разработке на УФ, иначе бы накидал множество примеров, но на ум приходят следующие:

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

2) В УФ управление видимостью нельзя делать единообразно. Для некоторых элементов нужно в свойствах прописать функциональную опцию и не забыть ее установить при открытии формы. Для колонок в табличных частях видимость для разных строк можно скрывать только с помощью условного оформления (если добавить табличной части реквизит формы и устанавливать его программно при выводе строк, то можно правило условного оформления сделать фиксированным сразу в конфигураторе, но я видел, что многие формируют условное оформление программно по событию изменения таблицы). Для элементов формы, которые не являются колонками таблиц, внезапно видимость из условного оформления не работает и их нужно скрывать с помощью кода Элемент.Видимость=Ложь. А вот в ОФ Видимость=Ложь скроет любой элемент (включая конкретную колонку только для конкретной строки таблицы) и не нужно держать в голове зоопарк различных приемов для различных элементов.

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

  1. Согласно методологии БСП, все команды добавляются кодом, что на самом деле правильно. Для контекстного меню команды тоже можно добавлять программно.

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

  1. Спасибо, что вспомнили про библиотеку БСП. Набор хаков для обхода ограничений платформы. Комманда разработки действительно хорошие программисты и очень в муках стараются, чтобы другие разработчики на УФ мучались чуть меньше...

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

эээ.... батенька... на практике постоянно сталкивался с тем, чего нельзя сделать в УФ, писал сперва на сайт куда-то, но потом понял, что бесполезно. А в 1С писать еще бесполезнее.

взять тот же управляемый интерфейс - там нельзя программно нарисовать и главное - скрыть пункты меню. вах

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

А это удобно?

И все 10 лет испытывал постоянный стресс

Это нетолько к 1С относиться. В Геймдеве тоже самое, как и в др ит сферах.
По сути, 80% всех 1Сников — это сопровожденцы/внедренцы типовых конфигураций. Ничего своего или нового не пишут.

Во многих ит компаниях похожая ситуация. Винтик в системе.
Тяп-ляп и в продакшен.

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

?? Ну так и Java/С++/Php прогер — (в подавляющем ) сам общается с заказчиком, сам кодит, сам тестит.
Но вот уже почти год как я перешёл из 1С в Java разработку. И это небо и земля!

Так часто бывает. Когда из одной сферы переходишь в другую. Получаешь дофаминовый шторм. Пройдут годы, и у вас вновь будет апатия.
НЛО прилетело и опубликовало эту надпись здесь
тестируют тестировщики (QA).

А что Java прогер тестировать вообще ничего не должен?
НЛО прилетело и опубликовало эту надпись здесь

Да и результат будет лучше, когда тестирует не тот, кто разрабатывал.

Ибо если Вася уверен, что 2 + 2 = 5, то он и в тесте также напишет! :-)

Ради справедливости, юниты должны писать программисты. У QA просто квалификации не хватит. А если хватит, то он не долго останется QA и сам свалит в прогеры.

НЛО прилетело и опубликовало эту надпись здесь

Я когда попробовал писать на Java, то мне понравилось TDD - сначала описывал тест на JUnit, а потом делал реализацию, что бы все стало зеленым.

Парное программирование - это тоже круто!.

Не, юниты — тот кто пишет задачу. Сценарии — кто-то еще.
И да, юниты это пыль, которая выкидывается при рефакторинге.

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

4.5 года был в 1с (далеко не в самом худшем франче по устройству процессов и уровню решаемых задач), сейчас 4 года как перешел на андроид. Это было лучшее решение в моей жизни, до сих пор вспоминаю 1с с содроганием.
НЛО прилетело и опубликовало эту надпись здесь

Это нетолько к 1С относиться. В Геймдеве тоже самое, как и в др ит сферах.

Стресс везде. И в общем, тут многое зависит от работодателя, и как он относится к сотрудникам. Но мой стресс вызван был моей болью, что я вынужден заниматься тем, что мне не нравится. Чем выше по карьере лезешь в 1С, тем сильнее смещается акцент в сторону бизнес-аналитики. Джуниору достаточно 90% уметь в код и 10% в учёт. Сеньору уже 40% код, 60% учёт. В 1С буквально заставляют знать всё больше и больше информации про учёт и вникать в бизнес-аналитику для того, чтобы оставаться конкурентоспособным. И в оригинальной статье это приводится почему-то как неоспоримое преимущество.

НЛО прилетело и опубликовало эту надпись здесь
И почему-то забывает, что все-таки, пусть и не всегда, но нередеко, бизнесу нужно не просто «решение задач», но и чтобы эти задачи были решены качественно — чтобы всё не тормозило как черт знает что, чтобы не падало и не ломалось от неосторожного щелчка и фаз луны, чтобы в будущем изменить условия задачи или решить заодно еще одну можно было за разумное время, а не перепахивать всё вверх дном с матами и регрессиями.

наговнокодить можно на любом языке программирования, в любой системе, в любой стране… Да, в 1с это, возможно, легче сделать. Плюс низкий порог вхождения помогает.
НЛО прилетело и опубликовало эту надпись здесь

вот именно!
это кстати и было решающим действием к написанию этой статьи.
собрав остатки сгоревшего стула, я сел сочинять комментарий к статье, но в итоге, комментарий перерос в то, что вы прочли :)

Лейтмотивом там проходит более высокий уровень абстракции. Это как в пайтон ты датасайнтист, а в С++ червь компьютерный, из той же оперы.

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

Так можно и про пайтон сказать. Поставил "Пандас" и всё, дата-сайнтист :)

В питоне как раз можно нормальные абстракции строить свои, в отличии от 1с. Хотя не любитель питона из за gil и динамической типизации.

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

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

Для последнего это скорее "херак-херак, херак-херак, херак-херак, херак-херак (стук колес) и в продакшн".

Главное на третьем хераке сделать рефакторинг когда все сценарии уже собраны.

Просто другая планета.

Таки 1с - это эталонное ненужно.

Платный закрытый вендорлок, причем сделаный чудаками на букву 'м', подмявший местечковый рынок(ты еще и ограничен в ареале обитания), которого почему то не замечают наши монопольщики.

Ещё добавил бы такую аналогию- довольно популярны сейчас специализированные высокоуровневые инструменты. Своя ЯП есть в power bi, в Exel есть vba, в компоненте экзель power qwerty тоже свой язык программирования. И люди пишут. Видимо потому что какие то задачи эффективней (быстрей). где то ниже порог вхождения. Хотя можно те же данные отображать через джаспер/кристал/ещё какой нибудь репорт и вытягивать стандартными sql запросами

Хотя и возможностей там куда меньше чем в каком ни будь древнем Delphi (где хочешь- с сокетами работаешь, хочешь- вставки пишешь на ассемблере хочешь -без каких то лицензий хоть миллион потоков создаешь; и кстати можно ещё и ПО продавать, например неограниченное лицензий на регион, что в решениях 1С невозможно). Ну а на каких нибудь плюсах и десятки компиляторов и куча фреймворков на выбор - и от вендоров -mfc,vcl,..net и кросплатформенные (qt) и работать может от микроконтлроллеров и часов то меймфреймов и можно забабацать хоть ОС.

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

А 1С я восхищаюсь не как пользователь: ребята создали целую индустрию с кучей разработчиков решений, франчайзи, обучением специалистов. Экосистема цела приличного уровня- таких кейсов в РФ очень мало. и вытеснял он скорей не грамотные ентрпрайз решение, а решения которые были хуже -я как то, н-ное кол-во лет назад) был на собеседовании в фирме которая с 1с конкурировала- наблюдал бухов которые приходили на обучения со своими системщиками, разрабатывалась система на foxpro, но причём центральный эфис поскольку исходники не передавал, а кастомизировать под клиентов надо- они декомпилировали (точней деинтерпритировали) решение и допиливали его. Как они накатывали новый резил с адаптацией своих изменений уже не знаю

Ещё добавил бы такую аналогию- довольно популярны сейчас специализированные высокоуровневые инструменты. Своя ЯП есть в power bi, в Exel есть vba, в компоненте экзель power qwerty тоже свой язык программирования. И люди пишут. Видимо потому что какие то задачи эффективней (быстрей). где то ниже порог вхождения. Хотя можно те же данные отображать через джаспер/кристал/ещё какой нибудь репорт и вытягивать стандартными sql запросами

low-code давно в моде, сколько себя помню.

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

чем универсальнее, тем сложнее. тем больше надо следить за совместимостью.
это собственно и случилось с 1С - тонкий клиент, толстый клиент, веб-клиент, мобильное приложение, мобильный клиент и везде один ЯП.

А 1С я восхищаюсь не как пользователь: ребята создали целую индустрию с кучей разработчиков решений, франчайзи, обучением специалистов. Экосистема цела приличного уровня- таких кейсов в РФ очень мало. и вытеснял он скорей не грамотные ентрпрайз решение, а решения которые были хуже -я как то, н-ное кол-во лет назад) был на собеседовании в фирме которая с 1с конкурировала- наблюдал бухов которые приходили на обучения со своими системщиками, разрабатывалась система на foxpro, но причём центральный эфис поскольку исходники не передавал, а кастомизировать под клиентов надо- они декомпилировали (точней деинтерпритировали) решение и допиливали его. Как они накатывали новый резил с адаптацией своих изменений уже не знаю

да, уютная золотая клетка от местной корпорации добра :)

Начинал карьеру как раз с некоего отношения к 1С. Конфигурации пилил другой человек, а сам занимался всякой около фигнёй. Но что то покодить успел чтобы запомнилось на долго. В итоге пути с той конторой удачно и оперативно разошлись.

А в кризисном 2008 чуть не вляпался по полной. До сих пор лежит набор адепта. Какая то коробочка с книгой и чем то ещё. Надо не забыть выкинуть. Нормальную работу как то сложно было найти, вот и возникло помутнение. Но, обошлось :)

Сейчас сам себе сеньор и условия весьма шоколадные. Из большой конторы по заказной разработке ушёл в мелкую, но с перспективами. Пилю свою ИС и в планах развитие ИТ в принципе. Никаких обвесов вроде РП и аналитики. Сейчас так быстрее. Опыт в 15+ лет позволяет быть человеком-оркестром :)

Начинал карьеру как раз с некоего отношения к 1С

многие с нее начинали, кого-то вот затянуло надолго.

Пилю свою ИС и в планах развитие ИТ в принципе. Никаких обвесов вроде РП и аналитики.

вот, а по мнению автора оригинальной статьи, такие как Вы кодят по ТЗ :)

Да, в 1С есть автоматизированное тестирование, Vanessa и другие инструменты. Но почему даже вендор не использует их? Почему тестирование остается уделом небольшой части энтузиастов?

Это вы с чего решили, что в 1С нет автоматизированного тестирования? 1С очень неохотно афиширует свою внутреннюю кухню. Я уверен, что оно есть, но не дает 100% результат.

Ленивые и жадные.

Оба тезиса спорные. Как вы написали "100500 противоречащих друг другу законов, которые успел напечатать бешеный принтер" должны найти отражение в программе, например 1С:Бухгалтерия Базовая, которая продается за 3300 и даёт доступ к обновлениям без ИТС. И эти изменения должны быть реализованы в срок.

Это вы с чего решили, что в 1С нет автоматизированного тестирования?

с того, что документ "Перемещение товаров" не был проведен ни разу на этом автоматизированном тестировании и таким образом был выпущен в тираж.

У автора очень скудно дано описание ошибки для данного документа. Возможно то условие в которое должен войти документ, обернуто ещё в кучу условий\функциональных опций. И автоматизированным тестированием не было покрыто.

отлично, зачем тогда так писать?
разработчик получается вообще не тестировал то, что написал?

Разработчик тоже человек, подвержен ошибкам. Он так же мог написать и на другом языке программирования.

я Вас понял. спасибо.

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

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

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

Базовая, которая продается за 3300 и даёт доступ к обновлениям без ИТС. И эти изменения должны быть реализованы в срок.

если ты монополист, можно с барского плеча иногда и посыпать чего-нибудь.

так себе аргумент, учитывая функционал который даёт конфигурация и покрывает 99% потребностей ИП и малого бизнеса

кто ж спорит. я сказал несколько раз, в статье, что RAD для бизнеса и обслуживание бешеного принтера - поле, где традиционно выигрывает 1С.

Значит вы согласны, что 1С не ленивые и не жадные?

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

Думаете у программиста ABAP с этим проще?

Проще. У SAP есть возможность использовать Java, плюс перескочить в компанию по всему миру на выскоие зарплаты (возможно более высокие, чем у Java). Ну и в CV SAP могут засчитать за опыт Java разработчика (никто же не знает ABAP или Java вы там использовали), а с 1С возьмут разве что на джуна в Java, а для опытного специалиста с семьей и ипотекой это очень больно финансово.

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

"Они привязали" и "жадные и ленивые" это разные тезисы, не связанные между собой.

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

ИМХО, проблема не в экосистеме, а в самом программисте.

платформа 1С тут не причем, согласен.
никогда не причем.
об этом даже стыдно думать :)

То, что они ленивые и жадные понимаешь спустя много лет работы с этой жёлтой программой: ленность является следствием монопольного положения особенно в части поспевания смены печатных форм за бешенным принтером законов. Для чего им что-то менять в ide, когда а) нет конкурентов б) чтобы сделать ide подобный продуктам jetbreins нужно вложить деньги - и тут мы приходим к жадности. Зачем им что-то менять, когда итак все зашибись, тем более Oracle ушел. Все что описал автор - почти со всем согласен и это большая боль, о проблемах нужно говорить чтобы они решались или переходить на другие платформы если они не решаются. Не согласен только с тем, что на 1с нужно сайты парсить, делать отображение dom и прочее стороннее. 1с я воспринимаю как программу для учёта, а не для решения задач всего и вся как ее пытаются натянуть, "1с исполнитель" дичь какая..

Для чего им что-то менять в ide, когда а) нет конкурентов б) чтобы сделать ide подобный продуктам JetBrains нужно вложить деньги - и тут мы приходим к жадности. Зачем им что-то менять, когда итак все зашибись, тем более Oracle ушел. 

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

"1с исполнитель" дичь какая 

ничего нового, закрытая технология для уютной "золотой клетки".

В далеком 2009-м я вкатился в 1С, в провинции просто не было другого способа попасть в IT

Я программирую уже более 20 лет, а самое главное – я видел программистов из обоих миров.

Как-то не сходится

скандалы, интриги, расследования.
за деньги в 2009-м, а не за деньги, just 4 lulz с детства.
или программировать можно только после получения ВУЗовского образования?

нет, я сам довольно много лет программировал для себя с 10 лет еще (Lab View, basic, pascal, nxt, си, с++ (cli), c#, python, js — это только с чем я работал, но назвать себя во всем этом экспертом, кроме моего нынешнего стека (js/ts) у меня язык не повернется, знания устаревают), а первую работу (не белую) получил в IT получил в 18, но думаю большинство не склонны это время считать, «рабочим» или «реальным» опытом. Умение кодить != умение делать что-то сложное в группах, чтобы. Все-таки ТС в основном пишет о проектировании и проблемах, которые не возникают на уровне мелких пет проектов в школьные годы, но все-равно это субъективщина, так что может вы и правы

Какой-то набор перлов, предубеждений и непониманий. Странно что вы так долго с 1С работали, но так ничего и не поняли.

естественно, "вы не понимаете, это другое".

Ну вы пишите, что устали от ограничений 1С. То есть существует некая учетная система, которая написана на java и которая более функциональная чем 1С? Ну напишите тогда ее название, может и мы туда перейдем.
Просто единственное, что я видел похожее на учетную систему, написанную на Java это iDempier, но сравнивать даже с УПП нельзя, скорее с комплексной 4.5 под 1С:Предприятие 7.7.
У меня как-то была реальная возможность перейти на DAX, но даже не смотря на то, что там было ООП и Java-подобный язык я отказался от этой затеи, просто увидев как они не могут годами решить очевидные проблемы. А уж сколько там велосипедов наизобретали когда локализовывали ее под российский учет просто в голове не укладывалось.

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

Ну тогда и пишите, что вы потеряли интерес к учетным системам. У меня вот нет интереса к веб-разработке, не смотря на то что я приложения на Django писал. Также нет интереса к мобильной разработке, хотя я писал мобильное приложение на С++. Но я при этом не пишу, что Django и C++ отстой и поэтому я ушел в 1С. Где кстати стало возможным писать как веб-приложения, так и мобильные.

почему я должен вообще что-то писать? все есть в моей статье.

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

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

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

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

То если лет 15-20 назад, когда я только начинал, был выбор получать меньше денег в универсальном языке с большими перспективами в будущем, или больше денег сразу на 1С с минусами в виде привязки к платформе, то сейчас особого плюса идти в 1С нет (кроме тех кто не «тянет» другие стеки и просто готов получать деньги не особо напрягаясь). Все, ИМХО, конечно.

P.S. Все остальные плюсы и минусы вообще мелочи по сравнению с привязкой к экосистеме 1С и сложностью с нее соскочить.

прям в точку!

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

Турция, Вьетнам, Венесуэла, Испания, Германия, Канада, США. Там продаются локальные решения на платформе 1С.

Давайте вы попробуйте найти и дать ссылки хотя бы по 3 вакансии 1С программиста в Германии, Канаде или США. Я уж не говорю о том, чтобы они готовы были обеспечить релокацию специалиста из-за границы.

P.S. Если что, продукция АвтоВаза тоже там продавалась, но такими штучными экземплярами, что ничего не меняла.

1С продает за границей одно решение, 1C Drive, и делает это мелкими тиражами. в 2020-м предлагали оплату по часам. при этом в отличие от среднего 1Сника, я хорошо говорю на языке целевого рынка, но это не повлияло на оффер.
ленивые и жадные, я же говорил.

Это равносильно практически невозможно и не стоит рассматривать как реальный путь иммиграции. Даже если устроитесь в той единственной вакансии в условной Германии, что вы будете делать если вас решат сократить?

Наверное можно будет поискать по компаниям из этого списка:

https://www.1ci.com/customer-stories/

Вы, конечно, можете поискать. Но знаете сколько я вакансий 1С я нашел в linkedin (по всему миру)? Одну, во Вьетнаме.

Вы можете представлять сколько их всего в мире, особенно после последних событий. ИМХО, шанс найти работу 1С за границей околонулевой.

А вы знаете сколько соискателей по всему миру?

Моложе, с современным образованием и гит с первого класса?

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

А чем вы спорите-то? Отсуствия спроса на 1С за рубежом (не считая ближнего зарубежья) это вполне себе факт.

Хорошо написал. Сейчас в 1с смысла идти нет. 15-20 лет назад это было оправдано финансово.

А есть ли универсальный ответ на следующий вопрос: чем зарабатывать программисту?

  • прийти в чужое и сложное, ломать голову и удивляться историческим багам

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

  • или всё же искать простую и изящную систему ?

Есть, нужно искать не ответы на вопросы выше, а нормальную адекватную IT компанию с адекватной командой и менеджерами. Тогда уже будет не особо важно, там будет чужой код, новый проект и какая система внутри.

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

P.S. Найти все это и хорошую зарплату сложно, но с опытом и навыками (и умением выбирать) с каждным разом все проще.

Спасибо за статью. Расскажите в какой области вы работаете сейчас? Насколько вам там комфортно? Какие плюсы и минусы этой области вы для себя видите? Какие возможности радуют вас постоянно и какие недостатки приводят в уныние?

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

Какие языки и технологии используете?

golang, lua, java для тестов, kubernetes, docker
postgre, redis, kafka
gitlab ci/cd, bash.

мне нравится.

Спасибо за интересную статью, я аж даже восстановил свой старый хабр-аккаунт :)

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

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

  1. На текущий момент, у меня складывается впечатление, что и сама 1С и многие франчайзи с заказчиками, накопили огромный технический долг в используемых продуктах. Этакий чемодан без ручки. Что даёт дополнительный набор проблем, как для разработчиков, так и для экплуатантов.

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

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

  4. Web-клиент, это дествительно боль.

  5. Интеграции: есть потребность, выполнять webhook из внешних сиситем, по событию. И я наблюдаю проблемы с ними у разработчика в одном из проектов.

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

На текущий момент, у меня складывается впечатление, что и сама 1С и многие франчайзи с заказчиками, накопили огромный технический долг в используемых продуктах. Этакий чемодан без ручки. Что даёт дополнительный набор проблем, как для разработчиков, так и для экплуатантов.

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

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

язык то можно выучить, а вот рамки ЯП 1С не расширить.

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

+1 000 000, о чем я и говорю.

Web-клиент, это дествительно боль.

это особая вещь, для ценителей страстного секса.

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

вот про эти ограничения я и говорил, да.

Сейчас 2022 год, рамки расширяются микросервисами. HTTP и JSON в 1С "из коробки" вполне годные, даже весьма. А XML там вообще роднее родного.

У автора конечно полно передергиваний и фактических неточностей. Например   "community edition" в 22 платформу не завезли, хорошо если в 23 появится, а "Функции логарифмов в запросе" появились аж в 20

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

В целом конечно первое, второе и третье впечатление - вам не повезло с работодателем и "пятью типовыми". Рад что на новом месте все сложилось, нашли дело по душе

У автора конечно полно передергиваний и фактических неточностей. Например   "community edition" в 22 платформу не завезли, хорошо если в 23 появится, а "Функции логарифмов в запросе" появились аж в 20

а то есть community edition даже еще не завезли. не, нежадные совсем.

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

очередной собственный язык для СНГ. ничего нового, снова какой-то велосипед от вендора в виде закрытого ЯП, которым планируется пристегнуть разработчиков 1С еще сильнее к 1Сному стеку. разумеется снова надо будет переучиваться, как 1Сники уже не раз переучивались, с 7.7 на 8.1, как с 8.1 на 8.3.

согласен, иду на мисту звучит лучше :)

В целом конечно первое, второе и третье впечатление - вам не повезло с работодателем и "пятью типовыми". Рад что на новом месте все сложилось, нашли дело по душе

работодатели в плане нетиповых конфигураций были крутые, и задачи тоже интересные. стек подвел.

Хмм попробую написать осмысленный комментарий
Этап 1 - почему из мира программирования пошел в 1с. (Как подработка)
Причина проста -мне очень нравится видеть Результат, Успешное внедрение.
Для небольших проектов ( как конфигураций так и расширений) 1с достаточно благодарное поле.
Достаточно быстро делается небольшая система автоматизации - результат виден.
В мире ,больших проектов , например, трудоемкость совсем -совсем другая. Из за этого многое долго, да еще часто ты отвечаешь за "левую полупятку".
Сравнивая с этой "полупяткой" , быть автором интересной системы целиком ( с командой или одному ) - мне нравится.

Технических минусов немало, но в целом быстро разрабатывать приложения, которые доступны в разных Ос и в вебе... это стоит того.
Правда жизнь вносит коррективы, в браузере надо использовать немного другие подходы, плюс есть неприятные глюки в веб представлении.
Но, в целом , сейчас решений которые могут "сделать RAD" мало.
Есть elma/creatio/salesforce - но реальная трудоемкость проектов там - "слезы".
В большинстве решени "доработками" называют просто возможность добавить доп. поля в CRUD.

Этап 2 - почему потерял интерес.
Ответ в одно слово - "политика". Есть большие сомнения в стране, международность знаний важнее.

У меня лично подобная исповедь случилась после миграции с Delphi на C/С++ после долгого созревания. Много лет искал среду, напоминающую мне любимую среду, которую не за красоту называл лучшей. Но когда нашёл Lazarus, установил и запустил его, и со слезами на глазах, сказав "Это же он самый!", простился.

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

как вас помотало. надеюсь что Вы нашли то, что искали :)

НЛО прилетело и опубликовало эту надпись здесь

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

Я программирую уже более 20 лет // Вот именно, в этом чаще всего и дело. После 40-45 у программистов наступает кризис, который может привести к уходу из профессии или попытке поднять самостоятельный проект, который чаще всего не приносит создателю дивидендов.

мне еще далеко до 40 :)

НЛО прилетело и опубликовало эту надпись здесь

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

НЛО прилетело и опубликовало эту надпись здесь

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

Нейронные сети, ML и это вот все. PyTorch, Keras из коробки уже завезли?

ммм… а зачем в бухгалтерии нейронные сети ???

конкретно в бухгалтерии не нужны.

а где в 1С нужны?

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

Я начал учить Java, написал на ней пару пет-проектов, а потом еще и на Golang, который мне очень понравился.

это всё в рабочее время или после работы?
какова суть этих пет-проектов?

После написания очередного пет-проекта я составил резюме на Golang, прошел собеседование и получил хороший оффер на позицию Middle Golang разработчика.

какова суть/размер/сложность пет-проекта, после которого дали предложение о работе в качестве Middle Golang разработчика?

это всё в рабочее время или после работы?
какова суть этих пет-проектов?

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

какова суть/размер/сложность пет-проекта, после которого дали предложение о работе в качестве Middle Golang разработчика?

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

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

Ответ — да, уступает, и сильно. И этого никто не скрывает. Платформа 1С (8 версии) задумывалась, разрабатывалась и продолжает разрабатываться как инструмент для решения вполне определенного, ограниченного круга бизнес задач. Да, в последнее время разработчики платформы пытаются понемногу расширять сферу ее применения, добавляют новые возможности. Но происходит это гораздо медленнее, чем в других платформах, и не является основным вектором развития. 1С нашла свою нишу и не стремиться занять все остальные. Никто не призывает (во всяком случае со стороны вендора) разрабатывать на 1С супер-быстрые веб-приложения, интернет мессенджеры или серверные платформы для HFT. Никто не говорит, что с появлением %FEATURE_NAME% 1С наконец-то может заменить Java или .NET.

В своей же нише 1С действительно рулит, прежде всего, с точки зрения бизнеса. А с точки зрения бизнеса важны в основном лишь две характеристики: стоимость и time-to-market. То, что .NET команда сможет сделать за неделю, уложившись в один спринт только при условии грамотного применения Agile, опытный 1С-ник (я не про типовых франчей) делает за 2-3 дня в одно рыло, извините мой французский, либо в паре с одним тестировщиком. За те же или меньшие деньги.

Да, у этого есть оборотная сторона. Да, база будет весить 2 Гб вместо 200 Мб. Да, время реакции будет приемлемым, а не супер быстрым. Да, дизайнеру негде развернуться, всего две темы на выбор. Но бизнес это устраивает.

Предвижу контрагрументы про TCO и стоимость последующих доработок. Отвечаю. Те решения, которые эксплуатируются годами, требуют постоянной доработки и где важна TCO, 1С берет на себя. Я про типовые конфигурации. Поддержка нового API или формата обмена с каким-нибудь Честным знаком разрабатывается один раз и ее стоимость размазывается на всех пользователей. Те же задачи, о которых я писал выше, либо выстреливают и окупаются меньше чем за год, и потом даже дорогая поддержка для бизнеса приемлема. Либо не выстреливают и сворачиваются, не успев поглотить большой бюджет.

Все, что касается критики инструментария разработки, полностью поддерживаю. Это действительно боль и слабое место. Ресурсов на это у вендора действительно не хватает. Бюджеты тут все-таки не FAANG-овские.

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

Причины ухода из 1С вижу следующие

  1. Снижение объёма работ, и этому есть тоже нескольких причин. Во-первых, улучшение кода типовых конфигураций, где для официального "белого" учёта сделаны очень много. Необходимости в устранении ошибок, дополнительных типовых формы практически нет. Клиент электронного документооборота сделан неплохо. Во-вторых, все перешли с платформы 7.7 на 8.3, а новой версии нет.

  2. Сокращение количества организаций и предпринимателей. То есть потенциальных мест работы стало меньше за 8-10 лет. Если пятерым средним/мелким юр.лицам требовалось пять условных программистов 1с, то в случае укрупнения бизнеса, а также слияний и поглощений, остаётся одно-два юр.лица, которым требуется 1-2 программиста вместо пяти.

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

Стоимость разработки и сопровождения нетипового решения на 1С, на мой взгляд, сопоставима с решением на Java или C#. При этом отсутствует мобильность, масштабируемость, но присутствует зависимость от вендора и лицензий.

Минусы 1с как платформы

  1. Кроссплатформенность почти отсутствует.

  2. в случае нескольких серверов и работы через web клиент, не работает SSO в доменной авторизации, и это не могут починить очень долго.

  3. отсутствие мобильных решений

  4. слабое аналитическое решение в сравнении с PowerBI тем же. Плюс лицензионная политика если приобретать 1с:аналитику

  5. Декларативный интерфейс в веб-клиенте, ужасно медленно работает. По этой причине, работа вне клиентского приложения превращается в муку для пользователя.

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

Разберу по пунктам столь удивительные утверждения:

Снижение объёма работ,

Тот кто работает в более менее крупном франче, скажет что работы увеличилось в разы и будет еще больше, т.к. более менее крупные конторы отказываются от западных ERP-систем

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

Видимо вы не видели код УХ, да и в ERP есть куча ошибок или методологических недоработок

Во-вторых, все перешли с платформы 7.7 на 8.3, а новой версии нет.

Помимо тех кто сидит на западных ERP-системах, есть куча пользователей УПП, которые мечтают о переходе

Сокращение количества организаций и предпринимателей. То есть потенциальных мест работы стало меньше за 8-10 лет. Если пятерым средним/мелким юр.лицам требовалось пять условных программистов 1с, то в случае укрупнения бизнеса, а также слияний и поглощений, остаётся одно-два юр.лица, которым требуется 1-2 программиста вместо пяти.

Пострадал малый бизнес - общепит, услуги, но крупняк остался и все хотят внедрения ERP, который 1-2 программистами не внядряется

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

В 8.3.18 появились async/await. Какая еще асинхронность вам нужна? Продолжить работу в приложении не дожидаясь результатов стало доступным еще в версии 8.1, когда появились фоновые задания.

Стоимость разработки и сопровождения нетипового решения на 1С, на мой взгляд, сопоставима с решением на Java или C#. При этом отсутствует мобильность, масштабируемость, но присутствует зависимость от вендора и лицензий.

Быстрее раза в 3-4, кроме того никому пустая платформа не нужна, нужно типовое решение, в которое нужно добавить дополнительный/доработать существующую функциональность. То есть сравнивать нужно с ERP-системами на базе Java и C# с открытым исходным кодом и сопоставимой функциональностью. Такие есть?

Кроссплатформенность почти отсутствует.

На чем вы решили запускать, если вам не хватает Windows, Linux, MacOS, Android и iOS?

в случае нескольких серверов и работы через web клиент, не работает SSO в доменной авторизации, и это не могут починить очень долго.

доменная авторизация работает только в Internet Explorer. Даже веб-сервисы работают с доменной авторизацией, но нужно было настраивать окружение. Но кроме этого есть OpenID и токены

отсутствие мобильных решений

Хотите мобильное приложение, хотите мобильный клиент автономный, хотите мобильный клиент онлайн. Даже не знаю, что еще выдумать можно.

слабое аналитическое решение в сравнении с PowerBI тем же. Плюс лицензионная политика если приобретать 1с:аналитику

Можно всегда выгружать данные во внешнюю БД и скармливать ее MSAS или PowerBI. А для внутренних целей и СКД достаточно.

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

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

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

Средства разработки никак не влияют на развитие. Бывает пропадает интерес к какой-то области. Если уж приспичит уехать, то что мешает перейти в Axapta или SAP? Там многие привычные в 1С вещи за чудо принимают.
Или для ваc перспектива это уйти из Java EE в разработку на Андроид? Ну я могу вам сказать, что опыт Java EE вам не сильно поможет.

в целом согласен, еще 1 пункт забыли - когда надоедают бесконечный учет и однотипные задачи.

асинхронность есть в полный рост, мобильный клиент делается также просто, как ПКшный и при этом также легко реализуются методы работы с rest-интрефейсами. Ну т.е. действительно, создать клиента 1С под андроид дело не хитрое.

  1. Простите за глупый вопрос. 1С работает на винде, на линуксе, на маке, на мобилках. И сейчас они анонсировали выпуск версии под ARM. Какая кросплатформенность почти отсутствует?

  2. Про что вы говорите, когда пишете про отсутствие мобильных решений? Вот тут (https://mobile.1c.ru/?utm_source=v8_site&utm_medium=tech_page&utm_campaign=v8_link) вроде достаточно много?

Сидим на попе ровно, лет чере 5 этот же человек напишет как он ущел с Go на модный LowCode фреймворк и теперь не пишет тонн кода :). Ну сейчас конечно странное время "зачем я ушел из 1С" есть наверное первый пункт о котором все знают, но в статье не указан. Всё остальное притянуто зауши можно спорить по каждому пункту, но то что итоговый посыл правильный сейчас кто же поспорит, а ещё год назад с удовольствием покидался бы в автора какашками :)

зауши

хорошо, хоть так.

Сидим на попе ровно, лет чере 5 этот же человек напишет как он ущел с Go на модный LowCode фреймворк и теперь не пишет тонн кода :)

хм, IT экстрасенс - это видимо что-то вроде призвания.

Очередной невнимательный читатель, который не пытался даже вникнуть в то, что это ответ на другую статью

Почему бы и ".net"? Простите за каламбур. В свое время когда выбирал какой язык мне бы помог для решения моих задач рассматривал в том числе и его. Сейчас он вполне себе выполняется рантаймом на разных платформах, в том числе перекомпилируется через JIT. Недостаток состоит в том что сперва нужно притащить рантайм на целевую платформу, при том соблюсти версию. А это проблемы. Потому остановился на golang, где компилируешь приложение вместе с необходимым куском рантайма под целевую платформу, зато в худшем случае зависимость от конкретной libc и то при условии что в зависимостях есть код на C.

...в том что сперва нужно притащить рантайм на целевую платформу, при том соблюсти версию. А это проблемы.

.net core умеет собирать self-contained версии, там конкретная версия рантайма пакуется вместе с самим приложением и только та часть, которая нужна.

Я искал в те времена, когда .net существовал только под windows. С тех пор многое изменилось, но до сих пор приложение на go у меня не получалость больше 20 Mb ну максимум 100, когда еще web-ресурсы в него упакуют в то в время как netcore-base в linux это минимум метров 200. И опять же часто требуется определенная версия.

JIT даже во времена framework 2.0 не особо любили, поэтому сразу проходились ngen`ом. В виндах даже служба есть, оптимизация Net.

С тех пор появился компилятор Roslyn. Парой галочек в окне деплоя собирается нативный линуксовый бинарник под одну из поддерживаемых платформ.

А вообще на хабре были темы с экспериментами сбора под uefi, dos и Windows 3. Но это уже библиотеку надо отключать. Я сам под биос собирал что-то.

Вы просто сильно все путаете. Например рантайм с виртуальной машиной, которой net отродясь не являлся (исключая net Micro framework для микроконтроллеров)

Потому остановился на golang, где компилируешь приложение вместе с необходимым куском рантайма под целевую платформу

аналогично.

.net в байткод? Ну сколько можно то в эти мифы верить.

не специалист по C#, поэтому не знаю во что он на самом деле компилируется.

Последнее время тоже думал, что 1с - полный отстой, 15 лет плотно работал с ним.

Но вот я встретил Битрикс 24... Это хуже. Это.... Слов цензурных нет ) Теперь думаю, что 1с не так уж и плох. Так что все относительно.

Это вы с экосистемой nvision не сталкивались. Долбанный тензерфлоу, и попытки оптимизации его под 4090 может просто уйти опять на 3 серию.

слышал про Битрикс, но слава богу очень поверхностно касался его.

может вопрос дилетантский, но почему нельзя написать какой-нить фронтент для LVVM или написать какой-нить диалект для С++ или Java, как например это сделал JetBrains с котлином.
Котлин ООП язык с примесью функциональности, по сути фронтенд для Java, Native и т.д.
При этом если писать для JRE, то можно использовать все либы для java, на что-то там есть мапинги, на что-то нет.
Почему не взять какую-то стандартную платформу и заиспользовать всю ее мощность и комьюнити, при этом перкомпилить все конфигурации, ну или компилить конфигурации во время сборки? добавить какие-то тулы для фомроклепа, но поверх стандартных либ.
С учетом кроссс платформенности перевести на англ язык и захватить например какие-то азиатские рынки, хотя там свое написано уже, но тем не менее это бы значительно расширило долю рынка.

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

Я так понимаю, потому что основной доход 1с приносят не решения, а заточенные под них программисты. Это значит с большей частью из них придется попрощаться и доходы сильно упадут. А так они внутри вполне себе пишут и на C++ и местами на Java и т. д....
Почему упадут доходы? Потому что не факт, что освоившие новые технологии 1c программисты захотят дальше внедрять 1с, а не переключатся на внедрение конкурирующих платформ.

НЛО прилетело и опубликовало эту надпись здесь

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

И где тут возражение? 1c повязан со своими программистами и дистрибьюторами тоннами кода. Если завтра он все это отбросит, то потеряет примерно половину из всего этого. Не везде найдутся достаточно квалифицированные программисты на переписывание всего на java/python/c++. А если найдутся, то может они вместо переписывания решат написать с нуля. Оно 1С нужно?

Насчет из-за границы, спасибо конечно польстили, никогда не считал что мой труд может быть ценен "там". Но увы я, живу в России, а еще я работал в компании, где пять лет заменяли самописное решение для организации склада на 1с при помощи одного крупного интегратора, но так полноценно и не заменили. А еще я знаю что в моем городе миллионнике не так уж много специалистов по настройке 1с под linux и я точно не самый худший из них. Уж по крайней мере лучше чем любой специалист этого крупного интегратора. разница лишь в том, что я специалист по linux, а не 1c.

Ну т. е. для меня 1с - это как любое ПО под линукс, только с "нетрадиционным" способом распространения, исключающим автоматическое обновление. А так не вопрос накатить обновления из архива или сформировать конфиг в postgres pro. Завершить сессию пользователя из командной строки или наладить регулярные бэкапы при помощи дампа или обновить версию postgres.

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

Такие попытки были. Опен ерп вроде как.

Но они требуют очень серьёзной поддержки и ресурсов. Кто будет за это платить?

может вопрос дилетантский, но почему нельзя написать какой-нить фронтент для LVVM или написать какой-нить диалект для С++ или Java, как например это сделал JetBrains с котлином.

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

Можно, наверное, из 1С сделать Roblox даже, только зачем?
1С чуть больше чем голая Java, это сборник фреймворков с небольшим порогом вхождения.

Ходят слухи, что это делают.
Хотят уйти в сторону более "стандартного" языка.

Простите, но тогда уж сравниваете 1с и к-нить GP или навижн или аксапту.

1с это нишевый продукт, как и excel. Хотя в excel есть vb, но это не делает эксель...

Хотя, я писал гейт из него в сап. Бюджетирование делали на куче филиалов. Забавно было.

Наконец то адекватная оценка 1С. Рад, что ты выплыл из этого болота

спасибо большое, надеюсь не придется залезать обратно, с учетом последних событий :)

Я программист, потому что вот

Developer profile gybson_samara, Samara State Aerospace University (codingame.com)

Инженер он и в 1С инженер, а гуманитарий везде найдёт повод для страдания.

Ограничения! Какие проблемы написать внешнюю компоненту на C# или С++? Никаких. Если лапы на месте, то за день пишется вебсервис на питон для расширения функционала.

Настоящему программисту, завсегда везде ништяк. Ну может кроме Пролога. Вы Пролог видели? Посмотрите.

P.S. Отдельный привет всем Unity программистам. Вас также херососят?

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

В С++ самая интересная задача это писать абстрактные классы и шаблоны. В Java думаю тоже. Всё остальное это такая херня, на которую жалко времени.

Но кто же даст?

А если вы не создаете архитектуру, то архитекторы вас имеют также, как 1С. Если не жестче. В Java очень много вкусного скрыто за protected.

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

И это мы еще не обсуждаем Пайтон, это такой плагин к C.

Не туда холивар затеяли.

Я как тот, который только столкнулся с 1с из-за учебы, хочу дополнить весь мой "спектр" ощущений от работы в ней.

Когда последний раз обновляли этот чертов конфигуратор? Я не то что разобраться не могу, я даже нормально расставить окна не могу, чтоб у меня было хотя бы 2 модуля на экране. А если окно модуля ушло за пределы экрана, то что тогда делать, как закрыть или открыть заново? Нет даже нормальной НУМЕРАЦИИ ЧЕРТОВЫХ СТРОК, СТРОК, КАРЛ! Чтоб тебе помог автозаполнить что-то то будь добр каждый божий раз нажать cntr+space или на отдельную кнопку ситаксис-помошника. А в этой 1000 и 1 модуль тоже попробуй разобраться, да-же не за что они отвечают, а за то, что они делают. Константы которые не константы... И это малая часть того спектра эмоций, которые я получил от работы с 1с, но на последок хочу дать еще один факт, который меня окончательно добил. Есть некоторые ресурсы, которые требуют денег, ЧТОБ ПРОСТО ПРОЧЕСТЬ ДОКУМЕНТАЦИЮ, извините, но это уже ни в какие ворота не лезет.

Когда последний раз обновляли этот чертов конфигуратор? 

кажется в начале нулевых, потом были какие-то минорные обновления, но в том то и дело, что минорные.

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

вроде CTRL+B, но это неточно.

Чтоб тебе помог автозаполнить что-то то будь добр каждый божий раз нажать cntr+space или на отдельную кнопку ситаксис-помошника. А в этой 1000 и 1 модуль тоже попробуй разобраться, да-же не за что они отвечают, а за то, что они делают.

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

Есть некоторые ресурсы, которые требуют денег, ЧТОБ ПРОСТО ПРОЧЕСТЬ ДОКУМЕНТАЦИЮ, извините, но это уже ни в какие ворота не лезет.

+100 500. они просто очень жадные.

нумерация появится в новой версии конфигуратора - 1С: элемент, там почти как в Idea, но интерфейс и команды на русском.

1С: элемент, там почти как в Idea

Загуглил зверя — это же vs code, с плагинами. Ему до идеи как до китая. Ну т.е. конечно всяко лучше конфигуратора, но с идеей земля и небо.
Читаю комменты и поражаюсь народу — вы прочитайте сначала оригинальную статью, в которой 1С программисты самые умные, самые крутые и с помощью этой платформы можно написать, что угодно. На эти утверждения автор и отвечает сравнением с универсальными ЯП, с помощью которых можно написать гораздо больше, а 1С по сути нишевый продукт, который выполняет хорошо только свою функцию и не претендует на что-то большее.

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

"крутые и с помощью этой платформы можно написать, что угодно "

Кстати тут автор прав, при желании НАПИСАТЬ можно что угодно, все базовое там есть, процедуры / циклы / условия / работа с СУБД. Так что формально так и есть, при должной мотивации на 1С можно выполнить любую учетную задачу, ну максимум с привлечением сторонних разработок в каких то системных вещах.

Я в разработке 18 лет, и не скажу что прям все понял, но одну вещь я понял достаточно на глубоком уровне: Написать программу это первые 90% работы. Вторые 200% это её сопровождать, развивать, масштабировать, интегрировать.

А вот это крайне тяжело делать на бэйсике с вкраплениями SQL.

Единственная претензия у меня к 1С это то что она отдает каким-то просто лютым совком в самом худшем его проявлении - все эти вот БП, УТ, ЗУП, серьезно? Даже если компания мнит себя мегасовременной и даже имеет штатного психолога, ибо модно-молодежно, все-равно она будет похожа на захудалый НИИ в Зеленограде, еще и этот конфигуратор, не меняющийся с 90-х, для меня до сих пор загадка почему все российское так закостеневает в прошлом, учитывая что тот же Гугл даже время от времени меняет интерфейс своих сервисов, хотя они могут годами не меняться ибо все к ним привыкли, и я раньше тоже ругался мол вот заняться нечем, но этой статьи я понял что именно это и позволяет ему и через почти 20 лет (страшно представить) оставаться самой динамично развивающейся компанией, еще бы, если каждые несколько лет тебя встречает кардинально новый модный дизайн по всем последним гайдлайнам месячной давности, и думаешь а рано еще на пенсию-то идти, когда еще столько всего нового в мире, и прям даже как-то по-новому на все это смотришь.

НЛО прилетело и опубликовало эту надпись здесь

Я просто процитировал фразу из статьи. Считайте образно.

В мире 1С существует 2 IDE. Первая – православный, непоколебимый конфигуратор. Тут все в духе 1С: возможности, как у IDE из 90-х

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

Конфигуратор из 90х был в 7.7, в восьмёрке он из середины нулевых по функционалу

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

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

Да без проблем, каждый самоудовлетворяется как хочет.

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

Спасибо огромное. Ваше мнение очень важно для меня.

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

Мудрость и старость обычно приходят вместе, но иногда старость приходит одна :)

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

Даже не поленился комменты пролистать, 80% про то что никто не хочет читать оригинальную статью, что многа букаф и что вы имели ввиду не это, то есть это ресурс для программистов, который на 90% состоит из программистов (на такие хабы случайные люди не подписаны), но никто вас тут не может понять и для программистов многа букаф, хотя были статьи и длинее в разы, всех всегда понимали (комменты к любой статье откройте), только вас одного не понимают, как-то слабо верится что это ваш первый опыт взаимодействия с людьми и произошел он только вчера при получении инвайта на Хабр, а вас тут уже не понимает никто, однако люди взаимодействуют друг с другом именно благодаря той самой мудрости, которая подразумевает что собеседник (сюрприз) тоже может быть прав сколько бы он и вы не получали бы.

И тут Остапа понесло

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

Продолжайте наблюдения :) Я почитаю, посмеюсь.

НЛО прилетело и опубликовало эту надпись здесь

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

Вот сразу видно, кто Лев Толстой, а кто неудачник простой. Вы из числа первых. Я надеюсь, что верховный разум насыпет Вам классных ништяков. От меня же бесконечный респект за то, что Вы прочитали все до конца :)

PS: Не могу плюсы ставить, ибо VOTER_NOT_BE_EVIL

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

А тут я просто высказал свое субъективное мнение о том, что для меня 1С это совок, и на него не влияет то читал ли я ту статью или нет, я просто высказал свое мнение касаемо исключительно 1С коли зашла о ней речь, а в итоге я так самоудовлетворяюсь оказывается, как я посмел, ибо обсуждение может идти только в рамках этой статьи и никак иначе, а кто не согласен - тот неудачник, это нормальная практика везде, плюрализм мнений, мы не боты чтобы вести дискуссию так, как решил создатель, то что сколько людей столько и мнений товарища не интересует, а по мне это явный показатель что он слишком юн, а в итоге я неудачник, а он Дартаньян и главный мудрец, ищущий при этом поддержку среди других, а по мне это и показатель возраста что человеку нужно так уж прям самоутверждаться за счет других, мол во, видите, меня поддержали, а ты дурак. Ну нам же всем тут не 10 лет ей богу. То есть тут вообще даже не про статью махач с ним сейчас.

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

Я ИТэшник-эммигрант. В своё время, твёрдо решившись на переезд, не стал принципиально работать с 1С потому что за границей этот опыт 100% не пригодится. Хотя 1Сникам и платили больше. Одной этой причины для меня было достаточно. Даже не хочу углубляться и рассказывать про своё удивление, когда увидел в коде 1С двойной вложенный цикл для сложения двух таблиц в то время как за несколько лет до этого я даже в MySQL использовал JOIN.

Ну справедливости ради в 1С запросах к данным давно уже есть JOIN (левый/правый/внутренний/полный). А вот встроенная библиотека с коллекциями в памяти (массивами, списками, таблицами значений) - очень скудная. Например, нет простого способа отобрать строки по условию Количество<>0, только фильтры на равенство с условием "AND" между ними

Вы читали оригинальную статью, в которой утверждается что "1С буквально лучше всех" и настоящие программисты не думают при решении задач?
В 1С можно делать JOIN'ы, и на других ЯП тоже можно в цикле делать SQL запросы.

Если говорить серьезно, то в Java, Golang и, скорее всего, в C# заполнение экземпляров типов с одинаковыми именами полей решается рефлексией. Но думаю, что это избыточная сложность – достаточно переложить одни поля в другие через горячую клавишу в IDE. 

Если я вас правильно понял, то хорошим решением является какой нибудь mapper. Например Automapper из c#.

я написал, что если ключи заранее известны, зачем вообще рефлексию использовать.
не знаю что такое Automapper из C# :)

Читая статью, каждый пункт болью отзывался в сердце. Как всё это знакомо.

Но всё же сравнивать 1С и языки вроде java и python - это как сравнивать мягкое с тёплым. 1с всё же не язык программирования, это своего рода экосистема, платформа, где можно самим конфигурировать. И ожидать от неё того, что может java, python и другие не стоит. Да на них можно быстро сделать простенький сайт(spring, django...), ML и многое другое. Но на них нельзя за пару часов сделать простенький складской учет, с печатными формами, отчетами. У каждого есть своя ниша, C - там где важна скорость, python - обработка данных и ML, java - enterprise... Да у 1С есть болячки, а где их нет.

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

Для автора про парсинг: запускаем selenium сервер и через запросы на чистом 1С, получаем всё, что хотим )

Но всё же сравнивать 1С и языки вроде java и python - это как сравнивать мягкое с тёплым.

В оригинальной статье идет такое сравнение, я всего-лишь ответил на некоторые тезисы из нее. Вы ее читали?

1с всё же не язык программирования, это своего рода экосистема, платформа, где можно самим конфигурировать.

Да, платформа 1С - это DSL и паноптикум типовых конфигураций вокруг нее.

И ожидать от неё того, что может java, python и другие не стоит. Да на них можно быстро сделать простенький сайт(spring, django...), ML и многое другое. Но на них нельзя за пару часов сделать простенький складской учет, с печатными формами, отчетами. У каждого есть своя ниша, C - там где важна скорость, python - обработка данных и ML, java - enterprise... Да у 1С есть болячки, а где их нет.

Я разве оспариваю это? Наоборот, я признаю что для автоматизации учетных (!!!) задач 1С действительно победил конкурентов и стал монополистом. А вот в оригинальной статье почти прямым текстом написано, что 1С owns them all, что есть лукавство.

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

Вот я и ушел.

Для автора про парсинг: запускаем selenium сервер и через запросы на чистом 1С, получаем всё, что хотим )

То есть делаете столько же приседаний, а то и больше, что и в условной Java. Это оспаривает еще один тезис из оригинальной статьи, что на 1С "все" делается быстрее и проще.

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

То есть делаете столько же приседаний, а то и больше, что и в условной Java. Это оспаривает еще один тезис из оригинальной статьи, что на 1С "все" делается быстрее и проще.

Не так уж и много приседаний, исходя из выше указанных ограничений )

До этого наприседался) Сделал поначалу http сервис и из python'а дергал его.

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

В комментариях уже исповедь всех, кто столкнулся с 1С :)

Не так уж и много приседаний, исходя из выше указанных ограничений )
До этого наприседался) Сделал поначалу http сервис и из python'а дергал его.

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

В комментариях уже исповедь всех, кто столкнулся с 1С :)

Уже диагноз вырисовывается )

Но держит з/п и не большой пулл вакансий в городе(в целом в ИТ сфере)

Удаленка наше все. У меня даже знакомые 1сники поголовно на удаленку бегут, а там и зп околостоличные, и вакансий много.

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

Проблема только что индустрии не нужно делать "простенький складной учет за пару часов".

Индустрия хочет ERP систему уровня транснационального холдинга, хочет систему расчета комунальных услуг для всей страны, систему бронирования билетов, систему управления ЖД перевозками и.т.п.

И продукты на 1С давно уже решают такие проблемы, взять тот же Газпром который хоть и на SAP официально, а не официально в SAP все грузится из систем написанных на 1С и выгружается обратно в другие системы написанные на 1С. Автоматизация на SAP у нас в РФ чем то похожа на сказку "Каша из топора".

Проблема 1С как раз в том что она изначально проектировалась как фреймворк для "простенький складной учет за пару часов", а пришла к автоматизации работы почты РФ.

"Да у 1С есть болячки, а где их нет. "

То что происходит с ЯП на котором работает 1С это не болячки, это инвалидность или дряхлость, выбирайте что ближе.

Если проводить аналогии то есть такой "язык" Scratch, очень низкий порог входа, можно за 5 минут написать код управления машинкой игровой. Но ведь не кто не пишет на Scratch автоматизацию для почты РФ? А на 1С пишут.

То что происходит с ЯП на котором работает 1С это не болячки, это инвалидность или дряхлость, выбирайте что ближе.

1с, повторюсь, это не ЯП, это платформа со своими ограничениями. И сравнивать с другими ЯП не очень корректно. Программисты на c/c++ ругают python за то, что он медленный(холиварный спор). Но никто из программистов c/c++ не пишут сайты на c/c++.

А там где нужна скорость работы с железом не будкт писать на пайтоне.

Но ведь не кто не пишет на Scratch автоматизацию для почты РФ? А на 1С пишут

Значит не тот инструмент выбрали. Гвозди можно и микроскопом забивать.

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

Да, это про вендора 1С.
Ленивые (и так сойдет) и жадные (давайте с них стричь деньги за все)

вот вполне бесплатная версия для обучения
Состав
Рекомендации по работе с программой.
Описание архитектуры платформы «1С: Предприятие 8».
Учебная версия платформы «1С: Предприятие 8.3».
Мобильная платформа «1С: Предприятие 8.3».
Конфигурации:
демонстрационные конфигурации к книге М.Г. Радченко, Е.Ю. Хрусталевой «1С: Предприятие 8.3. Практическое пособие разработчика. Примеры и типовые приемы»;
«Бухгалтерия предприятия»;
«Управление нашей фирмой»;
Мобильное приложение УНФ;
Документация и методические материалы в оболочке базы 1С: ИТС:
«1С: Предприятие 8.3. Руководство разработчика»;
«1С: Предприятие 8.3. Руководство администратора»;
М. Радченко, Е. Хрусталева «1С: Предприятие 8.3. Практическое пособие разработчика. Примеры и типовые приемы»;
книга Е. Ю. Хрусталевой «Знакомство с разработкой мобильных приложений на платформе 1С: Предприятие 8»;
глоссарий разработчика;
материалы методической поддержки 1С: ИТС для разработчиков.
Для работы данного продукта не требуется программная лицензия или ключ аппаратной защиты.

форум
Для поддержки пользователей продукта «1С: Предприятие 8.3 Версия для обучения программированию», самостоятельно обучающихся разработке прикладных решений, организована интернет-конференция по адресу DevTrainingForum.v8.1c.ru.

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

т.е. для «на посмотреть» более чем достаточно.
Создать собственную конфигурацию – можно!
Изучить любую имеющуюся конфигурацию – можно!
Доработать любую имеющуюся конфигурацию, в том числе для реальных задач автоматизации – можно!
Использовать для ведения реального учета – нельзя!

вот вполне бесплатная версия для обучения

Обучение != некоммерческая разработка.
Кроме того, версия для обучения обрезана как средневековый евнух. И поэтому версия для обучения != community edition.
Собственно, это очередной плевок в сторонников платформы.
Community edition - это что-то вроде "Комплекта разработчика". А помните как жадный вендор продавал его за 630 рублей в разгар короновирусной истерии?
Причем купить его мог ТОЛЬКО специалист с сертификатом от 1С. Обожаю запах виртуальных ржавых наручников :)

Для обладателей любого из сертификатов:
—“1С:Специалист” по платформе;
—“1С:Эксперт по технологическим вопросам“;
—“1С:Эксплуататор крупных информационных систем”;
для целей разработки предоставляется личный бессрочный комплект разработчика 1С:Предприятие за 630 руб., а так же на сервер-мини со скидкой 80%.

То есть, если я правильно понял - разработчик, который хочет попробовать себя в 1С должен каким-то образом выучиться сначала, получить сертификат и только потом ему позволят купить community edition. Так ведь?
К слову, я за 10+ лет в 1С так и не захотел получать какие-то фантики при таком отношении вендора к себе.
В общем, как тебе такое, Илон Маск?!

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

Хм, то есть говорить можно только на темы, на которые захочет вендор.
Ладно, понял.
Видимо поэтому тусуют все на infostart'е и mista'е.
Да, и вид ресурса такой как будто я попал назад в нулевые.
Будь я на месте 20 летних ребят, увидев это UI убожество, и имея на YouTube кучу мануалов о том, как "войти в IT", я бы пошел в другой ЯП.

Простите, при всё уважении, но если вы за 10 лет работы не подтвердили себя, как специалист (не получили сертификат (а получить сертификат по плафторме реально достаточно просто, в отличие от "продуктовых"), то может быть в этом что-то есть?

Хм, робкие, жеманные переходы на личность. Я все ждал, когда же это начнется :)
Ну что Вам сказать, лычка у меня сеньорская, но внутри все тот же сомневающийся миддл.

Ну а что помешало-то?

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

Прикрываться фразой "это вендор виноват, что я не сдал" это почти как я по радио слышал вчера "Темный властелин виноват в том, что у меня 4 друга умерло". Ну правда...

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

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

Прям из личного опыта: школьный друг хотел внедрить одну из конфигураций, франч к нему прислал человека, друг чисто дежурно спросил: а сертификат у вас есть? А человек в ответ возьми и ляпни: я 6 раз сдавал экзамен по ЗУП, но так и не сдал.

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

Наши мнения тут расходятся, но спорить на этот счёт не хочу. Давайте останемся при своем.

Внедрение в итоге через некоторое время заканчивал другой человек. Первый до конца довести не смог.

Сдача на спеца по платформе та еще трата времени если по работе большая часть того что на нем спрашивают не нужна. Я например когда на 1с был в десноле, мы 1С: ТОИР пилили, из всего спеца разве что первая задача какое то отношение к реальной работе имело, в остальном у нас своя специфика была. И нафиг мне этот спец? В итоге конечно заставили сдать, сделал это без особых проблем и как помнится с первого раза, но как вспомню сколько раз я засыпал от скуки во время подготовки к спецу…

630₽ - жадный? (не говоря о том, что остальные интернет-магазины продают его по 4000₽!). Там вообще-то коробка с книгами. Есть подозрение, что это по цене себестоимости почти.

Вы не можете потратить 2 чашки кофе, чтобы купить себе профессиональный инструмент? Я ничего не путаю?

Ха! Так я бы потратил, но ведь сертификат нужен. Вы точно прочли, что я написал?

Так всё-таки не вендор жадный (он же не должен физическую коробку отдавать просто так, правда?), а у вас сертификата не было. Это разные вещи немного.

Вендор жадный, и сертификата не было :)

человек «русским по белому» написал:
Вот я просто обычный электронщик [...] Мне было интересно в том числе и на 1с посмотреть, но вот такая жадность просто отторгает и даже пытаться не хочется.

Я ему сказал, что для того, чтобы посмотреть и попробовать — не нужно платной документации и партнерского форума. Почему вы ему это не сказали?
Обучение != некоммерческая разработка.

именно так. поэтому и называется "версия для обучения".
То есть, если я правильно понял — разработчик, который хочет попробовать себя в 1С должен каким-то образом выучиться сначала, получить сертификат и только потом ему позволят купить community edition. Так ведь?
ну так «community edition» как-то подразумевает, что человек состоит в сообществе? вы ж не приходите в клуб байкеров со словами «я тоже байкер, подарите мне мотоцикл»?
К слову, я за 10+ лет в 1С так и не захотел получать какие-то фантики при таком отношении вендора к себе.
я общаюсь с 1с в том или ином смысле более 20. и тоже не рвался получать сертификаты. и что это доказывает?
Хм, то есть говорить можно только на темы, на которые захочет вендор.
на тематическом форуме «версии для обучения» — вполне понятно, что говорить можно на темы «версии для обучения». для флуда есть другие ресурсы.

Хорошо, для обучения она подходит. но это не community edition, как в других ЯП. А весь список ограничений как бы намекает на жадность вендора, в очередной 100500-й раз.

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

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

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

Я правильно понимаю?

Можно конкретный пример пожалуйста? Чтобы не возникло недопонимания?

Я не видел, чтобы в community edition так сильно урезали возможности как 1C в учебной версии:

  • не может использоваться на предприятии для ведения реального учета пользователями;

  • не может использоваться для сборки дистрибутивов мобильных приложений, предназначенных для дальнейшей публикации и тиражирования;

  • ограничено количество данных:

    • максимальное количество записей в таблицах счетов 2000;

    • максимальное количество записей в главных таблицах объектов 2000;

    • количество записей в табличных частях объектов 1000;

    • количество записей в наборах записей 2000;

    • количество записей из внешних источников данных 200;

  • не поддерживается работа в варианте клиент-сервер;

  • не поддерживается работа распределенных информационных баз;

  • не поддерживается COM-соединение;

  • отсутствует возможность использования паролей и аутентификации операционной системы для пользователей;

  • печать и сохранение табличных документов поддерживаются только в режиме Конфигуратора;

  • не поддерживается копирование содержимого более чем одной ячейки табличного документа в режиме 1С:Предприятия;

  • не поддерживается работа с хранилищем конфигурации;

  • не доступна функциональность, связанная с поставкой конфигурации;

  • количество одновременных сеансов работы с информационной базой ограничено одним сеансом,

  • значения разделителей задаются значениями по умолчанию для данного типа разделителя.

А вы с чем всё-таки сравниваете? Имя, брат! Имя! ©

Вот, например, на MS SQL Server developer edition тоже нельзя боевые базы заводить по лицензионному соглашению. Вас же это не смущает?

Зачем Вы спорите? Разве моя статья про это?
Это раз.
Во-вторых, но ведь в MS SQL Server Developer Edition есть ограничения на количество записей в таблицах?
Если мне не изменяет память, то нет.

Можно конкретный пример пожалуйста? Чтобы не возникло недопонимания?

Если сравнивать ЯП, может быть мне не хватает знаний, но я видел такое только в 1С, чтобы были разные версии виртуальной машины.
Взять MS SQL Server Developer Edition - так это полностью рабочий сервак, но разве что коммерческое использование запрещено.
Вроде бы Delphi бесплатно дает разрабатывать что угодно, но продавать нельзя.
Java - бери и делай, что хочешь, Python - аналогично, Golang - тоже самое.

Если сравнивать конкретно IDE, то для 1С бесплатных альтернатив просто нет в природе.
В Intellij IDEA можно разрабатывать, там нет ограничения по количеству создаваемых файлов или классов.
До такого додумался только жадный вендор 1С.
В Golang есть Goland, он платный, но есть бесплатный VS Code, то есть вопрос в альтернативе, и она есть!
А в 1С что? EDT или позорный конфигуратор? Такое себе.

Ну по факту у вас плохой пример

https://www.jetbrains.com/ru-ru/idea/buy/#discounts

У Идеи вообще нет версии для того, чтобы бесплатно разрабатывать коммерческое ПО, если вы простой разработчик. Учиться можно, а как только речи про разработку коммерческого ПО - дзинь-дзинь! свободная касса! Если только вы не готовы выложить все исходники в открытый доступ, но для коммерческого ПО - это так себе, правда?

Давайте зайдём с другой стороны?

Какой по вашему должны быть community-версия 1С? Что она должна позволять, а что не позволять?

как при этом обеспечить, чтобы её не использовали в коммерческих проектах?

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

Достаточно, что пользователь нарушил лиц. соглашение, если использует ПО в коммерческих целях. В таком случае и ломалки не потребуется.

Вы так верите в людскую честность? :)

Ну MS верит (со своим SQL Dev ED), что бы и 1С не поверить.
Просто при наличии ломалок в свободном доступе, с которыми уже снова который год не борятся говорить про веру в честность странно. Кто хотел уже сломал.

В IntelliJ IDEA Community можно бесплатно разрабатывать коммерческое ПО. Спец. предложения с сайта это про IntelliJ IDEA Ultimate.

https://www.jetbrains.com/idea/download/#section=linux

Community Edition is free to use for personal and commercial development. The IDE and most of it bundled plugins are open-source, licensed under Apache 2.0.

Создать собственную конфигурацию – можно!
Изучить любую имеющуюся конфигурацию – можно!
Доработать любую имеющуюся конфигурацию, в том числе для реальных задач автоматизации – можно!
Использовать для ведения реального учета – нельзя!

А чего же Вы не скопировали сюда полный список ограничений "учебной версии" с сайта 1С? Это то, что называется в других ЯП community edition?

  • не может использоваться на предприятии для ведения реального учета пользователями;

  • не может использоваться для сборки дистрибутивов мобильных приложений, предназначенных для дальнейшей публикации и тиражирования;

  • ограничено количество данных:

    • максимальное количество записей в таблицах счетов 2000;

    • максимальное количество записей в главных таблицах объектов 2000;

    • количество записей в табличных частях объектов 1000;

    • количество записей в наборах записей 2000;

    • количество записей из внешних источников данных 200;

  • не поддерживается работа в варианте клиент-сервер;

  • не поддерживается работа распределенных информационных баз;

  • не поддерживается COM-соединение;

  • отсутствует возможность использования паролей и аутентификации операционной системы для пользователей;

  • печать и сохранение табличных документов поддерживаются только в режиме Конфигуратора;

  • не поддерживается копирование содержимого более чем одной ячейки табличного документа в режиме 1С:Предприятия;

  • не поддерживается работа с хранилищем конфигурации;

  • не доступна функциональность, связанная с поставкой конфигурации;

  • количество одновременных сеансов работы с информационной базой ограничено одним сеансом,

  • значения разделителей задаются значениями по умолчанию для данного типа разделителя.

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

PS

Уж так вышло, что в свободное время увлекся всякой ерундой с БД и помогаю коллегам автоматизировать некоторые задачи с помощью питона и скриптов для пауершелл на sql. Благо, студента особо работой не грузят, отсюда такие странные увлечения и любопытство к 1С у электронщика.

любопытство — штука хорошая. разносторонние увлечения — тоже.

Очень большая статья, с чем то согласен с чем то нет, но если обобщить то:

  1. Многие "программисты 1С" на самом деле не программисты все что они делают это занимаются сопровождением и доработкой типовых. Это примерно как называть инженером автослесаря или работника детейлинга которые ремонтируют/тюнят автомобили или ставит на них допы.

  2. Автор как раз из тех кто как раз не был никогда программистом так как дорабатывал/перепрабатывал типовые решения а потом попал в компанию где работают программисты. Отсюда и хорошие впечателния от Java.

  3. У 1С три ключевые проблемы с точки зрения программиста (т.е. человека который с 0 пишет на 1С большие системы)

    1. Динамическая типизация;

    2. Процедурное программирование, проще говоря бэйсик;

    3. Жесткий монолит;

Вообще писать про то что в 1С плохо это не благодарное занятие, все что в 1С плохо - отлично описали сами 1С, по ссылке https://its.1c.ru/db/v8std, если интересно можете сходить почитать:

"Система стандартов и методик разработки конфигураций"

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

Ну и пару примеров для тех кому лень вникать:

Пример №1 "Область видимости, Программный интерфейс"

https://its.1c.ru/db/v8std#content:455:hdoc

В современных ЯП есть ограничение области видимости, упрощенно что бы IDE вам не давала в подсказке методы которые в принципе не рассчитаны на использование, есть интерфейсы которые скрывают за собой реализацию и.т.п.

В 1С такого нет, и вместо этого нам предлагают в модуле использовать "коментарий":

#Область ПрограммныйИнтерфейс

// Код процедур и функций

#КонецОбласти

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

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

Пример №2 "Описание экспортных (интерфейсных) процедур и фцнкций"

Отдельное искуство в 1С это требования к комментариям:

https://its.1c.ru/db/v8std#content:453:hdoc

// Параметры:
//   Реквизиты - Строка - имена реквизитов, перечисленные через запятую.
//                        Например, "Код, Наименование, Родитель".
//             - Структура, ФиксированнаяСтруктура - в качестве ключа передается
//                        псевдоним поля для возвращаемой структуры с результатом,
//                        а в качестве значения (опционально) фактическое имя поля в таблице.
//                        Если значение не определено, то имя поля берется из ключа.
//             - Массив Из Строка, ФиксированныйМассив Из Строка - имена реквизитов.

Так как у нас дин. типизация, а в больших проектах все же желательно описывать параметры функций, вендор нам предлагает описать эти параметры СЛОВАМИ что бы другие программисты (не IDE !!!) смогли это прочитать, запомнить и у себя в голове потом все это развернуть. Причем там важно еще и отступы соблюдать и офоромление, и потом естественно это все поддерживать в ручном режиме при изменении кода.

Естественно это вообще никак не свзяано с кодом и не как не автоматизировано.

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

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

Тем кто далек от 1С и кодит на Java все это вообще не особо интересно, разве что из серии не смог осилить C#, пойду в 1С...

  1. Многие "программисты 1С" на самом деле не программисты все что они делают это занимаются сопровождением и доработкой типовых. Это примерно как называть инженером автослесаря или работника детейлинга которые ремонтируют/тюнят автомобили или ставит на них допы.

  2. Автор как раз из тех кто как раз не был никогда программистом так как дорабатывал/перепрабатывал типовые решения а потом попал в компанию где работают программисты. Отсюда и хорошие впечателния от Java.

Берём ЯП <XXX>: получаем данные (из БД, файлы, API), применяем бизнес логику и сохраняем(в БД, файлы, возвращаем по API). И все программисты, но только не 1С-ники?

Вы же поняли о чем я писал? Спор ради спора?

90% работы 1С это поддержка и доработка типовых. Вот так что бы с 0 писать продукты уровня типовых на всю страну если наберется 100 компаний уже хорошо.

Франчей же несоизмеримо больше. Вы вот пришли в Java и можете сравнить промышленную разработку и сопровождение УТ на заводе. Сами же писали в статье про отношение к ИТ внутри компаний как к отделу который генерирует затраты.

Я думал мой пример с автосоесарем будет понятен. Каждый инженер в какой то степени автослесарь но далеко не каждый автослесарь это инженер способный спроектировать ДВС и подвеску для него и встроить это все общую систему.

Получение данных из БД и применение бизнес логики это часть разработки но не вся разработка, это в какой то степени рутина разработчика. Задача программиста в том числе и создание абстракций, разработка системы в рамках которых будет выполняться решение прикладных задач. Данные в базу можно положить десятком разных способов (не в 1С) и задача программиста не просто положить данные а сделать так что бы это было масштабируемо, встраивалось в архитектуру, было удобно и понятно другим программистам.

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

Вот вы уходили на Java, неужели вам не приходилось полностью ломать свой подход и свои привычки к разарботке? Вы же согласны что разработка на бейсике и на любом другом ООП языке это вообще абсолютно разные занятия?

Я думаю, что не каждый программист на java сможет то, что вы написали. И да большая часть 1с - это сопровождение, и к сожалению интересных задач мало. Но когда возникают, забываешь, что это всего лишь 1с ) А бейсик это, или ООП не имеет значение, думать надо везде. И тут, как мне кажется, ограничения 1с как раз заставляют искать обходные пути, чтобы решить нестандартную задачу. И сделать это, если ты не силен в логике, алгоритмах, зачастую не возможно. Там где всё решается прямо, в 1с идем "зигзагом" ) Но такова платформа, могли бы, шли прямо, но увы, выкручиваемся как можем.

Я думаю, что не каждый программист на java сможет то, что вы написали

Я не просто так думаю я в этом уверен.

Но это как раз и доказывает то что я написал. Есть Java программисты, есть 1С Программисты, есть 1С ники. У каждого из них своя работа. Которая частично пересекается но в общем и целом сильно отличается.

Я вот например 1С Программист, т.е. занимался разработкой гос. систем которые работают в масштабах страны и миллионов пользователей.

Я пару раз касался УХ и УПП и я там как первокласник себя ощущаю, а задачи типа "Внедрение ERP 2.5 На этапе моделирования бюджетной модели, штатному консультанту требуется помощь. Вопросы по формированию Плана закупок. Также необходимо проверить ход моделирования -убедиться в том, что штатный консультант правильно моделирует. Позадавать наводящие вопросы, оценить компетенцию шт..."

Для меня звучат как "бла бла бла".

"Там где всё решается прямо, в 1с идем "зигзагом" ) Но такова платформа, могли бы, шли прямо, но увы, выкручиваемся как можем. "

Я не вижу ничего плохого в том что бы выкручиваться. Почитайте как работает Maincraft там хак на хаке и хаком погоняет. И 1С тут вообще не в первых рядах.

Бейсик или ООП не имеет значения пока у вас 5 модулей по 15 процедур в каждом и вся система умещается в голове.

Когда вы пишите систему и в ней уже под 300 общих модулей в каждом из которых по 5000-40 000 строк сразу приходит понимание зачем нужен ООП.

И когда размер СУБД выростает до 1,5 Tb вы начинаете понимать зачем нужны микросервисы.

Наличие ООП парадигмы в 1с, к сожалению, не зависит от программистов. И отсутствие оной, всё чаще вызывает печаль.

Бейсик или ООП не имеет значения пока у вас 5 модулей по 15 процедур в каждом и вся система умещается в голове.

Я это к тому, что это просто инструменты, а результат это всегда "полёт мысли".

Я вот еще подумал немного. Вы в своей статье часто упоминаете термин "1С ник". Как по мне это отличное отражение.

Есть Java программист, а есть 1С Программист, есть 1С ник.

Это сильно разные специальности. Чистых 1С Программистов очень мало (по моим ощущением 10%) остальные кто работает с 1С это 1С ники.

Наверное так будет точнее.

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

Почему вы решили что я унижаю программистов 1С?

Например директор компании это не программист. Значит ли что я унижаю директоров компаний?

Ну или если я напишу что backen и frontend разработчики это разные по сути специальности то кого я тут унжаю Back или Front?

Вопрос в подаче, по-моему, она у Вас как раз отрицательная :)

Есть Java программист, а есть 1С Программист, есть 1С ник.

Просто сокращение, как питонист, джавист и др.

Во первых, статья - ответочка на оригинальную статью. Вы ее читали? Похоже, что нет.

Многие "программисты 1С" на самом деле не программисты все что они делают это занимаются сопровождением и доработкой типовых. Это примерно как называть инженером автослесаря или работника детейлинга которые ремонтируют/тюнят автомобили или ставит на них допы.

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

Автор как раз из тех кто как раз не был никогда программистом так как дорабатывал/перепрабатывал типовые решения а потом попал в компанию где работают программисты. Отсюда и хорошие впечателния от Java.

Ахахаха, очередной экстрасенс подъехал. Ну да, я ведь только на 1С писал код, и только типовые дорабатывал. Даже, когда мне был подростком.

Динамическая типизация;
Процедурное программирование, проще говоря бэйсик;
Жесткий монолит;

Согласен.

"Система стандартов и методик разработки конфигураций"

Говнокодить это не мешает, и не только на 1С.

Ахахаха, очередной экстрасенс подъехал. Ну да, я ведь только на 1С писал код, и только типовые дорабатывал. Даже, когда мне был подростком.

Из статьи я узнал только про то что написал. Там в начале жизненный путь автора описан.

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

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

Согласен.

Собственно это основное что я хотел сказать, рад что тут есть взаимопонимание.

Говнокодить это не мешает, и не только на 1С.

Вы немного не так поняли смысл размещения ссылки на стандарты. Попробую еще раз объяснить. 90% стандартов которые там описаны, дискредитируют язык BSL, потому что всё это должно быть не на уровне отдельной книге и в голове у программиста а заложено в дизайн языка и IDE.

Вопрос говнокода это вообще отдельный вопрос и его я не касаюсь так как это тоже сильно спорная тема.

Попробую провести аналогию, вот представьте что IDE в 1С не могла бы проверять синтаксические ошибки, и как решение проблемы в методику добавили бы пункт: "Программист обязан перед запуском проверить код на отсутствие синтаксических ошибок путем выполнения кода в голове".

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

Из статьи я узнал только про то что написал. Там в начале жизненный путь автора описан.

Значит Вы не дочитали ее до конца, там написано, что я программировал ранее, не на 1С, и после типовых ушел на нетиповые решения, написанные с нуля. Также не только дорабатывал, а сам писал решения с нуля.

Вы немного не так поняли смысл размещения ссылки на стандарты. Попробую еще раз объяснить. 90% стандартов которые там описаны, дискредитируют язык BSL, потому что всё это должно быть не на уровне отдельной книге и в голове у программиста а заложено в дизайн языка и IDE.

Согласен.

НЛО прилетело и опубликовало эту надпись здесь

вот это - https://github.com/1c-syntax/bsl-language-server/blob/develop/docs/index.md - разве не он?

в вот - https://marketplace.visualstudio.com/items?itemName=1c-syntax.language-1c-bsl - вроде как и прямая поддержка для VSC

НЛО прилетело и опубликовало эту надпись здесь

А есть известные форматы? Разве не у каждого свой велосипед?
(не знаю ответ и потому спрашиваю)

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

ЗЫ Я не совсем 1С-ник :)

Хм, ну статья слову не про это :)
Но в этом кейсе, кажется можно было в конфигураторе поиском по сущностям воспользоваться.

О чем статья кристально ясно, а вот о чем комментарии :)

ЗЫ Я пример конечно холиварно утрировал, в конфигураторе у этих сущностей есть "синоним" - там как раз то что нужно и прописано, искать не надо но...

Главный недостаток 1С - человек прибит гвоздями к РФ и ее рынку. В 2022 году это стало даже опасным.

Это действительно так. Лет 15-20 назад в 1С очень много программистов, кто перешел туда по причине более высокого заработка. Благодаря их работе появилась 1Сpp.dll (1c++) и версия 1С- 7.7 смогла работать быстро c SQL. Это почти сняло головную боль программистов тех лет и решило проблему блокировки транзакций. Мир нетиповых 1С конфигурация вздохнул. Однако жизнь меняется, навыки оказались не нужны со временем, тем более ты ничего не можешь сделать с вендором. Благо, зарплаты в других языках поднялись.
Толковым программистам 1С не нужна. Нетиповых решений всё меньше. В случае типовых, работа сводится к клепанию печатных форм или обновлений, либо простому консультированию. В 1С не идут программисты, но туда идут консультанты, методологи.

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

А в случае доработок типовых работы очень даже много.

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

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

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

 Доменная авторизация работает в хроме, explorer, edge, safari, если только установлен один сервер 1С и iis. В случае масштабирования решения и нескольких серверов это работает эпизодически. Поиск решения занял неделю и не дал успеха. Пришлось отказаться от этого и вернуться к схеме/логин пароль.

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

 В случае сравнения строк через встроенный язык запросов, оказывается, что оно регистр НЕ зависимое. Строки "бег" и "БЕГ" выдадут при сравнении через запрос - true. Однако если сравнивать эти же строки без запроса, то сравнение уже регистр зависимое. Но я не могу делать сравнение в цикле на базе из 150 тыс. строк, определяя уникальность. Появление таких мелочей всегда неожиданные. Если на форуме начинаешь обсуждать вышеуказанную проблему, то сходу говорят, что у вас учет неправильный и таких задач в 1С быть не должно, поэтому проблема надуманная. Пришлось делать предварительно хеширование для строки и уже сравнивать не строки а их хэши. Впиливание костыля заняло время.

 Http сервисы в 1С. Они работают никто не спорит. Но когда запросов становится не 2 в секунду, а 500 почему 1с виснет так, что отваливаются сессии других пользователей? Почему для этого нужно делать рестарт сервиса? 500 обращений это крайне много? Ведь в ответ выдается json из 50 строк, запрос по профайлу 1с выполняется 0.004 секунды, формирование json 0.02.

 Или из нового: при обращении с linux машины для вызова сервиса http, авторизация в 1С может занимать 0.05 секунд, а может занимать 2 секунды, причем это не зависит от числа пользователей, фоновых заданий на сервере, доступной оперативки и фаз луны. Хочется гарантированного минимального время для авторизации. Когда обратились в известный франч с этой проблемой, ответ получили такой: "Вы сделайте анонимную авторизацию на IIS под тем пользователем под котором работает сервер 1С, и будет быстрее". Ребята, ну это же не решение проблемы. Вы слова про безопасность слышали?

Усугубляется ситуация тем, что опуститься на более низкий уровень программист 1С не может, как и понять в чем собственно проблема - вендор-лок. И получается полная зависимость от вендора, без возможности как-то выяснить суть.  Программист смотрит на это безобразие, сравнивает с другими системами и понимает, что сравнение не в пользу 1С.

Вы сделайте анонимную авторизацию на IIS под тем пользователем под котором работает сервер 1С, и будет быстрее

Какая же жиза… Тоже к такому решению прибегал, делали приложение мобильное на 1с к нашей системе для одного заказчика, несколько тысяч пользователей, в требованиях доступ по логину-паролю active directory с мобилок. Тоже были проблемы и с производительностью, и, само собой, без «анонимного» доступа логин с мобилки с данными AD реализовать нельзя было (хз как сейчас).

Сейчас ничего не изменилось в этом направлении.

НЛО прилетело и опубликовало эту надпись здесь
Не знаю как сейчас, а несколько лет назад 1с для http сервисов поддерживал либо авторизацию по пользователю IIS сервера, либо basic авторизацию. Больше ничего.

Так долго писать, что подтвердить один простой пункт: "1С-ники умнее, и я не шучу" )

Слепая вера - дело такое, да.

Очень интересная статья. Не менее интересные комментарии. Автор, а давайте ваши скрафтенные конфигурации будем продавать?

Хорошая попытка, но нет. Не хочу снова открывать конфигуратор.

Ушел из 1С пару лет назад. Как же приятно работать c PyCharm и git, а не в Конфигураторе с Хранилищем. Вспоминаю как страшный сон.

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

Автор, спасибо за статью. Прочитал статью на которую вы ссылались. Та статья явно делалась, чтобы угодить сообществу 1С. Ведь так здорово чувствовать себя особенными, самыми умными и самыми лучшими в индустрии.

Я сам бывший 1С разработчик занимался 1С около 7 лет, по уровню был очень крепким синьером. Вначале 2021 года сменил стек и стал фронтенд разработчиком. Причины во многом совпадают с теми что были у автора статьи, но лично для меня решающим стало отсутствие зарплатных и релокационных перспектив. Помню в 2020 году присматривал себе новую работу и понял, что в 1С на удаленке потолок 200 т.р. (были конечно вакансии с ЗП выше, но их были единицы), в том же фоонтеде на такую ЗП могли претендовать крепкие миддлы да и вакансий на удаленку было значительно больше. В итоге сейчас я уже полтора года в новом стеке, позиция мидл зарабатываю больше чем было в 1С, работа значительно менее нервная (нет бесячих дедлайнов под сдачу отчетности или изменения законодательства, которые всегда приходилось внедрять в авральном режиме),

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

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

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

Круто, что у Вас получилось. Надеюсь, что будет ещё лучше и у Вас получится релоцироваться. Если бы оригинальная статья высмеивала недостатки 1С, то ее бы просто не опубликовали на infostart'е. Я уже уезжал на зимовку в другие страны, когда была ковидная эпоха. Уехать не проблема, во многих местах плохая инфраструктура, плохой интернет, а там где неплохой и стоимость жизни выше, чем в Мск. Но конечно, личное дело каждого. И да, 1Сные знания ничего не дают, кроме аналитики и понимания для кого делается продукт, к сожалению.

Также как и Вы жалею, что потратил 10 лет на это жёлтое чудовище.

Автор статьи молодец, автор статьи держит нос по ветру. А ветер меняется - обстановка в стране и так далее.

Про себя: в 1С с 2011 г. (практически сразу после вуза) - это был Тверской франч. За 1 год сделал апгрейд с консультанта до прогера сдав экзамен на 5 сертификатов спеца. В 2015 переехал в Москву. Практически каждый год менял место работу по тем или иным причинам. Самая высокая зарплата до которой удалось допрыгнуть - это 150к на руки(белая). Потом пандемия 2020, кризис - работал фриланс, прокачал учетку в 1clancer - 16000 + рейтинг. Ушел в бюджетное учреждение - не выдержал политики партии - убежал от туда и из 1С в 2022 году.

Сейчас мой стек: Golang, Python, PG, Clickhouse, RMQ, Docker, K8s, GitLab, Drone CI, Harbor, Grafana, ELK, etc. и это еще не все.

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

ЗЫ: Если у тебя есть мозги, то не важно где ты в 1С или не в 1С. Это лишь инструмент. Только вот не всегда мозг может адекватно сам оценивать текущее состояние дел и меняться исходя из новых переменных во круг. Разделяю всю боль автора. Сочувствую все кто еще в 1С остается.

{{ Everybody:Peace&Friendship&Gum }}

Круто у Вас получилось. Да, как я и написал в статье - когда действительно хочешь чего-то, оно само как-то и приходит.

1C занимаюсь с 1998 года, в те времена еще не было никакой удаленки, было сложно найти работу по другим стекам в провинции, тем более нормально оплачиваемую. Не жалею что работал с 1С именно по финансовым причинам. В эру 1С 7.7 считал, что я вообще не программист, хотя с появлением 1С 8 версии, думаю можно считать нас программистами. Сейчас я тимлид на 1С и планомерно занялся подготовкой к релокации за границу. Нужно снизить валютные риски после переезда, поэтому выбираю какой стек изучать, чтобы найти работу на Западе. Также занялся английским, поднимаю свой уровень до приемлемого. Есть в 1С свои плюсы и для определенных задач это оптимальный выбор, к сожалению только в России.

1C занимаюсь с 1998 года, в те времена еще не было никакой удаленки, было сложно найти работу по другим стекам в провинции, тем более нормально оплачиваемую.

По той же причине пошел в 1С.

В эру 1С 7.7 считал, что я вообще не программист, хотя с появлением 1С 8 версии, думаю можно считать нас программистами.

Что 1С 7.7, что 8 - программирование на одном фреймворке. Это если бы Вы писали всю жизнь только на JavaFX + Spring. Так что программистом себя можно считать, только ограниченным фреймворком 1С.

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

Только стек выбираете? Я бы уже писал код :) А то когда дойдет до оффера, мышеловка уже захлопнется.

Также занялся английским, поднимаю свой уровень до приемлемого.

Это правильно.

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

Никто не спорит с тем, что 1С для задач, для которых он придумывался, лучше всех. Оттого и стал монополистом в РФ.

Что 1С 7.7, что 8 - программирование на одном фреймворке. Это если бы Вы писали всю жизнь только на JavaFX + Spring. Так что программистом себя можно считать, только ограниченным фреймворком 1С.

Программист он и а Африке программист, это скорее про склад ума, а не про фреймворки.

Только стек выбираете? Я бы уже писал код :) А то когда дойдет до оффера, мышеловка уже захлопнется.

Я написал, "планомерно" занимаюсь, считаю нет смысла бежать сломя голову. Когда придется, буду почти готов. Из-за своего стека рассматривал вариант переезда только к пенсии, теперь все изменилось.

Буду благодарен за советы по стеку.

Никто не спорит с тем, что 1С для задач, для которых он придумывался, лучше всех. Оттого и стал монополистом в РФ.

Думаю сильно повлияло несколько факторов:

  1. Возможность для франчей неплохо заработать (1С сама зарабатывала, но хорошо делилась при продажах)

  2. Отсутствие борьбы с пиратами.

  3. Низкий порог входа в 1С 7 (Многие программировали на 7.7, хотя при переходе на 1С 8 многие ушли в консультанты)

Программист он и а Африке программист, это скорее про склад ума, а не про фреймворки.

Согласен.

Я написал, "планомерно" занимаюсь, считаю нет смысла бежать сломя голову.

И тут согласен.

Буду благодарен за советы по стеку.

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

1. Возможность для франчей неплохо заработать (1С сама зарабатывала, но хорошо делилась при продажах).
2. Отсутствие борьбы с пиратами.
3. Низкий порог входа в 1С 7 (Многие программировали на 7.7, хотя при переходе на 1С 8 многие ушли в консультанты).

Да, маркетологи в 1С хорошие, что уж тут спорить.

Уважаемый автор, спасибо за статью. Я давно не работаю с 1С, мне было приятно узнать, что там завезли новую IDE, git, акселератор.

Мне показалось, что у вас "бомбануло" и получилась статья-жалоба на 1C скорее для себя и для вашего визави, чем для читателей Хабра, особенно не сведущих в 1С. Было бы намного полезней, если бы вы тщательней поработали с материалом.

  • сильная эмоциональная окраска, низкая плотность информации

  • есть вопросы, на которые вы сами поленись найти ответ (grpc, docker)

  • есть утверждения, которые тут же опровергаются (git нет -> git есть)

Я имел опыт перехода с C++ на 1C разработчика на промышленном предприятии. Правда ненадолго, потом ушел обратно. Писал в основном внешние компоненты - нативные и COM, обработки и отчеты. Могу сказать, что в умелых руках это мощный инструмент, который позволяет интегрировать в одно приложение, которое по умолчанию есть в любой организации, множество других систем, часто имеющих скудный UI или не имеющих совсем. В частности, мы интегрировали ПЛК, дисплеи, СКУД, веб-сервисы. Каких-то особенных фатальных проблем, характерных именно для 1С по сравнению с другими подобными системами - например, сравнимая по мощности система ЭДО с собственным DSL - я не увидел. Мне как разработчику нравилось, что не нужно тратить время на поддержку кучи разных регуляторных требований, а можно сосредоточиться на бизнес задачах.

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

Уважаемый автор, спасибо за статью. Я давно не работаю с 1С, мне было приятно узнать, что там завезли новую IDE, git, акселератор.

Всегда пожалуйста, рад что кто-то дочитал до логического завершения.

Мне показалось, что у вас "бомбануло" и получилась статья-жалоба на 1C скорее для себя и для вашего визави, чем для читателей Хабра, особенно не сведущих в 1С.

Вам не показалось :) Статья начиналась как комментарий к исходной публикации.

есть вопросы, на которые вы сами поленись найти ответ (grpc, docker)

Хм, тут не понял немного. GRPC не поддерживается, в docker'е можно развернуть, но как и раньше, наблюдаются траблы с подключением лицензий.

есть утверждения, которые тут же опровергаются (git нет -> git есть)

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

Я имел опыт перехода с C++ на 1C разработчика на промышленном предприятии. Правда ненадолго, потом ушел обратно.

Интересный у Вас опыт.

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

А я не говорил, что 1С не интегрируется. Тем более Вы умеете в компоненты, Вы работали не чисто в рамках 1С-экосистемы, это некое читерство. И да, вопрос не в самой интеграции, в 1С есть веб-сервисы, REST-сервисы, практически все протоколы прикладного уровня OSI, а в "нюансах", например, общаться по TCP/IP из 1С средствами платформы никак без компонент.

Каких-то особенных фатальных проблем, характерных именно для 1С по сравнению с другими подобными системами - например, сравнимая по мощности система ЭДО с собственным DSL - я не увидел.

На то 1С и монополист, со своими изначальными задачами справляется на отлично. Проблемы начинаются, когда как Вы сказали, пытаются натянуть ее везде, в том числе и на высокие нагрузки. Кто-то тут уже писал что сервер предприятия виснет, когда наблюдается более 500 одновременных запросов.

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

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

Я согласен, что автор исходной статьи пытается натянуть сову на глобус, объявляя все, чего нет в 1С, ненужным.

Это основная претензия к исходной статье. И моя статья, как Вы правильно заметили - "ответочка", вторая потерявшаяся половинка, так сказать. Если бы у меня не бомбануло, я бы не сел писать статью по недостатки 1С, потому что мне было бы лень тратить свое время.

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

Это да, если функциональность ложится в то, что уже реализовано в 1С из коробки. Тут я тоже не спорю.

>EDT с ломанным конфигуратором отказывается работать, так что...

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

Когда пробовал EDT, было так и было это в лохматых годах. Сейчас к сожалению, не знаю.

Автор, у меня история местами похожа на вашу, так что по большей части я с вами согласен. Но я ушел на Python и мне кажется, что мой путь перехода был немного сложнее из-за разного уровня конкуренции на python и go.

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

Вот с другими языками как. Можно загуглить с любого мобильника, например, "python datetime " и сразу попадешь на официальную документацию python с подробными примерами: https://docs.python.org/3/library/datetime.html#datetime.time.fromisoformat
А потом гуглишь еще что-нибудь по фреймворку, например, "fastapi path parameters" и попадаешь на еще более прекрасную документацию фремворка: https://fastapi.tiangolo.com/tutorial/path-params/

Вот такой культуры доступности информации мне очень не хватало при работе с 1С

Автор, у меня история местами похожа на вашу, так что по большей части я с вами согласен. Но я ушел на Python и мне кажется, что мой путь перехода был немного сложнее из-за разного уровня конкуренции на python и go.

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

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

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

Вот с другими языками как. Можно загуглить с любого мобильника, например, "python datetime " и сразу попадешь на официальную документацию python с подробными примерами: https://docs.python.org/3/library/datetime.html#datetime.time.fromisoformat

Мне кстати Golang зашел еще тем, что у них небольшая спецификация ЯП и быстро учится. Я первую программу написал за 2 недели. И не пресловутый helloworld или HTTP сервер, а что-то немного другое.

Вот такой культуры доступности информации мне очень не хватало при работе с 1С.

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

Вон он выпустили очередной велосипед "1С Исполнитель". Ищу в гугле документацию, попадаю на закрытый ИТС

Смотреть там нечего. Все задачи, для которых предназначен этот "исполнитель", давным-давно реализованы в Powershell. Кажется на мисте писали (а может и здесь), что при желании, можно и русский синтаксис прикрутить к командлетам и получить свой аналог "1С: Исполнителя".

1С:Исполнитель нужно все-таки рассматривать как часть 1С:Шина, а ее в свою очередь как часть 1С:Элемент. Насколько 1С нужна собственная платформа для выполнения веб-приложений вопрос сложный, но почему нет, ведь мобильную разработку они оседлали.

мобильную разработку они оседлали

Как то слишком громко сказано. Те мои коллеги что в 1с остались — от мобильной платформы в целом плюются. Да и по ощущениям от отрасли мобильных приложений даже для бизнеса на условном react native/flutter/xamarin разрабатывается больше чем на 1с.

Если речь идет о быстрой разработке мобильного приложения с интеграцией с 1С мобильная платформа вполне себе работает.

1С погубит именно жадность и недальновидность, а также презрение с своим же разработчикам.

Удивительная способоность вендора игнорировать потребности программистов.

Мне 47, из 1С сруливать не собираюсь, она меня хорошо кормит.

Мечтаю написать убийцу 1С и убийцу Википедии (типа stackoverflow). Поживем - увидим.

Чисто со стороны у автора много программистских заморочек. Знаю такого Илью Леонтьева, он свитчанулся на Питона публично. Но не все так заморочены на чистом коде.

Мне в свое время понравилось в 1С, что я могу работать в одно лицо, а не в команде.

Мне это до сих пор нравится, т.к. я два года уже во фрилансе и сам себе господин.

После института работал год на VC++, чуствовал себя винтиком в системе, нет уж.

Наверное умение работать в команде это всё же хорошее качество. И чистота кода это хорошее качество.

я не мыслю в категориях хорошо/плохо, только категориями нравится/не нравится. Жизнь коротка, чтобы тратить ее на "Не нравится"

Мне в свое время понравилось в 1С, что я могу работать в одно лицо, а не в команде.

Мне это до сих пор нравится, т.к. я два года уже во фрилансе и сам себе господин.

После института работал год на VC++, чуствовал себя винтиком в системе, нет уж.

Я в институте работал на науку, писал там на борланд паскале (7.1) еще под защищенный режим MS DOS. Так тоже все один делал. Да, был один младший научный сотрудник, который научился интерфейсы рисовать - у меня там был свой модуль типа турбовижн, но сильно попроще. А потом мой коллега там же на С++ уже борландовском под венду пилил, потом я там на делфи рисовал. И все это было в одну условно харю, а тот м.н.с. стал директором лаборатории и продолжал нам отлично ставить задачи. Да, зряплата была на уровне трех копеек, но было офигенно интересно. Можно было в те времена (конец 90-х - начало 00-х) даже в другие царства свалить, но кушать хотелось вот прям сейчас, поэтому я ушел в 1С-неги, а коллега, поработав год в школе за условное спасибо, тоже свалил в 1С-неги. Наши умения писать на всем, что не приколочено, никому не доставляли, а 1С была уже почти в любом ларьке.

Вот сейчас народ пишет про то, как свалить из 1С, как свалить в другие царства, как еще что-то сделать для улучшения материального своего положения. Ну вот я могу в любой момент на любой стек переметнуться - я слежу за всем, за чем хватает времени. Но пока в других стеках даже в других царствах прайс вообще нифига не привлекает. А там надо будет хату снимать в какой-нить деревне (у меня друган в Испанию зовет постоянно - у него там яхта, он на ней живет, питается с окружных деревьев что упадет, пьет божью росу, денег на 50 лет такой жизни уже есть, работает на свечном местном заводике, стек С++ + wxWidgets - но не мое)...

счас бежать с 1С и вообще с России некуда. ;-)

В токсичной экосистеме 1С Вы никогда не напишете что-либо выходящее за рамки СНГ.

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

Мое отношение к 1С-программистам положительное, как и раньше. Я им сочувствую, т. к. им приходится вести неблагодарную fullstack-разработку и решать задачи сразу нескольких "настоящих программистов".

А это просто шедевр. Напоминает превосходство белой расы .

Но с другой стороны льстит что автор считает что 1с это fullstack разработка. Конечно термин расплывчатый но всеже

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

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

И что мы видим - англосаксонский сленг и ментальность эмигранта.

Да тут у нас скрытый иноагент!

А это просто шедевр. Напоминает превосходство белой расы .

Хорошая попытка, Адольф, но нет. На мисте уже забанили?
Человек, который приплетает в аргументы расу - сам немножко расист.

Но с другой стороны льстит что автор считает что 1с это fullstack разработка.

Так считает Илья Низамов кстати тоже.

Человек, который приплетает в аргументы расу - сам немножко расист

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

Так считает Илья Низамов кстати тоже.

Отлично, значит теперь можно в резюме писать . "Программирование 1С fullstack - знания работы субд даже не потребовались. ORM 1С позволяет " ":)))

Это не аргумент а ощущение от прочитанного.

И тут послышался хруст задней.

Отлично, значит теперь можно в резюме писать . "Программирование 1С fullstack - знания работы субд даже не потребовались. ORM 1С позволяет " ":)))

Пишите, разрешаю.

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

Это та самая 1с где вечно «библиотеки» (которые не библиотеки потому что нет нормальной модульности) платно продаются на инфостарте, комплект разработчика надо покупать, документация куча времени была за пейволом (да и сейчас не полностью из под него вышла) и чтобы отправить баг — нужно то ли итс иметь, то ли во франче работать, то ли еще что то подобное (давно не слежу, подзабыл)?
Ну да, то то бедные программисты на других стеках обмениваются опытом на stackoverflow и github и берут бесплатно и свободно решения друг друга, а ведь оказывается страдают по сравнению с экосистемой от 1с.

Это та самая 1с где вечно «библиотеки» (которые не библиотеки потому что нет нормальной модульности) платно продаются на инфостарте

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

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

Это, кстати, отношение именно к СНГ разработчикам.
Для иностранцев, на сайте "1C:DN | 1C:Developer Network - official site" (не могу вставить ссылку) вендор выложил желтые книжки на английском бесплатно.
И там даже есть e-mail для отправки баг-репортов без регистрации и СМС.
Но учиться предлагают все равно на версии для обучения.
Все вышесказанное еще раз подтверждает тезис о жадности (нет community edition) и "особом" отношении вендора именно к СНГ сообществу.

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

а англоязычных пока только заманивает.

Меня бы оттолкнула сразу версия для обучения, в которой куча ограничений.

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

они их уже больше 10 лет заманивают, но чет никак
Потому что подобных систем на англоязычном рынке море (и SAP не самая продаваемая или лучшая), а там нет ни армии 1С программистом, ни необходимости в подержки законодательства РФ, ни популярности среди партнеров, налоговой и т.п.

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

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

а то прям в SAP или MS AX/NAV пишут на какомто 'обычном' языке, который не надо специально учить и он не будет запирать разработчика внутри продукта?
а то прям в SAP или MS AX/NAV пишут на какомто 'обычном' языке, который не надо специально учить и он не будет запирать разработчика внутри продукта?

Да, в SAP пишут на Java, в Microsoft Dynamics на X++ (очень близкий к C# и Java), но так же можно писать на C#, С++ и прочих Net языках. Банально, программист на SAP и MS Dy может написать нужные языки в резюме (и перевести опыт в Java или C# программиста), а 1С — нет (если совсем уж не обманывать).

P.S. Но, кстати, SAP программисты — дороги, чаще дороже чистых Java программистов.
Да, в SAP пишут на Java,

А там разве не ABAP?

Microsoft Dynamics на X++ (очень близкий к C# и Java)


а в 1С язык очень близок к VB, только без ООП и на русском ;)
вообще я очень давно щупал аксапту (до того как она переименовалась в ax и язык там был очень похож на клюшечный 1С но с определенными приколами под стать одинесу

Банально, программист на SAP и MS Dy может написать нужные языки в резюме (и перевести опыт в Java или C# программиста), а 1С — нет (если совсем уж не обманывать).


Я очень быстро втянулся в 1С (рукалицо) имея опыт в VB/VBnet/C#… причем в 1С 7.7 который по сравнению с нынешней восьмеркой, реально кошмар и ужас, по этому опыт любого языка вполне подойдёт одинеснику. разве что желателен опыт в процедурном языке, а не объектном, иначе рукалицом можно голову в кровь разбить… а моим первым языком программирования, был бейсик с обязательной нумерацией строк… и меня испугать уже сложно (даже ассемблером не получится)

Но, кстати, SAP программисты — дороги, чаще дороже чистых Java программистов.

из за того что SAP это узкая сфера очень крупных компаний. а не потому что продукт какойто особо хороший и програмисты в чемто лучше одинесников
а в 1С язык очень близок к VB, только без ООП и на русском ;)

А кому нужен VB? Даже VB.Net практически не нужен.

А там разве не ABAP?

Не только

Я очень быстро втянулся в 1С

В ту сторону — да, а вот в обратную сложнее. Если вы 10 лет программировали только на 1С втянуться в большой C# или Java проект будут намного сложнее.

не потому что продукт какойто особо хороший и програмисты в чемто лучше одинесников

Конечно, разве я говорил лучше/хуже? Но если можно заниматься SAP за X денег, то кто пойдет в 1С за много меньшие деньги за границей (если все равно учить все с нуля)?
А кому нужен VB? Даже VB.Net практически не нужен.

не нужен, но я к тому что язык не сильно отличается от обычных и с опытом любого языка — понять его не сложно.
Не только

ой ну прямо, тогда я честно могу сказать что в 1С можно писать на C++, и на C# (пару лет назад на мисте был товарищ который очень сильно это пиарил)

там же написано что это стек 'Cloud Foundry environment', т.е. я понимаю что лишь какаято специфичная часть платформы.
В ту сторону — да, а вот в обратную сложнее. Если вы 10 лет программировали только на 1С втянуться в большой C# или Java проект будут намного сложнее.

до 1С я программировал на C# для себя, потом три года в 1С уже как коммерческий программер, потом у меня был перерыв в ИТ стаже, а с 15 года я программер на питоне, с 16 уже тимлид. ЧЯДНТ?
стек 'Cloud Foundry environment', т.е. я понимаю что лишь какаято специфичная часть платформы

Если правильно понимаю, термин environment в документации каждая среда предоставляет более-менее одинаковые возможности, просто если хотите писать на чем угодно это Cloud Foundry, если на ABAP — ABAP окружения, если на кубирнетесе или микросервисах — другие среды окружения.
Я помню точно еще лет 15 назад встречал вакансии Java программиста для подержки SAP приложания, правда, рещил с SAP не связываться.

тогда я честно могу сказать что в 1С можно писать на C++, и на C#

Сказать можете, но вам вряд поверят, что вы гуру в C# после 10 лет в 1С.

ЧЯДНТ?

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

Речь про другое вот у вас 10 лет стажа 1С в CV и ничего больше, какой шанс что вас возьмут на Senior Java программиста или даже просто позовут на интервью на такую позицию (даже если представить, что вы идеально выучили Java)? А с Senior 1С идти на джуниор Java — довольно больно.

Ну да, лет за 5 можно придти и к Senior Java позиции и с 10 годами опыта в 1С, но зачем, если можно пойти сразу на джуна Java и через 10 лет вырости до Senior'а естественным путем?

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

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

SAP получил свою нишу, а 1С влезть в чужой рынок не сможет пока у нее свой язык на который сложно найти специалистов. Другая система, где внутренний язык это Java, С#, PHP, NodeJs и т.п., сразу получает огромное конкурентное преимущество при выходе на новый рынок, чем 1С.

на самом деле уникальность и проблема в 1С в том что она очень кастомизируема — но это никому не нужно за бугром

Тем кому нужна максимальная кастомизация, берут полностью открытую систему на условной Java/Spring/Spring Boot, где часть уже реальзована, а остальное допиливают. Либо вообще делают все с нуля на любом универсальном стеке, добавляя библиотеки или фреймворки.
Никакая закрытая система со своим языком не будет более кастомизированной, чем полноценная система с исходниками на универсальном языке и универсальном фремворке.
Сказать можете, но вам вряд поверят, что вы гуру в C# после 10 лет в 1С.

а я себя гуру С# никогда не называл ;)
Ошибка выжившего. Тем более тимлид это вообще-то менеджер, а не квалификация программиста.

если вас устроит, то я после 16 года еще параллельно сеньором работал в нескольких конторах (удивительно и невероятно)

Речь про другое вот у вас 10 лет стажа 1С в CV и ничего больше, какой шанс что вас возьмут на Senior Java программиста или даже просто позовут на интервью на такую позицию (даже если представить, что вы идеально выучили Java)? А с Senior 1С идти на джуниор Java — довольно больно.

ну на сеньора java пойти действительно сложновато, но очень быстро стартануть вполне
мой путь был таким
14 год (админ с ф-циями 1С программиста — на этот момент был разрыв в стаже по 1С и ИТ вообще около 6 лет
15 год java junior в тойже конторе
16 год — тимлид python (у меня не было опыта в питоне вообще, проект я весь написал сам и набриал сам людей себе в команду на дальнейшее развитие) (этот опыт пересекается с последующим до 21 года)
17-22 год senior python backend, разные конторы, несколько стартапов, mrg, epam
сейчас я опять тимлид
Вы уверены, что 1С на порядки лучше любой из тысяч подобных систем за границей, чтобы это окупить?

нет конечно, она может быть лучше в техническом плане но хуже в маркетинговом

берут полностью открытую систему на условной Java/Spring/Spring Boot, где часть уже реальзована, а остальное допиливают.

как бы парадоксально не звучало, но решение на 1С будет дешевле и быстрее.
Это блажь, считать что команда из 5 сеньоров напилит на коленке аналог одинесовской УТ за полгода. а вот денег они сожут (через ФОТ) раз в 10 больше чем стоимость коробки и работы 1С программера — точно.

Это конечно реалии нашего, РФ рынка.
но вот то что я успел увидеть как делается за бугром, там только обнять и плакать. я поработал в одной штатовской конторе которая делает электронный документооборот для штатов, это прям смех и слезы, какойнить наш контур по сравнению с ними — это звезда смерти по функционалу и возможностям.
а там буквально — берем картинку, прикрепляем к документу… отправляем на почту, это ЭДО! за отдельные 100500 денег мы прикрутим вам ЭЦП который соберем на коленке.

берем картинку, прикрепляем к документу… отправляем на почту, это ЭДО! за отдельные 100500 денег мы прикрутим вам ЭЦП который соберем на коленке

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

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

Community edition - только недавно появилась и всего несколько сотен человек ее с весны тестируют. Еще окончательно не определились со всеми ограничениями. Если повезет, то с Нового Года на всех запустят.

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

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

Community edition - только недавно появилась и всего несколько сотен человек ее с весны тестируют. Еще окончательно не определились со всеми ограничениями. Если повезет, то с Нового Года на всех запустят.

Да уж, почему-то не удивлен.

Вендор увидел, что есть потребность обходить лицензию,

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

Я на одной из последних работ в 1С этим и занимался, обходить приходилось из-за низкой скорости чтения этих самых данных 1Ской и COM-объектом.

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

Ну 1С напилила новый язык - 1С:Исполнитель. Он уже второй версии. Почти питон, только отступы опциональны, а разделителем блоков является точка с запятой - выглядит убого, но там типизация, объектная модель, лямбды - все то, что отличает современный язык от паскаля первой версии...

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

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

пер ПараметрыПриложенияСВ = СистемаВзаимодействия.СоздатьПриложение(Ключи, 
            ПользовательПриложения, ИмяПользователя, 
            ПолноеИмяПользователя, КодАктивации, 
            ПочтовыйАдрес, ИмяПриложения)

ктото под впечатлением от js но еще не полностью погрузился в пучину безумия
когда
var a = some_method(тут 200 страниц кода вместе с анонимными функциями вложенными друг в друга)
return a
Да, проложат покупать, потому что альтернатив нет, даже после недавней явной унизительной акции с внезапным обновлением технологической платформы, после которого выпустили ещё одно обновление. Рукалицо просто, недавно знакомый системный администратор рассказывал как лечил базу после того как на лицензионном софте внезапно перестала открываться база. Очень надеюсь, что вендора засудят за такое безумие.
Программист всегда будет недоволен и продолжит ворчать о том, какие сегодня есть современные технологии и как устарел продукт 1С.

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

никогда не был гуру в программировании и в начале 2000 1с 7.7 действительно дала возможности делать бизнесу хорошо и быстро. до сих пор остаюсь апологетом последней линии поддержки... не ахти система, но проста и надежна. вполне предсказуемый ORM + у 7.7 есть такая штука https://www.1cpp.ru/ - вдруг на которой в те годы мой код стал более менее скрываем от постоянного перечитывания портянок текста с кодом...
но вышла 8 версия.. вызвала отвращение своей архитектурой... отложил и внедрение и разборку.. я как раз на предприятии отвлекся на несколько лет на оракл. Вернулся когда уже была 8.2 и о чудо появился СКД... что сказать... многословность кода - это ужас... Скд живет свое жизнью пытаясь угадать что ты хочешь, снося конструкции - стоит тебе ошибочно что-то убрать. глюки - не знаю как сейчас? но тогда были - чуть что - что то происходит внутри и нет твоего отчета как ты ожидаешь. схему надо или делать снова или из копии. подход - писать объектно, читать псевдо sql это ужас.. и оконных функций нет... СКД не упоминать... по сути данные доля вывода в отчет не готовы - они дообрабатываются в скд. в скд куча фишек похожих на заплатки. итог: посмотрите требования к вакансиям - "разработчики сложных отчетов в 1с" это где колонок 25+.
потом выходит 8.3... с двумя контекстами и кода становится еще больше.. мне жалко 1с программистов - хоть им и платят - но писать даже за деньги столько ...

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

что касается альтернатив... да даже в java я не гуру.. на вторые 50 процентов сижу в lsfusion.org и знаете - владение над данными ко мне вернулось. что-то более тонкое - можно чуть чуть java. Количество кода, git, скорость разработки.. даже jasper отчеты не вызывают отвращения. и никакого sql и понятная orm. c 1c дружу по ODATA. при всей ограниченности - она быстра у 1с.
и главное это java based - строго типизированная вещь. на runtime почти не выходит ошибок.. и я отладчиком практически не пользуюсь после периода обучения.
а 1с - 1с вас кинет. лет через 5 все конфиги будут на "1с исполнителе" - он все же типизирован и больше для бизнеса подходит.. ну а пользователям 1с - готовьте денюшку.

лет через 5 все конфиги будут на "1с исполнителе"

да всё еще поддерживают даже клюшечные конфиги (а ведь последний релиз клюшек вышел в 2006), да и УПП на ОФ.


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

Кстати, да, УПП спокойно работает и работает, в отчие от ERP с её постоянными изменениями.

Публикации

Истории