Tre prisvinder af Dijkstra-prisen: hvordan Hydra 2019 og SPTDC 2019 forløb

Tre prisvinder af Dijkstra-prisen: hvordan Hydra 2019 og SPTDC 2019 forløb

For nylig, fra 8. til 12. juli, fandt der samtidig to markante begivenheder sted — en konference Hydra og en skole SPTDC. I dette indlæg ønsker jeg at fremhæve nogle af de særlige træk, vi bemærkede under konferencens forløb.

Den største stolthed ved Hydra og Skolen er talerne.

  • Tre prisvindere af Dijkstra-prisen: Leslie Lamport, Maurice Herlihy og Michael Scott. Desuden modtog Maurice den to gange. Leslie Lamport modtog også Turing-prisen — den mest prestigefyldte pris fra ACM inden for computervidenskab;
  • Skaberen af JIT-kompilatoren Java — Cliff Click;
  • Udviklerne af koroutiner — Roman Elizarov (elizarov) og Nikita Koval (ndkoval) for Kotlin, og Dmitriy Vyukov for Go;
  • Bidragsydere til Cassandra (Alex Petrov), CosmosDB (Denis Ristsov), Yandex Database (Semen Checherynda og Vladislav Kuznetsov);
  • Og mange andre kendte personer: Martin Kleppmann (CRDT), Heidi Howard (Paxos), Ori Lahav (C++ hukommelsesmodel), Pedro Ramalhete (ventefri datastrukturer), Alexey Zinovyev (ML), Dmitriy Bugaychenko (grafanalyse).

Og her er Skolen:

  • Brown University (Maurice Herlihy),
  • University of Rochester (Michael Scott),
  • University of Waterloo (Trevor Brown),
  • University of Nantes (Achour Mostefaoui),
  • Ben-Gurion University of the Negev (Danny Hendler),
  • University of California, Los Angeles (Eli Gafni),
  • Institut polytechnique de Paris (Petr Kuznetsov),
  • Microsoft Research (Leslie Lamport),
  • VMware Research (Ittai Abraham).

Tre prisvinder af Dijkstra-prisen: hvordan Hydra 2019 og SPTDC 2019 forløb

Teori og praksis, videnskab og produktion

Lad mig minde om, at SPTDC-skolen er en lille begivenhed med halvhundrede deltagere, hvor verdensledende eksperter samles for at diskutere moderne emner inden for distribueret computing. Hydra er en to-dages konference om distribuerede beregninger, der afholdes parallelt. Hydra har en mere ingeniørmæssig fokus, mens Skolen har en videnskabelig en.

Et af målene med konferencen Hydra er at samle videnskabelige og ingeniørmæssige aspekter. På den ene side opnås dette ved at vælge indlæg til programmet: sammen med Lamport, Herlihy og Scott er der mere anvendelsesorienterede indlæg fra Alex Petrov, som bidrager til Cassandra, eller Roman Elizarov fra JetBrains. Der er Martin Kleppmann, som tidligere har lavet og solgt startups, men nu studerer CRDT ved Cambridge University. Men den sjove ting er, at Hydra og SPTDC foregår side om side — de har forskellige indlæg, men et fælles sted at kommunikere.

Tre prisvinder af Dijkstra-prisen: hvordan Hydra 2019 og SPTDC 2019 forløb

Nedsænkning

Fem dages skolerække er en meget stor begivenhed og en stor belastning for både deltagere og arrangører. Ikke alle nåede det til de sidste dage. Nogle gik samtidig til Hydra og Skole, og for dem blev de sidste dage de mest fyldte. Alt det her hektiske arbejde kompenseres af en utrolig dybdegående oplevelse. Det skyldes ikke kun mængden, men også kvaliteten af materialet. Alle præsentationer og foredrag på begge begivenheder var ikke planlagt som introduktioner, så hvor end du gik hen, dykkede du straks dybt og længe, og du holdes fast indtil slutningen.

Naturligvis afhænger meget af deltagernes forberedelse. Der var et sjovt øjeblik, hvor to grupper mennesker i korridoren uafhængigt diskuterede Heidi Howards præsentation: den ene gruppe syntes, at den var helt almindelig, mens den anden gruppe derimod tænkte dybt over livet. Interessant nok sagde deltagere fra programmeringsudvalget, der ønskede at forblive anonyme, at Hydra-præsentationer og skoleforelæsninger på deres arrangementer kunne have været overkvalificerede. For eksempel, hvis en PHP-junior kom til en konference for at lære om livet, ville det være lidt overilet at forvente, at han havde dybdegående viden om indre funktioner i Zend Engine. Her gav talerne ikke juniorer en let tilgang, men forudsatte straks et bestemt niveau af viden og forståelse. Og faktisk var deltagerne, der arbejder med distribuerede systemer og skriver kerner til runtime, på et meget højt niveau, hvilket er logisk. Ifølge deltagernes reaktion var det ret nemt at finde en præsentation, der passede til deres niveau og emne.

Når vi taler om specifikke præsentationer, så var de alle gode på deres måde. Ifølge hvad folk siger, og hvad der fremgår af feedbackformen, var én af de mest imponerende præsentationer på skolen «Nonblocking data structures» af Michael Scott; han tog simpelthen alle med storm, og han har en usædvanlig rating på omkring 4.9.

Tre prisvinder af Dijkstra-prisen: hvordan Hydra 2019 og SPTDC 2019 forløb

Metakonference

Længe før Hydra og Skole startede, antydede Ruslan ARG89 at det ville blive en slags „metakonference“ - en konference for konferencer, hvor alle de topdeltagere fra andre arrangementer automatisk ville blive trukket ind, som i et sort hul. Sådan gik det! For eksempel blev Ruslan Cheremin bemærket blandt deltagerne på skolen, fra DeutscheBank, en kendt ekspert i multitrådning. Og blandt deltagerne fra Hydra blev

Tre prisvinder af Dijkstra-prisen: hvordan Hydra 2019 og SPTDC 2019 forløb

Vadim Tsevsko bemærket (incubos) og Andrei Panygin (apangin) fra virksomheden Odnoklassniki. (Desuden hjalp Vadim os med at lave to fremragende interviews med Martin Kleppmann — et til Habr, og et andet — til seerne af online-transmissionen). Der var medlemmer af det programmæssige udvalg DotNext, kendte oplægsholdere Anatoly Kulakov og Igor Labutin. Blandt Java-udviklerne var Dmitry Alexandrov og Vladimir Ivanov. Normalt ser du disse personer i helt forskellige sammenhænge — .NET-udviklere på DotNext, Java-udviklere på Joker osv. Og nu sidder de side om side under Hydra’s præsentationer og diskuterer problemerne sammen ved bofferne. Når den lidt kunstige opdeling efter programmeringssprog og teknologier forsvinder, træder temaets karakterer frem: specialister i dynamiske runtime’s kommunikerer med andre runtime-udviklere, forskere i teorien om distribuerede beregninger diskuterer heftigt med andre forskere, databasen engines ingeniører belejrer tavlen i en gruppe osv.

Ved præsentationen om C++'s hukommelsesmodel sad udviklere fra OpenJDK på de forreste rækker (i det mindste kender jeg dem i ansigtet, mens jeg ikke kan genkende Python-udviklerne — måske var de der også). Faktisk har denne præsentation noget shchipilevsk-like over sig… Ori fortæller ikke præcist det samme, men med et opmærksomt blik kan man opdage paralleller. Selv efter alt, hvad der er sket i de seneste C++ standarder, er problemer som værdier „ud af den blå luft“ ikke blevet løst, og nu kunne man gå til en sådan præsentation og høre, hvordan folk „fra den anden side af barrikaderne“ forsøger at løse disse problemer, hvordan de ræsonnerer, man kunne blive imponeret over de fundne tilgange til løsningen (Ori har en af de mulige reparationer).

Der var meget mange deltagere fra programmæssige udvalg og community-motorer. Alle løste deres interkonfessionelle problemer, byggede broer, og skabte forbindelser. Jeg udnyttede dette, hvor jeg kunne, og vi aftalte f.eks. med Alexander Borgardt fra Moscow C++ User Group at skrive en omfattende artikel sammen om aktører og asynkronitet i C++.

Tre prisvinder af Dijkstra-prisen: hvordan Hydra 2019 og SPTDC 2019 forløb

På billedet: Leonid Talalajev (ltalal, til venstre) og Oleg Anastasyev (m0nstermind, til højre), ledende udviklere i virksomheden Odnoklassniki

Brændende diskussionszoner og boffer

На конференциях всегда есть участники, которые знают предмет наравне с докладчиками (а иногда и лучше докладчиков — например, когда среди участников затесался разработчик ядра какой-то технологии). На Гидре таких высокоэкспертных участников было очень много. Например, в какой-то момент вокруг Алекса Петрова, рассказывающего про Cassandra, образовалось столько людей, что он не смог отвечать всем. В какой-то момент Алекса плавно оттеснили вбок и начали разрывать вопросами, но падающий флаг подхватил известный в кругах Rust-разработчиков Tyler Neely и отлично отбалансировал нагрузку. Когда я попросил Тайлера помочь с онлайн-интервью, он спросил только: «Когда начинаем?»

Tre prisvinder af Dijkstra-prisen: hvordan Hydra 2019 og SPTDC 2019 forløb

Дискуссионный дух временами прорывался даже на доклады: Никита Коваль устроил внезапную Q&A-сессию, поделив доклад на несколько секций.

И наоборот, на BOF-е по многопоточности вспомнили про non-volatile память, затянули на этот боф Pedro Ramalhete как главного специалиста, и он всем всё объяснил (короче, в ближайшее время энергонезависимая память нам не грозит). Одним из ведущих этого бофа, кстати, был Владимир Ситников, который участвует в программных комитетах какого-то безумного количества конференций… кажется, сейчас это пять штук одновременно. На соседнем бофе про «Modern CS in real world» тоже обсуждали NVM и пришли к этому совершенно самостоятельно.

Tre prisvinder af Dijkstra-prisen: hvordan Hydra 2019 og SPTDC 2019 forløb

Могу поделиться супер-инсайдом, который могли не заметить даже непосредственные участники истории. Eli Gafni выступал вечером первого дня Школы, а на следующий день остался и начал троллить Лэмпорта, и со стороны казалось, что это дичь и Эли неадекватный. Что это какой-то тролль, который задался вынести мозг Лесли. На самом деле, факт в том, что они чуть ли не лучшие друзья, дружат много лет, и это просто такие дружеские подколы. То есть шутка сработала — на неё повёлся весь народ вокруг, принял за чистую монету.

Tre prisvinder af Dijkstra-prisen: hvordan Hydra 2019 og SPTDC 2019 forløb

Отдельно хочется отметить, сколько любви и сил вложили в это докладчики. Кто-то стоял в дискуссионной зоне до последнего, чуть ли не часами. Уже давно закончился перерыв, начался доклад, закончился, начался следующий перерыв — а Дмитрий Вьюков fortsatte med at besvare spørgsmål. Jeg havde også en interessant historie — da jeg overrumplede Cliff Click, fik jeg ikke kun en klar og fornuftig forklaring på den provokerende diskussion om manglen på tests til bestemte ting i H2O, men også en fuld gennemgang af hans nye sprog AA. I never asked for this: jeg spurgte bare, hvad man kunne læse om AA (det viste sig, at man kunne lytte til podcast), og i stedet brugte Cliff en halv time på at fortælle om sproget og sikre, at det, der blev fortalt, blev forstået korrekt. Utroligt. Jeg skal skrive et blogindlæg om AA. Endnu en usædvanlig oplevelse — at observere processen med at gennemgå pull requests i Kotlin. Det er virkelig en magisk følelse — når du nærmer dig forskellige diskussionsgrupper, forskellige talere og dykker ind i en helt ny verden. Det er noget på niveau med «There, There» fra Radiohead.

Tre prisvinder af Dijkstra-prisen: hvordan Hydra 2019 og SPTDC 2019 forløb

Engelsk

Hydra 2019 — det er vores første konferencedag, hvor hovedsproget er engelsk. Det bringer både fordele og udfordringer. Den åbenlyse fordel er, at folk fra andre lande end Rusland deltager, så blandt deltagerne kan du møde ingeniører fra Europa og forskere fra England. Talere tager deres studerende med. Generelt har vigtige talere meget større motivation for at deltage i en sådan konference. Forestil dig, at du er taler på en helt russisk konferencedag: du har præget dit foredrag, deltaget i diskussionszonen, og hvad så? At færdes rundt i byen og se turiststeder? Faktisk har de virkelig populære talere allerede set alt, de gider ikke tage af sted for at se løver og hævebroer, de keder sig. Hvis alle oplæg er på engelsk, kan de deltage i konferencen på lige vilkår, få fornøjelse, deltage i diskussionszoner osv. Atmosfæren er ret venlig overfor talerne.

Tre prisvinder af Dijkstra-prisen: hvordan Hydra 2019 og SPTDC 2019 forløb

Den åbenlyse ulempe er, at ikke alle er komfortable med at kommunikere på engelsk. Mange forstår godt, men taler dårligt. Generelt, de sædvanlige ting, der blev løst på forskellige måder. For eksempel, nogle diskussionszoner begyndte på russisk, men sprang straks over til engelsk, når den første engelsktalende deltager dukkede op.

Jeg måtte selv styre både åbning og lukning af online-transmissioner udelukkende på engelsk og deltage i et par interviews med eksperter under optagelse. Og det var en ægte udfordring for mig, som jeg ikke vil glemme lige med det samme. På et tidspunkt sagde Oleg Anastasiev (m0nstermind) bare, at jeg skulle blive siddende sammen med dem under interviewet, og jeg indså for sent, hvad det betød.

På den anden side var det virkelig dejligt, at folk til præsentationerne stillede spørgsmål med entusiasme. Ikke kun sprogkvinderne, men faktisk alle, det fungerede rigtig godt. På andre konferencer kan man ofte se, at folk genert søger at stille spørgsmål fra salen på gebrokkent engelsk, og de kan kun presse noget ud af sig selv i diskussionsområdet. Her var det helt anderledes. For eksempel sluttede Cliff Click sine præsentationer lidt tidligere, og derefter kom spørgsmålene i en uafbrudt strøm, diskussionen gik over i det åbne diskussionsområde — uden akavede pauser og ophold. Det samme gjaldt Q&A-sessionen med Leslie Lamport, værten skulle stort set ikke stille sine egne spørgsmål, alt blev fundet på af deltagerne.

Der var småting, som få lægger mærke til, men som findes. Fordi konferencen var på engelsk, var designet af ting såsom flyers og kort mere let og minimalistisk. Der var ikke behov for at dubbe sprog og overbelaste designet.

Sponsorer og udstilling

Vores sponsorer hjalp enormt med at skabe konferencen. Takket være dem var der altid noget at beskæftige sig med i pauserne.

På standen af TechCenter Deutsche Bank kunne man chatte med ingeniørerne for flerkernede systemer, løse deres opgaver 'fra hovedet', vinde mindepræmier og bare have en hyggelig tid.

Tre prisvinder af Dijkstra-prisen: hvordan Hydra 2019 og SPTDC 2019 forløb

På standen Kontur kunne man tale om deres egne systemer, både åbne og open-source: distribueret in-memory database, distribueret binær log, system til orkestrering af mikrotjenester, universel transport til telemetri og meget mere. Og selvfølgelig var der opgaver og konkurrencer, klistermærker med den binære kat og det Lidende Middelalder, gaver som bøger af Martin Kleppmann og LEGO-figuriner.

Bemærk, at løsningen af Konturs opgaver allerede er offentliggjort på Habré. Løsningen er god, det er værd at tage et kig.

Tre prisvinder af Dijkstra-prisen: hvordan Hydra 2019 og SPTDC 2019 forløb

De interesserede kunne købe alle mulige bøger og diskutere dem med kollegerne. Der samlede sig en hel menneskemængde til autografsessionen!

Tre prisvinder af Dijkstra-prisen: hvordan Hydra 2019 og SPTDC 2019 forløb

Resumé

Hydra-konferencen og SPTDC-skolen er meget vigtige begivenheder for os som arrangementsfirma og for hele samfundet. Dette er en chance for at se ind i vores fremtid, udvikle et fælles begrebsapparat til diskussion af moderne problemer og undersøge spændende retninger. Multithreading dukkede op for mange år siden, men efter introduktionen af den første virkeligt multi-core processor tog det et helt årti, før fænomenet blev almindeligt. Det, vi har hørt i denne uge under præsentationerne, er ikke blot forbigående nyheder, men en vej til en lysere fremtid, som vi vil følge i de kommende år. Dette indlæg vil ikke indeholde nogen spoilers til næste Hydra, men man kan håbe på det bedste. Hvis du er interesseret i lignende problemstillinger, kan det være værd at lægge mærke til vores andre arrangementer, såsom hardcore præsentationer på konferencer. Joker 2019 eller DotNext 2019 Moskva. Vi ses til de næste konferencer!

Tre prisvinder af Dijkstra-prisen: hvordan Hydra 2019 og SPTDC 2019 forløb

Kilde: habr.com

Køb pålidelig webhosting med DDoS-beskyttelse, VPS VDS-servere 🔥 Køb pålidelig webhosting med DDoS-beskyttelse, VPS VDS-servere | ProHoster