Как стать автором
Обновить

Комментарии 11

Контора, которая пилит решение под свои бизнес-процессы, может выложить свой код в опенсорс. Только этот код никому не будет интересен, по той простой причине, что у конкурентов — свои бизнес-процессы, отличные от. А пилить универсальное решение безсмысленно — бизнесу нужно решение под конкретные имеющиеся бизнес-процессы.

Итог. Никто не будет использовать, тестировать и контрибутить в этот проект. Смысл опен-сорса — теряется.
Можно выкладывать в open source модули и плагины, которые могут быть использованы другими. Например, мы сейчас планируем пилить внутреннюю систему для контроля разработки и собираемся разделить её на 2 части — opensource ядро (Agile Board для разработчиков со счетчиком времени, который работает на Issue движке Gitlab) и генераторы отчетости, которые будем продавать, либо смиримся и родим мамонта. Но хотя бы ядро будет жить и обновляться, а это больше половины кодовой базы. В тот момент, когда мамонт умрет, нужно будет переписать только несколько гнилых кусков.

Компании тоннами рожают внутренние PHP-фреймворки, JS- библиотеки, сервера очередей и даже базы данных. И хоронят их так же тоннами. В таких случаях частенько их «узкозаточенность под бизнес-процессы» выдумывают из-за незнания best practices и нежелания погуглить или наличия ментального трения в восприятии трендов.

И нет, даже, если этот код никому не будет интересен для использования, это будет портфолио и мотиватор Ваших разработчиков. Да и код, который пишется публично, обычно пишется чище и старательнее. Плюсы все равно есть.
> В тот момент, когда мамонт умрет, нужно будет переписать только несколько гнилых кусков.

Наивная мысль. Мамонт умрёт не весь, и не так, как вы ожидаете. На рынке не будет ничего с совместимым Api (ни на уровне бинарной совместимости, ни кодовой, ни идеологической).

Переписывать придётся много, на порядок больше, чем можно подумать. Поэтому мамонты и живут много лет даже после обнаружения подходящий аналогов
Не очень понял мысль: «На рынке не будет ничего с совместимым АПИ». Шанс, что совместимость будет с open source проектом, мне кажется, все же выше, чем шанс найти совместимость с проектом, который держится в корпоративных подземельях и гниет там. Если конечно не было отдельных «бюджетов под интеграцию».

Я находил совершенно дикие интеграции, которые писали фанаты той, или иной системы. Что стоит интерпритатор PHP как база для десктоп-Windows приложений с GUI.

К тому-же разработка из моего примера в принципе основана на интеграции с API другой open source системы, что как бы немножко намекает, что если мы будем стараться держать open source составляющую в адекватном состоянии, мы получим рабочую интеграцию с последней версией GitLab на момент смерти мамонта.

И да, я знаю, что они «живут долго после обнаружения аналогов». Только в статье я назвал это «смертью», потому что эти процессы гораздо более похожи. За мою практику такие проекты ничего больше, чем стыд технарей, неудобств, смятения новичков и нежелания о них думать руководства, не вызывают. А еще, да, в тяжелых случаях такая «жизнь» вызывает кадровую текучку. И такое я тоже видел.
Если конечно не было отдельных «бюджетов под интеграцию».

Шанс, что интеграция с проектом, у которого были бюджеты на интеграцию выше, чем с другими. Но, если не придумывать искусственных ограничений, то остальное Вам кажется.

Рабочую интеграцию Вы может и получите, но gitlab к тому моменту будет напоминать «cvslab», то есть какую то старинную даром не нужную штуку
может выложить свой код в опенсорс. Только этот код никому не будет интересен, по той простой причине


Потому что без документации.
А исчерпывающую и красиво оформленную документацию по внутренним системам редко делают. Ибо там много общения личного.
> В мире есть прекрасные оттестированные аналоги, которые решают проблему гораздо лучше.

Зачастую это не так. И про оттестированные это очень громко.

> Open Source 1.Бесплатных тестировщиков

Нету их. Даже если вы будете пиарить Ваш проект.

> Open Source 2.Высокое качество кода

Это иллюзия. Как правильно написал ServPonomarev — оно высокое только если основному разработчику нужна та или иная функциональность. А как только ты используешь проект «по своему» — вылезают новые баги. И основному разработчику решать их нет никакого резона (сроки, бюджеты).

> Open Source 3. Имидж 4.Мотивация сотрудников

Это я считаю важно как для современных компаний так и разработчиков. Но на это надо выделять бюджеты на что готовы не все.
Да, согласен, причины смерти мамонта могут быть необоснованными. Но представьте, что ваша внутренняя разработка набирает обороты и сама замещает мамонтов у конкурентов. Шанс необоснованного убийства будет поменьше.

Про отсутствие тестировщиков: я вижу прямо противоположное. Откройте любой более — менее популярный репозиторий на гитхабе — вы найдете целую кучу issue, которые добавили проходящие мимо люди.

Качество кода высокое так же и за счет «правильного» процесса разработки с применением TDD, CI, code-review через PR, которые приняты вы open source. Посмотрите на репозиторий языка Rust для примера. Чтобы туда законтрибьютить, нужно сделать несколько подходов и учесть замечания команды. И люди делают свой вклад даже не смотря на драконовские проверки, потому что понимают обоснованность этого решения.

Конечно, если развивать проект как open source и забить на все принципы работы в этой сфере, упереться в хардкорный enterprise опыт и продолжать применять те же практики (пресс-релизы вместо общения, конференции с sales питчами, технические специалисты по устарелым технологиям), вы получите репозиторий с 1 звездочкой от собственного субподрядчика и треш-кодом в PR от стажеров. Можно будет смело рапортовать начальству, что идея провальная, деньги потрачены, а профита нет.

Но open source — это не просто выложить код на гитхаб, это еще и иной формат работы: публичное планирование, обсуждение фич, сбор обратной связи, формирование сообщества через соцсети и конференции. Это именно не дополнительная работа, а иная. В некоторых случаях большая, в некоторых — меньшая.

Есть примеры компаний, которые выбрали этот путь и результаты воодушевляют.

По поводу бюджетов раскройте пожалуйста мысль.
> с применением TDD, CI, code-review через PR, которые приняты вы open source.

Шутите? Откройте любой любительский проект, в который левые люди не контрибьютят (или 1-2 человека комитят 95%).
Нет, не шучу. Именно это я и имею в виду. Ваш проект врядли будет популярен, если он написан без соблюдения этих практик. И как только Вы станете искать причины непопулярности у сообщества, тут же наткнетесь на «правильные» пути развития. Open source за Вас работу не сделает, он может помочь сделать её правильнее, если есть желание, но нет умения.
Mpc-hc, например, не популярен?
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации