Pull to refresh

Как вернуть былую славу 1С? (Make 1C Great Again)

Reading time41 min
Views48K
Сегодня компания 1С прекрасно себя чувствует — крепко удерживает лидерские позиции на рынке учетных систем СНГ, продвигает свои облачные решения, покупает новые технологии и целые компании, заключает выгодные союзы с IT-гигантами, правительство РФ включает их в перечень системообразующих компаний. Но надолго ли этот успех? Не перейдет ли в скором времени некогда успешная компания в учебники по бизнесу как яркий пример ошибок роста? И можно ли избежать возникающих проблем?

Данная статья описывает ситуацию, которая сложилась вокруг платформы 1С: Предприятие. Ведь несмотря на покупку известных веб-продуктов (Битрикс, МойСклад, Мегаплан, amoCRM, UMI и т.д.), основной доход для компании 1С уже третий десяток лет продолжают приносить именно продажи и обслуживание решений на платформе 1С: Предприятие.

Содержание


Истоки проблем
Почему специалисты отказываются от 1С
Золотая эпоха популярности 1С
Кто же такие программисты 1С?
Мои пожелания по развитию
Заключение

Истоки проблем или преимущества, которые стали недостатками


1. Встроенный язык - плюс или минус? Как он влияет на качество?
С самого начала продуктовой линейке 1С: Предприятие помогла завоевать популярность и обойти конкурентов существенная «killer-feature» — это возможность гибко подстраиваться под нужды пользователей. Начиная с «Мини-бухгалтерии» 1992 года в продуктах встроен собственный язык программирования, на котором можно при желании расширять базовую функциональность. При этом сперва синтаксис языка 1С мигрировал в сторону популярного в 90-х Visual Basic, а с версии 8.2 и появления веб-клиента начал движение в сторону популярного на текущий день языка JavaScript.

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

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

Иллюстрация восприятия
image

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

Проблема плохого кода усугубляется тем, что процедура обратной связи по ошибкам забюрократизирована. Компания 1С сознательно отсекает все варианты коммуникации кроме обращений на "Линию консультации", где на сообщения про обнаруженные ошибки могут не реагировать месяцами (бывали случаи, что по линии консультации отрицался сам факт наличия ошибок, но в следующем релизе «втихую» вносились правки). При этом представителям «поддержки» не важно кто вы — новый пользователь, которая боится нажать незнакомую кнопку; специалист, который знает поддерживаемую систему от А до Я; или представитель официального партнера 1С на показательном внедрении, которое очень важно для продвижения продукта. Так же не важно насколько ошибки критичны и массово встречаются, насколько подробно у вас сделан анализ и что приведено обоснование запрашиваемых правок — всех в общую очередь! А ведь есть еще локализаторы типовых решений для рынков СНГ и мира, а так же разработчики отраслевых решений на базе типовых, качество работ которых зачастую (но не всегда!) еще хуже, а исправления даже зарегистрированных ошибок можно ждать годами. (говорят, что еще существует поддержка КОРП, где все вопросы решают очень быстро, но она действует только в РФ). И это не говоря уже о том, что фирма 1С в лице своей линии консультации не знает своего клиента и весь учет строго в разрезе регистрационных номеров купленных продуктов.

Один из ответов
image

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

2. Достаточно ли много специалистов? Достаточно ли они квалифицированы?
Вторым существенным преимуществом продуктов 1С перед конкурентами было большое количество подготовленных специалистов (программистов, консультантов и просто продавцов), которые прошли обучение в учебных центрах 1С, в классах сети ЦСО (сертифицированные партнеры) или самостоятельно по книгам и примерам. Существование такого огромного (исчисляемого сотнями тысяч) количества доступных кадров (как в плане цены, так и с точки зрения количества) позволяло удерживать для покупателей на низком уровне стоимость владения продуктов линеек 1С: Предприятие, что в свою очередь позволяло вендору поддерживать высокие темпы экспансии на рынке делового ПО. (Для понимания динамики просто посмотрим на кризисный 2008 год, когда по всему миру и особенно в СНГ прокатилась волна "великой рецессии", но фирма 1С, вопреки проблемам рынка, показывала рост 8% от выручки 2007)

Упомянутые выше многочисленные специалисты буквально стали кровью бизнес-империи 1С, ее двигателем развития, одним из ценнейших активов. И потому ситуация, когда «старики» стали уходить, а «молодежь» не спешит интересоваться, стала вызывать некоторые опасения у руководства. Борис Нуралиев (директор 1С) признает наличие кадровой проблемы в интервью журналам и даже рассказывает о нехватке ИТ-кадров во время совещания с президентом РФ В.В.Путиным. Да и руководители партнерских компаний на ежегодных мартовских семинарах уже регулярно жалуются на недостаток «свежей крови»:

Статистика по анкетам
2017-2018
2019

.
.
Стоит заметить, что видя такое замедление темпов прихода новых специалистов, компания 1С не «сидит на месте»: ее учебные центры начинают работать он-лайн, запускается программа «Легкий старт» (работа со школами и ВУЗами), всем желающим предоставлен доступ к продуктам для учебного процесса, проводятся внутренние состязания по программированию и принимается участие во внешних соревнованиях, и даже был создан Молодежный канал 1С на Youtube… Но почему-то все это кардинально ничего не меняет.

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

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

3. Насколько хороша идея создать разнообразные линейки похожих продуктов, которые несовместимы между собой?
Третьим преимуществом была модульность продуктовых линеек, которая в зависимости от потребностей покупателей позволяла дать им или только бухгалтерский учет, или только кадровый учет с расчетом зарплаты, или только учет складских и торговых операций, или все озвученное вместе. Так во времена 7.7 был Комплексная поставка, которую «нарезали» на Бухгалтерию 7.7, Зарплату и Кадры 7.7, Торговля и Склад 7.7 и ПУБ для производства. С приходом платформы Предприятие 8.0 был создан новый флагман — Управление производственным предприятием, которого в свою очередь «нарезали» на Бухгалтерию 2, Управление торговлей 10, Зарплату и управление персоналом 2. С появлением на платформе 8.2 управляемых форм началось развитие очередного нового флагмана — 1С:ERP, из кодовой базы которого уже по традиции начали создавать Бухгалтерию 3, Управление торговлей 11, Зарплату и управление персоналом 3, которые своим внешним видом отличались от своих предшественников на базе УПП 8, так же как те в свою очередь отличались уже от своих предков на базе Комплексной 7.7. И это названы только основные продукты, помимо которых была всякая мелочь для государственных учреждений и розничной торговли. А еще стоит упомянуть инструменты анализа сводных данных из различных баз 1С — Консолидация с использованием кодовой базы УПП и 1С: УХ соответственно с использование кодовой базы ERP, которую выделили в отдельный продукт — БСП. Более того, относительно недавно специально для автоматизации корпораций была порождена новая типовая учетная система — 1С: УХ ERP.

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

Но страдали не только конечные пользователи продуктовых линеек, но и программисты, которым нужно было внедрять и сопровождать новинки — все три линейки (7.5/7.7, 8.0/8.1 и 8.2/8.3) хоть и используют одни и те же ключевые слова внутреннего языка разработки, но архитектурно настолько кардинально отличаются, что теперь уже не платформа 1С: Предприятие, а кодовая база конкретных решений становится фреймворком, обособленной «экосистемой», который следует изучить, и под который нужно нарабатывать новый практический опыт. Чтобы возникло понимание у читателей, которые не знакомы с миром 1С приведу аналогию с веб-разработкой: пусть язык 1С — это JavaScript, тогда базовые библиотеки платформы — это jQuery, кодовая база конфигураций на базе УПП — это производительный и надежный React, а база для решений на ERP — это универсальный Angular.

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

Лично в нулевых сталкивался с десятками компаний, которые решались на смену 7.7 на 8-ку только из-за технологических ограничений старой платформы, но при этом мало кто хотел переучиваться — большинство задания на проектах запуска звучали как «повторите нам все как было в 7.7». И как закономерный результат, до сих пор решения на линейке 7.7 стоят во многих магазинах и у многих торговых компаний (да что там стоят — решения на 7.7 даже до сих пор продаются!), а от относительно свежих решений, созданных за полтора десятилетия на базе УТ10 и УПП, не просто не отказываются, но продолжают их развивать и зачастую они хорошо дадут форы всем «новомодным управляемым поделкам» на базе ERP.

4. Развитие платформы 1С:Предприятие подчинено плану или сиюминутным задачам?
Платформа разработки — это великолепная вещь и востребованный продукт. С каждым витком развития количество и качество функционала увеличивалось, и продукты конкурентов на этом фоне уже не очень убедительно выглядят. Но есть стойкое ощущение, что у продукта нет "Дорожной карты продукта" (Роадмап), в которой описана стратегия и этапы развития. Популярное "Зазеркалье" — это ведь не про планы, а про уже разработанный и оттестированный факт, который согласован руководством и поставлен в очередь на включение в будущий релиз.

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

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

А еще очень круто, что разработчики платформы прислушиваются к пользователям и берут в работу предложения, которые им присылают на адрес community@1c.ru. Но это игра в одни ворота — с регулярностью в 1-2 недели на протяжении года в открытых источниках появляется мини-отчет «Очередные предложения отправлены нашим разработчикам». Но какие именно предложения приняты разработчиками, а какие отброшены остается тайной. Так же «просителям» отказано в информации о том, сколько раз до них это уже безрезультатно «просили» другие неудачники.

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

  • вы совсем забросили развитие конфигуратора со своим EDT, вернитесь и дайте нам фичы, из-за которых приходится использовать Снегопат;
  • вы слишком медленно развиваете EDT, давно пора отключить никому не нужный Конфигуратор и всех насильно перевести на новую IDE;
  • половина клиентов сидят на обычных формах, а там куча недоработок — хотим улучшений;
  • половина клиентов все еще сидят на обычных формах, давайте их запретим и всех насильно переведем на управляемые, а то сложно учить две разные версии платформы;
  • в языке не хватает ООП, дайте возможность создания своих абстрактных классов и хотим множественное наследование;
  • в языке не хватает функциональщины, мы хотим нормальные лямбды, а не мучатся с вашими описаниями оповещений;
  • в языке не хватает возможностей реактивного и параллельного программирования;
  • нужен «синтаксический сахар», надоело писать отдельно пустой конструктор массива, а потом десяток операций добавления, а использование сравнения через оператор OR уже сидит в печенках вместо красивого и лаконичного IN;
  • очень нужны Пауза() и котангенс в языке запросов!!!!
  • а давайте, чтобы в платформе можно было писать на JavaScript;
  • нет, давайте, чтобы в платформе можно было писать на Python;
  • а давайте сделаем новый язык программирования и чтобы несовместимый с существующим!

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

5. Выход на международный рынок - экспансия или тайное проникновение?
Возможности для выхода на международный рынок были понятны еще в 90-х, когда наши предприниматели отправились покорять «Запад» и для учета стали ставить знакомую им 1С7.7. Сама платформа локализирована уже на 22 языках мира. В платформе на уровне метаданных добавлен язык интерфейса для возможности локализации пользовательского интерфейса на произвольные языки и доработан язык программирования (добавлены мультиязычные строки, числа прописью и т.д.). На сегодняшний день даже реализована поддержка письма справа налево. Для поддержки иностранных пользователей и внедренцев был запущен сайт 1C:Developer network, где можно скачать документацию, учебную платформу и пообщаться с англоговорящими представителями 1С на форуме. Совместно с компанией Rise разработаны курсы подготовки специалистов 1C на английском языке.

Перспективы "завести трактор" и уехать покорять мир со знаниями «родного» языка 1С вместо «буржуйских» PHP и JavaScript стала для многих «сладкими грезами». Удачный заход на международные рынки тут же вызвал огромный спрос на курсы 1С-программирования и даже переходы с PHP и Java, чтобы успеть до индусов и китайцев забить новую нишу. Но почему-то массового спроса до сих нет (редкие пресс-релизы) и предложения работы «программистом 1С с релокацией» поступают только из Вьетнама и ОАЕ…

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

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

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

И что в результате? Как же решили отработать кризис в Украине, чтобы потом масштабировать опыт на любую страну мира? Для украинских пользователей создан локализированный клон сайта ИТС — its.1c.ua, а для скачивания обновления типовых и отраслевых продуктов сделали зеркало releases.1c.eu (обратите внимание на европейский домен, в то время как Молдова/Болгария/Литва/Латвия/Эстония по прежнему должны переходить на releases.1c.ru, но при этом Грузия и Кыргызстан могут пользоваться европейской ИТС по адресу its.1c.eu). Произвели ребрендинг «сеть 1С-франчайзи», которую переименовали в САБ (сообщество автоматизаторов бизнеса), платформу 1С переименовали в BAF (фреймфорк для автоматизации бизнеса), а линейку продуктов «1С: Предприятие» переименовали в BAS (системы автоматизации бизнеса). Что особо не помогло и переименованные продукты пополнили санкционный список.

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

.
.
Была ли реорганизация сети, оптимизация процессов обслуживания? Ничего не изменилось! Кроме падения качества услуг. Линия консультации все чаще не знает как отвечать на вопросы. Обновления старых регламентированных отчетов делается в последние дни и в шаге от штрафов. Новые отчеты вообще отказываются разрабатывать и поддерживать — рекомендуют массово переходить на стороннее ПО — Фридо.

Новость
image

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

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

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

Прыг-скок-соскок или почему специалисты отказываются от 1С?


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

Но, к сожалению, чаще уход специалистов от работы на платформе 1С: Предприятие вызван не профессиональным ростом, а разочарованием в 1С. При этом со стороны иногда кажется, что они «меняют шило на мыло», так как их новый технологический стек предназначен для решения того же класса задач, с которыми они работали на 1С (переход на CUBA Platform, Salesforce или Odoo).

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

Илья стал известен благодаря своему каналу на Youtube — Илья Леонтьев Про 1С. Поскольку ролики от 1С, мягко говоря, вгоняют в грусть, то ниша влогинга пустовала. На своем канале он освещает большой охват тем — от подготовки к 1С-сертификациям и описания функционала до философских бесед о сути профессии. Но недавно у него выходит шокирующее виде о его решении уходить от 1С на Java-программирование (или возможно на Python). Как причина указывается, что программирование на платформе 1С не ценится в тех странах, куда он собирается эмигрировать. Кстати, на различных форумах и в чатах многие тоже указывают в качестве причини ухода отсутствие спроса на 1С в Европе и в США (даже если не собираются уезжать).

То самое видео

У Кирилла на первом месте был не поиск богатого заказчика, а именно претензии к технологичности. По публичной сетевой активности было видно, что человек активно «горел» 1С — на различных площадках (в том числе на хабре и тостере) помогал другим советами, выступал адвокатом для 1С в полемиках с хейтерами, тестировал новую функциональность, а затем обсуждал ее в чатах с другими энтузиастами. Но если осмотреться по современному ИТ-миру, то эта «новая функциональность» от 1С оказывалась не совсем «новой». Мир разработки 1С не может похвалиться гибкостью и содержит массу нелогичных ограничений. Удивляет, что существуя в мире альтернатив, которые значительно дружелюбнее для разработчика, компания 1С продолжает свой вектор развития платформы, который уже давно морально устарел (комментарий №1, комментарий №2). Кирилл ушел от 1С на мобильную разработку Kotlin под Android и не жалеет.

История от первого лица
image

Можем послушать даже еще более удивительные истории! Мой друг, довольно толковый парень, с которым мы вместе в нулевых переводили с 7.7 на 8-ку крупного дистрибьютора FMCG (шесть филиалов в разных регионах, свои склады, агенты с КПК, собственные магазины с торговым оборудованием, отчетность по брендам и т.д.), так тот вообще завязал с программированием и несколько лет назад уехал в ЕС дальнобойщиком. А в украинском чате недавно рассказывали историю одной украинской кофейни, которая вынуждена была перейти на облачное решение, после того как не смогла найти себе разработчика 7.7 на поддержку системы, создатель которой уехал в Польшу собирать клубнику.

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

1. Сестра подруги моей жены после окончания иньяза поняла, что быть переводчиком не для нее, и поступила на курсы программирования Java (курсы, Карл!). После курсов ее взяли на работу программистом в одну из киевских аутсорс-компаний и по итогам года она уже получала 2000$ (там очень оценили ее знание языков и возможность напрямую общаться с заказчиками из Италии и Франции). В эти же дни я получал в месяц около 800$, несмотря на окончание факультета информатики в техническом ВУЗе, наличия десятка сертификатов и обладание десятилетним стажем разработки ПО экономической направленности.

2. Другая украинская девушка получила диплом по международным отношениям, после которого сначала работала моделью и участвовала в киносъемках. Осознав, что в кризис лучше заняться «вАйТи», они с мужем пошли на полугодичные курсы тестеров, где их обучили языку С (без плюсов). С этим скромным опытом они уехали в Кремниевую Долину, где их несколько месяцев никто не хотел брать даже на бесплатную стажировку, так как у них не было ни технического образования, ни понимания ООП и ФП, ни опыта веб-разработки, ни опыта мобильной разработки. Но они участвовали в хакатонах, ходили на собеседования и менее чем за год эта девушка уже фуллтайм-разработчик в Linkedin и «рубит бабло» несмотря на массовые сокращения во время карантина — история от первого лица.

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

Золотая эпоха 1С или почему программирование на 1С было популярным


Девяностые для стран exUSSR стали новым уникальным временем. Больше не было генсеков и прочих самодуров из партийной номенклатуры, которые спускали сверху плановые «пятилетки», в рабочие часы устраивали в магазинах облавы на тунеядцев и преследовали за доходы «нетрудового происхождения». Люди массово покидали заводы/фабрики, где им стали задерживать выплаты, и пробовали открывать свои собственные предприятия, для которых понадобились специалисты по бухгалтерскому учету. А когда массово пришли дешевые персональные компьютеры, тогда возник устойчивый спрос на бухгалтерский софт.

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

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

Напомню основные исторические моменты, которыми девяностые года ХХ века кардинально отличались от наших дней. Интернет уже появился, но был полупустым и скучным местом (по современным понятиям). Популярная нынче профессия веб-программиста тогда еще не существовала, хотя энтузиасты уже создавали первые динамические сайты на Perl (язык PHP был только в разработке, а его ставшая популярной версия 4.0 появится только в 2000). Также напомню, что в те годы понятие «телефоны» означало аппараты в прихожей (или в переговорных пунктах), которые подключены кабелями к телефонной сети, у большинства из которых не было даже экрана на жидких кристаллах. В те дни не было и намека на современную индустрию мобильной разработки — первые телефоны Symbian OS и Windows CE появятся только в конце 90-х. В те дни из нынешнего мейнстрима была только разработка игр под ПК и игровые консоли, но эти направления привлекали скорее самой идеей делать игрушки своими руками, а не своими достижениями, которые были очень «бледны» на фоне более увлекательных работ от Nintendo.

С учетом особого отсутствия альтернатив, появление продуктов 1С: Предприятия 7.* имело эффект разорвавшейся бомбы, поскольку позволяла внедренцам не просто немного дорабатывать программы под клиента, а стать полноценными программистами. Встроенные функции решали практически все актуальные на тот момент задачи (работа с DBF, с файловой системой, с COM-объектами, вызов консольных утилит и т.д.), а под новые потребности были созданы ставшие популярными библиотеки: v7plus.dll (работа с ресурсами в Интернет, парсинг и создание XML-данных), v7script.dll (доступ в базу 1С через веб-интерфейс). И это мы еще не упоминаем, что к функциональности и данным баз 1С можно было получить доступ с помощью COM-объекта, что делало их легко интегрируемыми с другими системами. Как результат «программирование 1С Бухгалтерии» стало вызывать интерес не только у бывших выпускников по специальности «экономическая кибернетика», но и стало переманивать более универсальных разработчиков работавших в тот момент с Clipper и FoxPro.

Если ранее с продуктами линейки 1С: Предприятие работали только «ручные» сотрудники самой фирмы 1С и компаний-партнеров, которые «брали, что дают», то с приходом новых разработчиков пришли и новые взгляды на то, какими должны быть идеальная среда разработки, сам язык и рабочие библиотеки. Энтузиасты создают и отдают в общее пользование 1С++ (программирование в стиле ООП, новые базовые классы и методы, прямые запросы к БД), OpenConf (расширение возможностей IDE за счет плагинов, самым популярным из которых была реализация IntelliSence — Телепат), FormEx (разработка красивых эргономичных экранных форм), GComp (коллективная разработка на базе системы хранения версий CVS), qryConsole (консоль для построения и выполнения SQL-запросов и OLAP-кубов) и прочие инструменты, что еще более популяризирует программирование на 1С в IT-сообществе стран СНГ.

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

Еще в 2003 году, когда студентом я стал подрабатывать, программируя на 1С 7.7, фраза «я программист 1С» в ИТ-тусовках все еще звучала солидно. Многие мои университетские знакомые признавали, что эта платформа уже есть практически везде, она популярна среди бухгалтеров, а, следовательно, на этом поприще еще очень долго будет «хлеб с маслом».

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

Но уже тогда в нулевых все изменилось. Благодаря появлению JavaScript и PHP4 становится популярным веб-программирование и открываются первые отечественные веб-студии; многие осваивают взломанные версии 3ds Max и Maya, а потом идут в отечественные геймдевы создавать «Ил-2 Штурмовик» и «Сталкера»; получив в руки умные телефоны, многие тут же начали пробовать писать под них софт на Java; а такие мировые ИТ-гиганты как Microsoft и Sun Microsystem заключали партнерские договоры с нашими ВУЗами, конечной целью которых было вырастить и забрать к себе талантливых программистов. А для любого начинающего программиста все вышеперечисленное гораздо веселее, чем бухгалтерские программы, особенно, при ощутимом перекосе в оплате труда.

Кто такие программисты 1С — основа экосистемы или персонал партнеров?


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

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

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

Примечание. С 15 апреля 2021 года это стало возможно благодаря работе Учебного Центра №1 — uc1.1c.ru/passport-1c, но нужно дополнительно зарегистрироваться на их сайте, который не связан с основными официальными сайтами 1С.

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

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

Еще наличие сертификата «Специалист» дает право зарегистрироваться на сайте partners.v8.1c.ru, где в режиме форума можно общаться с другими специалистами, владельцами фирм-франчайзи и двумя их сотрудниками (обычно маркетологи). Пожалуй это самая полезная часть инфраструктуры 1С для программистов. Некоторые не сотрудники франча ради доступа на этот закрытый форум покупают «Комплект специалиста по разработке». На данном форуме раньше, чем в официальных каналах появляются сообщения об ошибках и их обходе, делаются анонсы новых функций, обсуждают тестирование предварительных версий платформы и продуктов, и даже иногда получают ответы от сотрудников 1С. Верно, только иногда! — Иногда в нерабочее время и по собственной инициативе сотрудникам 1С можно участвовать в обсуждениях, но при этом они не обязаны помогать советами, а с ошибками рекомендуют отправлять на v8@1c.ru, где для регистрации ошибки в багтрекере нужна действующая подписка ИТС. Если подписки нет, то неважно насколько ошибка критична, не важно насколько скрупулезно вы ее изучали и как подробно с примерами описали — можете выбросить свое письмо в мусорник и забыть, оно никому не нужно. Регистрация ошибок с форума запрещена внутренним регламентом 1С.

Сайт partners.v8.1c.ru изначально предназначен для франчей, чтобы они там обсуждали платформу и продукты, а также немного свой бизнес. Есть еще один форум — forum.1c.ru — предназначен для франчей, чтобы они там обсуждали свой бизнес, а также немного платформу и продукты. А где же программистам обсудить создание хитрого отчета на СКД или пересылку оповещений между открытыми окнами? Ну… можно на devtrainingforum.v8.1c.ru — это форум поддержки читателей книги «Практическое пособие разработчика. Примеры и типовые приемы». Только на этом форуме обсуждают самые азы и то, что на учебной платформе невозможно учиться (согласен, пробовать научиться на учебной версии — тот еще квест).

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

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

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

Хотя на мартовском семинаре 2020 года кое-что произошло. Точнее, попыталось произойти… Было объявлено, что Никита Старичков, один из разработчиков платформы (он, в частности, имплементировал в платформу быстрый алгоритм решения систем алгебраических уравнений), становится Амбассадором 1С и будет популяризировать бренд среди молодежи. И сразу же был опубликован адрес community@1c.ru для сбора пожеланий по развитию сообщества. Также для прямого общения специалистов 1С с Амбассадором был создан телеграмм канал, в котором Никита общался с сообществом в первое время. А потом пропал…

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

Подведем неутешительный итог. Для фирмы 1С, несмотря на все заявления ее директора о ценности кадров, по факту эти самые кадры не очень и ценны:
Хотите общаться? — идите на Мисту, Инфостарт или еще куда-нибудь в телеграммовские каналы.
Хотите учиться? — тут есть кривая учебная версия, а если вам нужно нормально, то идите на платные курсы.
Хотите подтверждающий навыки сертификат? — Ну, раз хотите, то несите денюжку сюда.
Хотите анонсы новинок? — Вот вам сайт Зазеркалье, только мы пароли от него дали еще отделу маркетинга, чтобы анонсов было побольше, а не эта ваша «скука про программирование».
Хотите личный кабинет? — Вот вам developer.1c.ru, но мы еще не знаем, что там вам дать, а потому просто сделаем перечень прошедших вебинаров. А может Вам сервер-МИНИ со скидкой 80% ннн-нада? То, что все ваши базы на нем будут требовать логин/пароль к сайту ИТС, это ведь нормально — ведь у каждого разработчика должна быть оплаченная персональная подписка ИТС.
Хотите..? — Мы же для вас так много сделали, а вы все «хотите» и «хотите». Проходите, не мешайте продолжать жаловаться на отток ИТ-кадров из отрасли...


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

Чтобы можно изменить или мои пожелания по развитию


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

Обучение и сертификаты
Проблема №1. Стандартные курсы (как по платформе, так и по типовым решениям) предполагают, что их слушатели все ловят на лету. Но по факту, тех, кто умеет все ловить на лету, на курсы не отправляют, так как они все равно «все ловят на лету». На курсы отправляют тех, кому нужно усердно и терпеливо объяснять. Но проводить индивидуальные занятия или нерентабельно, или слишком дорого. Как результат в каждой группе есть студенты, которые и сами «запутались» и другим мешают учиться. Хотя независимо от уровня понимания, в финале все получают идентичные сертификаты про окончание курсов, который можно повесить на стенку в кабинете.

Проблема №2. Сертификаты (Профессионалы и Специалисты) интересны в первую очередь для компаний франчайзи, как инструмент получения скидки при продаже. «Люди с улицы» могут рассматривать получение сертификатов 1С просто как челленж наравне с подъемом на Килиманджаро, байдарочной прогулке вдоль Амазонки и прочими бессмысленными занятиями для самоутверждения. Отсутствие сертификата говорит только о том, что специалист не захотел тратить время на экзамен и подготовку к нему, но не отрицает наличия знаний и навыков. Наличие сертификата некоторыми рассматривается как гарантия наличия «хоть каких-то знаний», но на деле может означать, что человек нашел ответы на вопросник для Профессионала или решение билетов на Специалиста в Интернете и просто заучил их. Но даже, если человек добросовестно готовился, то экзамены пытаются проверять узкой выборкой наличие широких компетенций. Если мы говорим про экзамены на Специалистов, то блоки непонятых тем (скажем из блока расчетных задач для платформы) просто могут не попасть в билет, или все остальное было сделано так хорошо, что свою тройку испытуемый заслужит, а про непонятые темы можно благополучно забыть.

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

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

В то время, когда я сам руководил Центром Сертифицированного Обучения, то не раз сталкивался с тем, что на курсы ходили руководители, которые потом у себя на месте доучивали подчиненных нужным участкам. Нашему отделу продаж было очень трудно продавать полные сертифицированные курсы обучения, когда у заказчика была позиция, что он в полном составе им не нужен. А вот выездная лекция по конкретным «узким» темам воспринималась «на ура», даже если по завершению не было выписано «свидетельства о прохождении сертифицированного курса».

И в первую очередь модульность в обучении и подтверждении навыков нужны программистам. Как многие из тех, кто получил свои Специалисты по платформе в середине нулевых на 8.0, разбираются в управляемых блокировках, в системе компоновки, в особенностях клиент-серверного взаимодействия? Как многие из тех, кто сейчас входит в профессию на УНФ и ERP, разберутся в переставших работать доработках на УПП, смогут поправить поплывшие привязки на обычной форме, доработать отчет на базе построителя отчетов, управлять внедренными ActiveX-элементами?

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

Примечание. На протяжении 2019-2020 годов компания КРОН, которая специализируется на аутсорсинге программистов 1С, начала для собственных нужд разрабатывать собственную сертификацию. Результат настолько понравился, что во второй половине 2020 года этот продукт был презентован рынку, а в 2021 году объявлено, что совместно с 1С было организовано ООО «1С-тестцентр» для проведения альтернативной сертификации. Среди прошедших неоднозначные отзывы — неудобный интерфейс, когда не засчитываются правильные ответы; непонятное таргетирование (оплачивать должен работодатель, но в сертификате нет никаких упоминаний работодателя для демонстрации на тендерах); использование сленговых выражений. И самое главное — это снова комплексный тест, который оценивает абстрактное «все» и не дает точечно протестировать конкретную компетенцию.

Экосистема для специалистов
Проблема. Слишком долго компания 1С работает со своими пользователями на языке рыночных отношений и не делала никаких попыток поддерживать и развивать сообщество — практически на любую нашу просьбу от публичных представителей слышим «А какую прибыль это принесет 1С? До свидания!». До сих пор отсутствуют публичные официальные форумы для общения; отсутствуют публичные Q&A, сборщики «хотелок» и баг-трекер; доступ к документации прикрыт необходимостью постоянно регистрировать семидневные доступы; отсутствует практика онлайн и оффлайн мероприятия для обмена мнениями и для распространения идей. Исторически сложившиеся «стихийные» площадки для общения очень разрознены и зависимы от своих модераторов, которые могут быть очень токсичны (Миста).

Решение. Уже существует единая сквозная авторизация для всех веб-сервисов 1С через login.1c.ru, включая недавно созданный developer.1c.ru, куда на время бета-теста дали доступ желающим разработчикам с сертификатом Специалиста. Так почему бы не дать доступ всем желающим даже без подтверждения личности? А потом этот аккаунт использовать и для доступа к паспорту специалиста от УЦ №1, безлимитному доступу к документации ИТС и к форуму для разработчиков (можно просто склонировать партнерский форум)? Этот же профиль использовать как обратную связь для проведения опросов и дополнительный канал для регистрации ошибок (я знаю, что даже для самых проверенных партнеров, которые очень тщательно описывают воспроизведение проблем не пускают регистрировать ошибки через партнерский кабинет и заставляют идти длинным путем через переписку письмами — но это пора все менять, если в планах есть рост). Это должна стать единой точкой входа специалисту в мир 1С, где он получит сразу все необходимое.

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

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

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

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

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

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

И поскольку специалисты 1С у нас это не только чистые программисты, то им нужны еще прикладные решения. Было бы просто отлично давать возможность скачивать для изучения базовые и МИКРО редакции конфигураций. А при наличии сертификатов Специалиста по решениям, давать покупать со скидками NFR и обычные версии для перепродажи. Стандартная франчайзинговая система дистрибуции программ уже давно сдерживает рост — пришло время сделать персональными партнерами всех желающих специалистов! Все равно попытки перевести всех в облака на Фреш и ГРМ — это утопия.

Перенос решений в Open Source
Проблема. Есть десятки конфигураций, которые были проданы клиентам и к которым были «приучены» сотни тысяч пользователей. А потом фирма 1С просто отказались от их поддержки (ранее считалось, что как минимум торговые решения не нуждаются в доработках и после внедрения могут работать десятилетиями без изменений, но недавний переход НДС в РФ с 18% на 20%, а в Украине на стандарт IBAN для банковских счетов показали ошибочность этого утверждения). А как же «ответственность за тех, кого приручили»? Так же очень похоже, что у фирмы 1С и у ее партнеров нет достаточного ресурса специалистов даже на полноценное сопровождение актуальных версий своих продуктов.

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

Я сейчас говорю только про ту версию КОРП, с которой ежедневно работаю — локализированная версия для Украины под торговой маркой «BAS: Документооборот». Соль в том, что в версии для РФ есть только русский язык (а в версии для Вьетнама — только английский), но в украинской версии сделали два параллельных языка — русский и украинский. И все было бы ничего, если бы архитекторы Документооборота использовали для выполнения настроек справочники и перечисления, а не строковые представления! Из того, с чем я столкнулся и был вынужден исправлять — не работали автоподстановки и правила маршрутизации так как при настройке формируются строки на языке «администратора», а при выполнении происходит сверка со строками на языке пользователя и/или на языке информационной базы; отчет по рабочему времени работал только при включенном русском языке, а при украинском выдавал ошибки отсутствия украиноязычных аналогов реквизитов (логично, что метаданные не изменяются в зависимости от языка пользователя, но при переводе макета отчета про это забыли). Еще не совсем ошибка, но очень всех раздражает — статусы и представления документов формируются на языке пользователя, который работает с документами, а потом записываются в базу для всех — как результат в списках получаем многоязычную кашу из «Согласовано»/«Погоджено» и «Отклонено»/«Відхилено»…

Для запуска «Документооборота» более двух лет назад мы привлекали подрядчика и одна их правка по работе с почтой меня заинтриговала своей загадочностью — специалист подрядчика объяснил, что локализатор сам рекомендует, так как тут стандартная ошибка и если не исправлять, то работать не будет. Во время последнего обновления перепроверил — ошибка по прежнему в стандартной конфигурации. И при этом обновления конфигурации уровня КОРП происходят всего раз в полгода, а список доработок и исправлений помещается на половинку листика А4.

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

Но ведь проблемы не только с основной коробкой Документооборота. Есть еще продукт для встраивания в конфигурации — «Библиотека интеграции документооборота» (БИД), который позволяет бесшовно работать с функциональностью Документооборота прямо из учетных систем. Ладно с мелкими ошибками, которые я нахожу и исправляю. Но и там тоже есть архитектурные проблемы! К примеру по всему коду (буквально по всему — и в общих модулях, и в справочниках, и в обработках) использование или недоступность функционала решается на уровне бесконечных вызовов ДоступенФункционалВерсииСервиса(номер такой-то). Так и представляю, что перед каждым разработчиком ДО висят списки, в каких версиях какие функции были добавлены, но зачем мне и остальным внедренцам копаться в этой археологии? Почему нельзя сделать все читабельным и не ввести явные функции ДоступныПроекты(), ДоступнаЭЦП(), ДоступныПакетныеЗапросы()? И это я еще не упоминаю, что продукт БИД единый и предназначен для интеграции всех версий Документооборота, но в российской версии поддержка удаленной работы в отсутствиях появилась в версии «2.1.17.1 КОРП», а в украинской версии с «2.1.4.1 КОРП».

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

.
.
Решение. Передать все продукты, работать с которыми у 1С и ее партнеров нет ни сил, ни времени, ни желания, под публичные лицензии — Attribution 4.0 International (CC BY 4.0) как БСП или другую подобную, с разрешением всем желающим создавать публичные репозитории, самостоятельно развивать и использовать в коммерческих целях.

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

Работа с Open Source для «специалистов 1С» уже давно не является какой-то экзотикой. Прямо сейчас на Github доступны и продолжат развиваться такие замечательные инструменты как конфигурация «Управление задачами», система сценарного тестирования «Тестер» и набор «Универсальные инструменты 1С для управляемых форм». Если сделать поиск по открытым репозиториям, то можно найти выгрузки типовых конфигураций, но этим стараются не злоупотреблять. Компании 1С нужно проявить четкую позицию и послать сообществу сигнал, что публичные репозитории не являются видом пиратства, а наоборот поощряются. Тогда открытых разработок станет больше и все от этого останутся только в выигрыше.

Развитие конфигуратора
Проблема. После того, как было принято решение плавно перевести разработку конфигураций на EDT (среда разработки на базе Eclipse) развитие конфигуратора остановилось. Прошло почти десятилетие как Конфигуратор в замороженном состоянии, а EDT все еще не готова его заменить.

Тут есть забавный парадокс
Компания 1С по прежнему заявляет EDT как разработку на популярной в мире платформе, которая знакома многим программистам, а потому способная заинтересовать IT-сообщество и популяризировать программирование на встроенном языке 1С.

Ведь Eclipse в свое время был популярен среди разработчиков на Java, когда конкурировал только с NetBeans, но с появлением IntelliJ IDEA все изменилось. И видимо 1С апеллирует к разработчикам, которые в то время писали под Android и были вынуждены пользоваться Eclipse в составе официального ADT от Google. Очень похоже, что 1С решила просто пойти по стопам Google раз даже свой продукт назвала так же, лишь заменив букву A(ndroid) на E(nterprise).

И мы приходим к самому смешному. Создание EDT началось примерно в 2013 году. И именно тогда, компания JetBrains заключает соглашение с Google о создании IDE Android Studio на замену морально устаревшему ADT на Eclipse. И разработчики не возмущались, а даже наоборот. Многие перешли сразу же, а остальные в течении 2014 года. Сообщество было довольно, так как IDE от JetBrains намного удобнее. И смешным тут будет то, что Android Studio больше похоже на Конфигуратор чем на EDT.

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

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

Так же очень печалит, что заброшена работа над режимом «обычных форм». До сих пор у некоторых элементов форм в палитре избыточные свойства, а у некоторых наоборот не хватает нужного (очень бы хотелось использования в обычных формах динамических списков). При выгрузке в файлы обычные формы по какой-то непостижимой причине выгружаются не в XML, а в бинарный формат, что не позволяет использовать инструменты для визуального сравнения изменений. При режиме сравнения/объединения вообще какая-то магия происходит — у меня есть обработка, в которой стабильно при сравнении/объединении с ее же модифицированной копией с диска часть реквизитов формы дублируется. А еще иногда у обычных форм «залипает» справка и при обновлении конфигураций показываются якобы изменения у объектов, которые никогда не дорабатывались. Если будет принято решение, несмотря ни на что продолжать «тащить» EDT, то работу с обычными формами нужно будет реализовать и там, чтобы этим решением начали пользоваться.

Вдвойне печалит, что работа над «обычными формами» была прекращена в пользу работы над «управляемыми формами», которые преподносились как универсальное решение для всех видов использования — для десктопных систем, для веба и для мобильных приложений, а потому они такие страшненькие и неудобные — плата за универсальность. Но, история показала, что невозможно одну и ту же форму без доработок использовать всюду и теперь код типовых решений переполнен переключателями — если это толстый клиент, то делаем так, а если тонкий, то эдак, а если веб-клиент, то по другому, а если мобильное приложение, то по третьему. Не знаю кому текущее положение может нравится — лучше бы сделали возможность для объекта описывать обычную форму для толстого клиента, управляемую для тонкого и веб-клиента, а для мобильного отдельную формочку по стандартам мобильной разработки (и возможно, что для iOs и Android понадобятся две разные формы).

Непонятно зачем вообще «изобретали велосипед» и делали несовместимые с «обычными» эти «управляемые» формы. Ведь то, что обычный интерфейс, который «накликан» мышкой и содержит 1С-подобные скрипты, можно с легкостью превратить в веб-страничку, было доказано еще в 90-х продуктом Dreamweaver. Блоковую верстку (div/span в HTML, которые группы в управляемых формах), новые технологии привязок и пропорциональные размеры можно было сделать и на обычных формах, и им же доработать модуль для клиент-серверного взаимодействия.

Очень было бы неплохо почистить Конфигуратор от старого ненужного хлама в виде географических карт от ESRI ArcGIS, вместо которого прямо в язык добавить универсальный картографический объект подобный популярным движкам Яндекс.Карты, OpenLayers, Google Maps и Leaflet (описываем источники тайтлов, накидываем слои с метками и прочей графикой, описываем обработчики событий, размещаем на формах и радуемся).

И последнее по Конфигуратору, но далеко не последнее по важности — дайте возможность работать с Git вместо хранилища! Идеально напрямую с Github и Bitbucket. Возможности в рамках единой базы вести разработку сразу нескольких веток ну просто категорически не хватает. Даже сами разработчики 1С с этим мучаются и вынуждены делать кучу промежуточных баз в рамках своего СППР-флоу.

Примечание. Часть разработчиков типовых была переведена на использование в работе EDT, что дало им возможность облегчить свой труд за счет git и ряда удобных «фишек», которые на сейчас не планируется переносить в Конфигуратор.


Заключение


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

В статье я сконцентрировался на самой фирме 1С и на ее продуктах. Поэтому намеренно не стал освещать многие важные темы, которые выросли вокруг 1С — это наработки компаний «Серебряная Пуля» и «Окнософт», язык OneScript, несколько интересных фреймворков тестирования (в первую очередь Vanessa). Не стал говорить о целой экосистеме вокруг сайта Инфостарт и о проводимых им мероприятиях, а так же про встречи в рамках "Желтого клуба" или ha1s. О таких замечательных евангелистов 1С как блогеры Никита Грызлов и Андрей Овсянкин (блог «Веселый 1С»), Иван Белокаменцев (востребованный автор на Хабре и Инфостарте), Артем Пластинин и его Техкружок

Всех сложно упомнить, и вклад каждого в развитие сообщества 1С достоин отдельной статьи. Но точно стоит упомянуть: пока сообщество живет и развивается (даже вопреки вендору), то и для бренда «1С» еще не все потеряно.
Tags:
Hubs:
+35
Comments228

Articles