А причина, мне кажется, таких статей, заключается в том, что авторы либо уже давно не следят за развитием платформы 1С, либо ими движет юношеский максимализм, либо есть неудачный опят внедрения. В этой статье я попробую объяснить свою точку зрения о том, что 1С это круто и очень жизнеспособно.
Заранее извиняюсь за сумбурность, просто пишу по горячим следам.
1. Давайте сначала разделим деятельность фирмы на три большие составляющие: отчетность для руководителя, отчетность для государства и бизнес-логику
Начну с отчетности для государства. Тут я подразумеваю различные декларации типа НДС, прибыль, отчетность в ФСС и ПФР и прочее. В нашей стране законодательство достаточно часто любит менять либо форму отчета, либо формат сдачи отчетности. Тут я считаю, что 1С впереди всех. Да, бывают и косяки, но их в последнее время достаточно мало. Победа над опенсорсом заключается в том, что не каждый опенрсорсный продукт будет готов предоставлять отчетность точно в срок.
Отчетность для руководителя — тут компания 1С проигрывает вчистую всем сторонним приложениям (я говорю о типовых конфигурациях). Такой отчетности либо нет совсем, либо она не может быть прочитана руководителем (тут легкий камешек в сторону квалификации руководителя). Лично я не видел еще проекта, где директору было достаточно отчетов из коробки.
Бизнес-логика. Как показала практика, все зависит от того, насколько поздно пришла 1С в компанию. Честно. В далеком детстве, когда программистов 1С было мало, организация, купившая коробку с торговлей 7.7, была вынуждена работать по бизнес-логике программы, чтобы получать правильную отчетность. Это несколько дезориентировало пользователей на начальном этапе, зато переход на следующие версии прошел легко и задорно.
А вот когда дело доходит до специализированных (отраслевых) решений, то тут у 1Сников беда и печаль. Сейчас поясню причину. Фирма 1С в принципе не следит за качеством продуктов 1С-совместимо и получается, что какой то франч, придя на проект, начинает кастомизировать типовое решение под нужды проекта и потом выдает его за «отраслевое решение». Само собой, что за этим скрывается четкая бизнес-модель постановщика задачи, франчайзи никакой гибкости, присущей типовым решениям от фирмы 1С, не предоставляют. И, при попытке внедрить это решение в другом предприятии с аналогичной сферой деятельности, мы получаем поезд, который надо с помощью напильника превратить в самолет. В большинстве своем программный код ужасен и не может легко и просто быть прочитан и осознан франчами. Считаю, что именно этот момент и распугал многих потенциальных покупателей.
Уф, вроде с первым пунктом разобрались.
2. Модульность опенрсорса против 1С
Платформа 8, в отличии от платформы 7.7, позволяет создавать общие модули с разделением функционала, например модуль с функциями и процедурами для обработки расчета заработной платы и модуль для работы с документами. Обновление этих модулей идет раздельно и неудобств не составляет. Основной косяк у 1С — это командный режим работы с помощью хранилища. Захваты, откаты и прочие неудобства гарантированы. Опенсорс, лежащий в разных файлах тут побеждает. Единственное, что не стоит забывать, такой метод вполне себе работал на платформе 7.7, где в модуль можно было вставить ссылку на файл и динамически его менять( никаких перезагрузок не требовалось)
3. Кастомизация
Тут начинается смертный бой тех, кто кричит, что при любом изменении конфигурации устанешь платить деньги за обновление, и тех, кто считает эти расходы не стоящими внимания. В основном все ругаются на сложность интерфейса 1С, мол в нем много кнопок и метаний по менюшкам, а ведь создание нового интерфейса есть снятие конфы с полной поддержки и деньги за обновление. Тут, считаю, у 1Сников нет проблем, от слова СОВСЕМ. Ведь можно создать свой вариант рабочего стола в обработке и в запуске 1С указывать на эту обработку. Пользователь щекнул на ярлык 1С и при запуске получил свои документы и отчеты прямо в одном окне. Второй вариант доступен на свежих релизах 8.3 и представляет собой надстройку к конфигурации, которая хранится на компе пользователя и стартует вместе с основной конфой. Всё на поддержке, все довольны.
4. Остальное
Не стоит забывать, что 1С предоставляет именно ориентированный на бизнес-логику язык программирования и для программистов того же С выглядит дико странно. Хотя чего тут говорить, до сих пор подавляющее большинство программистов не 1Сников не понимает, как можно писать программы на русском языке. Да, местами он перегружен и без поллитра непонятен, но разработчики не зря едят свой хлеб и многие методы просто избавляют программиста 1С от рутины (срезы первых и последних, вытесненные расчеты по зарплате и так далее).
Движок 1С при работе с данными достаточно шустрый, местами страдает и требует оптимизации, но сейчас даже при больших объемах данных, пользователи не жалуются.
Выводы:
1. Если у предприятия своя логика работы, отличная от представления методистов фирмы 1С, и она не связана со сдачей регламентированной отчетности государству, то тут возможны любые решения как на базе 1С ( в силу наличия большого количества программистов), как и на любых других языках и платформах. Главное, чтобы было кому поддерживать это решение.
2. Многие критики типовых продуктов 1С сами не видели это решение и просто верят мнению старшего товарища или прочитанному в интернете.
3. Отраслевые решения и контроль за качеством кода — основная беда фирмы 1С, которая дает много негативных отзывов.
Комментарии (34)
thelongrunsmoke
08.11.2015 15:55+4Что-то, ни слова о внутреннем языке 1С. До сих пор встречаются компании сидящие на 7.5, только потому, что в прошлом веке им написали логику. Для перехода на свежие версии придется искать программиста, а на периферии 1с-программистов 1,5 человека на город.
Haikson
11.11.2015 10:10Проработал я в одной компании почти 10 лет. Держали там «приходящего» программиста 1C. V7.5. Над каждой задачкой он плотно
ананработал неделями. И решал на 70% максимум. «Держалась» компания за него по причине, что уже не соскочить.
Еще 3 года назад решили перенести все на 8-ку. Я уже больше года там не работаю, но когда уходил так все на 7-ке и крутилось. А все по причине быдлокода, состряпанного 1С программистами ( не путать с разработчиками 1С, хотя тут не мне судить ) по заказу бухгалтерии.
solver
08.11.2015 16:52+23Какой же бред…
Сравнивать 1С и Опенсорс… т.е. на полном серьезе сравнивать готовую платформу и подход к разработке и дистрибьюции ПО.
Сразу видно упоротого одинесника, который ничего кроме этой платформы не видел и считает все, что там реализовано, каким-то чудом))
P.S. «Опенсорс, лежащий в разных файлах» и другие перлы — Это вообще пять.
Вот такие яркие представители и создают «шикарный» имидж платформе 1С.kuld
09.11.2015 17:13Не такой уж и бред, если не придираться к терминологии.
Сравнивать конечно же надо проприетарное со свободным. Разработка на платформе 1С (если не брать в расчет всякие хитрые компоненты закрытые на ключ) с открытым исходным кодом. Открытое, но не свободное сравнивается со свободным и открытым.solver
09.11.2015 20:03+4Бред тут не в терминологии.
Человек просто не понимает о чем пишет. Это хорошо видно по таким перлам.
Все в 1С есть, но оно все в кавычках.
Например открытость. Да, бизнеслогика открыта, но платформа закрыта, а это значит что открытость условная. С таким же успехом можно говорить, что Microsoft Excel открытое ПО, т.к. формулы в нем и скрипты открыты для изменения.
Это все маркетинговые уловки и откровенный обман.
Или модульность. Якобы там можно делать логику в общих модулях. Ну да, для маркетинга подойдет, можно писать в брошюрах громкие слова. Но все нормальные разработчики понимают, что такое нормальная модульность. И не ведутся на эти рассказы.
И так по всем пунктам. Кроме как бредом эти потуги назвать никак не получается. Они совершенно оторваны от реальности.DrPass
10.11.2015 17:36-1Вопрос закрытости платформы, он больше в идеологической плоскости лежит, нежели в практической. Кастомизации подлежит бизнес-логика, а остальное, в общем-то, ни клиентов, ни франчей не волнует. Мне, как пользователю 1С, вообще это не важно, единственное, что меня интересует — чтобы мне актуальные формочки вовремя приходили.
Haikson
11.11.2015 10:01Вы еще и дочитали это? Я остановился на словах:
В этой статье я попробую объяснить свою точку зрения о том, что 1С это круто и очень жизнеспособно.
Они мне сказали, что «ВСЁ КУПЛЕНО!» )))
caballero
08.11.2015 16:55+6Внутренний язык 1С не содержит никакой особой специфики кроме того что он на русском (хотя там по моему можно и привычные if else использовать)). Как на странно это даже не DSL. Это просто язык плюс встроенные высокоуровневые объекты (документы, справочники и пр). Причем сделанные исключительно извращенным способом, поскольку изначально хранилище было на DBF файлах, соответственно и методы этих объектов затачивались на то, что это не объект в понимании ООП а скорее псевдообьект, как результат выборки того или иного запроса.
Русский язык там потому что наивные разрабы думали что код будут писать бухгалтера.
Потому то любой скриптовый язык (как в упомянутой статье) плюс нормально сделанные высокоуровневые бизнес объекты ничем не хуже языка 1С, но зато программист и на периферии найдется.
.
iliabvf
08.11.2015 17:05+4Разработчики как раз не наивные, и я знал много бухглатеров писавших в 1С, некоторые даже открыли свой бизнес.
EvilBeaver
09.11.2015 16:01Как на странно это даже не DSL. Это просто язык плюс встроенные высокоуровневые объекты
Как ни странно, именно это и есть DSL. Высокоуровневые объекты, плюс операторы манипулирования терминами (объектами) DSL.
kuld
09.11.2015 17:07-2Язык может и не содержит специфики. А вот платформа и объектная модель еще как содержит. Главная специфика это быстрая разработка бизнес-приложений и избавление разработчика от низкоуровневой логики работы с СУБД, визуализацией и т.п.
Потому то любой скриптовый язык (как в упомянутой статье) плюс нормально сделанные высокоуровневые бизнес объекты ничем не хуже языка 1С, но зато программист и на периферии найдется
С этим частично согласен. Кстати, а есть какой-то готовый рецепт фреймворк + скриптовый язык, сравнимый по скорости разработки, по масштабируемости и по количеству готовых специалистов на рынке труда с 1С? Или это в теории?caballero
09.11.2015 17:45ну предполагается что для PHP полно специалистов. Часть из них знают предметную область — например работая с тем же 1C.
что касается остального — не совсем в теории не совсем в реальности потому как в разработке.
kuld
10.11.2015 12:44Вообще-то есть готовый пример в реальности
www.tryton.org/ru
Скриптовый, кросс-платформенный, открытый и GPL-свободный.
Трехуровневая архитектура, модульность. И даже есть готовые модули с готовой бизнес-логикой.
Что еще для полного счастья не хватает?caballero
10.11.2015 14:53таких примеров много
Во первых питон а не более распространенный php — но это не самое критичное.
Во вторых — это импортное решение которое надо на три четверти перепилить напильником. В третьих это не веб решение, в четвертых его разворачивание — для владеющего английским сисадмина а не на пользователя. И т.д.
Кароче щастья там наблюдается еще меньше чем в каком нибудь опенбраво.
caballero
08.11.2015 17:09+3я тоже знал нескольких. Все они писали в версии 2.0. Там програмирование сводилось к написанию формулок.
Дальше потребовались программисты. Ну не стенет бухгалтер осваивать программирование — это не его работа. Если бы он хотел быть програмистом пошел бы в программисты.
Так же как пользователи майкрософт офис не начинают изучать VBA
affka
08.11.2015 18:10+1Мне кажется, будущее за интеграцией все со всем, и 1С движется в этом плане в верном направлении, выпустив OData. Нужны специфичные отчеты для директора — дай задачу php/js разработчику, который через OData (или SOAP) вытащит нужные данные и сляпает отчет.
> Движок 1С при работе с данными достаточно шустрый
Что-то не слышал таких мнений от пользователей, на сервере с 16 гб оперативы, ssd диском 1с-ка (версии 8.2) жутко тормозит… и какие-нить «крутые» ребята из 1с-бит не знают как это исправить (видимо потому что проблема в платформе, а не конфигурации). А переносить базу на MSSQL — весьма затратно.caballero
08.11.2015 18:24Мне кажется, будущее за интеграцией все со всем,
да, говорят что это именуется web 3.0
А переносить базу на MSSQL — весьма затратно.
и не факт что поможет.
зависит от того переписали они всю инфраструктуру хранилища или нет.
В семерке таблицы mssql просто соответствовали таблицам DBF и, соответсвенно, обращение к ним было таким же как к dbf.
Но в восмерке запросы вроде уже sql подобные.
Haikson
11.11.2015 10:20-1да, говорят что это именуется web 3.0
Ну не хватило мне кармы, чтобы + поставить )
maledog
09.11.2015 16:10+4на сервере с 16 гб оперативы, ssd диском 1с-ка
пфф. 2*Xeon 3GHz 128 Gb DDR3ECC RAID50 MSSQL2008 40гиговая база 1с все равно тормозит. Говорят надо сервер мощнее, а то годовой отчет не сдадим.
guai
08.11.2015 19:36Дык и какие альтернативы-то, с чем сравниваем?
lair
08.11.2015 20:01Да вот…
guai
08.11.2015 21:04+2сходил по ссылке — это анекдот :)
всего не осилил, но успел вашему терпению поразитьсяskiedr
08.11.2015 22:07Как я понимаю — цель оригинальной статьи создать продукт сходный с QuickBooks, который очень популярен у малого бизнеса на западе. В последних версиях имеется богатое API позволяющее строить собственные проекты. Конечно же для запада проще в области «отчетность для государства».
palmich
08.11.2015 21:37+1В нашей стране законодательство достаточно часто любит менять либо форму отчета, либо формат сдачи отчетности
не добрые люди намекают на явную заинтересованность в этом в первую очередь компании 1С.
9ikopb
09.11.2015 07:36+3но сейчас даже при больших объемах данных, пользователи не жалуются.
Ну-ну. Я вот из своей практики могу вспомнить главбуха, которая не успевала сделать все обработки до какой-то проверки и очень из-за этого переживала. От того, кстати, что предоставляемый язык программирования ориентирован на бизнес-логику, а не на оптимизацию расчётов.
Вся платформа 1С — история вечного перекидывания ответственности между системными администраторами и «программистами» 1С. Ответственности за то, почему 1С тормозит. Тормозит? Программисты говорят, что нужно добавить больше памяти. Всё равно тормозит? Админы просят программистов оптимизировать код. Всё равно тормозит? Круг замыкается.
Серьёзно, какие проблемы в наше время могут быть с обработкой миллиона записей на современном сервере? А вот, оказывается, могут. Ведь предоставляемый язык ориентирован на бизнес-логику, как и предоставляемые программисты.
leemuar
09.11.2015 10:04Спасибо за статью.
В пункте 2 вы смешиваете вместе два разных понятия: модульность как конструкции языка/платформы (например, namespace в других языках) и возможность хранения конфигурации/исходный код в наборе текстовых файлов. С версии платформы 8.3.6 реализована выгрузка всей конфигурации в файлы — это открывает новые возможности разработки, в том числе избавление от неудобств хранилища и использования современных VCS — Git, Mercurial, Bazaar и т.д.
caballero апеллирует к первому — продукты на базе платформы становятся очень большими и сложными, а существующих инструментов управления этой сложностью в платформе уже не достаточно. Одной из первых возможностей, призванных увеличить модульность и уменьшить сложность, стала возможность расширений в 8.3.6.
У платформы 1С есть недостатки, как у любого ПО. И самой фирме 1С о них хорошо известно. И они работают над их решением, насколько я знаю.
Но такие люди как caballero нужны. Большинство лучших программных продуктов были созданы энтузиастами в попытке решить конкретные существующие проблемы. Git не появился бы, если Линус слушал аргументы «ты просто не умеешь использовать VCS». Его энтузиазм и желание над этим трудиться заслуживает как минимум уважения.develop7
09.11.2015 16:20+1Git не появился бы, если Линус слушал аргументы «ты просто не умеешь использовать VCS»
Git (и Mercurial) появился из-за отзыва разрешения разработчикам Linux бесплатно пользоваться BitKeeperleemuar
09.11.2015 16:40-1В том числе, да.
Но BitKeeper не содержал в себе возможностей, которые были необходимы и удобны Линусу и сообществу. Отзыв лицензии был хорошим поводом для того, чтобы создать удобное ПО для решения конкретных задач.develop7
09.11.2015 18:36допустим, и каких именно возможностей? и лучше всего было бы ответить ссылками на LKML.
kuld
09.11.2015 17:32+2То, что является сильной стороной — практически неограниченные возможности кастомизации + огромная армия обученных специалистов часто является проблемой.
Пример. Есть некая организация ООО «Ручеек». Внедрили в ней в далеком 2001 году 7.7, удовлетворили все извращенные потребности генерального, его любовницы, коммерческого, главбуха и даже кладовщика Ивана Ивановича на складе в районе Рябиновой улицы. Так они и работали, дописывали что надо, допиливали. Наступил 2015 год и решили учредители вместе с руководством внедрить новейшую разработку 1С:ERP. А задачу ставят, так, что бы портировать всю извращенную логику нажитую за 14 лет в 7.7. Это ведь ценнейший интеллектуальный актив, нельзя его бросать же.
И что удивительно, специалистов, готовых это сделать, выстроится в очередь 100500 штук, и официальных франчайзи и неофициальных фрилансеров. И специалистам этим будет на порядки проще написать в 1С:ERP все, что хочет заказчик, чем объяснить почему так делать нельзя.
Угадайте, как оно все заработает, когда специалисты настроят и допишут все, что у них попросят заказчики.
Но это уже совсем другая история…
rixaman
Сфера бизнеса инертна.
Негатив связан в основном от тяги к перфекционизму. В данном случае, даже если для разработчика 1С является далеко не идеальным инструментом, то для бизнесмена же это проверенный и раскрученный продукт на который можно всегда найти кадры.
Альтернативу искать дороже.
reallord
В том то и дело. Когда вопрос заходит о том, чтобы для компании написать свою информационную систему с 0 или взять 1С и немного допилить, в большинстве случаев все решается в пользу последнего.
Кроме того, в нормальных компаниях ИТ директор хотя бы прикидывает стоимость обсдлуживаний/сопровождения кода.
Даже в глубинке, найти 1Сника который разберестся в коде предшественника при его уходе на порядок проще, чем найти JAVA программиста.
А это один из ключевых факторов. Я знаю что МНОГИЕ компании только из-за того что 1Сников много, а SAPовцев мало, принимали решение о внедрении 1С.