„Požadavek je zpožděný“: Alexey Fedorov o nové konferenci o distribuovaných systémech

„Požadavek je zpožděný“: Alexey Fedorov o nové konferenci o distribuovaných systémech

Nedávno tam byly oznámil dvě akce najednou o vývoji vícevláknových a distribuovaných systémů: konference Hydra (11.-12. července) a škola SPTDC (8. – 12. července). Lidé, kterým je toto téma blízké, chápou, že příchod do Ruska Leslie Lamportová, Maurice Herlihy и Michael Scott - nejdůležitější událost. Ale vyvstaly další otázky:

  • Co od konference očekávat: „akademická“ nebo „produkční“?
  • Jak spolu souvisí škola a konference? Na koho je to a to zaměřeno?
  • Proč se překrývají v datech?
  • Budou užitečné pro ty, kteří nezasvětili celý svůj život distribuovaným systémům?

To vše dobře ví člověk, který přivedl Hydru k životu: náš ředitel Alexej Fedorov (23derevo). Odpověděl na všechny otázky.

Formát

— Úvodní otázka pro ty, kteří mají k distribuovaným systémům daleko: o čem obě akce jsou?

— Celosvětovou výzvou je, že kolem nás existují služby s velkým objemem operací a složitými výpočetními úkoly, které nelze provádět na jednom počítači. To znamená, že musí být několik aut. A pak vyvstávají otázky související s tím, jak správně synchronizovat jejich práci a co dělat v podmínkách ne nejvyšší spolehlivosti (protože se zařízení porouchá a síť vypadne).

Čím více strojů je, tím více bodů selhání je. Co dělat, když různé stroje poskytují různé výsledky pro stejné výpočty? Co dělat, když síť na nějakou dobu zmizí a část výpočtů se izoluje, jak to pak všechno zkombinovat? Obecně je s tím spojen milion problémů. Nová řešení - nové problémy.

V této oblasti jsou zcela aplikované oblasti a existuje více vědeckých – něco, co se ještě nestalo mainstreamem. Chtěl bych mluvit o tom, co se děje jak v praxi, tak ve vědě, a hlavně na jejich křižovatce. O tom bude první konference Hydra.

— Rád bych pochopil skutečnost, že se koná konference a letní škola. Jak spolu souvisí? Pokud je pro účastníky školy sleva na účast na konferenci, tak proč se překrývají v termínech, takže není možné absolvovat vše najednou bez ztráty?

— Škola je komorní akcí pro 100–150 lidí, kam se sjíždějí přední odborníci z celého světa a přednášejí pět dní. A nastává situace, kdy se v Petrohradě na pět dní shromáždí světoví světoví světoví představitelé, připraveni něco říct. A v tomto případě padá rozhodnutí uspořádat nejen komorní školu, ale i konferenci většího rozsahu.

Takovou školu je možné pořádat jen v létě, v červenci, protože mezi těmito odborníky jsou současní univerzitní profesoři, a ti prostě nejsou připraveni jindy: mají studenty, diplomy, přednášky a tak dále. Školní formát je pět všedních dnů. Je známo, že v létě o víkendech lidé rádi někam vyrazí. To znamená, že nemůžeme pořádat konferenci ani o víkendu před vyučováním, ani o víkendu po vyučování.

A když si to prodloužíte o pár dní před víkendem nebo po něm, magicky se z pěti dnů pobytu specialistů v Petrohradu stane devět. A nejsou na to připraveni.

Jediným řešením, které jsme tedy našli, bylo jednoduše uspořádat konferenci souběžně se školou. Ano, to vytváří určité problémy. Jsou lidé, kteří chtějí jít do školy a na konferenci a tu či tam budou muset vynechat nějakou přednášku. Dobrou zprávou je, že to vše se bude odehrávat v sousedních halách, můžete běhat tam a zpět. A další dobrá věc je dostupnost videonahrávek, ve kterých se později můžete v klidu podívat, co vám uniklo.

— Když se dvě události konají paralelně, lidé mají otázku „kterou z nich potřebuji víc? Co přesně byste měli od každého očekávat a jaké jsou rozdíly?

— Škola je čistě akademická akce, klasická vědecká škola na několik dní. Každý, kdo se zabýval vědou a měl něco společného s postgraduální školou, má představu o tom, co je akademická škola.

„Požadavek je zpožděný“: Alexey Fedorov o nové konferenci o distribuovaných systémech

Obvykle takové akademické akce nejsou příliš dobře organizovány kvůli nedostatku odborných znalostí mezi lidmi, kteří je dělají. Ale jsme ještě docela zkušení kluci, takže všechno umíme docela kompetentně. Myslím, že z organizačního hlediska bude SPTDC hlavou a rameny nad jakoukoli akademickou nebo výzkumnou školou, kterou jste kdy viděli.

škola SPTDC - jedná se o formát, kdy se každá velká přednáška čte ve dvou párech: „hodina a půl – přestávka – hodina a půl“. Musíte pochopit, že pro účastníka to může být poprvé těžké: když se tato škola před dvěma lety konala poprvé, byl jsem sám neobvyklý, několikrát jsem vypnul přibližně uprostřed dvojpřednášky a pak bylo těžké pochopit, co se děje. Ale to hodně záleží na lektorovi: dobrý lektor mluví celé tři hodiny velmi zajímavě.

Konference Hydra - praktičtější akce. Do školy bude přednášet několik významných osobností vědy: od Leslie Lamportová, jehož práce je základem samotné teorie vícevláknových a distribuovaných systémů, do Maurice Herlihy, jeden z autorů slavné učebnice souběžnosti „The Art of Multiprocessor Programming“. Na konferenci se ale pokusíme hovořit o tom, jak jsou některé algoritmy implementovány ve skutečnosti, s jakými problémy se inženýři v praxi potýkají, kdo uspěje a kdo selže, proč se některé algoritmy v praxi používají a jiné ne. A samozřejmě, pojďme se bavit o budoucnosti vývoje vícevláknových a distribuovaných systémů. To znamená, že dáme takovou špičku: o čem nyní světová věda mluví, kolem čeho se točí myšlenky předních inženýrů a jak to všechno do sebe zapadá.

— Vzhledem k tomu, že konference je více aplikovaná, budou tam nejen akademičtí představitelé, ale i řečníci z „produkce“?

- Určitě. Snažíme se podívat na všechny „velké“: Google, Netflix, Yandex, Odnoklassniki, Facebook. Existují specifické vtipné problémy. Každý například říká: „Netflix je distribuovaný systém, téměř polovina provozu v USA, velmi cool,“ a když se začnete dívat na jejich skutečné zprávy, články a publikace, nastává mírné zklamání. Protože ač je to jistě světová třída a jde o ostří, je toho méně, než se na první pohled zdá.

Vzniká zajímavé dilema: můžete zavolat zástupcům velkých významných společností, nebo můžete zavolat někomu, kdo je nám již známý. Ve skutečnosti existuje odbornost tu i tam. A my se spíše snažíme vytáhnout ne „lidi z velmi velkých značek“, ale velmi velké specialisty, konkrétní lidi.

Bude tam například Martin Kleppmann, který se svého času prosadil na LinkedIn a také vydal dobrá kniha — možná jedna ze základních knih v oblasti distribuovaných systémů.

— Pokud člověk nepracuje v Netflixu, ale v jednodušší společnosti, může se ptát: „Mám jít na takovou konferenci, nebo spolu mluví nejrůznější Netflixy, ale já nemám co dělat?“

— Řeknu to takto: když jsem v Oracle pracoval něco málo přes tři roky, slyšel jsem ty nejúžasnější a nejzajímavější věci v kuchyni a v kuřárnách, když se tam sešli kolegové, kteří dělali určité části platformy Java. Mohli by to být lidé z virtuálního stroje nebo z testovacího oddělení nebo ze souběžného výkonu – například Lyosha Shipilev a Seryozha Kuksenko.

Když mezi sebou začali o něčem diskutovat, většinou jsem jen poslouchal s otevřenou pusou. Pro mě to byly úžasné a nečekané věci, na které jsem ani nepomyslel. Přirozeně jsem zpočátku nerozuměl 90% toho, o čem mluvili. Pak se 80 % stalo nepochopitelným. A poté, co jsem si udělal domácí úkol a přečetl pár knih, toto číslo kleslo na 70 %. Pořád nerozumím spoustě z toho, o čem se mezi sebou baví. Ale jak jsem seděl v rohu s šálkem kávy a poslouchal, začal jsem trochu chápat, co se děje.

Proto, když spolu Google, Netflix, LinkedIn, Odnoklassniki a Yandex mluví, neznamená to, že jde o něco nepochopitelného a nezajímavého. Naopak, musíme pozorně naslouchat, protože to je naše budoucnost.

Samozřejmě jsou lidé, kteří tohle všechno nepotřebují. Pokud se v tomto tématu nechcete rozvíjet, nemusíte na tuto konferenci chodit, jen tam ztratíte čas. Pokud je ale téma zajímavé, ale ničemu nerozumíte nebo se na to jen díváte, tak přijďte, protože nic podobného nikde nenajdete. Navíc si myslím, že nejen v Rusku, ale i ve světě. Snažíme se udělat konferenci, která nebude lídrem na toto téma jen v Rusku, ale obecně světovou jedničkou.

Není to nejjednodušší úkol, ale když máme tak úžasnou příležitost shromáždit silné řečníky z celého světa, jsem ochoten dát hodně, aby se to podařilo. Někteří z těch, které jsme pozvali na první Hydru, samozřejmě nebudou moci přijít. Ale řeknu to: nikdy jsme nezačínali novou konferenci s tak silnou sestavou. Snad kromě úplně prvního JPointu před šesti lety.

— Rád bych rozšířil slova „to je naše budoucnost“: ovlivní téma později i ty, kteří o tom dnes nepřemýšlejí?

- Ano, jsem si tím jistý. Proto se mi zdá velmi správné o tom začít diskutovat co nejrychleji. Například teorie multithreadingu se objevila již poměrně dávno (v 70. letech se již práce vydávaly v plném proudu), ale dlouhou dobu to byli úplní specialisté, dokud se neobjevil první uživatelský dvoujádrový počítač na začátku roku 10. A nyní máme všichni vícejádrové servery, notebooky a dokonce i telefony, a to je hlavní proud. Trvalo asi XNUMX let, než se to rozšířilo, než lidé pochopili, že tento diskurz není záležitostí úzkého okruhu specialistů.

A přibližně totéž nyní vidíme u distribuovaných systémů. Protože základní řešení jako rozložení zátěže, odolnost proti poruchám a podobně se dělají poměrně dlouho, ale jen málokdo ví, co je to například distribuovaný konsensus nebo Paxos.

Jedním z nejdůležitějších cílů, které jsem si pro tuto akci stanovil, je stále více ponořit inženýry do této diskuse. Musíte pochopit, že na konferencích se o některých tématech a řešeních nejen diskutuje, ale také vzniká tezaurus - jednotný pojmový aparát.

Jako svůj úkol vnímám vytvořit platformu, kde o tom všem může každý diskutovat, sdílet zkušenosti a názory. Abychom vy a já společně rozuměli tomu, co dělá jeden algoritmus, co jiný, který z nich je lepší za jakých podmínek, jak spolu souvisí a tak dále.

Se stejným multithreadingem souvisí velmi zajímavá věc. Když naši přátelé z Oracle (především Lesha Shipilev a Sergey Kuksenko) začali aktivně mluvit o výkonu a zejména o multithreadingu, doslova o dva tři roky později se tyto otázky začaly klást na pohovorech ve společnostech, lidé o tom začali diskutovat kuřácké místnosti. To znamená, že věc, která byla údělem úzkých specialistů, se najednou stala mainstreamem.

A to je velmi správné. Zdá se mi, že jsme těm klukům pomohli zpopularizovat celou tuto problematiku, která je opravdu důležitá, užitečná a zajímavá. Pokud dříve nikdo nepřemýšlel o tom, jak Java server zpracovává požadavky paralelně, nyní lidé alespoň na určité úrovni chápou, jak to všechno funguje. A to je skvělé.

Úkol, který nyní vidím, je udělat přibližně totéž s distribuovanými systémy. Aby každý zhruba pochopil, co to je, odkud to pochází, jaké tam jsou úkoly a problémy, aby se i toto stalo mainstreamem.

Firmy mají obrovskou poptávku po lidech, kteří tomu něco rozumí, a takových je málo. Čím více kolem tohoto obsahu a příležitostí se z něj poučit, čím více dáváme lidem příležitostí klást otázky, které jsou ve vzduchu, tím je pravděpodobnější, že se nějak posuneme tímto směrem.

pravěk

— Konference se koná poprvé, ale pro školu to není poprvé. Jak to všechno vzniklo a jak se vyvíjelo?

- To je zajímavý příběh. Před dvěma lety, v květnu 2017, jsme seděli v Kyjevě s Nikitou Kovalem (ndkoval), odborník v oblasti multithreadingu. A řekl mi, že se to bude konat v Petrohradě „Letní škola v praxi a teorii souběžných počítačů“.

Téma vícevláknového programování bylo v posledních třech letech mé inženýrské kariéry fantasticky zajímavé. A pak se ukázalo, že v létě přijíždějí do Petrohradu velmi, velmi slavní lidé, stejný Maurice Herlihy a Nir Shavit, podle učebnice kterou jsem studoval. A mnoho mých přátel s tím mělo něco společného - například Roma Elizarov (elizarov). Uvědomil jsem si, že takovou akci si prostě nemůžu nechat ujít.

Když bylo jasné, že program školy na rok 2017 bude skvělý, vznikl nápad, že by se přednášky rozhodně měly nahrávat na video. My ve skupině JUG.ru jsme naprosto rozuměli tomu, jak by se takové přednášky měly nahrávat. A do SPTCC jsme zapadli jako kluci, kteří natočili video pro školu. V důsledku toho všechny školní přednášky lhát na našem YouTube kanálu.

Začal jsem komunikovat s Pjotrem Kuzněcovem, který byl hlavním ideologem a organizátorem této školy, a s Vitalijem Aksenovem, který to vše pomáhal organizovat v Petrohradě. Uvědomil jsem si, že je to fantasticky cool a zajímavé a pravděpodobně je velmi špatné, že se té krásy může dotknout pouze 100 účastníků.

Když Petera napadlo, že musí znovu nastoupit do školy (v roce 2018 nebyla energie a čas, a tak se pro to rozhodl v roce 2019), bylo jasné, že mu můžeme pomoci tím, že z něj jednoduše odstraníme všechny organizační věci. To se teď děje, Petr se zabývá obsahem a my děláme všechno ostatní. A toto vypadá jako správné schéma: Petra pravděpodobně více zajímá program než „kde a kdy budou všichni obědvat“. A umíme dobře pracovat s halami, místy a tak dále.

Tentokrát se škola místo SPTCC jmenuje SPTDC, nikoli „concurrent computing“, ale „distributed computing“. Podle toho je to zhruba rozdíl: minule se ve škole nemluvilo o distribuovaných systémech, ale tentokrát o nich budeme mluvit aktivně.

— Jelikož se škola nekoná poprvé, můžeme již z minulosti vyvodit nějaké závěry. Co se stalo minule?

— Když před dvěma lety vznikala první škola, očekávalo se, že půjde o akademickou akci, o kterou mají zájem především studenti. Navíc studenti z celého světa, protože škola je pouze v angličtině, a uvažovalo se, že přijede značný počet zahraničních studentů.

Ve skutečnosti se ukázalo, že mnoho inženýrů pocházelo z velkých ruských společností, jako je Yandex. Byl tam Andrey Pangin (apangin) z Odnoklassniki byli kluci z JetBrains, kteří se tomuto tématu aktivně věnují. Obecně tam bylo mnoho známých tváří z našich partnerských společností. Vůbec se jim nedivím, naprosto chápu, proč tam přišli.

Organizátoři vlastně očekávali, že na škole budou akademici, ale najednou přišli lidé z průmyslu a pak mi bylo jasné, že v oboru je poptávka.

Pokud událost, která se téměř nikde nepropagovala, na první kliknutí prstem shromáždila dospělé publikum, znamená to, že zájem skutečně je. Zdá se mi, že žádost na toto téma je opožděná.

„Požadavek je zpožděný“: Alexey Fedorov o nové konferenci o distribuovaných systémech
Maurice Herlihy na setkání JUG.ru

— Kromě školy hovořil Maurice Herlihy v Petrohradě na setkání JUG.ru v roce 2017, když řekl o transakční paměti, a to je trochu blíže formátu konference. Kdo tehdy přišel - stejní lidé, kteří obvykle přicházejí na setkání JUG.ru, nebo jiné publikum?

— Bylo to zajímavé, protože jsme pochopili, že Maurice bude mít obecnou zprávu, ne specifickou pro Javu, a udělali jsme trochu širší oznámení, než obvykle děláme pro naše odběratele zpráv JUG.

Spousta lidí, které znám, přišla z komunit, které se vůbec netýkají Javy: z davu .NET, z davu JavaScriptu. Protože téma transakční paměti se netýká konkrétní vývojové technologie. Když přijde světový specialista mluvit o transakční paměti, promeškat příležitost vyslechnout si takového člověka a klást mu otázky je prostě zločin. Prostě udělá silný dojem, když za vámi přijde člověk, jehož knihu studujete, a něco vám řekne. Jednoduše fantastické.

— A jaká byla zpětná vazba ve výsledku? Byl přístup příliš akademický a pro lidi z branže nepochopitelný?

— Recenze Herlihyho zprávy byly dobré. Lidé psali, že velmi jednoduše a jasně řekl, co se od akademického profesora nečekalo. Ale musíme pochopit, že jsme ho pozvali z nějakého důvodu, je to světoznámý specialista s bohatými zkušenostmi v mluvení a zázemím z hromady knih a článků. A pravděpodobně se v mnoha ohledech proslavil díky své schopnosti předávat materiál lidem. Proto to není překvapivé.

Mluví normální, srozumitelnou angličtinou a samozřejmě skvěle rozumí tomu, o čem mluví. To znamená, že mu můžete položit naprosto jakékoli otázky. Lidé si v podstatě stěžovali, že jsme Mauriceovi věnovali příliš málo času na jeho zprávu: dvě hodiny na takovou věc nestačí, jsou potřeba ještě minimálně dvě. No, zvládli jsme to, co jsme stihli za dvě hodiny.

Motivace

— Skupina JUG.ru se obvykle zabývá událostmi velkého rozsahu, ale toto téma se zdá být více specializované. Proč ses rozhodl to vzít na sebe? Je ochota uspořádat menší akci, nebo se na takové téma sejde hodně diváků?

— Když pořádáte akci a nastavíte určitou úroveň diskuse, vždy vyvstane otázka, jak moc je tato diskuse rozšířená. Kolik lidí – deset, sto nebo tisíc – se o to zajímá? Existuje kompromis mezi hmotností a hloubkou. To je úplně normální otázka a každý ji řeší jinak.

V tomto případě chci udělat událost „pro sebe“. Stále něco o multithreadingu rozumím (přednášel jsem na toto téma na konferencích a několikrát jsem studentům něco řekl), ale v distribuovaných systémech jsem začátečník: četl jsem nějaké články a viděl několik přednášek, ale ne četla to i jediná plnohodnotná kniha.

Máme programovou komisi složenou z odborníků v oboru, kteří mohou hodnotit správnost zpráv. A co se mě týče, snažím se z této akce udělat takovou, na kterou bych se svým nedostatkem odborných znalostí rád šel. Jestli bude možné zaujmout širokou veřejnost, nevím. To asi není v této fázi nejdůležitější úkol této akce. Nyní je důležitější vytvořit nejsilnější program v krátkém čase.

Pravděpodobně jsem teď týmu nepoložil za úkol „shromáždit tisíc lidí poprvé“, ale „aby se konference objevila“. To nemusí znít příliš obchodně a poněkud naivně, i když vůbec nejsem altruista. Ale občas si dovolím určitou svobodu.

Jsou důležitější věci než peníze a mimo peníze. Už teď děláme velké množství skvělých velkých akcí pro tisíc lidí a více. Naše Java konference již dávno přesáhly tisícovku lidí a nyní tuto laťku přeskakují další akce. Čili otázka, že jsme se stali zkušenými a slavnými organizátory, už nestojí za nic. A pravděpodobně to, co na těchto akcích vyděláme, nám dává možnost reinvestovat do toho, co je pro nás, a v tomto případě i pro mě osobně, zajímavé.

Tím, že dělám tuto akci, jdu proti některým zásadám naší organizace. Obvykle se například snažíme připravovat konference s velkým předstihem, ale nyní máme velmi těsné termíny a program dolaďujeme měsíc před samotnou akcí.

A tato akce bude ze 70–80 % v angličtině. I zde se vždy rozproudí diskuse o tom, zda potřebujeme být blíž lidem (kteří tomu lépe rozumí, když je většina zpráv v ruštině), nebo celému světu (protože technický svět je anglicky mluvící). Většinou se snažíme dělat hodně reportáží v ruštině. Ale ne v této době.

Kromě toho také požádáme některé naše rusky mluvící mluvčí, aby mluvili anglicky. To je v jistém smyslu absolutně protiuživatelský a nehumánní přístup. Musíme však pochopit, že v současné době neexistuje žádná ruskojazyčná literatura na toto téma a každý, kdo se o to vůbec zajímá, je nucen číst v angličtině. To znamená, že je nějakým způsobem schopen porozumět angličtině. Pokud je v případě JavaScriptu, Javy nebo .NET hodně lidí, kteří neumí moc dobře anglicky, ale zároveň umí dobře programovat, pak jsou pravděpodobně distribuované systémy oblastí, ve které prostě neexistuje způsob, jak se nyní učit.

Opravdu chci provést tento experiment: jak bude veřejnost v Rusku vnímat událost ze 70–80 % v angličtině. Přijde nebo ne? Dopředu to nevíme, protože jsme to nikdy nedělali. Ale proč to neudělat? Řekněme, že tohle je jeden velký experiment, který prostě nemůžu nezkusit.

Školní program SPTDC již existuje publikováno úplně a v případě Hydry již je znám znatelnou část a brzy zveřejníme rozbor celého programu konference.

Zdroj: www.habr.com

Přidat komentář