№14 Очки в карму, повышение скиллов и проблемы низкокачественного кода в open source проектах | Сергей Бережной, Алексей Федосеев

Hexlet (00:00.046)
Признаюсь, у меня в основном есть один такой проект, который как бы опенсворстный, но там никто кроме меня не комитит. Без вашего кода, это бессмысленно что-то обсуждать. Ты можешь, например, не пытаться создать убийцу React, да, и не попытаться создать фреймворк, калибра.

бы, нескольких лет разработки, нескольких десятков человек. Это очень легкий и дешевый способ получить опыт промышленной разработки. Тягости профессии испытать. Ну, есть строчка в резюме, и это твоя капитализация, то его навык. Я буду вот пилить свой стартап несколько лет, а потом, значит, стану миллионером.

Hexlet (00:44.302)
Всем привет, на связи Хекслет. С вами Александр Русков. И сегодня в нашей виртуальной студии очень интересные ребята. Алексей Фитосеев, президент ассоциации кружков, Сергей Бережной, директор по взаимодействию с разработчиками Яндекса и также эксперт этой ассоциации. Алексей, в двух словах, пожалуйста, расскажи нам, что такое ассоциация кружков. Я уверен, что многие из наших зрителей первый раз это слышат, к сожалению. Добрый день. Мы большое сообщество тех, кто поддерживает кружки, самое разное по программированию, по...

создание каких-то железок и так далее и так далее по всей стране. Мы организуем много разных инженерных соревнований, Олимпиад. И вот сейчас мы взялись за такую большую историю как Open Source. И вместе с нашими партнерами, с министерством цифры, с кучей разных компаний, в том числе с Яндексом, мы делаем вот этот первый большой российский конкурс Open Source для школьников-студентов. Тем, чтобы ребята могли себя попробовать в роли настоящих разработчиков и по контрибьютье в реальные проекты.

или предложить нам свои проекты на конкурсы. То есть, в таком образом, сегодня будем говорить про App-in-Source, и тут я предулю слово Сергею, и я уверен, что ему есть что по этому поводу сказать. Сергей, тоже представься, пожалуйста, расскажи, чем занимаешься. Привет, друзья, меня зовут Серёж Бережной, и также я широко известен в узких кругах под ником Viged. Вот я работаю в Яндексе уже, сколько, больше 16 лет, вот, и всё это время, так или иначе...

Я связан с open-source, потому что много того, что мы делаем внутри яндекса, мы делаем сразу или...

потом открываем код, либо сразу делаем в Open Source. Я являюсь одним из двух соавторов широко известной в узких кругах BMW-методологии для разработки фронт-энда. Мы делали целый стэк всяких разных инструментов, связанных с этим в Open Source. После этого мы делали еще большое количество инструментов, связанных с тестированием, со сборкой. Но это не говоря уже о каких-то маленьких ПЭД-проектах, которые я делал чисто для себя, для души.

Hexlet (02:42.638)
Последнее время я занимаюсь тем, что как-то взаимодействую с разработчиками как внутри, так и снаружи. И в том числе, да, курирую open-source направление внутри Яндекса. Вот много чего пытаемся в этом направлении делать. Как же так получилось, что мы вами собрались в одном месте? Почему open-source – это так важно, раз даже проводится конкурс для студентов и школьников, ему посвященный? Ну, я, наверное, скажу, почему мы решили, что эту штуку надо запустить и сделать таким всероссийским.

масштабом конкурс. Дело в том, что на самом деле сейчас действительно многие ребята увлекаются IT и серьезными технологиями, делают свой проект. Это происходит еще со школы. То есть мы видим, как школьники пытаются делать свой какой-то софт. Студенты тоже пытаются выйти за рамки каких-то простых курсовых проектов и что-то интересное поделать для других людей. Но при этом всем в принципе все знают более или менее азы того, как устроен современной технологией. Что такое Python?

как свой код класть на GitHub и все в таком духе. Но при этом очень мало кто знает про Open Source как таковое. В чем вообще специфика Open Source? Почему вообще классно публиковать проекты под открытыми лицензиями? Что это дает? Что это дает самому разработчику? Что это дает окружающим? Как это работает? Все вот эти нюансы, они неизвестны, потому что нет этого опыта. На самом деле в опыте у современных школьников и у студентов этого нет.

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

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

Hexlet (05:06.606)
с открытым исходным кодом. в принципе, может быть все что угодно, включая какие-то и коммерческие программы, в том числе там та же самая Udacity, которую некоторые, значит, сейчас используются. Она тоже как бы вонсорстая, но ты можешь заплатить за нее денег, если очень хочешь. Ну или там классический пример, это WinRAR, который был бесплатный, но не был вонсорстным, и все еще тоже хотел денег, да. Вот о чем мы сейчас говорим. Мы же говорили не просто про соц.эксперимент, а про видимо комьюнити, да, какое такое крутого строится, про принятые практики и так далее. Вот что из этого важно в той теме, которую мы обсуждаем.

Сергей, может быть, ты нам раскроешь свою спецпеки его? Действительно, ты прав, что что такое открытый код – это вопрос таких терминологических преней. И достаточно ли просто открыть код, чтобы он был… чтобы проект мог посчитаться open-source?

Или же нужно обязательно снабдить его правильной лицензией, Contribution-гайдом, показать, что у тебя есть вообще какой-то внешний поток контрибьюторов. Потому что, например, очень многие проекты, формально открыты, но в них никто, кроме автора, не коммитит, никто, кроме автора, не создает никаких issues, никаких feature-request. Я не знаю, я смотрю лично на это все-таки более так либерально и широко.

Мне кажется, что угодно, что так или иначе как-то открыто, это уже та или иная разновидность open source. Просто как минимум по определению, если этот код открыт. Да, понятно, что дальше, когда мы говорим о практических применениях, становится важно и та же самая лицензия, и когда мы, например, рассматриваем, используем ли мы этот код или не используем, важно, какой у него именно…

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

Hexlet (07:21.358)
на удачу выложить что-то, а вдруг кому-то это понравится, а вдруг кто-то это найдет. Ну, почему нет? Ну а какие все-таки, скажем так, какие благородные цели может представить разработчик, который хочет вложиться, законтребюрить, что называется Open Source? То есть сделать там проект для себя и выложить его на GitHub, ну в принципе, думаю, что там у каждого разработчика что-то подобное есть. Пять проектов, либо просто тестов заданий, же самые, которые ты делал для кого-то, они остались на GitHub, потому что там ты их показывал, собственно, тому, кто тебе их прислал.

Признаюсь, меня в основном есть один такой проект, который как бы опенсорсный, но там никто кроме меня не комитит, оказались к ним исключением тех, кому это интересно. Как бы могу ли я считать себя контрибьютором опенсорс-вообще движуху в таком раскладе? Что хочется увидеть какие-то важные вещи? Что является прямо вот это?

Чему вы, лично, вы хотели бы, во что вы хотели бы привлечь внимание? Каков идеальный портрет open source, То есть, open source, open source, розен. Да, что должно случиться, чтобы люди, которые занимаются участием в этом конкурсе, действительно потратили время как бы с умом? Вот так, давайте спрашиваем. Не, это все-таки, мне кажется, два разных вопроса. Потому что с умом, ну, это такой… Даже если это будет contribution с весьма, потому что называется пониженной границы, да, с весьма каким-то ограниченным, ну, таким…

называется, выхлопом, то мне кажется, это всё равно будет лучше, чем ничего. То есть мы… Мне кажется, почему я присоединился к этому кружковому движению, да, у меня в принципе есть в том числе опыт участия в каких-то обучательных программах, вот у нас есть, например, школа разработки интерфейсов, да, которой я большое отношение имею там всю её жизнь. Вот. И часто возникает такой вопрос, а можем ли мы рассчитывать на что-то серьёзное, когда мы подключаем…

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

Hexlet (09:33.038)
Поэтому не смотрите на непосредственную пользу от того, что вы за опенсорсили какую-то конкретную библиотеку. Смотрите на пользу от того, чтобы вы поняли, как это делается, вы будете использовать этот опыт в каких-то будущих проектах. Ну вот, именно в таком ключе. Особенно это актуально для молодого поколения, где более принципиально скорее научиться и получить какой-то опыт, нежели получить какой-то сивиминутный результат прямо здесь и прямо сейчас.

Я бы здесь добавил еще, может быть, что мне кажется, интересное здесь, конечно, появляется, когда появляется другой человек. есть вот есть вы, код, это круто, то есть это первый шаг без вашего кода, как я выше говорил, да, бессмысленно что-то обсуждать, а затем появляется другой человек. И этот другой человек может быть, например, пользователем. И вы вдруг заметили, что то, что вы делаете, другие люди могут использовать и как-то им от этого станет лучше.

вы немножко поменяли мир на самом деле, в лучшую сторону, потому что вы помогли другим людям. Потом появляются какие-то соратники, которые говорят, а, вообще-то тоже нравится то, что ты делаешь. Мы тебе предложили такую фичу, что ты про это думаешь. Давай тебе код пришлём, ты его к себе включишь. Ну и дальше какой-то процесс начинается. И вот этот маленький шажочек, который вначале кажется, такой не важный, то, что появился другой человек.

Он на самом деле гигантский, потому что когда вы делаете просто там курсовик, который ляжет в стол, и никто, кроме вашего наушника, на него не посмотрит, вы на самом деле добрата большого мира не делаете. Вы, может быть, чему-то научились, но вот этого эффекта обратной связи, какой-то положительной энергии, то, что вы вообще-то что-то можете поменять в этом мире, изменить там, что-то помочь кому-то, это же на самом деле огромная вещь. Она в том числе очень полезна, мне кажется, для разработчиков, которые должны понимать, что вообще-то в мире...

IT, конечно, бывают там и всякие не нужные никому истории, особенно в корпоративном мире такое встречается сам, в прошлом IT-шнике. Но в мире как бы open-source такое реже именно в той части, где есть люди. То есть ты сразу видишь эту обратную связь и ты понимаешь, что можно поменять. Это, мне кажется, супер круто. Ну и второе, наверное, то, что…

Hexlet (11:42.798)
Уже, наверное, для тех, кто сделал первый шаг, уже для более продвинутых участников этого движения, это как раз сообщество. То есть это как бы люди, которые становятся тебе как друзья, как те, с кем тебе интересно что-то делать дальше по жизни. И это как бы такие горизонтальные связи, которые очень много стоят в любом случае. Кем бы ты ни работал, где бы ты ни жил, ты всегда можешь как бы опереться на это. Потому что вы вместе что-то делали. Когда вместе что-то делаете, это всегда дает огромную ценность в будущем.

Я бы ещё сказал, что если из таких как-то немножко идеалистических позиций на это смотреть, то у нас, как у человечества, такая перспектива, что мы должны бы, хорошо было бы, если бы мы научились взаимодействовать вместе, как один какой-то такой большой организм, и вместе, чтобы 1 плюс 1 было больше, 2, чтобы мы получали какие-то кумулятивные такие эффекты от того, что большое количество людей…

работают над каким-то общим продуктом. И в этом смысле open source – это очень хорошая тренировка того, как вообще присоседить свой потенциал интеллектуальный к кому-то еще, как сделать так, чтобы вы командно, совместно что-то сделали, и дальше двигались по нарастающей в этом объеме вашего кластера мозгового комбинированного такого мозга. Давайте посмотрим на это с позиции разработчиков.

Как вообще вот я как разработчик, например, что я могу для себя извлечь из этого Open Source опыта? есть мои изменения в мире, они могут быть крайне локальны, скажем так. Если я там какой-то репозиторий просто поправил опечатку в Redme, можно сказать, что я законтребутил Open Source. Формально у меня есть PR, может быть даже приняли. По факту я сделал очень маленький шажок для человека, и тем более для человечества. Вот если я, скажем, начинаюхи-разработчик, мы с вами в хейкстете очень часто советуем нашим студентам, тем кто только у...

обучается, проходят какие-то проекты, чтобы вот копнуть глубже, но когда еще не вышел на работу, пойти в Open Source. Почему? Потому что там, в принципе, есть достаточно масштабные проекты, там уже есть некоторые правила, хоть это, конечно, не компания, там нету устава, но, тем не менее, какой-то кодов-контакт, да, есть практически у каждого серьезная позитория о том, что делать, что не делать, там есть какие-то хорошие практики, как правило, где это может все получиться. Вот, чтобы вы выделили. То есть, если я совсем начинаю через разработчик, например, есть ли вообще смысл идти в Open Source и как мне вообще найти проекты, которых я буду, во-первых, полезен?

Hexlet (14:07.822)
во-вторых, которые будут не по силам. Я начну из образования. Действительно, кажется, Я уже сказал про опыт, это как бы и Александр говорит, это супер ценно, когда есть живой опыт. Но я бы что еще сказал? Все-таки технологии очень часто...

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

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

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

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

Hexlet (16:16.27)
тысячу шагов начинается с одного шага, то, что первоначально ты вступаешь, делая что-то небольшое, оно не страшно, потому что представьте, что каждый из новичков сделает по такому маленькому контрибьюшену, и просто даже за счёт количества новичков, и даже если на этом их контрибьюшен остановится, это уже будет какая-то не нулевая сила. И поэтому вот эта вот мысль…

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

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

А если вектор будет направлен на то, чтобы делать от каждого как можно больше, то вектор направлен как раз-таки в бесконечность. Я бы тут еще дополнил, то есть ровно продолжаю эту мысль, что вообще… Ну, то есть очень понятно для современного молодого человека, вообще для современного человека логика заработка, и стартапа, и всего такого. То есть да, я как бы понимаю, что такое деньги, я понимаю, как их тратить и как их зарабатывать, будучи крутым профессионалом, например, или предпринимательным.

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

Hexlet (18:30.126)
есть этим хорошего подсорта. Ты не просто о чем-то поговорил, кого-то убедил, а ты просто сделал продукт, который другие люди могут просто брать и использовать, и ты уже сделал этот вклад. Это очень крутая штука, потому что она учит ребят доводить проекты до результата, шансонного для других, при этом не обязательно зарабатывает. То есть это немножко другой стиль жизни.

Понятно, что одно другому не мешает, и на Open Source тоже некоторые пробуют и даже как-то умеют зарабатывать. Но здесь я именно говорю о том, что это еще какая-то ценностная максима, не всем в современном обществе, немножко повернутом на деньги и заработки, очевидна. Хотя для здорового, мне кажется, мира и здорового общества должна быть эта роль, эта функция, потому что она балансирует наш мир в эту сторону. Ну, согласен, да. Делать что-то только ради денег.

не так часто приводят к позитивным последствиям, чем делать что-то ради того, чтобы это сделать. Про заработок мы еще поговорим, у меня пока хочется немножко еще доразвить тему, опять же, ставясь на позицию разработчика. Все описанные преимущества я в целом согласен, но из них как бы вытекают изогнамерные недостатки, да. Ну, например, я согласен с Сергеем, что, конечно, было бы здорово, если бы люди собрались в один волевой кулак и делали какую-то важную вещь полезную для всех. Реальность показывает, что чаще всего люди в Open Source особенно.

делают одно и то же с нуля, многократно повторяя уже как бы пройденные пути. Это же тоже прикольный момент, потому что это в каком-то смысле эволюционный подход. вот там, например, если мы возьмём, допустим, мы хотим сделать какой-то новый продукт, сколько нам нужно людей, чтобы его сделать? Мы такие берём, смотрим на, допустим, существующие какие-то аналоги.

допустим, там вот есть команда, которая сделала такой продукт, она была там x человек. И ошибка – считать, что с помощью вот этих x человек сделан был этот продукт. Потому что на самом деле этот продукт жил в какой-то экосистеме и в какой-то конкуренции, и были еще y-команд по x человек, которые тоже пытались что-то такое сделать, и только вот какой-то конкретный продукт, ну, что называется, победил. Это вот такая вот, может быть, там…

Hexlet (20:46.222)
можно спорить об эффективности этой модели, эволюционной или какой-то целенаправленной развитии. Но тот факт, что много людей копают параллельные тоннели, до известной степени не так уж и плохо, потому что именно это копание параллельных тоннелей даёт какое-то видовое разнообразие и позволяет им эволюции проявлять себя, и позволяет найти какие-нибудь там…

необычные решения. Об этом еще Эрик Рейнман писал в соборе «Базаре» про вот эволюционность. Но там, мне кажется, еще прикольная вещь, которой я бы допомнил Сергею, что это такая конкурентная кооперационная штука. То есть, какие-то проекты, они сливаются в союзы и начинают использовать технологии друг друга. Подсматривают что-то друг у друга. Да-да-да. И это как такая действительно живая система, в которой правда выживают те, как бы… Даже в биологии же говорится о том, что популяция выживает, а не отдельно особы. То есть, некоторая общность…

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

центров силы, где много людей, где люди перетекают из одного проекта в другой. В целом система оказывается более устойчивой. И это, на самом деле, интересно именно с точки зрения такой, да, действительно, быть, взглядов всего человечества, что бы ни происходило, консорственное сообщество живут, бы развиваются, продолжают как-то, перебарывать внутренние какие-то кризисы и делать то, что они делают. Можно ещё провести аналогию с…

рыночной экономикой и какой-то плановой экономикой, что да, рыночная экономика, возможно, менее эффективно может показаться из-за того, что мы несколько раз одно и то же повторяем и несколько раз прикладываем усилия, но тем не менее, на определенных масштабах, и опять же исторически, если глядеть, то рыночная экономика часто проявляет себя эффективнее именно…

Hexlet (23:08.142)
на следующем уровне. То есть она может быть неэффективна с точки зрения каждого отдельного момента, но вот общая выживаемость и общая эффективность системы, она может быть как раз и выше. Не, ну в этой аналогии все как раз прозрачно. Если говорить про рынок, экономику, то она характерно хороша тем, что лучше все подходит к созданию новых продуктов. Что мы собственно наблюдаем, как бы весь это зоопарк, бесконечного потока библиотек в НПМ.

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

Но я хотел сказать, что все-таки мы же наблюдаем, что крупный бизнес очень активно подминает под себя, может я выбрал не самоточное слово, но так или иначе интегрируется в Open Source, и самые ходовые, самые популярные Open Source решения, все-таки, по крайней мере в масштабе самых популярных языков, будь то питон, JavaScript или что-то похожее, они сделаны либо купленными, либо сделаны корпорациями. есть, брать JavaScript, то вообще все прям...

Ну супер наглядно. есть React это Facebook, Angular это Google, TypeScript это Microsoft. Даже это уже какая-то конкуренция. А это ты только перечислил самый топ. К чему я подвожу это? Что если на эту ситуацию посмотреть, мне, как человеку, который, допустим, я был бы наличком в этой сфере, пришел, мне хочется что-то сделать. Но есть ли у вообще шансы конкурировать? Там же столько всего сделано. Как вообще зайти в эту сферу? Как вообще сделать… Ну, во-первых, выбрать нишу.

То есть можно делать то, что мне нравится, но может сказать, что мне нравится, никому не нужно. Стоит ли это делать? Да, такой вопрос, более, конечно, личный, более моральный, более какой-то психологический, но тем не менее, я как человек, который в эту сферу только входит, я могу испытывать эту фрустрацию. И от того, что, тем более, если эти репрессии, там, на самом деле понятно, что все это open-source и децентрализованное управление, по факту везде есть монтейнеры, везде есть какой-то центральный комитет, скажем так, партии, которая все эти решения принимает. И мои там замечательные идеи, если я уже беру существующий проект.

Hexlet (25:27.054)
как мне кажется замечательно и могут просто быть не приняты. У меня сейчас такое было в практике. Причем я это могу сказать, мой пример. Я просто взял библиотеку, которая уже была написана для меня. У меня нашлась проблема, я ее зафиксировал, проблему для себя опять же. Отправил кампинг, сказали, блин, дружище, кто не написал тест, извини, мы его не примем. На мой взгляд, это как бы полностью однуляет вообще ценностную модель этого проекта, потому что я нашел проблему, я ее исправил. А ваши тесты, которые там были, они никак не могли ее локализовать по факту. То есть в принципе, казалось бы, мне казалось бы, что я сделал что-то полезное.

мантейнеру так не показалось. меня по стоятву лично надолго отпало желание вообще куда-либо шоу Катрибьюджи, я просто, переделаю локальный какой-то библиотек, правлю там байк, который там нахожу, и если у меня очень хорошее состояние отправляю PR в оригинал, но это бывает редко. Вот как с этим бороться и как на это правильно майнсет построить, как на это посмотреть, особенность начинающих разработчиков, что вот сразу как бы это тебя не отталкивало, потому что естественно все это тоже есть. К вопросу про баланс между плановой экономикой и рыночной, да, мне кажется, что оптимальная система…

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

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

более или менее какой-то эволюционный подход. И тебе важно просто подобрать по калибру себе задачу, и что ты… чего ты хочешь достичь. Потому ты можешь, например, не пытаться создать убийцу React, и не попытаться создать фреймворк, калибра, бы, нескольких лет разработки, нескольких десятков человек. Ты можешь внутри этого, допустим, продукта сделать какой-то contribution.

Hexlet (27:45.774)
Ну, каком-то смысле, там, не знаю, сравнивая себя с другими людьми, которые делают этот Contribution. во-первых. Во-вторых, тебе не обязательно сразу с самого начала пытаться как бы заскочить наверх этой горы, да, потому что, ну, ты можешь получать бенефит. Хочется же. Даже от того, что ты находишься где-то, на своем месте, да, со размера своему, как бы, текущему уровню, да, со размера своему калибру развития.

Я бы здесь еще одну знаменитую фразу сказал, мне кажется, она очень важная, это фраза «Just for fun». То то, что ты делаешь, оно вообще-то должно тебя переть. То есть это вообще, мне кажется, Open Source с этим тоже отличается от некоторых или даже может быть большинства компаний, которые просто тебе дают разнарядку, и ты там сидишь, и делаешь код, потом уходишь в 6 часов вечер, как бы домой или в кино. И в этом смысле…

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

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

то наверняка найдутся в нашем большом открытом горизонтальном мире другие люди, которые посмотрят и скажут, Эвану, правда какая-то классная штука, дайте-ка я тоже попробую использовать. То есть, здесь очень важно, что у тебя есть что сказать другим, то есть у тебя правда есть крутая идея, и если она у тебя есть, и ты её довёл, не бросил, то мне кажется шансов очень много. Сейчас настолько всё связано, настолько много возможностей найти других людей, которые делают интересные вещи.

Hexlet (29:54.638)
А с другой стороны, если тебе просто нравится делать маленькие дела, это тоже круто, если тебе это прет, то это как раз то, что будет работать. По поводу Just for Fun, хорошая, мне кажется, аналогия. Вот если человек начинает играть в шахматы, в шахматы, которые уже просчитаны компьютером до дна, и ты уже точно не заберешься ни на какой верх, и ты точно, если тем более начал играть не в 4 года...

вряд ли станешь мировым чемпионом или даже получишь разряд. Но это всё равно прикольно. И точно таки не в шахматы, в доту, во что-нибудь ещё. Ты это делаешь просто потому, что тебя привёт от самого процесса. Не потому, что ты хочешь стать лучшим в мире киберспортсменом или шахматистом, или художником, или музыкантом.

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

Я могу тут ответить сам на свой вопрос, перефразируя то, что вы сказали. Надо, тебя персом процесс, и тогда, соответственно, возможные поражения и сопровождения с неприятелями твоих идей не будут вызывать такой фрустрации, потому что тебе все еще было вечно в процессе. Но мы понимаем, если бы все разработчики абсолютно в индустрии были бы задрайвованы именно такой мотивацией, то их вопрос бы не стояло вообще. Все бы от Open Source только фигачили, потому что всем нравится что-то фигачить. Про неприятие идей я бы еще сказал, что вот

что пример, который приводил про ментейнера, который послал по поводу, или денег, комплайенс, это же, на самом деле, том числе, некоторый социальный вызов. Для кого-то это, наоборот, будет драйвером типа, а чего он меня послал? Я сейчас покажу им, что я круче умею. И довел, показал, дальше стал ментейнером в этом же проекте.

Hexlet (32:06.83)
Понятно, что каждый монастырь со своим уставом, и очень часто эти правила не просто придуманы и так далее, и в этом есть в том числе социальная вызов и игра. Если относиться к этому не как со звериной серьезности, а именно как к более живому процессу. Здесь такая игра, мне нужно понять эти правила, социальные правила, как они устроены, и сломать ее, и довести дело. То это тоже может быть для особого типа людей.

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

из тех, кому хотелось показать, не востребовано, не актуально. Но да, это часть процесса. Я тоже согласен, что рано или поздно, если смотреть просто как данность. Вот, это часть. На работе тоже так бывает. В принципе, я могу тоже высыпать защитник Open Source как платформа для получения опыта новичка в том числе, потому что многие процессы, которые в Open Source проектах хороших приняты, они безусловно существуют в коммерческом мире разработки тоже, но в Open Source они гораздо более уже доведены до ума.

потому что им, как правило, не мешает бюрократия, им не нужно написать 125 тысяч бумажек про комплайенсы. Есть правила, если они уже выработаны в некотором сообществе, они обычно там указаны. Ты можешь им не следовать просто каждой части в этом сообществе, но в остальных случаях ты получишь весь тот фидбэк, который ты не всегда еще получишь на реальной работе. Не могу говорить про Яндекс, но большинство маленьких компаний такими аспектами, как код-ревью,

дизайн документы и тесты спецификации просто не заморачиваются. В Open Source проектах достаточно много, даже в проектах небольшого масштаба. В этом смысле мы немножко вернулись на предыдущую тему, как это помогает новичкам. Это то, почему я согласен, что когда вы говорите в Хекслите и рекомендуете новичкам присосеживаться к какому-то существующему Open Source проекту, это очень легкий и дешевый способ испытать какой-то такой…

Hexlet (34:30.158)
получить опыт промышленной разработки, когда действительно у тебя есть… Тягость и профессии испытать. Да-да, когда у тебя есть больше одного человека в команде, когда у тебя есть какие-то разработческие практики больше, чем для одного человека и так далее. Вы затронулись интересную тему заработка, то есть понятно, что есть люди, которых придется просто писать код, я, возможно, числе, есть люди, которых это придется до тех пор, пока они платят по большей части.

как найти баланс, понятно, что любая работа в конце концов имеет шанс заставить тебя заниматься тем, что тебе не нравится, заниматься только тем, что тебе нравится долгое время все равно не получится, потому что что-то есть, как-то поддерживать штанишки. Если человек горит идеей, ему хочется что-то сделать, но он не видит для этого прямо сейчас коммерческого приложения, стоит ли присоединиться к себе стартапера и мечтать о стартапе «Единороги» или как еще можно пойти в open-source?

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

Как еще к этому вопросу можно подойти? У меня какие есть мысли? Во-первых, есть строчка в резюме. И это то капитализация, его навык. Мне кажется, практически... И Чарли смотрят на это, и Лиды смотрят на это, и код, который всегда можно посмотреть своими глазами, убедиться в том, что человек действительно по себе пишет не руду.

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

Hexlet (36:48.142)
то ты можешь этим просто на работе заниматься. Вот. Но так я бы ещё что сказал… Ну, это привилегия крупных компаний эти. Ну, это привилегия больших компаний, да, или это привилегия не очень больших компаний, которые просто делали ставку на пансорство. Такое тоже бывает. В общем, к примеру, из России даже… Я бы даже сказал, что, возможно, в маленьких компаниях это не меньше распространено, потому что в крупных компаниях ты должен заботиться как бы об эффективности, там есть какие-то отточенные процессы, и мышь не проскользнёт мимо плана.

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

Я про это же говорю, что open source за зарплату вполне может быть в маленьких компаниях, потому что, например, компания с технологической точки зрения делает на это ставку, или она использует это как какой-то способ добавить фана в работу, потому что сложнее привлечь людей в этот проект. Или она в такой сфере типа security, где просто это как бы норма некоторой, где продукт публиковать. Но там есть на самом деле вариантов много.

Я бы добавил еще, я, поскольку мой личный пример более любопытный, есть я ушел с программирования, я работал из стартапов и в большой компанию Open Source занимался, потом ушел в образование. Потому что мне показалось, что мне было мало обратной связи, то есть у меня было мало как бы фидбека от того, что я делаю. Но может быть это как раз и есть в этом. Одной из причин было в том, что я не нашел классного Open Source проекта, который бы мне давал такой фидбек и как-то не нашел себя в этом.

Но мне кажется, это путь, который на самом деле не с какой-то конечной точкой. То есть, можешь пройти много итераций. То есть, ты можешь прийти из стартапа в большую компанию, а потом заняться open source, а потом вдруг понять, что ты можешь применить в стартапе, а потом опять вернуться в open source. Очень много есть у меня знакомых, которые прошли такой путь. И это нормально. То современная индустрия, она очень гибкая, она очень включает в себя много инструментов open source внутри корпорации.

Hexlet (39:11.086)
И много всего такого, где ты можешь просто двигаться, пока тебя это прет между разными интересными задачами и позициями, в том числе понимая, что тебе может встретиться open source. Или параллельно работая над open source, который увеличивает твой вклад куда-то, что потом перерастет какой-то стартап. То есть, что в таком случае. Сергей, может, есть что добавить? Да, я вот еще бы сказал такое. Вопрос ты поставил как то, зачем мне этим заниматься, как мне из этого получить деньги.

Незачем? вопрос как на самом деле встает? Как мне заниматься этим и получать из этого деньги? То первое, нету самоцели получать от Open Source деньги, нету самоцели заниматься Open Source. Тут скорее на это надо смотреть как на то, что с помощью Open Source можно поднимать свой скилл и зарабатывать деньги, быть более привлекательным в командной работе. Вот как мы обсуждали, что ты оттачиваешь этот навык.

Ты используешь этот навык где-то в работе, где-то, где тебе за это платят деньги, ты получаешь какую-то экспертизу, читаешь код других людей, ты эту экспертизу применяешь, обмениваешь её на деньги. По поводу сделать ставку, допустим, на стартап и пилить свой продукт в надежде, что он станет единорогом. Мне кажется, специализация, программирование, она хороша тем, что у нас вот это кривое распределение…

вероятности успеха и денег, такая, что даже самые средние разработчики получают достаточно много денег. То есть она не такая, как, например, не знаю, где-нибудь там в поп-музыке или в производстве этих самых приложений, если смотреть на компании, производящие приложения, что, допустим, там топ 10 % забирает 90 % прибыли, а остальные плетутся хвосте. То есть там как бы кривая распределение такая вот извилистая.

изогнутая сильно. А если говорить про именно отдельно взятого разработчика, то это очень несложно быть, что называется, средним разработчиком и получать чуть выше среднего зарплату, если сравнивать с остальными способами получения денег. И вот в этом смысле это вопрос вашего риск профиля, что вы хотите, мне кажется, очень легко пользоваться этим и не целиться.

Hexlet (41:35.95)
то, чтобы поставить все на зиру и сделать так, что я буду пилить свой стартап несколько лет, а потом стану миллионером. Хотя и такие примеры есть. Но можно вполне смотреть на это как на какой-то способ поднять свои скилы и монетизировать их условно по какой-то планке средней, потому что даже средняя планка в нашем деле дает весьма неплохой дох...

В общем, рассматривать это конвестицию в себя, если я правильно тебя понял. В себя, еще в сообщество, в связи. То есть тут есть еще вот эта коризонтальность, о которой мы говорили. То есть ты как бы узнаешь продукты, узнаешь людей там, ты начинаешь вместе с кем-то что-то делать. То есть это на самом деле очень прикольная штука именно когда на социальный репект включаем. Тут согласен. Вообще как бы получить перспективу рынка, то есть понять вообще, что сейчас делается, как это делается, какими ресурсами. Это очень хороший такой карьерный пункт для специалистов на любой.

ступеньки своего развития, потому что это помогает тебе разговаривать уже с бизнесом, не только с других программистами. Ну, да, такая лирика небольшая. Тут возникает другой момент. Может быть, не для всех это важно, но мне такая мысль приходила в голову. А вот что если я делаю свой Open Source, у нет никакой идеи этом заработать миллиарды денег, я просто уйду, потому что мне нравится, потому что я считаю, что он полезен. Я получаю, например, образы от людей, и мне все говорят, да, классно, мы все пользуемся. Какая-то корпорация...

на этом зарабатывает просто значные суммы, по сути, получая готовый бесплатный продукт. Мы понимаем, что все происходит сплошь и рядом, что лицензии, которые пишут на GitHub, это соблюдается не во всех странах и не полностью, не везде, скажем так, не во всем. И по большому счету мало что мешает тебе взять бесплатную библиотечку с GitHub. Лицензии не ограничивают, наоборот, нас есть нулевая свобода про то, что ты можешь использовать. Просто даже если это будет какая-нибудь лицензия, которая предполагает хотя бы упоминания тебе как автора, не знаю, пусть будет

Creative Commons, BY, C. Даже в этом случае тебе никто ничего не гарантирует, потому что нет никакого... Это же open source, открытая комьюнити, там нет никакого возгладательного органа, нет никакой исполнительной власти, которая как-то что-то enforce-ит. В принципе, возможны варианты злоупотребления, и вот мы на одной из дискуссий предыдущих на тему open source с Юрой Крупейной, мы раз обсуждали этот момент, что оно происходит. Это надо понимать, что так и будет, что компании, корпорации на бесплатных open source продуктах могут зарабатывать огромные деньги.

Hexlet (43:58.03)
Африс не получает ничего. Такова экономическая реальность. Стоит ли на это переживать? А если уж переживать, то как к этому подойти? О чем подумать в процессе? Есть такая книжка. Не так давно написала. Она из США называется Rhodes and Bridges. Она описывает аналогию между современной цифровой структурой и дорогами. Мы привыкли по ним ездить. В принципе, паримся тем, что это...

кто их строит, даже не замечаемых обычно. И дорога есть, и все. И также работает современное IT. в этом смысле, наверное, это начинает задумываться государство. И там должны быть какие-то инструменты поддержки. Раз это дороги, мосты, то давайте... Сейчас про это есть много разговоров. В США и у нас тоже начинаются. Наверное, здесь, правда, если мы налогоплательщики платим налоги, а это жизненно важная инфраструктура, то надо как-то ее вкладывать.

Мы опять попадаем в проблемы планирования и рынка, потому что скорее всего такие деньги будут очень строго устроены, не всегда к сообществам ориентированы. Поэтому это большая проблема, это как бы некоторый вызов на уровне человечества. Пока универсальных решений нет, про отдельно взятого разработчика, мне кажется, это вопрос сообщества. То если у тебя есть сообщество, с которым ты работаешь,

Чем мощнее твое сообщество, тем сложнее на самом деле вас исключить из этой истории. Всегда есть репутации, ряд других институтов, которые начинают работать, когда вокруг много людей. И, наверное, если вы делаете совсем классную вещь, то вас сложно совсем выкинуть из истории. Но это для больших игроков. Ну, по крайней мере, тебя появляется медийный рычаг. Сможешь в статист-лизер нажаловаться и что-то случится.

Да, Medei Dray Chucks у меня на мире он такой очень даже взрывоопасный, поэтому вполне может использоваться. Не знаю, я, может быть, попытаюсь как-то сформулировать какую-то такую немножко альтернативную точку зрения. Вот мы воспринимаем, что если разработчик что-то поразрабатывал, а корпорация потом сделала на этом миллионы, как будто бы это что-то такое нечестное, и корпорация как будто бы у человека это украла. Но ведь на самом деле человек это делал...

Hexlet (46:18.734)
потому что ему в моменте было это по кайфу. Если он это делал, он мог бы это делать, например, точно так же, как какая-то корпорация, как бизнес-проект. Пожалуйста, делай свой стартап, вкладывай в это инвестиции соразмерного калибра и принимай на себя риски соразмерного калибра, и, пожалуйста, конкурируй с корпорациями, и тогда претендуй на вот эту вот соразмерную прибыль. Но если же ты занимаешься этим условно…

как бы вот просто по фану или за текущую зарплату или еще за что-то такое, мне кажется немножко нерационально об этом сожалеть, что «по-вот, а кто-то, используя это, как бы там чрезмерно обогатился», потому что, ну не знаю, с таким же успехом можно переживать о том, что ты не купил биткоины в момент, когда они стоили там один цент, что ты, не знаю, еще что-то такое не сделал, то есть вот это вот…

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

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

В случае Open Source всегда легче показать, чем если это случай закрытых историй. Ты в OpenStack, и все могут найти твою маленькую библиотечку, которая там торчит, и все ее используют. И вот ты уже как бы можешь теперь по-другому строить свою какую-то жизненную стратегию, можешь по-другому общаться с другим разработчиком. Но если ты не бросишь это все, будешь продолжать делать, то ты останешься в этой системе как человек, который вызывает уважение определенное, и этот можно дальше развивать.

Hexlet (48:31.31)
Ну и это можно дальше монетизировать, опять же, если мы возвращались к вопросу про какой-то карьерный капитал, то тот факт, что твой open source лег в основу какого-то коммерчески популярного решения, ну вот, пожалуйста, ты можешь это дальше пытаться монетизировать. Но сокрушаться относительно того, что а кто-то заработал больше денег, чем ты, в том числе, как бы заиспользовав твой Ну по сути, он заработал же твоим трудом, в этом весь как бы все соль.

Мне кажется, что это небольшая иллюзия. смысле… Конечно, нет, 100 % это она и есть, если бы этих иллюзий не было, вопроса тоже не стояла, потому что в конце концов вопрос денег он стоит достаточно острый у большинства людей. Если у них изначально не было претензий на эту тему, они просто сделали, чтобы сделать, у них наверняка их потом и не будет. Они же сделали, чтобы сделать. Они добились того, что хотели, а уж тем более тот факт действительно, что твой пакетик используется Google…

на миллионе серваков и на миллиарде юзеров, в принципе, офигенное признание. Это во многом лучше, чем деньги. А еще, как бы тоже эту мысль, тоже сам от себя могу дополнить, что случаи бывают, хоть они очень частые, но достаточно очевидно, что если твой продукт пусть его сделалось бесплатно на Open Source, если он стал действительно системой разующим для какого-то предприятия, если для них это ключевая часть бизнес-модели в том или ином виде, то большой шанс, что они просто итоге тебя захайрят, потому что им нужно будет его развивать и поддерживать. Им нужно будет развивать и поддерживать ту сторону, куда им нужно.

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

А просто сокрушаться относительно того, что вот я мог бы тогда сделать вот это, и тогда бы получил вот это. Ну, в смысле, что мне кажется, большое количество кейсов, когда все равно, что бы ты ни сделал, найдется рядом человек, которого как бы в два раза больше. Всегда есть изъят, который делает это лучше, как возникла стариная мудрость. Есть такой момент. Ну, целом, я с же Светлом согласен.

Hexlet (50:48.686)
Еще один вопрос у меня теперь уже касаемо, ну, немножко с другой стороны баррикад. Да, скажем, я ментейнер Open Source код проекта, неважно, в ком я, ну, я его сам сделал, пошел там, со временем стал ментейнером, как мне корректно бы себя вести, если мне присылают не самые, скажем так, идеальные pull-request? Понятно, что каждый хочет увидеть фидбэк, но есть проект крупный, там, этих пиаров десятки-сотни, каждый может что-то написать, не в связи с возможностями, как бы, и желания, честно говоря.

Соответственно, те, кто хотят что-то зареквестить, тоже сталкиваются с какой-то фрустрацией, потому что, ну, потому что нет. Им сказали нет, не пойдет. Иногда объясняют, да не объясняют. Как вы считаете, это было бы наиболее правильно с точки зрения здоровья всего в Source Community? Как бы себя правильно уделил с этим антренером? И как бы исполнить какой-то сенс вообще входящего качества? Слушайте, ну я, честно говоря, думаю, что тут не может быть каких-то единых правил, и мы уже поговорили, что в разнообразии как раз и сила Open Source...

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

Поэтому здесь, мне кажется, нет единых правил. У вас просто, как у мейнтейнера, всегда есть ваше время и энергия, готовность кого-то тащить или нет, фрагматика за этим какая-то или нет. то есть очень визуально это бывает. И, это настроение тоже часто зависит. То есть тут много факторов. Я бы сказал, что надо на это смотреть как на ещё один такой аспект навыка современного разработчика.

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

Hexlet (53:05.998)
и покрыт тестами, и разрабатываться в компании с большим количеством других людей, если вы хотите создать действительно что-то большое, нечто большее, чем способен создать каждый в отдельности. И вот все эти аспекты, их нужно развивать в каком-то балансе, потому что перекос в одну или в другую сторону, он, конечно, имеет место быть, вот эволюционность, про которую Леша говорит, да, но мне кажется, в общем, стоит…

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

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

Тут просто от ситуации в проекте зависит много от производства и ситуации в том числе. То принципе, как и по приеме на работу есть просто свой монастырь, свой устав, так или иначе приходится ему соответствовать. Получается так. Хочется еще обсудить такой момент. Если, скажем, я, опять же, новичок в профессии, я не особо даже знаю, куда идти за open-source. Я знаю, что есть GitHub. У Hex это, между прочим, тоже есть собственный open-source-проекты, они опубликованы в соответствующем разделе. Что делать тем, кто вообще...

просто разработчик, я хочу что-нибудь попробовать. Какие есть временные инструменты, где можно найти комьюнити, найти единомышленников, же. То только ли GitHub, Medina вообще в свете живет. Ну вот, смотрите, мы когда наш конкурс выпускали, специально с подачи коллег сделали такой еще направлений Contributions, где ты можешь участвовать не с своим проектом, а участвовать во вкладе в другой проект. И когда это обсуждали, то стало понятно, что...

Hexlet (55:26.382)
Во-первых, есть фактуал очень разного уровня, можно документацию запилить на русском языке, а можно добавку исправить или фичу какую-то сложную новую сделать. А с другой стороны, есть общатый язык, котором проекты уже говорят с разработчиками. Это всякие открытые иши с бактрейкером и кучей других разных способов донести сообществу, что реально нужно. И вот это некоторая культура, которую надо освоить.

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

И искать кусты намного проще, чем просто прийти на GitHub. что теперь делать дальше? Ну, GitHub, опять же, там есть поиск в большим словам, по языкам, там, в принципе, их развернутся. А что там, кроме GitHub, вообще есть? О чем стоит знать всем желающим вообще в Open Source участвовать? Я думаю, если мы говорим про новичков, можно сказать, что GitHub, де-факто, большой сейчас open-source hub. И практически там все проекты так или иначе там представлены, как минимум, какими-нибудь зеркалами.

И точно на ближайший горизонт в несколько лет вхождения в это одного GitHub вам хватит. То есть можно по поискам по GitHub ограничиться. есть у даже сходу были другие репозитории и hub. Но с точки зрения количества проектов и количества людей, мне кажется GitHub далеко обходит всех.

Поэтому этого должно хватить на первое время уж точно. А может быть вы знаете про какие-нибудь региональные аналоги? То есть Китай понятно, что он глобальный, международный, но в разных странах, в числе в России, есть очень крупная сообщество разработчиков своих. Неужели ничего подобного просто для локальной аудитории не сделали, скажем так, русскоязычный пример? Или уж, тем более, я не могу себе сказать, что бы в Китае не было бы? счастью. К счастью, пока не сделали. То и у нас любят сделать что-нибудь такое, что потом еще в основной кектар уже придет комит.

Hexlet (57:48.238)
Тут международность и интернациональность супер важны. В коде находятся open source, и ты работаешь с лучшими людьми со всей планеты, это дает огромный тебе результат. Были попытки это сделать, в том числе, разных теоретических оснований, но, честно говоря, если говорить про технологии, про разработчиков, все равно все рано или поздно возвращается в какой-то усредненный международный...

формат взаимодействия. Другой заход может быть не от проекта, от пользования. Когда я только-только еще давно ставил себе раннюю версию Linux на desktop, там была какая-то проблема аналогов софта, который ты используешь. Где найти нормальный редактор аудио? Там было фрешмиттс, старые времена, которые все смотрели.

То есть, если вы как пользователь или как разработчик, например, хотите использовать какой-то язык, то это для вас тоже точка старта. И вы как бы из этой точки начинаете искать, а вот что бы мне такое использовать как пользователю, или как разработчику пользователя, пользователю технологии. И дальше из этой точки начинаете искать, во что бы вложиться из того, что мне не хватает прямо здесь сейчас. Относительно локальных хабов разработческих, я думаю, что они...

есть и будут появляться. И я бы сказал, что, например, в больших компаниях сейчас есть то, что называется inner source, когда внутри большой компании складывается внутренний свой большой хаб, большой репозиторий, и вы можете даже внутри компании получить опыт, приближенный к опыту open source, когда вы пишете какую-то библиотеку, используют ребята из соседних отделов, и в принципе у вас может быть даже…

количество контрибьюторов и количества пользователей при таком стечении обстоятельств больше, чем если вы какую-то рандомную мелочь выбрали совсем в открытое плавание. По поводу стран пока такого, наверное, нету в больших масштабах, но я думаю, мы имеем все шансы и до этого дожить тоже. что будут какие-то айтишные... Уже сейчас есть...

Hexlet (01:00:10.062)
в странах айтишные, в государственной инфраструктуре какие-то специальные хабы, и это уже начинает выходить на такой государственный уровень. А вообще самая идея опытосворствия, мне кажется, мы просто как бы обсуждаем конкретно при этом на разработке ПОО. На самом деле сама концепция, она очень востребована, мне кажется, людьми в разных сферах и творческих, и производственных, и мы наблюдаем, что есть такие же проекты в сферах, связанные с кодами вообще. Для меня одним из самых знаковых стал проект Splice.

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

Но тут я хочу отметить, что важный момент отличия вообще кода от всего прочего, что в минимально значимый фрагмент, он очень велик. То есть ты не можешь написать 10 строчек, а из этого сделать что-то полезное. Некоторые авторы NPM модулей могут с тобой поспорить. Ну нет, Есть, СТР Подлевт, вот эта известная билетека, там одно время причинила немало страданий. Но по сути, когда уже эта билетека есть, второй раз ты ее писать не будешь, если выкладывать тоже.

Все маленькие полезные фрагменты уже потихонечку заняты. творчестве, конечно, всё проще, потому что ты можешь потратить 10 минут на то, чтобы что-то нарисовать, и это окажется очень крутым. Количество вложенных ресурсов непропрессионально тому, насколько аудитория вообще воспринимает в таких профессиях. В разработке по факту тоже, но если смотреть на ситуацию с вышедшей зрения, то кажется, всё-таки малой кровью в этом не отделаться, поэтому объединяться в эти коллективы и делать что-то более крупное.

Мне кажется, это еще более востребовано. И сама вот концепция децентализованного Contribution, так, наверное, правильно сказать, не знаю, это правильно по-русски перевести. В общем, совместного вклада в какие-то такие проекты, которые по факту не принадлежат никому, мне кажется, за этим будущее не только в разработке, просто разработчики как одни из пионеров оказались. Мне еще кажется, что вот важное отличие от искусства в том, что когда ты создаешь предмет искусства, то это часто во многом снепшот.

Hexlet (01:02:31.95)
у которого нет дальнейшей жизни. Ты нарисовал картину, ты записал трек, и тебе не надо его сопортить, тебе не надо его перевозить на новый стэк, тебе не надо в нем фиксить баги. Ну, никогда. И он часто воспринимается как такой законченный предмет. Ну, понятно, что есть индустрия реставраторов и что-нибудь такое.

или ремастеринга и так далее, но всё равно в целом чаще. А вот с кодом как раз-таки сложнее, потому что обычно решение, которое ты сделаешь, очень редко будет пребывать в таком вот янтаре замороженное надолго, тебе придётся туда так или иначе что-то вносить, мигрировать с одной версии платформы на другую, пересобирать под другие архитектуры процессора.

пересобирать с использованием новых фреймворков и так далее. И вот именно для этого как раз тоже важно попытаться найти кого-то, кроме тебя, и вот этот вот open source, позволяет дать жизнь продукту. Вот нас, например, есть примеры, когда был такой проект, мы его в время начинали там внутри Яндекса, который минимизирует CSS, CSSO, CSS-оптимизатор, вот, и он пережил…

Если они мне не изменят память, там три, по-моему, мейнтейнера. он так вот, как бы, проект существует, он передается от мейнтейнера к мейнтейнеру, и ровно за счет этого он еще не загнулся, и он еще продолжает жить. Вот. И вот вот понимание того, что мало создать снэпшот, а нужно, чтобы этот снэпшот еще и жил, продолжал как пошевелиться, это очень важно, и в этом Open Source очень помогает.

Тут уже, мне кажется, можно говорить о династической приемственности. Ну да, поколенческой. В заявлении про шестерн, сначала индустрии. Да, уже есть продукты, Ponsort Biotique, которые работают в проде уже 20 лет, и скорее всего через 20 лет еще будут люди, которым придется разбираться, почему они вдруг перестали работать на новой инфраструктуре. Уже речь про поколение процелуя. Говоря об этом, давайте перейдем к теме конкурса. Расскажите, пожалуйста, что же все-таки будет за конкурс, точнее, что это есть, о конкурсе он уже идет, как я понимаю.

Hexlet (01:04:50.03)
И еще время подадите? Да, он идет. Это первый такой конкурс большой. Мы надеемся, что он будет проходить каждый год и будет привязан уже к учебному году. Но в этом году он идет как раз весной. И мы зовем всех школьников, студентов колледжа и студентов узов. То есть он ограничен по возрасту только на учащихся. Зовем с тем, чтобы...

подали либо команды, либо самостоятельно свои опубликованные под открытой лицензией, или Contribution в существующие проекты под открытой лицензией. Они должны быть опубликованы на GitHub или на GitLab. Они должны быть опубликованы под одной из опубликованных лицензий. И, собственно, всё. Из ограничений дальше вы должны разместить это на сайте конкурса и ждать, пока эксперты оценят.

Там нас сейчас идет народное голосование, где люди ставят звездочки в GitHub проектам, которым нравится. И помогает выделить наиболее популярные проекты. Но в целом все проекты будут оценивать экспертами. Экспертами выступают вот такие люди, как Сергей и его коллеги из других компаний отечественных, из Open Source проектов, где есть такие русскоязычные контрибьюторы, которые готовы с нами вместе это делать.

достаточно представительный такой город у нас получился из таких ведущих IT-компаний российских и это круто, значит, что у нас правда эта тема нужна индустрии, нужна потом на рабочем месте. Ну а победители конкурса они получат возможность как-то дальше продолжать это вместе с коллегами, которые запустили свои тематики в конкурс. Мы очень надеемся, что мы придумаем какие-то форматы пост.

работы с участниками, которые показали лучшие результаты. Для старшеклассников важно, что они получат дополнительные баллы к игре в рамках тех льгот, которые мы уже научились выдавать в кружковом движении в ведущей ВУЗы. Это тоже может быть такой классный момент, когда вы публиковав свой проект под Open Source, еще и поступили потом куда-то. Так что в целом мы первый раз проводим такой большой Open Source конкурс и надеемся, что мы сейчас соберем все грабли и поймем, как это делать лучше, чтобы затем

Hexlet (01:07:04.526)
уже вышел на совсем другой масштаб и проходил каждый год. А так, в целом, заходите, значит, сайт мы опубликуем, я думаю, в материалах. Там есть и образовательная программа, которую мы потихонечку создаем для тех, кто пытается в этом разобраться только. То есть если вы ничего не знаете про Профитцов, тоже можно заходить. Вполне как бы мы за руку проведем через анборди, покажем, как вообще это делать в шагах. Давай немножко поговорим детали для тех, кто заинтересуется, предугадать вопросы, которые будут. Значит, правильно я понял, что этот конкурс…

в мог участвовать только те люди, которые являются официально школьниками или студентами. Да, школьниками или студентами. есть дело не в возрасте, в наличии соответственно. Да, но в этом была некоторая фишка. Она связана с тем, что нам очень хочется взбодрить эту сферу образования, чтобы сфера образования начала больше работать с Open Source. В этом причине.

На сайте написано, что школьники не младше 14 лет. Это какое-то юридическое требование. Можно ли участвовать через зрителей тем, кто младше? Это некоторое юридическое требование. Оно связано с нашими законами и пресданными. И некоторой простотой работы. Большей простотой работы с тем, кому мы уже 14. Но на самом деле это еще и некоторая история. Если мы хотим правду, настоящую оценку от экспертов рынка, а мы хотим, и мы приглашаем коллег потратить свое время.

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

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

Hexlet (01:09:13.294)
Вы пилили свой проект для школы или где-нибудь еще, и курсовой, быть, который представляет ценности, если вы не боитесь его публиковать, что немаловажно, то вы его публикуете, и это тоже вариант участия. У нас есть направление в конкурсе. Если посмотреть на нашем лендинге направление, которое предлагают наши партнеры, я не знаю, может, Сергей пару слов расскажет про их направление сейчас, чтобы понимать, что это. То есть вы можете подавать проекты как бы тематически, там, Contributions, и на самом деле библиотеки.

проекты, которые важны для той или иного партнёра. И в этом случае вам как бы будет плюсик в карму этого партнёра, по всей видимости. Так что вот такая есть чутяна. Я бы ещё сказал, по поводу того, что есть треки от партнёров, у нас есть несколько направлений, где нам, скажем так, особенно, наверное, было бы интересно увидеть какие-то опенсорсные движения. Это вот всё, что связано с нашим умным домом, с Алисой, с созданием навыков для Алисы. Там есть большой простор для…

создания каких-то, в том числе небольших проектиков. Вот еще у нас есть ClickHouse, еще у нас есть OIDB, как такая облачная инфраструктура, которой, с использованием которой можно делать какие-то интересные open-source-проекты. Вот, но я еще хотел добавить по поводу того, что вот мы обращаемся вроде как к школьникам, что мол, пойдите и напишите свой проект.

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

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

Hexlet (01:11:36.27)
большим и масштабным первым шагом в карьере разработчика. Вот. И я как-то призываю вас обратить на это внимание ваших подшефных ребят. Ну, мне кажется, мы постарались максимально подробно эти ценности о сети донести, почему это действительно здорово и важно и полезно. Я тоже призываю всех, кто сейчас еще учится в школах, в институтах, обратить внимание на этот конкурс. Уверен, что... Я бегло просто устроил списочек текущих номинатов лидерборда.

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

ставьте лайки, чтобы таких видео было больше. Всем пока! Спасибо, спасибо, было интересно. Счастливо, удачи, участвуйте в Open Source.

Creators and Guests

Алексей Федосеев
Guest
Алексей Федосеев
президент Ассоциации кружков
Сергей Бережной
Guest
Сергей Бережной
Директор по взаимодействию с разработчиками в Яндексе
№14 Очки в карму, повышение скиллов и проблемы низкокачественного кода в open source проектах | Сергей Бережной, Алексей Федосеев
Broadcast by