Guido van Rossum podnosi ostavku: Što slijedi za Pythona

Izumitelj Pythona Guido van Rossum šokirao je svijet Pythona 12. srpnja kada je odstupio s mjesta takozvanog BDFL (dobronamjerni diktator za život). U to je vrijeme naveo motiv za njegov izlazak zbog nedavnog prijedloga poboljšanja Pythona za sposobnost jezičnog izražavanja.

Ali van Rossum, koji je izumio Python 1990. godine, i dalje je uvjeren da će se jezik nastaviti odvijati sasvim dobro bez njegova vodstva. Glavni inženjer u Dropboxu u svom svakodnevnom poslu, 62-godišnji van Rossum govorio je o svojoj odluci da nastavi s urednikom u Large Paulu Krillu.

: Zašto ste dali ostavku na BDFL?

van Rossum: Doživotni dio uvijek je bio šala, naravno, kao što je to sigurno bio i dio diktature. Poigravam se mišlju o mirovini vjerojatno veći dio desetljeća. Imao sam nekoliko zdravstvenih problema, od kojih sam neke smatrao pogoršanima kontinuiranom prijetnjom da ću uvijek biti najodgovornija osoba u Python zajednici i da moram ljudima govoriti kako raditi stvari, šutjeti i biti razuman te objasniti filozofija jezika po tko zna koji put.

Slama koja je srušila deve leđa bio je vrlo sporan prijedlog za poboljšanje Pythona, gdje su ljudi, nakon što sam ih prihvatio, otišli na društvene mreže poput Twittera i rekli stvari koje su me osobno stvarno povrijedile. A neki od ljudi koji su govorili o štetnim stvarima zapravo su jezgroviti programeri za Python, pa sam smatrao da više nemam baš povjerenje tima za jezgre Pythona.

: Taj je prijedlog bio PEP (prijedlog za poboljšanje Pythona) 572. Možete li razgovarati o prednostima tog prijedloga i zašto je bio toliko kontroverzan?

van Rossum: Prijedlog govori o novoj sintaksi koja omogućava dodjelu zadataka kao dio evaluacije izraza. Sve je to prilično mali dodatak jeziku. Omogućuje ljudima kad osjete potrebu da zadatke stave usred izraza. Postoje mnogi drugi jezici koji to imaju kao manju značajku. Upoznao sam C i C ++. Koliko znam, Java i JavaScript ga također podržavaju. Sintaksa je prilično niša, ali u određenim situacijama može olakšati pisanje koda i olakšati čitanje uklanjanjem suvišnosti.

Mnogi su ljudi smatrali da znaju što je Pythonova filozofija dizajna i da ovaj prijedlog ne slijedi Pythonova dizajnerska načela. Drugi problem s prijedlogom autori prijedloga donekle su sami sebi nanijeli. Prvih nekoliko verzija imalo je ozbiljnih problema. Ti su problemi tada postali razlog da ljudi, čak i ljudi koji su naklonjeni osnovnoj ideji, glasaju protiv ove određene verzije prijedloga. To je manja sintaktička promjena. U tome nema ništa radikalno. 

: U kojoj će verziji Pythona biti ova značajka?

van Rossum: Bit će u Pythonu 3.8, [koji treba izaći] za godinu i pol.

: Hoće li biti još jedan BDFL? Koji će biti model upravljanja za Python koji ide prema naprijed?

van Rossum: Nažalost, ne mogu vam to reći, jer sam glavnoj grupi programera - nekih 100 ili 200 ljudi koji imaju prava počinitelja ili su u nedavnoj prošlosti imala prava počinitelja - dao domaću zadaću da utvrdim koji će biti novi model upravljanja i koji ljudi bit će glavni. I odmah su se počeli baviti tim problemom kao što su riješili bilo koji drugi problem u Python svijetu, što je uz dugu raspravu u kojoj se različite strane ne mogu odmah dogovoriti.

Jedina dobra vijest koju imam u ovom trenutku je da su se dogovorili - mislim da su se dogovorili - o rasporedu donošenja ovdje zaključka. Rok za te prijedloge je 1. listopada 2018. Tada se, vjerujem, do 1. studenoga 2018. obvezuju da će odabrati prijedlog za upravljačku strukturu. Tada će se do 1. siječnja 2019. obvezati da će zapravo birati ili imenovati ljude, ili kako to kaže njihov upravljački dokument, ljude koji će biti glavni.

Ako postoji jedan od prijedloga, postojat će jedan BDFL, taj bi prijedlog morao biti detaljno napisan, poput načina odabira BDFL-a i koliko dugo osoba ostaje na čelu i kako može biti opozivana i sve da će do 1. listopada možda do 1. siječnja imenovati stvarnu osobu.

: Tko su neki od ljudi koji su uključeni u razvoj Pythona?

van Rossum: Postoji niz glavnih programera koji su glasniji od ostalih. Jedan od najljepših momaka s zaista dugim stažom je Brett Cannon. Još jedna osoba koja mi je bila mentor je momak po imenu Tim Peters. Također je autor knjige "Zen of Python", koja je neformalni skup smjernica za razvoj Pythona. Barry Warsaw također je jedan od glavnih programera.

: Kakvo će biti vaše sudjelovanje u projektu? 

van Rossum: Uskočit ću u ulogu redovitog suradnika ili redovitog temeljnog programera. Povremeno ću napisati neki kod i recenzijski kod. Pokušat ću se usredotočiti na mentorstvo jezgrenim programerima, posebno na novim jezgrenim programerima, posebno na ženama i manjinama, jer je raznolikost u osnovnoj grupi programera jedan od mojih ciljeva.

: Jeste li zabrinuti da bi vaš odlazak kao BDFL-a mogao prestrašiti neke Pythonove bhakte?

van Rossum: Mislim da nije. Python ima vrlo zdravu zajednicu. Temeljni tim ima vrlo zdravu dinamiku. Ne bih dao ostavku da sam mislio da to neće preboljeti i da će biti sposobni voditi jezik naprijed u narednim desetljećima. Rekao bih da je ovo manja smetnja unatoč pojavama i radujemo se vrlo uspješnim budućim izdanjima i odgovarajućoj postupnoj evoluciji razvojnog procesa.

: Kako se proces razvoja Pythona razvijao u posljednjih nekoliko godina? Kako vidite da se razvija u budućnosti?

van Rossum: Jezik se očito mijenja. Jeziku dodajemo neke nove značajke, knjižnici dodajemo neke nove značajke. Velika stvar koja se promijenila vjerojatno je popularnost jezika. Do prije možda pet godina Python se osjećao prilično maloljetnim igračem.

Od tada - vjerojatno uglavnom kroz nevjerojatnu popularnost znanosti o podacima i Pythona kao glavnog alata za to - pritisak na temeljne programere da donose savršene odluke mogao je porasti, ali način na koji se stvari rade općenito, način na koji se razvijamo , a način na koji objavljujemo jezik bio je vrlo stabilan.

Imamo upravitelje izdanja. Izdanja su udaljena oko godinu i pol dana za velika izdanja. Za izdanja za ispravke programskih pogrešaka razdvajaju ih nekoliko mjeseci, a možda i tri četvrtine godine, po potrebi.

Imamo vrlo stabilan postupak prijedloga za poboljšanje Pythona. Možda se način na koji se PEP pretvaraju u točke velikog neslaganja donekle promijenio s povećanim vijestima o društvenim mrežama, ali općenito, osim što je prije nekoliko godina prešao s Mercuriala na Git, to je vrlo stabilan proces i u tome nema ničeg posebno lošeg to.