Все статьи
Автоматизация

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

Большинство разработчиков оставляют код у себя — и клиент вынужден платить за поддержку вечно. Я передаю весь код при сдаче. Разбираю, что это значит на практике и почему open source стек снижает риски для бизнеса.

Проблема «чёрного ящика»

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

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

Чёрный ящик
  • Код у разработчика
  • Поддержка = вечные платежи
  • Смена подрядчика = переписывание
Открытый код
  • Код у заказчика
  • Любой разработчик продолжит
  • Без лицензий и зависимостей

Что значит «передача исходного кода»

При сдаче проекта заказчик получает:

  • Весь исходный код — в репозитории, с историей изменений
  • Схему базы данных с описанием всех таблиц и связей
  • API-документацию для интеграции с другими системами
  • Инструкции по развёртыванию на новом сервере
  • Описание архитектуры — чтобы любой компетентный разработчик мог разобраться

Это ваша собственность — полностью, без оговорок.

Почему open source стек важен

Все системы, которые я разрабатываю, построены на открытых технологиях:

  • Python 3.12 + FastAPI — тысячи разработчиков, огромное сообщество, не привязан к одной компании
  • PostgreSQL или MySQL — зрелые СУБД, которые существуют десятилетиями
  • Docker + Nginx + Linux — стандарт индустрии, работает на любом хостинге

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

FrontendHTML / CSS / JS
APIPython 3.12 + FastAPI
DatabasePostgreSQL / MySQL
InfraDocker + Nginx + Linux

Сравнение с проприетарным подходом

Некоторые разработчики строят системы на собственных платформах или фреймворках. Это не всегда плохо, но несёт риски:

  • Найти специалиста по редкой платформе сложно и дорого
  • Обновления платформы могут ломать ваш функционал
  • Лицензия на платформу — ещё один ежегодный платёж
  • При смене разработчика — обязательный этап «погружения» за ваш счёт

Нет скрытых зависимостей

Все используемые библиотеки — open source с открытыми лицензиями (MIT, Apache, BSD). Я не использую компоненты с ограниченным коммерческим применением.

Весь список зависимостей фиксируется в файлах `requirements.txt` и `docker-compose.yml`. Вы точно знаете, из чего состоит ваша система.

Что это значит на практике

Через 5 лет после внедрения вы можете:

  • Нанять любого Python-разработчика для доработки
  • Развернуть систему на любом сервере без дополнительных лицензий
  • Мигрировать на другую инфраструктуру без переписывания
  • Провести аудит безопасности системы независимым специалистом

Это и есть настоящая независимость.

— Артур Карданов

Все статьи
Выберите удобный способ
Telegram