Про сообщества программистов

в 20:05, , рубрики: Без рубрики

Этот пост назревал долгое время, но последняя запись в блоге Йэна Бикинга Saying Goodbye to Python заставила-таки меня сесть и написать его. Он скорее личный, и наверное не очень интересный, но для меня важно, что бы он был где-то сохранился.

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

Python, технические сообщества и я

Я многим обязан онлайн-сообществам и людям, которых я встретил в интернете. Когда мне было около тринадцати лет, я купил две книги по программированию. Книгу по Delphi, и книгу про Python. Последняя называлась “Python für Kids”, автором был Грегор Лингл [Gregor Lingl], и предназначалась она для обучения детей. Без этой книги моя жизнь была бы совсем другой, и я мог бы закончить как Delphi-программист.

Благодаря этой книге я вышел на немецкий Python-форум, а форум в свою очередь открыл мне глаза на что, что люди в самом деле используют Linux для каких-то реальных вещей. Бывший администратор этого форума порекомендовал мне взглянуть на свежий Ubuntu Linux на случай, если мне захочется поиграться с чем-нибудь. Этим администратором был Fritz Cizmarov aka Dookie, который, к сожалению, ушел из жизни в 2005 году.

По началу я не трогал Python, но благодаря книге и рекомендации Фрица стал пользователем Ubuntu. Это было через несколько месяцев после выхода первой версии. Я нашел сообщество немецких пользователей ubuntuusers.de, которое только-только появилось. Так как в то время я уже немного разбирался в PHP, я вызвался помочь с установкой phpBB, чтобы слегка подправить внешний вид и добавить раздел новостей. Sascha Morr доверил мне доступ к сердцу сайта, и с 2004 по 2007 я потратил невероятное количество времени в попытках улучшить его.

Я многому научился за время поддержки ubuntuusers. Вначале я изменял PHP-скрипты через загрузку файлов по FTP. Позже я стал редактировать их уже в vim’е прямо на сервере, используя SSH. Я узнал про SQL-инъекции и правильную разработку ПО, учась на своих ошибках. Многим в своих познаниях я обязан Matthias Urlichs, который предоставил нам сервера. Было большой удачей попасть в эту тусовку. В начале моей работы на ubuntuusers было всего несколько сотен человек. Изначально мы располагались на PHP-хостинге, потом завели несколько серверов и стали работать на них совместно с французской командой Ubuntu.

Прежде чем я прекратил работать над этим сайтом, мы с командой веб-разработчиков переписали практически полностью phpBB и MoinMoin, не говоря уже о полудюжине мелких вещей, на Python. Pocoo задумывался как попытка написать замену phpBB на Python (конкретно для этого сайта). Работая над ним я постоянно узнавал так много нового, что несколько раз приходилось начинать сначала. В конце концов ubuntuusers оказался на кастомном форумном движке, с кастомными вики и блог-аггрегатором. Мы добавили поддержку уведомлений, основанную на XMPP, и несколько других вещей, которые многому научили меня как в сетевом программировании, так и в программировании в целом.

Большинство людей, с которыми я общался во время работы над ubuntuusers, я знал только в интернете. Я даже не знал настоящих имён многих из них.

Беготня вокруг

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

Я обожал всё связанное с Ubuntu. Мне нравилось делать свой вклад. Когда мою ‘обоину’ выбрали для распространения на CD, я был самым счастливым парнем на свете.

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

Благодаря Alexander'у Schremmer'у c немецкого IRC-канала Python я встретил Георга Брандла [Georg Brandl], который тогда как раз был core-контрибьютором Python. От Георга я узнал о программировании даже больше, чем во время работы с ubuntuusers. Он показал мне, как расширить интерпретатор CPython новыми ключевыми словами, и рассказал, как работает C.

Я стал меньше вкладывать в Ubuntu и ubuntuusers, сфокусировавшись на Python. Георг и я начали работать над Pygments (в девичестве Pykleur) для замены инструментов подсветки синтаксиса на PHP.

В какой-то момент мы в своём небольшом канале #pocoo (который был создан во время попытки создания форумного движка) решили перейти на английский язык, так как количество человек увеличилось до 10.

У меня остались логи IRC тех лет, и очень захватывающе было вернуться назад и увидеть, как много изменилось. Как сильно изменился я, как поменялось всё вокруг меня.

#pocoo всё ещё доступен, и на нём общаются несколько сотен людей круглосуточно.

Было много других людей, которые произвели на меня неизгладимое влияние. От Марека Кубицы [Marek Kubica] c немецких python-форумов я узнал очень много. Он и несколько других людей из немецкого python-комьюнити были первыми, с которыми я встретился лично после знакомства в интернете.

Выросший в онлайне

Когда подросток растёт, ему нужно какое-то окружение, но он не уверены, какое именно. Для меня поиск занял долгое время. Я постоянно пытался вписаться хоть куда-то. Сначала Python и Ubuntu, потом еще Ruby, PHP и другие вещи.

Иногда в сообществе находятся люди, которым ты хочешь соответствовать. Когда я игрался с Ruby, я встретил Корнелиуса Кальнбаха [Kornelius Kalnbach] и Кристиана Нойкирхена [Christian Neukirchen]. Корнелиус написал CodeRay, первый увиденный мной инструмент для подсветки синтаксиса, который почти правильно подсвечивал Ruby-код. В начале работы над Pygments, мы соревновались, кто лучше подсветит код на Ruby.

Когда меня расстроило то, что WSGI не получает должного внимания в питон-комьюнити, я снова заинтересовался Ruby, начав работу над своим микрофреймворком и подарив проекту Rack, WSGI-спецификации для руби, созданной Кристианом, ужасный логотип (который используется до сих пор!).

Некоторое время я занимался PHP, начав портировать Jinja, что в конечном итоге привело к появлению Twig, который люди до сих пор используют.

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

Python People

Они и являются главной причиной написания данного поста. Я бы не стал тем, кем стал, если бы в Python-комьюнити не было такого количества невероятных людей. Я уже упоминал Георга Брандла, который был моим наставником, но есть еще многие другие.

Йэн Бикинг был моим мотиватором. Я читал каждое сообщение в его блоге и приставал в IRC много раз, чтобы узнать что-нибудь новое. Благодаря Джейкобу Каплан-Моссу [Jacob Kaplan-Moss] я начал выступать на конференциях. Я попал на EuroDjangoCon в Праге в 2009-м, и после одного из докладов подошел к нему, чтобы задать несколько вопросов. В этот же день он предложил мне выступить с докладом о том, что я делаю, на DjangoCon. И через несколько месяцев я обновил свой паспорт и в первый раз полетел в US, чтобы дать презентацию о не использовании Django на DjangoCon.

На двух DjangoCon в Портланде я встретил Майка Мэлоуна [Mike Malone] (вроде бы из Pounce), Адама Лоури [Adam Lowry] и Майкла Ричардсона [Michael Richardson] из Urban Airship в первый раз. Еще был Джейсон Киртланд [Jason Kirtland] из Idealist. Встречи со всеми этими людьми меня очень вдохновили. Невероятно было встретить того, кто использует твои разработки, пусть даже совсем чуть-чуть.

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

В период с 2009-го по настоящее время благодаря Python-комьюнити я получил много возможностей посетить другие страны, обмениваться опытом и получать новые знания. У меня хорошие воспоминания о пьяных ночах с Джесси Ноллер [Jesse Noller], проведенных за разговорами о Python 3 (да, before it was cool) на PyCon US; или о рассуждениях о боге и мире с Honza Kral до самого утра в берлинском баре на djangocon.eu.

Я встретил Maciej Fijałkowski в первый раз на практически эксклюзивной польской конференции где-то на границе с Чехией. Несмотря на то, что конференция была 'in the middle of nowhere', я получил много удовольствия.

Я не могу сосчитать количество удивительных пересечений с Python People на различных конференциях. Я был в Украине, Польше, Японии, US, Италии, Чехии, UK, ЮАР, Голландии, Израиле и России просто ради конференций или людей, связанных с Python.

Я отмечал три последних дня рождения на конференции в Гронингене (которая теперь уже не такая маленькая) c кучей замечательных людей.

Осталось много неупомянутых людей, которые сильно повлияли на меня, и которые так или иначе связаны с Python-комьюнити: Simon Willison, David Cramer, Adam Hitchcock, Michelle Rowley, Carl Meyer, Leah Culver, Eric Holscher, Alex Gaynor, Adrian Holovaty, Nick Coghlan, Graham Dumpleton, Łukasz Langa, Simon Cross, Chris McDonough, Ned Batchelder (который непреднамеренно дал мне важный жизненный урок), Guido van Rossum, Chad Whitacre, Mike Bayer, Eric Florenzano, Michael Foord, Idan Gazit, Jannis Leidl, Steve Holden, Michael Trier, Lynn Root, Tyler Šiprová, Hynek Schlawack, Daniel and Audrey Roy Greenfeld, Kenneth Reitz, Glyph Lefkowitz, Amir Salihefendic, Holger Krekel и, скорее всего, кто-то еще, вылетевший из головы.

Сообщество vs. Технология

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

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

До недавнего времени питон-комьюнити было практически лишено противоречий и было (да и продолжает быть) отличной стартовой точкой для начала знакомства с разработкой ПО и Open Source.

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

Однако для меня важным является разделение сообщества и технологии.

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

Прошлое и будущее

Итак, скоро пройдёт десять лет моей связи с Python, десять лет знакомств с замечательными людьми, многие из которых на меня повлияли. Я надеюсь, что комьюнити не сильно изменится и останется путём получения таких же возможностей для многих.

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

Автор: komissarex

Источник

* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js