Олег Бартунов — научный сотрудник Московского государственного университета, генеральный директор компании Postgres Professional, Major contributor Postgres SQL и один из его создателей. А ещё он — лауреат первой Премии Highload++, существует с 2018 года. Мы расспросили Олега о том, каково быть лидером мнений в индустрии и что нужно делать, чтобы этого добиться.

Меня наградили самым первым

Необходимость Премии Highload++, назрела давно. Ведь у нас в России большое сообщество, и как любое другое, оно должно развиваться. Олег Бунин взялся за эту задачу и начал награждать людей, чтобы сообщество на них равнялось. Задача лауреатов — подавать пример, показывать, что нужно делать для сообщества и какое вознаграждение за это может быть.

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

Я получил премию не только за вклад в Open Source в Postgres, но и за активное продвижение его в России. Практически на всех конференциях Highload я рассказывал о нём, чтобы донести до людей, что Postgres — это круто, делился новыми разработками и планами на будущее.

Я горжусь тем, что у нас в России очень хорошее Postgres сообщество, и что сам активно участвовал в его создании. Люди это отметили и это очень приятно.

Олег Бартунов на вручении первой премии Highload++
Олег Бартунов на вручении первой премии Highload++

Я получил премию в числе первых на премьере этого конкурса, наверное потому что  моя фамилия на букву «Б», но мне все равно приятно :)  Это здорово: много лет работаешь, а потом оказывается, что ты заслужил награду. Это ведь не государственная премия, где кандидатов выдвигают какие-то начальники. Выбирают люди, это народное признание. А значит ты свою жизнь прожил уже не зря. Можно говорить детям, что папа получил такой красивый почетный знак.

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

Ощущаю не лидерство, но ответственность

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

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

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

Людей нужно вдохновлять

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

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

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

Если узнали меня на улице — не стесняйтесь подойти

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

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

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

Гамбургский счёт помогает разобраться кто есть кто в сообществе

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

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

Я сразу начал работать с Open Source и увидел проблему — Postgres не работал с русскими буквами, был рассчитан на ASCII кодировку в 7 бит. И совершенно не был рассчитан на 8 бит. По принципу Open Source я взял и исправил это. Через какое-то время мне пришло в голову, что надо поделиться этим с людьми. В 97-м году я послал патч в сообщество и его приняли.

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

Единственная проблема: сейчас сложнее ездить на конференции. Раньше я всё время перемещался по миру и выступал. Но стало труднее, изоляция есть, но мы работаем и получаем каждый год медали за релизы. Последние пять лет их выдают людям, которые отличились. У меня таких четыре. У нас в компании есть люди, у которых их пять — полные кавалеры (смеётся). И это доказывает, что мы полноценные участники оперсорсного сообщества, а не просто зарабатываем деньги.

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

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

Мой первый патч — самый важный

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

Вместе с коллегами и друзьями я создавал инструменты, которых не хватало. Придерживался принципа: делай и делись. Это и есть Open Source. Оказалось, что сделанное для себя, интересно и другим.

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

Например, концепция расширяемости: когда развиваешь ядро, чтобы позволить другим людям писать свои расширения, необходимые им для выполнения задач. Для этого им больше не нужно лезть в ядро, быть ядерным специалистом. API позволяет писать программки на C. Благодаря этому человек получает свободу.

Мне всегда нравилось делать что-то, что быстрее в 10 раз, 100 раз и так далее, и я много работал с индексами, осуществлял полнотекстовый поиск. Сейчас меня интересуют ещё и неструктурированные данные. Для этого мы сделали расширение Hstore, JSON. Несколько лет назад один разработчик из Cloudflare признался, что весь их проект начался с того, что они использовали наш Hstore.

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

Несмотря на то, что мы состоим в международном Open Source сообществе, мы — коммерческая компания, которая зарабатывает деньги на своих форках и фичах. То есть мы — прокси между большими клиентами и международным сообществом. Ведь Enterprise не может работать с сообществом. Он должен работать с некой компанией, которая удовлетворяет его интересы, осуществляет поддержку и так далее.

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

У нас большая компания. Я концентрируюсь на том, чтобы у нас появилась отрасль СУБД-строения. Плохо, когда отрасль фактически зависит от одной компании. Есть, конечно, еще десяток российских Postgres. Это сейчас так модно: взял, скопировал Postgres, назвал его российским, зарегистрировался и пытаешься продавать. Это тоже хорошо. Конкуренты нас подстегивают. Но лучше, конечно, когда кодекс опенсорсной компании всё-таки соблюдают. Не просто объявляют себя кем-то, но и делятся своими разработками с сообществом. Пока что это делает только наша компания. В каждом релизе можно найти десятки фамилий наших разработчиков.

Нам нужны джедаи программирования

Меня серьёзно заботит развитие отрасли: хочется развивать научные школы. Мы хотим, чтобы у нас были университетские курсы. И не просто учили пользоваться базами данных, но и писать их. Чтобы появлялись компании, команды, которые могли бы писать свои базы данных.

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

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

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

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

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

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

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

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

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

Программирование для меня — это волшебство

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

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

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

Новым номинантам на Премию Highload++ советую просто контрибьютить, работать и не думать специально про премию.  От них ничего не зависит. Всё зависит от людей. Бесполезно бегать и просить проголосовать за тебя. Всё должно идти так, как идёт. Люди должны голосовать. А ты — гордиться тем, что попал хотя бы в номинанты.

В этом году Премия пройдет при поддержке VK в рамках 20-й конференции HighLoad++. Уже 27 ноября, начнется торжественная церемония награждения, на которой будут объявлены имена новых лауреатов премии. Наряду с другими победителями будет объявлено имя того, кто получит награду в специальной номинации от VK — «Развивающие проекты». Спец номинация посвящена людям и проектам, которые помогают развиваться самим разработчикам, новичкам в IT и экспертных сообществах, а также специалистам в молодых цифровых профессиях и одаренным школьникам.

Комментарии (7)


  1. igorts
    31.10.2023 10:26
    +3

    Как человек очень долго работавший с Oracle скажу, что Postgres во многом его обыгрывает!

    На сегодняшний день в качестве реляционной СУБД не задумываясь выбираю и рекомендую заказчикам только Postgres!


    1. insighter
      31.10.2023 10:26
      +1

      Читал как Яндекс переходил с Оракла на Постгрес, сложилось впечатление, что с Ораклом только одна проблема - деньги и очень большие. В остальном либо на равных либо Оракл лучше

      Если не ошибаюсь у них после перехода стало в два раза больше железа, но это "ничто по сравнению со стоимостью лицензий Oracle"


      1. lazy_val
        31.10.2023 10:26
        +1

        после перехода стало в два раза больше железа

        в три раза больше если быть точным


        1. igorts
          31.10.2023 10:26
          +1

          ну если чуток погрузиться в детали, то там читаем, что железо под Oracle было загружено под 100%, что из-за стоимости лицензий (а ценник нехилый и стоимость по количеству ядер), приходилось ограничивать количество железок и тд

          по сути они не просто сменили субд но и поменяли техническую архитектуру


  1. JordanCpp
    31.10.2023 10:26
    +10

    Мне всегда нравилось делать что-то, что быстрее в 10 раз, 100 раз и так далее

    Насколько же редко, но и радостно услышать такие слова. Что хоть кто-то где то, ускоряет код.


  1. napolskih
    31.10.2023 10:26
    +1

    Олег реально вдохновляет! Счастлив что удалось пообщаться пару раз лично.


  1. khatangatao
    31.10.2023 10:26
    +1

    С удовольствием прочитал статью. Такие люди очень мотивируют, вдохновляют.