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

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