Что будет если сольют ваш код
Почему слитые исходники Яндекса никак не помогут вам сделать свой Яндекс.
Сколько занимаюсь заказной разработкой столько же слышу эти крики ужаса и отчаяния:
Cольют исходники, тайно соберут и начнут продавать из под полы и разбавленным.
Никакие даже самые лютые NDA не помогают — страхи только множатся. Руководство боится и «принимает меры»:
удаленная запись с экранов программистов, блокировка выхода в интернет, запрет на носители, разграничение доступа к исходникам и так далее.
Естественно все это сильно мешает нормальной работе, само собой что ничего из этих мер не имеет ни особого cмысла ни практического эффекта.
Ниже, на конкретных примерах постараюсь развеять эти страхи, хотя бы частично.
Хотя-бы для простых зрителей обывателей.
Но очень надеюсь что это прочтет кто-то из ЛПР, задумается и перестанет творить х#йню.
Ничего не будет
Краткость — сестра таланта, ага.
Пример первый: ваш «уникальный» стартап
Вы такие молодцы — запустили первую версию посадочной страницы, на открытых PHP и Nginx конечно.
Затем запустили ваше «уникальное облачное решение по сдаче презервативов в аренду».
«Дважды Штопаный» LLC — дарю идею и название, если кто готов взяться за реализацию.
Запустили на фреймворках c открытым исходным кодом, не заплатив ни копейки:
Angular/React/Java/.NET/Golang.
Ну и данные в вашем «уникальном облачном решении» пишутся в какой-нибудь открытый Postgres или MongoDb.
В итоге получается что весь ваш код в вашем же решении это скрипты сборки да пара десятков методов бизнес-логики.
И что спрашивается тут воровать?
для софта, продаваемого по SaaS-модели, техническая реализация вторична.
Первичен сам сервис: его удобство, функционал, даже цена, но не реализация.
Поэтому фокусироваться на копирастии на начальном этапе жизни стартапа это как пытаться бегать ползком в марафонском забеге — для успеха такое точно не надо.
Еще раз
Вот вам другой пример, допустим вы сделали отличный сервис по убиранию фона с картинок. Запустили, он работает и приносит деньги.
И вдруг кто-то ворует исходный код вашего сервиса и делает клон.
Потому что работающий бизнес это не какой-то там код, хоть трижды оптимизированный.
У клона не будет ваших клиентов, не будет вашей команды и вашего опыта. Клон это просто «слепок в моменте» вашего проекта, фотография.
Это как разница между фотографией Lamborghini и реальным болидом.
А путь, который клону на ворованных исходниках предстоит пройти чтобы отобрать у вас рынок вполне сопоставим с путем от картинки машины до создания реальной машины.
Да кстати, вы же слышали наверное нетленку:
«разработка не должна общаться с продажами, иначе они у вас все сп#здят и убегутстроить свой цирк с понями.
Разные коучеры любят таким тепленьким ссать в уши, пугая директоров за деньги.
В реальности же — конечно нет, так просто это не работает.
Куда чаще беглецы через год разосрутся в хлам, при дележке будущей прибыли.
А получается только у таких же как вы, уважаемый директор (если кто вдруг читает) — умеющих договариваться, не боящихся трудностей и целенаправленно работающих.
Ну, а если вы умеете работать и договариваться — зачем вам в принципе чего-то там воровать?
Построить бизнес на воровстве не получится никогда и ни с какими технологиями. «Творческое заимствование, переосмысление, переработка, другая подача» — называйте это как угодно, но сей процесс не является прямым воровством и клонированием.
На этом погорели многие и многие:
Видите это кладбище велосипедов? — просто очень много людей сразу решили клонировать идею велопроката.
Пример второй: корпорация и конкуренты
«За одним большим братом всегда зорко наблюдает другой большой брат», «конкуренты не дремлят» и еще тысяча таких цитат великих композиторов.
Часть правды в этом конечно есть, но лишь часть.
для стабильного известного и понятного продукта, с историей, с узнаваемым брендом, с отлаженной поддержкой и так далее — раскрытие части внутренней кухни в виде исходников может лишь повысить цитируемость, но точно никак не навредит.
Покупают продукт а не исходники, хоть убейтесь.
Сделать продукт из ворованных исходников — на 90% тоже самое что сделать с нуля.
Это долго, сложно и очень гемморойно, тем более в нынешних реалиях.
тот кто в состоянии создать новый продукт — не станет тратить время на воровство чужого.
И не надо рассказывать про Дурова или Цукерберга — вас там не было, свечку вы не держали.
Про святые 90е
Еще я хорошо помню и лично участвовал разгул пиратства в 90е. Даже тогда и у пиратов это работало на продуктовой основе:
банально был продукт по доступной цене.
И никакие попытки задавить и закрыть не помогали.
народ стал сильно богаче, а лицензионные сервисы — доступнее.
И все, на этом пираты кончились.
Потому что создавать пиратский продукт: делать сборки, клонировать, реверсить, русифицировать — внезапно работа, сложная и тяжелая. Заниматься таким на ежедневной основе и без каких-то финансовых сверхдоходов просто не имеет смысла.
Это уже не бизнес, а просто др#чево хобби какое-то.
Утечки из прошлого
Были утечки исходного кода из Микрософта, Сони, Самсунга, НВидии, из кучи игровых студий — ни на что это глобально не повлияло:
Если скажу что умельцы научились собирать 2003й Виндовс из украденных исходников — как на вас лично это повлияет?
Сливали незаконченную версию Half-Life 2, задолго до релиза. Абсолютно никак на продажи это не повлияло, совсем.
Хотя умельцы тогда смогли собрать себе работающий билд.
Вообщем увы но страшные рассказы, про то как слив какой-то секретной работы и тайных проектов повлиял на курс акций компании или еще как-то навредил в долгосрочной перспективе — п#здеж миф.
Про культистов из Apple, внутренний круг, излучение и сатанинские ритуалы — вот это все.
Пример третий: ваш «уникальный» торговый робот
Так получилось что ваш софт каким-то образом научился зарабатывать вам деньги:
«HFT», алгоритмическая торговля, биткойны-блокчейныдорвеи, лимиты выбросов СО2 или гадание на картах в виде Телеграм-бота.
Теперь вы плохо спите ночами: вам снятся кошмары про восстание машин кражу вашего чудо-робота и большие финансовые потери.
Успокойтесь и поймите главное:
Такой софт безполезен без большого профильного опыта и кучи мелких деталей. Скорее всего, без вашего личного участия, вашего торгового бота даже запустить не смогут.
Первое: все рабочие учетки — ваши, счета и договора обслуживания — ваши, условия взаимодействия, % брокеру, % за транзакции и еще куча всего — завязано лично на вас.
Второе: с технической стороны, все подобные проекты что я когда-либо видел, представляли собой просто адское месиво — словами не передать.
От таблиц экселя до выставления ордеров через UDP, все в одном проекте.
И все это с какой-нибудь ML-обработкой. И с зашитыми в код неведомыми коэффициентами.
Чтобы просто начать в этом разбираться — придется потратить серьезное количество времени, которого у воров очевидно нет.
Отдельно про R&D
Есть такой вид деятельности: "Research & Development" оно же «Исследования и разработка».
Для обывателей это выглядит как стерильные лаборатории "Umbrella Corporation», для тех кто более-менее психически здоров близок к ИТ — это такой специальный отдел в большой корпорации, с самыми умными айтишниками и самыми большими зарплатами. После сейлов разумеется.
Чем они там занимаются — мало кто знает, но все думают что утечка из отдела R&D точно приведет к апокалипсису.
Может в корпорации которая производит лекарства, отдел R&D и занимается какими-то адскими экспериментами на грани закона глубоко под землей, но в моей уютной айтишечке все гораздо проще и банальнее:
ребята сидят и изучают новые технологии, можно ли их применить на благо корпорации. Делают прототипы и демонстрации. Статьи пишут.
Собственно даже создание новых продуктов в случае ИТ просходит вне R&D отдела — банально штатными программистами.
Поэтому и риск и содержимое утечки из R&D отдела будет на уровне открытых репозиториев в GitHub.
Так что если вы ожидали событий как в Resident Evil — придется вас огорчить.
Утечка исходников и адские уязвимости
«утечка исходников в паблик равно автоматическое нахождение каких-то уязвимостей, и немедленное их применение».
И вот уже орда злобных хацкеров долбит во все щели ваш несчастный сервис, выводя нецензурные послания на мониторы сотрудников.
К сожалению нет, эту сказку тоже придется развеять:
поиск уязвимостей давно происходит в автоматическом режиме, взлом и захват доступа либо зловредные действия — тоже.
Поэтому наличие или отсутствие исходников никакой роли не играет:
дыры в вашем «уникальном облачном сервисе» найдет сканер, взлом и проникновение сделает робот.
Автоматически, без участия человека. Дальше будет 50/50:
либо подсадят майнер либо криптор.
В первом случае, ваш взломанный сервер начнет майнить биткойны (но вам не отдаст), во втором — все файлы будут зашифрованы, а с вас будут вымогать деньги за дешифровку.
Чтобы кто-то сидел и целенаправленно изучал гору украденного корпоративного говнокода в поисках дыр, а затем еще и лез их применять на ваши сервера — нужно либо кого-то сильно разозлить либо представлять какую-то серьезную коммерческую ценность.
Microsoft с их продуктами представляет такую ценность, поэтому сразу после утечки небольшой части исходников нашли например такое.
Но вам с доморощенными проектами такое не грозит, поэтому опасайтесь лучше роботов и автоматики, а не людей, в вопросах безопасности.
Когда на самом деле нужно бояться
Мне известны три типа проектов, когда действительно нужно волноваться об утечках исходного кода:
- Гостайна — думаю тут причины очевидны. Все что касается этого должно максимально защищаться, без вопросов;
- Бортовые компьютеры для всего летающего и плавающего;
- Медицинское оборудование и его прошивка.
Вообщем везде где есть риск человеческих жертв, каких-то разрушений и прочего крупного криминала.
Вот в этих случаях — да, нужна серьезная безопасность, меры и санкции.
А если вы пилите очередной смузи-стартап или ваш софт деньги считает в корпорации — расслабьтесь, ибо слив ваших исходников никого не интересует.