Почему все ненавидят 1Сников
Возможно, Вы сами – 1Сник? Вас возмутили такие нападки? Рука потянулась закрыть страницу? Дочитайте до конца, я все объясню!

Время прочтения: ~ 03 минуты 45 секунд
Дисклеймер: статья написано с огромной долей сарказма и самоиронии, но тем не менее в каждой шутке…
Типичные стереотипы
Стереотип №1: 1С-ники делятся на 2 типа:
- делают, что им сказали, и не думают о последствиях — говоришь такому «юноше бледному со взором горящим», а ну-ка, передвинь это окошко, он двигает. Нет бы предупредил, что после этого моя 1С:Бухгалтерия обновляться через интернет не будет, нет, делает что сказано.
- ничего не хотят делать — что ни попросишь, все у них то «очень сложно», то «очень долго», то просто невозможно. А если пытаешься выяснить, почему же нельзя, выдает кучу специальных терминов.
Стереотип №2: Они говорят на птичьем языке
В любом случае, общаться с ними просто невозможно, так как говорят они не на человеческом языке. Задаешь ему простой вопрос — почему вот это не работает, как я хочу. А он тебе в ответ про измерения и регистры, запросы и консоль, компоновку и подписки.
Ничего не понятно — вроде все буквы русские, и даже слова по отдельности — русские. Но смысл ускользает. И вот сидит он такой гордый, недосягаемый и необходимый.
Что касается внештатных 1С-спецов — эти вообще доступны только тогда, когда это им нужно. Пока у тебя все хорошо работает, он и доступен, и пунктуален. А если вдруг все сломалось (особенно после его прихода и обновления/настроек/изменений), попробуй-ка его найти.
На телефон не отвечает, на почту и скайп — тем более. Как страусы — голову в песок и все. Да, я знаю что страусы голову не прячут, но 1Сники. Ну хоть вспоминай лихие 90-е, и разыскивай его по адресу проживания.
Стереотип №3: Жадные и алчные
Каждый чих они делают за деньги. Сделать так? Пожалуйста. Переделать обратно? Не вопрос. А в конце месяца норовят выставить огромный счет, и попробуй не заплати, в следующем месяце у тебя вообще все сломается.
Ты никогда не знаешь, сколько ты потратишь на 1С, а все почему? Потому что 1С не может работать без 1Сников, а 1Сники. они алчные и безрукие. Это просто сговор!

Следствие алчности — их волнует, сколько клиент заплатит, а не проблемы и задачи клиента.
Им главное коробку продать, а дальше — гори оно все синим пламенем. Как там проданное будет работать, будет ли работать вообще, их уже не очень волнует. Мириться с существованием 1Сников приходится исключительно потому, что без них «ОПЯТЬ НИЧЕГО НЕ РАБОТАЕТ!»
Вы прочитали этот текст, и сердце ваше забилось быстрее, руки сжались в кулаки, и задергался глаз?
Похоже, вы встречались с кем-то из описанных персонажей, а может быть, кто-то из них сейчас сидит в соседнем кабинете. А может рядом с вами? Так хватайте же дырокол .
Увы.
Этот текст, конечно, шутка. На самом деле, 1С-консультанты, разработчики, аналитики, руководители проектов — интеллигентные, образованные и обязательные люди. Отличные специалисты и просто приятные в общении умницы. Но.
Но мы постоянно сталкиваемся со всеми этими мнениями и клише, иногда по поводу «приходящих» 1С-специалистов, а иногда и по поводу штатных. Одним из ярких недавних впечатлений для меня было, когда ИТ-директор потенциального заказчика сказал про 1С разработчиков «. да вешать их надо через одного». Грустно и пугающе.
В чем основная причина?
Очень большой рынок, на который действительно просто выйти. Нужно минимум знаний и навыков, чтобы прийти и сказать «я занимаюсь 1С». Кажущиеся «простыми» заработки и высокая потребность в специалистах манят, манят всех: студентов, водителей маршруток, кого угодно.
Почему же так получается? Почему столько негативных примеров и печального опыта работы? Непросто оценить пришедшего на собеседование или на подработку 1С-специалиста, особенно, если вы сами таковым не являетесь.
Почему программисты 1С не любят 1С?
Парадоксально, но факт. 1С, которая создает работу, нам, программистам 1С, нами же не любима. Почему мы кусаем кормящую нас руку? Постараюсь разъяснить.
Закрытость и не публичность 1С
1С не заинтересовано в обратной связи с разработчиками. Я даже не знаю, куда надо писать, чтобы зарегистрировали пожелание к платформе. Но даже если и зарегистрируют, его не будут делать пять, десять лет, а возможно и никогда. Обсуждения «хотелок» нет и не планируется, нужность определяет «жираф, который большой и ему виднее».
Ресурсы в 1С, где общаются разработчики, максимально огорожены. Например, на партнерский форум разработчиков можно попасть только если ты сдал экзамен «1С: Специалист». Но этого мало — нужно работать в 1С:Франчайзи или купить комплект разработчика (около 50$).
По поводу этого комплекта была забавный случай — во время карантина 1С продавала его раза в три дешевле, чем обычно. Но такой «комплект со скидкой» не давал права на доступ на партнерский форум.
То же самое касается и закрытости от пользователей. Ошибку в конфигурации можно отправить не по кнопке в программе, а только на почту, указав регистрационный номер программы, который мало кто из пользователей знает. Разработчику невозможно отправить сообщение об ошибке, без указания конкретного клиента, где эта ошибка произошла, а ведь для этого нужно спрашивать разрешение клиента.
Учитывая такую закрытость, как-то не удивляет и не публичность компании 1С, что в 2021 веке кажется вообще моветоном. У 1С нет евангелистов и проповедников, у 1С нет социальных сетей, нет даже сайта с новостями из жизни компании и её офиса.
Кстати, 1С пыталась создать ресурсы для привлечения разработчиков. Был такой проект «Наше 1С», аналог Инфостарта, сейчас благополучно умер. Т.е. такое ощущение, что кто-то в 1С взял на него бюджет, освоил и благополучно закрыл. А может 1С разочаровалась в связи с разработчиками? В любом случае, смерть проекта не была никак объяснена тем разработчикам, которые вкладывали в него силы и ресурсы.
Отсутствие публичности и открытости приводит к другой отвратительной стороне медали — чванливости. Мол мы тут 1С, а ты букашка. Все равно купишь и будешь пользоваться, плакать, колоться, но жрать кактус.
Отсутствие миссии 1С
Помню в начале своей деятельности 1С я был очень воодушевлен платформой. И я был не один такой энтузиаст. Мы мечтали, что 1С будет развиваться и покорит мир своей простотой и качеством платформы. Где эти мечты?
Со временем стало понятно, что 1С не заинтересовано в PERFECT (идеале) . Мы пережили переход с 77 на обычные формы, затем на управляемые и далее на асинхронность. С каждым новым переходом все больше геморроя, которым должна была заниматься платформа, перекладывалось на плечи программиста. В конечном итоге, это движение напоминает регресс от Си к Ассемблеру.
И я думаю, что такое произошло не в последнюю очередь из-за отсутствия консультаций с разработчиками. 1С доверилась своим разработчикам и те породили монстра.
Кстати, о монстрах. 1С пытается развиваться в ERP секторе. Но столкнулась тут с ограничениями платформы, которая медленно шевелится на конфигурациях с большим количеством прикладных объектов. Кроме того, прежний подход, когда код не документируется и не планируется, уже не работает на сложных системах. Поэтому в секторе ERP 1С не может похвастаться признанными победами.
Отсутствие тяги к идеалу видно и в типовых конфигурациях. По сути, там лоскутное программирование, порожденное эпохой, когда изменения в законе были частыми. Нет ясной общей архитектуры, везде «костыли и заплатки».
Такое ощущение, что у 1С нет миссии. Раньше был слоган «доступно и всерьез«, это было понятно. Теперь этот лозунг вызывает лишь сарказм, а новых не придумано.
Похоже, 1С всю свою историю боролась с конкурентами, а когда стала монополистом, не знает, что делать дальше? Вы слышали озвученные благородные цели упростить учет для бизнеса, сделать его более доступным?
Даже на Запад 1С лезет, только повинуясь «инстинкту размножения». Какая цель этой экспансии? Показать лучшую в мире среду разработки? Увы, нет. Просто завоевать еще немного рынков.
Компания, которая хочет только денег, не вызывает лично у меня уважения.
Хотя что касается денег, вопрос тоже спорный. Некоторые пытаются оправдать все проблемы 1С отсутствием денег. Но верится в это с трудом, учитывая стоимость и объем продаж конфигураций. К тому же 1С тоже честно не объясняет свои проблемы недостатком финансирования. Думаю, тут дело не в отсутствии денег, а в отсутствии воли.
Не документированность конфигураций 1С
Программистам чаще всего приходится работать с кодом конфигураций 1С. Похоже, тут 1С придерживается принципа, что код должен быть самодокументирующимся. В коде есть определенные комментарии, но их недостаточно, чтобы понять логику модуля или схемы.
Приходится использовать отладчик и обратный инжиниринг потому, что 1С было лень написать документацию по коду. Это очень раздражает.
Пользовательский функционал более-менее описан на ИТС. Но представьте себе производителя, который выпускает холодильник с красочным руководством пользователя, но не выпускает к нему технической документации? Как его ремонтировать и обслуживать?
Тестирование конфигураций 1С не качественное
Иногда приходится краснеть перед клиентами, когда встречаешь ошибку в типовой конфигурации 1С, который элементарно был бы найден авто-тестами. Не очень понятно, почему 1С не использует авто-тесты, если это стоит недорого и защищает от глупых ошибок.
Когда встречаешь такое отношение к качеству продукта, возникают невольные опасения, что в отделе разработке царит бардак, релизы спешат подогнать к дате, а их конечное качество не проверяют. Иначе как объяснить такие «косяки»?
Раньше встречались еще и ошибки синтаксиса в модулях. Сейчас всё же это ликвидировали и хотя бы синтаксический контроль всей конфигурации перед релизом производят.
Я считаю, что если фирма делает конфигурации на всю Россию, то уж авто-тесты она использовать должна.
Неграмотная архитектуры конфигураций
Когда-то в течении двух недель я изучал Navision. И я понял, что архитектура базы данных Navision стабильна потому, что изменения там очень сложно делать. В 1С же полная вольница. Поэтому и разработчики типовых себя не очень ограничивают.
Переименования модулей, процедур, объектов базы данных — обычное дело. Контактная информация, например, хранилась в регистрах сведений, переехала по непонятным причинам в табличную часть контрагентов. Нет стабильности, данные организованы согласно удобству какого-то текущего приоритета, часто не понятному.
Принципы выбора той или иной архитектуры решения разработчиками 1С не раскрываются (ну вы помните про закрытость).
Всё это приводит к необходимости постоянной поддержки и доработок, чтобы успевать за изменениями в типовых конфигурациях.
Неудивительно что с таким несерьезным подходом к архитектуре ERP у 1С не очень то хорошо получается.
Казалось бы, ERP — это совокупность торговли, зарплаты, производства, бухгалтерии. Но суть в том, что 1С не использует модульность. Нельзя просто взять и вырезать конфигурацию торговли (Управление Торговлей) из ERP. Некоторое время назад конфигурации УТ (торговля), ЗУП (зарплата), БП (бухгалтерия), УПП (производство) вообще писали отдельные команды. Сейчас вроде есть какая-то общая модульность между типовыми конфигурациями.
Стандарты 1С по коду сомнительны
Стандарты 1С по разработке кода вызывают сомнения. Особенно это заметно, когда сдаешь обработку на аудит во Fresh и её код проверяет какой-нибудь полу-middle. При этом явно пользуется каким-то списком стандартов по разработке.
Эти стандарты созданы не в угоду простоты разработки, а в угоду «производительности». Причем часто выигрыш производительности копеечный. Просто 1С так видит. Возможно, это защита от ошибок программистов-новичков, но у программистов с опытом такие принципы вызывают лишь сарказм.
Это в частности, касается запросов в цикле, запрет на Goto, запрет на получение полей объекта «через точку» и т.п.
В своё время из-за именно этого подхода экономии подсистема печати документов стала чрезмерно сложной. Вдумайтесь — принтер печатает на порядок медленнее выполнения кода, но и тут 1С «оптимизирует» скорость в ущерб простоте и понятности разработки.
При этом сам типовой код от 1С не блещет изяществом. Очень часто встречаются процедуры на десятки экранов, в которых сложно разобраться. Используются многочисленные передачи структур-контекстов, в которых сложно разобраться. Но это уже больше относится к тому, что код не документирован.
Платформа по цене конфигурации и общая жадность 1С
1С монополизировала производство базовых конфигураций. 1С — это самый удобный инструмент быстрой разработки приложений баз данных, аналогов которому по скорости и удобству разработки нет. Но мир внедрений ограничивается только миром пользователей 1С.
Потому что если ты написал какую-то программу и хочешь продавать ее за 30$, сложно объяснить пользователю, почему он должен покупать еще и платформу за 180$.
Тем не менее базовые конфигурации от 1С как раз и продаются за эти 30$, например, программа 1С:Деньги для учета личных финансов стоит вообще 10$.
Да, можно написать конфигурацию, отправить ее в 1С и они включат её в свою дистрибуции. Но нет гарантий, что это произойдёт. А учитывая закрытость 1С, невозможно понять заранее, имеет ли смысл заниматься разработкой. Причем критерии к таким программам слишком завышены, много искусственных, ненужных требований.
Платформа 1С стоит столько же, сколько конфигурация «Бухгалтерия предприятия 3.0» и отдельно дешевле не продается.
1С настолько остановилась в своем развитии, что продолжает продолжать в 2021 году платформу, где для хранения данных используется своя медленная файловая база данных, а не SQL-сервер, хотя любой, даже самый последний интернет-хостинг предлагает My-SQL за копейки. Хотя если расценивать это как жадность и способ дать медленное и плохое, чтобы потом купили хорошее и дорогое, то нормальный маркетинг, только нечестный, а потому непорядочный.
Кстати, что касается жадности. У 1С есть библиотека функций которая называется БСП. Было много критики в адрес архитектуры этой библиотеки. Особенно раздражает то, что там часто перекидывают функции из одного модуля в другой.
Так вот, библиотека вроде бы распространяется как open-source. Но чтобы ее использовать, должна быть подписка на ИТС, каково? Вот эта копеечная жадность, попытка выжать малую денежку — отвратительна.
Касательно жадности можно учесть еще тот факт, что даже покупка ИТС не дает пользователям возможности получить доступ к архивам конфигураций — 1С его не ведет. Есть вариант запросить ту или иную конфигурацию у франчайзи (у которого купили ИТС), но это долго, а иногда нужно быстро, особенно при обновлениях. Т.е. 1С не считает должным вести такой архив без объяснения причин (закрытость).
В целом же 1С страдает те ми же проблемами, что и Микрософт — люди не любят проприетарные монополии, особенно, которые не очень дружелюбны с пользователям.
Понты вместо квалификации
Обычно под сертификацией подразумевают проверку знаний специалистов. 1С придумало хитрую схему «выкачивания» денег из 1С:Франчайзи. Есть страница с рейтингом 1С:Франчайзи и позиция там зависит от количества сертификатов у специалистов. Кроме того, внедрять некоторые продукты можно только при наличии определенного количества сертификатов.
Отсюда 1С:Франчайзи используют «потогонную» схему выколачивания сертификатов из специалистов, чтобы раздобыть как можно больше сертификатов. Также у 1С:Франчайзи могут числиться «мёртвые души», совсем как у Гоголя — т.е. специалисты, которые не работают во франчайзи, но сертификаты которых числятся у них.
Сами сертификаты подтверждают наличие знаний по теме сертификата лишь косвенно. Экзамены типа «Профессионал» — это вообще тесты на память. Когда я их сдавал во франчайзи, я их банально запоминал, сдавая даже те темы, в которых вообще был не в курсе, например МСФО. Экзамены на «Специалист» посложнее, но их сдача не показывает никакой практический опыт специалиста в решении практических задач, а просто подтверждает, что человек посмотрел задачи, порешал их, имеет какие-то минимальные навыки в области.
Т.е. по сути сертификация от 1С — это понты и показуха.
Работа в самой фирме 1С
Фирма 1С платит программистам 1С обычную рыночную зарплату. Я знаю, потому что сам ходил туда устраиваться. И даже мог бы работать в отделе разработки УТ.
Такой политикой 1С не привлекает лучших программистов. Код пишут посредственности. Может это и не так страшно при наличии грамотных архитекторов и постановщиков, но не уверен, что им платят 2х, 3х по рынку. Отсюда и качество решений.
Идея работать в самой 1С приходит в голову многим программистам 1С. Лично я, несмотря на пройденное собеседование, потом передумал. Причин несколько:
- Я не верил в тот продукт, который они разрабатывают. У типовых конфигураций уже сложился стереотип «глючных». Как-то не хотелось вкладывать свои силы в такое.
- 1С накладывает ограничения на публичность, также нужно соблюдать тайны и прочее. Мне не по душе такая закрытость.
- Этот пункт мой личный. Мне еще на первой работе программистом не понравилась система, когда ты являешься лишь маленьким винтиком в разработке. Сила программиста 1С в том, что он может в одно лицо совершать большие разработки и внедрения.
Будущее 1С
Будущее 1С не вызывает у нас, разработчиков, оптимизма. Код 1С, оставаясь по-прежнему недокументированным, становится всё сложнее. Уже сейчас приходится отказываться от многих задач, потому что анализ типового кода для их решения превзойдет возможности бюджета клиентов.
Похоже, что 1С движется в сторону No-code коробочных решений.
Этому в немалой степени способствует и отсутствие притока свежих кадров в программисты 1С. Сейчас работать можно из любой точки России и молодое поколение выбирает более выгодную в плане денег Java, на которой можно работать во всё мире, а не только в России.
Складывается парадоксальная ситуация — программисту 1С надо знать и уметь больше, а платят за это меньше. Причем опыт, приобретенный в 1С, не котируется на Западе. Это напоминает, как наши врачи и инженеры, эмигрировавшие в США, работали уборщиками и грузчиками.
Чудес не бывает и со временем программисты 1С станут дорогой диковинкой. Останется небольшой класс, которые будут делать настройки отчетов, печатных форм, обменов. В остальном 1С будет использовать только консультантов, которые не должны уметь программировать.
Disclaimer: все описанное в статье является лишь личным мнением автора и может не соответствовать действительности.
Почему 1С это плохо и почему так не любят 1С программистов
Не так давно ко мне в очередной раз обратился клиент с широко известной проблемой. В его компании установили обновления 1С. И работа остановилась, так как программа перестала корректно работать. Думаю, всем, кто сталкивался с программными продуктами от 1С в качестве программиста или пользователя, эта ситуация очень хорошо знакома.
Конечно, в данном конкретном случае я постарался решить все проблемы в самые короткие сроки, и, в результате, работа офиса вернулась в привычное русло. Но даже в такой ситуации я получил массу негатива со стороны клиента. И тогда я задумался о том, почему с программными продуктами 1С постоянно возникает такое количество проблем, почему от клиентов идет столько негатива, а самих 1С-программистов часто недолюбливают, в том числе, и другие программисты?
В этой статье я решил предложить свою версию причин, которые приводят к такому негативу. Я постараюсь использовать как можно меньше специфических терминов, для того чтобы текст был понятен как можно большему кругу читателей.
При этом я лично некоторое время сам занимался исключительно 1С программированием, я и сегодня очень активно использую в работе программные продукты от 1С, и очень благодарен этой компании за то, что она дала возможность зарабатывать, в том числе, и мне.
Но с другой стороны, я считаю, что в причинах негатива также необходимо разобраться. Хотя бы для того, чтобы не оставлять все это на уровне интуиции и эмоций.
С чего начиналась 1С? Давайте вспомним!
Лично я начинал работать с программным обеспечением 1С с версии 6.0. По моим ощущениям эта программа была немногим сложнее разнообразных вариантов учета, который вели в электронных таблицах Excel.
Ей на смену пришла 7-я версия, в том числе, ее наиболее удачный релиз – 1С 7.7. Это уже был достаточно мощный программный продукт, который получил очень широкое распространение по всему постсоветскому пространству. К этому времени большинство пользователей настолько привыкли работать с 1С, что умение пользоваться этими программами стало одним из условий для приема на работу бухгалтеров, различного офис-персонала, а также менеджеров, кладовщиков и т.д.
В принципе, 1С 7.7 достаточно успешно решала задачи, связанные с различными видами учета. Более того, этим программным продуктом до сих пор пользуются в отдельных случаях, что также говорит о его популярности.
Дальше разработчики 1С представили принципиально новый программный продукт – 1С 8.0, а чуть позже – версию 8.2. Сейчас актуальная версия имеет номер 8.3.
Теперь это программное обеспечение поражает широтой возможностей и одновременно сложностью системы.
- Мощная платформа для разработчиков.
- Среда для ведения различных видов учета и аналитики
- Возможность подключения разного торгового оборудования
- Широчайшая сеть партнеров
- Многофункциональная CMS для создания сайтов
Обновления 1С: как это работает
Я хотел бы напомнить кратко, как сегодня работают программные продукты семейства 1С. В большинстве случаев пользователь покупает один или несколько программных продуктов, состоящих из платформы и приложения написанной на этой платформе — так называемой конфигурации.
Далее программист настраивает работу выбранных конфигураций под нужды конкретной компании, часто устанавливает дополнительные плагины, дорабатывает определенные отчеты, создает новые документы, которые участвуют в качестве внутреннего документооборота в этой компании и т.д.
При этом как в платформе, так и в любой конфигурации присутствует достаточно большое количество багов от разработчика. А сама система настолько сложная и объемная, что исправить эти баги силами программиста 1С весьма затруднительно и самое главное невыгодно для конечного пользователя. Более того, как платформу, так и сами конфигурации отличает такое малоприятное качество, как отсутствие модульности.
В результате для исправления багов приходится устанавливать обновления. При этом обновляется каждый раз полностью платформа и/или конфигурация. Естественно, такое решение занимает очень много времени, а если речь идет о конфигурации, то настройки, дополнительные плагины и другие доработки, проведенные программистом скорее всего придется выполнять заново.
Но и это еще не самое печальное в ситуации с обновлениями 1С. Самое печальное и на сайте разработчика видно, что обновления выходят очень часто, иногда даже 3-4 раза в месяц. В некоторых случаях исправляются ошибки непринципиальные, в некоторых – серьезные баги, связанные с работой всей системы.
Каждая новая версия – это добавление функционала и своеобразная «заплатка» к багам предыдущей, которая исправляет старые ошибки, но практически всегда несет в себе новые. А потому установка обновлений – процесс в большинстве своем непредсказуемый.
Отсутствие модульности: почему это так важно
Для начала поговорим непосредственно о платформе. Программисты 1С знают, насколько громоздкой она стала. Об отсутствии модульности я уже написал выше. В коде продукта присутствуют, так называемые, подсистемы, но они не отвечают требованиям модульности, а потому являются просто некой попыткой структурировать код.
Почему отсутствие модульности я лично считаю проблемой? Давайте разберемся на примере. Допустим, появилась необходимость доработать какие-то функции, необходимые для успешной работы Управления Торговлей или внести изменения в средства хранения остатков. Но в платформе 1С все взаимосвязано между собой, а потому приходится также тянуть за собой обновления работы с зарплатой, с бухгалтерией и т.д. и т.п.
При отсутствии модульности для того, чтобы внести даже самые мелкие изменения, приходится изучать весь массив, всю платформу.
При этом платформа 1С очень большая и громоздкая. В ней сегодня собрано столько всего, что поначалу она даже вызывает восхищение из-за богатства возможностей. Но по мере использования этой платформы восхищение достаточно быстро проходит. Разработчики 1С в стремлении сделать программу универсальной добавили в платформу множество самых разных возможностей.
И теперь вы получаете одновременно мощный инструмент, удобный визуальный интерфейс и …. множество проблем и багов из-за сложности системы.
Приведу еще один пример. Допустим, для работы мне требуется только Торговля. Больше компания не использует ничего, ни мобильный интерфейс, ни бухгалтерию, ни интернет-магазин, ни какие-то еще компоненты. Но независимо ни от чего при получении обновлений я получаю полностью всю платформу, в том числе, и функционал, необходимый для работы тех компонентов, которыми я не пользуюсь. Т.е. не смотря на то, что я пользуюсь Торговлей, а обновления предназначены для работы с Бухгалтерией, мне приходится скачивать и устанавливать платформу целиком.
Лицензионная политика и баги в системе
При обновлении платформы достаточно часто пользователи сталкиваются с тем, что лицензионные ключи перестают работать. Если вы не сталкивались лично с такой ситуацией, просто наберите в поисковой системе «После обновления 1С перестала работать», и вы убедитесь, насколько распространена эта проблема.
Итак, представьте себе ситуацию. Есть компания, на которой работает, например, 30 человек. После обновления программа перестала принимать лицензионные ключи. Работа компании парализована. Компания несет убытки.
Важная проблема: непредсказуемость поведения платформы при обновлении.
Кроме того, что часто «слетает» лицензия, после обновления платформы в ней может оказаться новый функционал, который также может работать не корректно. А проверить качество работы и выявить новые баги новой версии программы можно только на практике, т.е. в процессе работы.
Напоминаю, что платформа очень большая, громоздкая, а потому протестировать ее силами программиста в сжатые сроки просто нереально. И все это надо учитывать при каждом обновлении.
- При каждом обновлении я получаю много лишнего, так как платформа обновляется полностью, и нет никакой возможности удалить или не устанавливать инструменты, которые не будут использоваться в дальнейшем.
- И все же обновления необходимы, так как это единственная возможность «вылечить» текущие баги, которые известны или еще не выявлены программистом
- При этом новое обновление несет в себе обычно новые баги, которые будут исправлены в следующей версии.
Почему так много багов?
Главная причина обилия багов по моему скромному мнению — это сложность системы. Вспомните, сейчас 1С платформа выпускается для Windows 32 и 64 бит, для Linux, серверная версия, мобильная и т.п. Сложность сопровождения при этом очень высока, и как показывает практика разработчики 1С просто не справляются с сопровождением.
Из-за отсутствия модульности также возникают дополнительные сложности, так как выявить все ошибки и отладить столь громоздкий программный продукт практически не реально. В результате постоянно выпускаются новые обновления.
Еще одна очень важная причина постоянного наличия багов и ситуации с ними – это отсутствие конкуренции. По сути, 1С сейчас – монополист.
Конечно, создаются альтернативные программные продукты, некоторые из них вполне приличные. Но все они пока что – прикладные решения, способные решать те или иные задачи, в то время как 1С – это целая экосистема.
Более того, компанию 1С отличает очень мощный и агрессивный маркетинг, об этом программном обеспечении знают все.
Именно потому я утверждаю, что сегодня достойного конкурента на постсоветском пространстве у 1С не существует. А отсутствие конкуренции всегда приводит к снижению качества самого продукта, что мы и наблюдаем на примере 1С: постоянные «сырые» обновления, постоянные баги, отсутствие подробной документации к обновлениям и т.д.
А потому лично я советую всем своим клиентам без особой необходимости не обновляться. Кстати, этот же совет я получил сам от одного из людей, которые стояли у истоков 1С.
Конечно, в текущей версии обязательно есть какие-то баги, но если вы в ней работаете без проблем, то эти баги для вас не критичны. Что будет в новой версии – предсказать невозможно. А потому обновления стоит устанавливать только тогда, когда это становится действительно необходимо для работы.
Флагманы. Типовые конфигурации
В основе линейки программных продуктов 1С лежат типовые конфигурации. На сайте 1С готовых коробочных решений представлено довольно много.
- Бухгалтерия предприятия
- Управление торговлей
- Управление производственным предприятием
- Зарплата и управление персоналом
- Отсутствие модульности
- Громоздкость и много лишних функций
- Новые баги в новых версиях
- Непредсказуемый результат обновлений
Кроме того, из-за отсутствия модульности, чаще всего приходится обновляться, даже если изменения коснулись функций, которые вы не используете. Просто потому что ошибка в этом функционале может привести к некорректной работе других модулей.
Если говорить о Торговле, то моя практика показывает, что на самом деле люди используют не более 30% от всего функционала этого компонента. Аналогичная ситуация и в других типовых конфигурациях. В погоне за реализацией максимального количества возможностей разработчики создали очень громоздкие и сложные продукты, в которых все взаимосвязано, а потому даже отключить ненужный функционал не всегда реально.
Например, при обновлении Торговли разработчики добавили новую бонусную систему. Клиент бонусами не пользуется вообще. Они ему не нужны. Но если вы попытаетесь отключить эти бонусы, начинает некорректно работать система скидок. Я с такой ситуацией столкнулся на практике. Конечно же, для решения этой проблемы потребовалась помощь программиста.
В последнее время я пришел к тому, что по окончанию проекта всем клиентам советую вообще не обновляться. Я все настроил так, как нужно для работы, вместе с клиентом и его сотрудниками мы протестировали работу конфигурации и убедились, что все работает хорошо. А потому не нужно обновлять конфигурацию, пока не возникнет необходимость в серьезных переменах.
Агрессивный маркетинг и его результаты
Очень часто мои клиенты устанавливают обновления вопреки моим советам. Почему так происходит?
Мотивация программистов
Программисты 1С заинтересованы в том, чтобы клиент как можно чаще обновлял программное обеспечение. Им это просто выгодно. При каждом обновлении понадобится заново настраивать конфигурацию. А потому при помощи обновлений они получают доход буквально «из воздуха».
Представьте себе ситуацию, когда компания работает в какой-то конфигурации без обновлений спокойно и надежно. Но возникла потребность, например, создать еще один отчет или установить дополнительную обработку. Естественно, в этом случае обращаются к специалисту.
Что происходит дальше? Программист 1С приходит и видит, что программа давно не обновлялась. Он рассказывает клиенту, как это плохо, поясняет, что без обновлений настроить нужный заказчику отчет или выполнить другую работу он не сможет, пугает большим числом ошибок, которые имеются в старой версии и т.д. и т.п. В общем, убеждает клиента купить и установить обновления.
На самом деле в большинстве случаев никакой объективной необходимости в обновлениях нет. А вот объем работы программиста и, соответственно, его гонорар значительно увеличивается. Между прочим, многие пользователи потому и относятся к программистам 1С с негативом. С их точки зрения 90% суммы они платят программисту за то, что до начала его работы прекрасно работало, т.е. один и тот же функционал им приходится оплачивать по нескольку раз.
Агрессивный маркетинг от 1С
Сама компания 1С также заинтересована в том, чтобы пользователи обновлялись как можно чаще. В итоге пользователи часто получают напоминания о новых обновлениях, предупреждения о необходимости обновить платформу или конфигурацию. Но при этом на сайте нет достаточно подробной информации о том, что именно получит пользователь в случае обновления, какие баги исправлены, какие возможности появились. Т.е. объективно оценить необходимость в установке того или иного обновления невозможно. В результате многие пользователи обновляются просто на всякий случай.
Недостатки сервиса и франчайзинга
Я считаю, что сервисного обслуживание в компании 1С практически нет. Компания великолепно работает в продажах, у нее действительно очень агрессивная и, надо признать, результативная маркетинговая политика. Но если вам понадобится обслуживание, вы столкнетесь с массой сложностей.
На сайте 1С есть целый раздел, где вы можете найти сертифицированных партнеров в вашем регионе, которые предоставляют услуги по обслуживанию программных продуктов 1С. Эти партнеры прошли сертификацию, оплачивают партнерские взносы. Казалось бы, все в порядке.
- Для того чтобы компания получила статус партнера, достаточно иметь сертифицированного специалиста в штате.
- Впоследствии никто не проводит повторных проверок или экзаменов. А потому сертифицированный программист может быть единственным специалистом, а обслуживать вас приедут совсем другие люди, может вообще уволиться, а компания статус партнера при этом не теряет.
- 1С практически не ведет никакую работу с партнерами, не проводит обучение, не контролирует качество работы.
Я уже упоминал, что 1С – это целая экосистема. В чем-то ее можно даже сравнить с компанией Apple. Там выстроена целая система, состоящая из «железа», программного обеспечения и ресейлеров. В 1С также есть платформа, есть конфигурации, есть сертифицированные ресейлеры.
Но если Apple очень жестко контролирует качество на всех этапах – от производства до работы партнеров, и высочайшее качество является для этого бренда одним из важных конкуретных преимуществ, то в компании 1С все совсем не так. Здесь сервисное обслуживание практически отсутствует, работу партнеров никто не контролирует, в результате качество постпродажной работы с программным обеспечением очень низкое.
Также интересно, что маркетинговые усилия компания 1С направляет, прежде всего, на потребителей продукта, т.е. на пользователей. А работа с конфигурациями полностью ориентируется на программистов. В итоге, рекламируется одно, а на практике оказывается, что покупатель получил нечто совсем другое.
И здесь также проявляются причины негатива к программистам 1С и к самому программному продукту.
Когда я перестал работать только с 1С и занялся бизнес-консалтингом, я начал использовать в работе самые разные программные продукты. Это были и сайты на Drupal, и системы вроде ZOHO CRM, ATOL РМК, Redmine, и и много еще каких систем. И практически все эти сервисы и программы не требуют постоянных и частых обновлений. И при обновлении не возникает такого количества проблем.
В то время как компания 1С зарабатывает на двух направлениях: на продажах и на постоянных обновлениях. Но причем тут клиент? Он вынужден платить и обновляться, так как другого выхода нет. Более того, обновлять приходится одновременно все продукты, которые используются на предприятии.
Например, если вы используете Торговлю, к ней вышло реально полезное обновление, которое исправляет какой-то актуальный для вас баг, вам обязательно понадобится обновить также Бухгалтерию. Потому что обмен данными возможен только между одинаковыми версиями конфигураций. Если вы решите оставить Бухгалтерию без обновления, то выгрузка документов из Торговли в Бухгалтерию у вас перестанет работать.
В результате клиент вынужден пользоваться системой, которая постоянно ломается, и регулярно оплачивать восстановление ее работы. Конечно, у клиента появляется негатив. А уйти на какой-то другой программный продукт он не может, просто не видит достойной альтернативы.
Да, другие системы ведения учета в нашей стране есть, некоторые из них даже догоняют постепенно 1С по возможностям. Но маркетинг – великая вещь! А потому клиент не видит альтернативы, и, не смотря на постоянный негатив, производит очередную оплату.
1С: Битрикс – сложности, особенности, маркетинг
Еще один продукт, который традиционно относят к линейке 1С, – это система управления сайтами 1С-Битрикс. При этом очень многие пользователи уверены, что достаточно купить Битрикс, и все вопросы интеграции сайта и данных в 1С будут решены.
Пользователь, который покупает программные продукты 1С и заказывает сайт на 1С-Битрикс, видит общий бренд и пребывает в уверенности, что это продукты одной линейки, которые будут всегда без проблем работать вместе.
На самом деле, CMS Bitrix – это отдельный продукт, который разработали специалисты, не имеющие никакого отношения к компании 1С. В дальнейшем в эту CMS были добавлены средства интеграции с продуктами линейки 1С, и появился новое название «1С-Битрикс». Произошло это потому, что компания 1С выкупила крупный пакет акций Битрикс и решила использовать эту CMS вместе со своим программным обеспечением.
Что получилось в результате?
Интеграция базы данных интернет магазина и программных продуктов 1С действительно предусмотрена. Но она очень сложная, и без помощи специалиста настроить обмен данными практически невозможно, а изменить очень и очень сложно.
Более того, программисты, которые настраивали вам работу 1С, не смогут установить и настроить Битрикс. Здесь вам потребуется web-программист, специалист по Bitrix. Частично интеграция настраивается силами 1С-програмистов, частично – специалистами по Битрикс. А бывают такие случаи, когда пользователь вообще не знает, к кому обращаться.
Например, у меня была такая ситуация. После очередных обновлений у моего клиента перестал работать обмен данными с сайтом. Я обратился к специалисту 1С, но он не сумел нам помочь, так как, по его мнению, проблема была на стороне Bitrix. Обратились мы к Bitrix-программисту. Он также развел руками и сказал, что проблема, скорей всего, все-таки на стороне 1С. Около 2 недель обмен данными с сайтом не работал. Клиент был вынужден загружать вручную цены и остатки, выгружать с сайта заказы. В конце концов, нам повезло. Я вышел на программиста, который разбирался одновременно и в Битрикс, и в 1С, он и настроил работу модуля обмена.
Bitrix и 1С: системы разные, недостатки общие
Веб-разработчики, которые знакомы с последними версиями Битрикс, меня сейчас поймут. Так же, как и программные продукты 1С, последние версии Bitrix стали очень мощными, с широкими возможностями, но при этом излишне сложными. Сейчас без помощи администратора (веб-программиста) в Bitrix пользователь чаще всего не может даже настроить новые категории в каталоге товаров, так как для организации интеллектуального поиска необходимо задавать собственные параметры для каждого вида товаров.
При этом для обслуживания сайта и программ 1С вам нужны разные специалисты. Ведь это разные продукты. Они используются для разных целей, имеют различные платформы, для работы с ними нужны знания разных технологий.
Вместо резюме
- Высокая сложность системы
- Отсутствие модульности
- Наличие багов в каждом обновлении
- Отсутствие подробной документации к обновлениям
- Непредсказуемый результат установки обновлений
- Непредсказуемые результаты установки обновлений. В любой момент программа может перестать работать. При этом из-за багов в прошлых версиях обновления оказываются необходимы.
- За обновления нужно платить, как компании 1С, так и программисту. При этом видимые пользователю плюсы в большинстве случаев незначительны, и оплачивать приходится большей частью восстановление работоспособности программы после установки новой версии.
- Пользователи переносят на специалиста часть негатива по поводу программы. Ведь именно 1С программист получает оплату за установку обновлений и настройку конфигурации.
- Программисты, которые занимаются другими направлениями, понимают, что часто их коллеги, специализирующиеся на 1С, получают деньги, по сути, за «продажу воздуха». Особенно это заметно, когда обновления клиенту навязываются самими специалистами.
- Из-за отсутствия контроля со стороны 1С обслуживанием программных продуктов занимаются случайные люди, что также не способствует положительному имиджу.
Я ненавижу 1С
Я ненавижу 1С. Нет, не так. Я ненавижу 1С! От всей души, искренне. Каждый раз, когда меня просят помочь с этой программой зла, получают вежливый посыл в известном направлении.
А все почему? Потому что 1С отличная платформа, попавшая в плохие руки.
Я искринне смеюсь над выражением «1С программист», просто нагло ржу. Я несколько раз наблюдал за их работой, читал их код, слушал лекции по программированию, и смело вас могу заверить: программисты 1С — это штучные экземпляры достойные внесения в красную книгу сразу за пандами, потому, что они не размножаются.
Приведу пример из жизни.
Есть база данных продаж, написанная сумрачным гением на mssql и имеющее фронтенд на делфи. Адовая смесь, которая работает и переваривает все, что в нее суют, а суют в нее не много не мало 35 тысяч документов за месяц. Фигня, по сути. Если эти документы собрать в текстовый файл — это жалких 100мб. И база выдает такие файлы каждый день, формируя выгрузку за год. Чтобы перелапатить 200-300 тысяч документов, ей требуется 10 минут.
Раз в месяц бухгалтерия берет эти файлы и загружает их в 1С.
Сервер 1С — самый мощный сервер группы компаний. Дохриналион памяти, флопсы, терафлопсы.
Слава великому Линуху, я не управляю этим монстром.
И каждый месяц с пивом и попкорном я смотрю, как этот монстр ложится под загрузкой 100Мб файла выгрузки.
Великие «программисты 1С» не знают о существовании типа данных tinyint,nvarchar(10) и прочих.
Зачем? Да пофигу, что в этой переменной никогда не будет больше 2х знаков, имя не длинее 50 символов, а число всегда 8 значное! Мы для каждой переменной зарезервируем в памяти максимум места.
— Out of memory? У вас просто сервер слабенький.
Спасибо Вам, благодаря таким «специалистам» моя ценность возрастает, а развлечения не кончаются. Горте в аду!

7 лет назад
У вас просто 1Сника нормального не было. Работаю в одной компании и у нас тут SAP во все щели внедряют. Поверьте, лучше платформы, чем 1С на постсоветском пространстве пока ещё не придумали. Все вот эти мелочи с нехваткой памяти — детский сад, по сравнению с чудовищной несогласованностью данных и нелепыми попытками подступиться к сапу с целью двусторонней интеграции с имеющимися системами и сервисами. А знаете как решаются проблемы с несогласованностью данных? Организационными решениями. Поясню — это значит, что вместо реализации разного рода контролей и прочих проверок на стороне сапа, руководство запрещает простым пользователям косячить 😉 Результат таких решений предугадывается на раз-два.

раскрыть ветку
7 лет назад
1С отличный инструмент. Это совершенно серьёзно и без сарказма. Ваша проблема это проблема плохого программиста, а не инструмента. У 1С очень низкий порог вхождения и поэтому в конфу лезут как-бы программисты, делающие запросы в цикле и прочую ересь. у неё есть возможность замерять производительность для вычисления узких мест воспользуйтесь им.
раскрыть ветку
7 лет назад
Автор, 1С то тут причем? Если у админов руки из жопы растут и у «программеров» которые под 1С для вас пишут.
Для примера, у меня центральная база 1С весит около 800 гигов (периодически подрезается). В ней одновременно работает в пике — до 800 человек, режим работы 7Х24. Все работает — вопрос подходов к настройкам серверов, конфигураций и прочего.
А если что-то через жопу грузиться — так вопрос к тому, кто писал обмен данными. И не нужно путать фронт офис-с бэк офисом, то, что ты грузишь в 1С в конечном итоге превращается в хренову гору той информации — которой в фронте, который на дельфях писан — никогда не было. Начиная от бухгалтерских проводок, кончая движениями по таким регистрам, о которых фронт в принципе понятия не имеет. Поэтому вы и тянете данные с фронта в бэк — дабы их там обрабатывать в различных аналитических и синтетических разрезах.
Так что смотреть нужно в сторону оптимизации загрузки, разбираться, что тормозит, где тормозит, как тормозит. Тюнить базу по индексам, смотреть что можно кластеризовать и прочее. А сунуть базе 37000 объектов — ну бред. Хочешь получить гоночную машину из обычного автомобиля, будь добр оттюнить ее вручную. А типовые конфигурации — это нифига не гоночные автомобили, а стандартные заводские седаны.
Да, что бы понятно было и меня не обвинили, что я кроме 1С ничего не знаю, поэтому хвалю. Пишу уже лет 20. Пишу на куче языков начиная от асма кончая пыхой (правда дельфи вот как-то не очень люблю и паскаль в частности). Под 1С тоже пишу, начиная с версии 7.5 (6.0 — не считаем 🙂 там писаниной сложно назвать).
7 лет назад
А что за документы-то выгружаются? А то есть неслабое подозрение что на стороне делфи все валяется в одной таблице, документы там одного вида и куча других упрощений. В то время как 1С-ка должна проводить по регистрам, считать итоги, делать проверку остатков. Это все учитывалось в сравнении? А то может в равных условиях делфи тоже будет падать?
раскрыть ветку
7 лет назад
Собственно, речь в посте идет не о хуевой 1С, а о рукожопых разработчиках. Коих в этой сфере много из-за низкого порога входа. Как платформа для бизнес-приложений 1С просто охуительна, на самом деле.
Похожие посты
10 дней назад

Что заставляет программистов писать вирусы
Материал был взят и переведен с Рэддита. Приятного прочтения!
1. В 7 классе я ходил на кружок программирования, который фактически превратился в кружок по созданию вредоносных программ. Мы с другом написали программу, которая постоянно открывала на компьютере один сайт для взрослых и врубала звук на полную мощность. У нескольких человек этот сайт открылся прямо на уроке. Было весело.
2. Я написал эту программу ради азарта. Это был аддон для Воркрафта. Он запускался, когда персонаж входил в игру. А потом персонаж получал приглашение в гильдию от игрока с заряженным аккаунтом и сам становился главой гильдии. После этого можно было идти в игровой банк и забрать оттуда все ценное. Написать код было просто, но вот протестировать его работу с помощью приемов социальной инженерии очень сложно. Но мне повезло с первого раза. Прилив адреналина был колоссальным, но я также понимал, что меня, скорее всего, забанят в этой игре. Моей следующей целью была высшая рейдерская гильдия на сервере. Чтобы убедить лидера гильдии участвовать в моем тестировании, понадобился час разговоров по скайпу. Он попался на крючок, и все почти получилось. Я знал, что у этой гильдии игровых ценностей на сотни тысяч долларов. Глава установил аддон, но потом я понял, что он вошел через альтернативного персонажа, не имевшего доступ к богатству гильдии. Так у меня все провалилось. Меня выгнали из гильдии и забанили. Позже мне удалось вернуть свой аккаунт, но без тех ценностей, которые я награбил раньше.
3. В юности я создал несколько троянов удаленного доступа. С их помощью воровал аккаунты в разных играх и продавал их в интернете. Когда я впервые запустил троян, было 200 загрузок и 90 заражений. Половину угнанных аккаунтов я отдал другу, который помогал писать программу. Потом продал два акка и купил попугая, потому что люблю птиц. А потом старший брат объяснил, что все это плохо и незаконно, и я остановился.
4. Раньше вирусы создавались ради демонстрации крутости и были не особо вредными, это во времена Дос и вплоть до Виндовс XP. Потом появились черви для кражи паролей. Потом ботнеты, а они уже только ради денег. Они крадут данные, пароли, откровенные фотки, все подряд, для последующей продажи. Потом киберпреступники научились использовать сторонние компьютеры для майнинга, взлома сайтов и прочего дерьма.
5. У меня есть друг, который мошенничал с кредитками, крал личные данные, информацию с компьютеров, используя для этого кейлоггер, замаскированный под ссылку для скачивания. В школе он начал продавать вещи и одежду всем, включая меня. А через два года за ним приехали из ФБР и увезли, хотя он и был несовершеннолетним. Ему пришлось заключить сделку и вернуть товаров на 50 тысяч долларов. А еще он взломал главу отдела безопасности Xbox, про это есть видео на ютубе.
6. Когда-то я любила троллить людей в чатах, рассказывая, что у меня есть постеры с Бритни Спирс, но для их закачки надо открыть файл, который я пришлю. Так я получала доступ к компьютерам жертв. Могла полностью просматривать жесткий диск, скачивать, что мне надо, удалять с компьютера файлы. Однажды я стала удалять кучу всего с компьютера парня, с которым в это время общалась в чате, и он заплакал. Мне стало жаль его, и я прекратила, и больше никогда этим не занималась.
7. Я занимался этим ради денег. Уже в старших классах я занимался черным СЕО и восстановлением сайтов. Потом я познакомился с парнем, который придумал, как через песню из альбома вшить ссылку. Эта программа случайным образом одну из песен на компьютере превращала в ссылку. Когда человек хотел прослушать ее, всплывала надпись, что надо скачать кодек. Он скачивал, и я получал 10 центов. Свою ссылку мы размещали на торрентах, скачиваний было много, денег хватало. Позже я стал нанимать индусов, чтобы они распространяли по торрентам файл с этой ссылкой. Мне тогда было 16, и я за месяц заработал 4 тысячи долларов. Это было круто, учитывая, что на черном СЕО и сайтах у меня выходило около тысячи в месяц. А через несколько месяцев все пошло наперекосяк, и я стал заниматься другими делами.
Похожие подборки без цензуры и купюр ежедневно выходят на моем канале https://t.me/realhistorys
Всем здоровья и добра!
Показать полностью
Поддержать
1 месяц назад

Как победить воровство с помощью автоматизации. Часть 1

Еще в те времена, когда мы автоматизировали ламповый завод на Foxbase, я столкнулся с воровством, в котором использовалось программное обеспечение. Происходило все так. Первоначально потенциальному покупателю выставлялся правильный счет на полную сумму. После чего с ним связывался ушлый работник отдела сбыта. И предлагал выполнить поставку лампочек по другой, намного более привлекательной цене. Но при условии, что половину разницы клиент перечислит на указанный счет. После поступления этой разницы и предоплаты по новой цене, клиенту отгружали лампы со значительной скидкой. Для этого в старом счете и в товарно-транспортной накладной цену незаметно для всех меняли на новую. Чтобы осуществлять хищение, ушлый работник сбыта привлек в свое преступное сообщество программиста завода, сопровождавшего отдел. Полученную таким образом выручку они обналичивали и делили пополам.
Всю эту химию обнаружила через пару месяцев начальник отдела сбыта. Анализируя причины не выполнения плана, она проверила отгруженные позиции в отчете по отгрузке. И обнаружила несколько записей с демпинговыми ценами. После чего подняли копии выставленных счетов, которые, по счастливой случайности, собирала у себя главный бухгалтер при согласовании. На работника отдела сбыта и программиста завели уголовное дело. А нас попросили написать программу, сравнивающую отгрузку с установленными в прайсе ценами.
Тогда я понял, что в программном обеспечении обязательно должны быть отчеты, анализирующие цены. Поэтому, когда мы автоматизировали Автодор, я сам предложил руководству компании сделать специальный отчет по закупкам. В этом отчете цены и объемы из спецификации каждого договора сравнивались с ценами и объемами поставок в счетах-фактурах. В результате несколько поставщиков были пойманы с поличным при попытках поставок материалов по завышенным ценам и сверх договорных объемов.
Второй случай произошел уже со мной. В ту зиму 92 года я автоматизировал гостиницу. Программа для оформления поселения и расчетов с гостями была только-только запущена, и в ней встречались ошибки. По просьбе администраторов мы поправляли ее прямо за стойкой, чтобы не останавливать оформление заезжающих. Сбои в первые дни происходили часто, и изменений вносилось довольно много. Этим и решила воспользоваться администратор Лада. Вечером она на моих глазах сверила кассу и «обнаружила» недостачу на 100 долларов. Столько тогда стоил номер в гостинице для иностранца. «Думаю, в программе произошел сбой, — сказала Лада. — Поправь кассовый отчет, убери расхождение, а завтра мы разберемся, что не так. Скорее всего, ошибочно начислили за номер, от которого отказался гость». Я удалил лишнюю запись, на которую указала администратор. А утром рассказал об этом случае на оперативке в кабинете директора. После оперативки меня попросила задержаться главный бухгалтер.
— Послушай, Рустэм, — сказала Галина Александровна, — Ты еще очень молодой, а у нас тут работают весьма прожженные леди. Никогда, запомни, никогда, не исправляй данные в кассовом отчете. Вчера дежурила Лада. Я ее хорошо знаю. И внимательно со всем разберусь. Мы составим реестр номеров, которые она заселила. И я заново сведу кассу.
Через два дня Ладу уволили, а я понял важную вещь. Что я никогда больше не полезу исправлять данные, введенные пользователями. Мы отвечаем за программу, это верно. Но за данные в ней отвечают пользователи. Пусть они самостоятельно разбираются с кассой, которая не сошлась. Все, чем мы можем им помочь — сделать отчет для анализа данных. Такое разделение ответственности гарантирует, что мы, автоматизаторы, не станем пособниками при нанесении экономического ущерба предприятию.
Показать полностью 1
Поддержать
1 месяц назад

Как автоматизировать завод и не уснуть за рулем
Ламповый завод или «Лампочка», как его ласково называли рабочие, находился в промышленной зоне – у черта на рогах на севере города. Мы с женой снимали квартиру в центре. И мне приходилось вставать в 6 утра, чтобы отвезти сына в школу, находившуюся в самом южном районе, и успеть на завод к 8 утра, к началу первой смены. По этой синусоиде я катался изо дня в день около года, как-то даже уснул за рулем и проснулся за 5 сантиметрах от бампера грузовика, тормозящего на светофоре.
«Аванта» – молодая, только что созданная фирма, бывший вычислительный центр Водоканала, отправленный в свободное плавание. Семь человек. Быстренько создать ТОО пришлось после того, как на уровне города было признано, что увлечение муниципальных предприятий малыми предприятиями является «перегибом на местах». После чего директор кооператива «Вода» вызвал меня к себе, рассказал, что отдел сбыта Водоканала возвращается из кооператива снова в Водоканал. А что делать с вычислительным центром, он не знает, так как ставка зама по экономике в Водоканале есть, а ставок для программистов – нет.
Было самое начало 90-х годов. Я считаю это время рассветом
ИТ-отрасли страны, работы было много, заказы шли сами собой, работало сарафанное радио. ТОО наше потихоньку набирало силу, и вот – заключило договор на автоматизацию завода. Наш самый большой договор. На заводе предстояло автоматизировать три службы – бухгалтерию, отдел сбыта и финотдел.
Эти три службы не очень дружили. Руководители служб ругались на оперативках. Давали настолько разную отчетность за месяц, что директор, когда подписывал договор, сжал мою руку, посмотрел мне прямо в глаза и сказал:
– Послушай. Они дают мне разные цифры. Не совпадает ничего. Ни склад, ни отгрузка, ни дебиторка. Каждый считает, что только его цифры правильные. Я не понимаю, что у меня происходит на самом деле. Я не знаю, кому верить. Ты должен с этим что-то сделать!
Причиной того, что происходило на заводе, являлось полное отсутствие интеграции между программами отделов сбыта и финотдела, плюс сильно отстающая по времени отчетность бухгалтерии, получаемая из бумажных журналов-ордеров.
У нас не было готовой типовой программы для этих подразделений. Тогда с типовыми программами было туго. Даже если бы такая программа появилась, мы запросто могли о ней и не узнать. Интернета не было, а давать рекламу в газетах, радио и на телевидении было не по карману молодым ИТ-компаниям. Поэтому программу для завода нам предстояло написать с нуля.
Первое, что мы сделали – провели обследование этих трех отделов. Результаты зарисовали в виде схем, на которых изобразили основные функции отделов и используемые документы. А также нарисовали стрелочками связи между данными и функциями сотрудников. Собрали образцы всех документов. Тогда еще не были так популярны современные средства формализации требований — разработка моделей «как есть» и «как будет» в case-системах и написание пользовательских историй (use-case). Мы действовали исходя из простого предположения, что раз мы разрабатываем информационную систему, нам нужно знать все о том, кто и какую информацию обрабатывает, и как именно. А рисунки и образцы документов позволяли получить компактное описание системы.
После чего мы занялись проектированием программы. Разработали структуры всех таблиц. При этом исключили дублирование информации. Если финотдел и отдел сбыта использовали для регистрации оплат разные таблицы в разных программах, у нас это была единая табличка для всех служб. За основу мы взяли систему бухгалтерского учета. Идея все построить на операциях и остатках мне очень нравилась, так как принцип двойной записи, применяемый в бухгалтерии, обеспечивал высокую надежность системы.
«Засада» началась, когда мы приступили к программированию. В этих трех отделах на заводе работало человек 50, каждый рассказал о том, что он делает, и нам надо было написать громадную кучу кода. Товарные и железнодорожные накладные, партионный учет на складе, отгрузка посылками и в контейнерах, учет векселей и других ценных бумаг… Система получалась огромной. А программировать на FoxBase – это вам не в 1С объекты создавать! Каждый справочник, документ и отчет надо было писать как уникальный, вручную. Проработав месяц почти каждый день до глубокой ночи, я задумался. Последнее, что меня окончательно убедило, что мы что-то не то делаем, был случай в январскую ночь. Я приехал на завод в 8 утра, а уезжал в 2 ночи. С утра шел снег, и я с трудом нашел свою машину на стоянке возле завода. Откопал ее. Завел мотор и тут же, через 30 метров, застрял на трамвайных путях, которые просто были не видны под снегом! Мне крупно повезло, что пути ночью чистил специальный трамвай-снегоочиститель. Мужик в кабине поржал немного, увидев мою пятерку на рельсах, прицепил трос и вытащил меня на переезд, откуда я смог выкатиться на шоссе.

В тот день я понял, что если все оставить как есть, то никакого здоровья нам не хватит закончить систему. Прошло уже несколько месяцев с начала проекта, деньги кончались вместе с кредитом доверия директора, а нам все еще нечего было показать пользователям.
И тогда я сделал то, что у меня всегда получалось лучше всего – я автоматизировал нашу работу. Создал универсальный интерфейс, универсальный справочник, универсальный документ и универсальный отчет. Все эти вещи управлялись простым заданием параметров – как правило, указанием таблиц, с которыми работали программы, и их реквизитов. Теперь все программирование заключалось в правильной настройке универсальных объектов, все остальное – расположение реквизитов на экранах, их ввод, редактирование и прокрутку, – программа делала сама. И дело пошло куда веселее. Производительность труда выросла в несколько раз! У сотрудников моих начали потихоньку рассасываться круги под глазами, и в них снова зажглась надежда.
Но деньги все же кончились раньше, чем кодирование. Хорошо, что нам к тому времени было, что показать, и директор завода, хоть и с ворчанием, но подписал дополнительное соглашение. Хороший был руководитель, приходил несколько раз к нам вечером после окончания рабочего дня, наблюдал, как мы работаем. Понимал, что деньги тратятся не впустую. Мы потом еще много раз сотрудничали с ним. Как-то он даже приглашал меня на должность начальника АСУ завода. Но я тогда работал в Сотовой связи и отказался.
И вот настал счастливый день запуска системы в промышленную эксплуатацию. Бухгалтерия и финотдел взлетели сразу. Бухгалтерия вообще нарадоваться не могла после бумажных журналов-ордеров. У них сразу же исчезла необходимость «сводить» разные счета. Единственное, что их беспокоило – как поделить оставшиеся обязанности. Неожиданно у бухгалтера Светы, которая вела 60-й счет (взаиморасчеты с поставщиками), почти не стало работы. Материалы по документам приходовали бухгалтера материального стола, а оплаты – бухгалтер, разносивший банковскую выписку. Так как вся необходимая информация вводилась на других участках, учет с поставщиками получался автоматически. Бухгалтеру 60-го счета оставалось только готовить акты сверки. Проблему нагрузки решили, передав Свете учет по какому-то из неавтоматизированных счетов. Потому что переделывать программу так, как она хотела (разбивая приходный документ на два – для нее и для материалистов), мы отказались.
Но с отделом сбыта получился эпический фейл. Выяснилось, что им совсем не подходит разработанный нами «универсальный интерфейс», и они отказываются с ним работать! Потому что в предыдущей программе «все было на одном экране и было удобно, а так нам приходится три экрана открывать, чтобы все увидеть». Что было с ними делать? Мы долго пытались их уговорить, убедить, что дело только в привычке. Что три экрана – это даже удобнее, меньше информации на каждом. Но ничего не помогло. Даже отказ переделывать интерфейс. Начальник отдела отправилась к директору. Так как ее цифры по отгрузке нравились ему больше всего, ее влияние на директора было значительным. И к нам поступило жесткое распоряжение – «сделать все так, как будет удобно отделу сбыта». Аргументы, что в бухгалтерии все то же самое, но людям нравится, не помогли. И мы, чертыхаясь, переписали для отдела весь интерфейс, потратив еще неделю.
Тогда я понял две вещи. Первая: интерфейс и привычки людей – это очень важно. Нужно готовить людей к его изменению, проводить специальное обучение. А вторая: стейкхолдеры бывают разные. Кое-кого можно убедить в своей правоте, а кое-кого придется просто слушать и исполнять. А то акт-то и не подпишут.
Еще несколько месяцев мы прожили в стрессе, собирая днем требования по доработке, а по вечерам внося изменения в код. Но система заработала и дала нужный директору результат. Наконец-то он получил отчетность, в которой все цифры отделов полностью совпали, так как были получены из единой базы данных! Надо было видеть его глаза, полные радости! Такие мгновения наполняют жизнь автоматизатора смыслом, давая энергию для разработки новых систем, облегчающих людям жизнь и освобождающих им время для творчества.
Напоследок я добавлю только, что наша программа «Свет» положила начало созданию ERP-системы «Лампочки», которая проработала на заводе более двух десятков лет и успешно развивалась собственным АСУ завода.
История из моей книжки «Франчайзи на грани нервного срыва». Подписывайтесь, опубликую тут постепенно все, что проходит по тематике группы