Гуидо ван Росум подава оставка: Какво следва за Python

Изобретателят на Python Guido van Rossum шокира света на Python на 12 юли, когато се оттегли като така наречения BDFL на езика (благосклонен диктатор за цял живот). По това време той цитира недоволство заради скорошно предложение за подобрение на Python за способност за езикови изрази като мотивиращо излизането му.

Но ван Росъм, който е изобретил Python през 1990 г., остава уверен, че езикът ще продължи да се развива добре без неговото ръководство. Главен инженер в Dropbox в ежедневната си работа, 62-годишният ван Росъм говори за решението си да продължи с редактора в Large Paul Krill.

: Защо подадохте оставка като BDFL?

ван Росъм: Разбира се, частта за цял живот винаги беше шега, както и диктатурата. Играя се с мисълта за пенсиониране, вероятно през по-голямата част от десетилетие. Имах няколко здравословни проблема, някои от които смятах, че се задълбочават от непрекъснатата заплаха да бъдем винаги най-отговорният човек в общността на Python и да се налага да казвам на хората как да правят неща и да мълчат и да бъдат разумни и да обясня философия на езика за пореден път.

Сламата, която счупи гърба на камилата, беше много оспорвано предложение за подобрение на Python, където след като го приех, хората отидоха в социалните медии като Twitter и казаха неща, които наистина ме болят лично. А някои от хората, които казваха, че са вредни неща, всъщност са основни разработчици на Python, така че почувствах, че вече нямам доверието на екипа на основните разработчици на Python.

: Това предложение беше PEP (Предложение за подобряване на Python) 572. Можете ли да говорите за ползите от това предложение и защо то беше толкова противоречиво?

van Rossum: Предложението е за нов синтаксис, който позволява назначаването да се извършва като част от оценката на израза. Като цяло това е доста незначително допълнение към езика. Позволява на хората, когато почувстват нужда, да поставят задачи в средата на израз. Има много други езици, които имат това като второстепенна характеристика. Запознат съм със C и C ++. Доколкото знам, Java и JavaScript също го поддържат. Това е доста нишов синтаксис, но в определени ситуации може да направи кода по-лесен за писане и също по-лесен за четене, като премахне излишъка.

Много хора смятаха, че знаят каква е философията на дизайна на Python и че това предложение не следва принципите на дизайна на Python. Друг проблем с предложението е донякъде самонаранен от авторите на предложението. Първите няколко версии имаха сериозни проблеми. След това тези проблеми станаха причина хората, дори хората, които бяха съпричастни към основната идея, да гласуват против конкретната версия на предложението. Това е незначителна синтактична промяна. В това няма нищо радикално. 

: В каква версия на Python ще бъде тази функция?

van Rossum: Ще бъде в Python 3.8, [който трябва да излезе] след година и половина.

: Ще има ли друг BDFL? Какъв ще бъде моделът на управление на Python напред?

ван Росум: За съжаление, не мога да ви кажа, че тъй като дадох на основната група разработчици - около 100 или 200 души, които имат права или в близкото минало са имали права за ангажимент - домашното, за да разбера какъв ще бъде новият модел на управление и кои хора ще отговаря. И те веднага започнаха да се справят с този проблем, тъй като се справят с всеки друг проблем в света на Python, който е с дълга дискусия, при която различните страни не могат веднага да се споразумеят.

Единствената добра новина, която имам към този момент, е, че те се съгласиха - мисля, че се съгласиха - по график за приключване тук. Крайният срок за тези предложения е 1 октомври 2018 г. Тогава, мисля, че до 1 ноември 2018 г. те се ангажират да изберат предложение за структура на управление. След това до 1 януари 2019 г. те се ангажират с това, че действително са избрали или назначили, или както се казва в техния документ за управление, хората, които ще отговарят.

Ако има едно от предложенията, ще има единичен BDFL, това предложение ще трябва да бъде изписано подробно, като например как се избира BDFL и колко дълго лицето остава начело и как може да бъде импийчван и всички че до 1 октомври. Може би до 1 януари ще им бъде назначен действителен човек.

: Кои са някои от хората, свързани с развитието на Python?

van Rossum: Има редица основни разработчици, които са по-гласовити от другите. Един от най-добрите момчета с наистина дълъг опит е Брет Кенън. Друг човек, който ми е бил ментор, е човек на име Тим Питърс. Освен това е автор на „Дзенът на Python“, който е неформален набор от насоки за развитието на Python. Бари Варшава също е един от основните разработчици.

: Какво ще бъде вашето участие в проекта? 

van Rossum: Ще вляза в ролята на редовен сътрудник или редовен разработчик на ядрото. От време на време ще напиша някакъв код и преглед на код. Ще се опитам да се съсредоточа върху наставничеството на основните разработчици, особено на новите основни разработчици, особено на жените и малцинствата, защото разнообразието в основната група разработчици е една от целите ми.

: Притеснявате ли се, че вашето напускане като BDFL може да изплаши някои поклонници на Python?

ван Росум: Не мисля. Python има много здрава общност. Основният екип има много здравословна динамика. Не бих подал оставка, ако си мислех, че няма да преодолеят това и ще могат да водят езика напред за десетилетия напред. Бих казал, че това е незначителен хикс въпреки появата и очакваме с нетърпение много успешни бъдещи издания и подходящо постепенно развитие на процеса на развитие.

: Как се е развил процесът на разработка на Python през последните няколко години? Как го виждате да се развива в бъдеще?

ван Росум: Очевидно езикът се променя. Добавяме някои нови функции към езика, добавяме някои нови функции към библиотеката. Голямото нещо, което се промени, вероятно е популярността на езика. До преди може би пет години Python се чувстваше като доста малък играч.

Оттогава - вероятно най-вече чрез невероятната популярност на науката за данни и Python като основния инструмент за това - натискът върху основните разработчици да вземат перфектни решения може да се е увеличил, но начинът, по който се правят нещата, начинът, по който се развиваме , а начинът, по който освобождаваме езика, е много стабилен.

Имаме мениджъри за освобождаване. Изданията се разделят на около година и половина за големите издания. За изданията за отстраняване на програмни грешки те се различават от няколко месеца до може би три четвърти от годината, когато възникне необходимост.

Имаме много стабилен процес на предложения за подобрения на Python. Може би начинът, по който PEP се превръщат в точки на голямо несъгласие, се е променил до известна степен с увеличаването на новините в социалните медии, но като цяло, освен преминаването от Mercurial към Git преди няколко години, това е много стабилен процес и няма нищо особено лошо в то.