Erfaringer fra PyCon 2023

PyCon US arrangeres hvert år og er verdens største pythonkonferanse. I denne artikkelen deler Yngve Mardal Moe sine erfaringer etter å ha besøkt og presentert på PyCon US for første gang i år.

Yngve Mardal Moe

Publisert:

9. mai 2023

Trykk på taggene for å lese mer om hvor og hvordan vi benytter samme fag og teknologi

To stolte presentasjonsholdere

​Det er nå halvannen uke siden jeg landet i Norge, jetlagen har begynt å gi slipp, og det er på tide med en liten oppdatering. Den 18. april, klokken 06:00 satt jeg og Marie (min samboer) på flyet, destinasjon: Salt Lake City, PyCon 2023. Verdens største pythonkonferanse. Trøttheten av å stå opp klokken 03:00 var så vidt overvunnet av nervøsiteten. Her skulle vi presentere et broderi- og kunsthobbyprosjekt vi har arbeidet med de siste årene – TurtleThread, et lite Pythonbibliotek for å styre en broderimaskin med Python.

Det er mye fin veggkunst i Salt Lake City
Det er mye fin veggkunst i Salt Lake City

PyCon US varer over ni dager og består av tutorials, samlinger (summits), diskusjoner, presentasjoner og open source utvikling (sprints). Med 2000 fysiske deltakere i en konferansearena på størrelse med et lite tettsted er det en massiv konferanse. Det var her Anaconda i fjor anonserte at PyScript – en WebAssembly-variant av CPython som lar oss kjøre pythonkode i nettleseren, det er her hovedutviklerne av Python hvert år møtes for å bestemme hvordan språket skal utvikle seg det neste året og det var altså her, på 20 års jubileet, vi skulle snakke om broderikunst og broderimaskiner.

Messeområdet kvelden før konferanseåpningen
Messeområdet kvelden før konferanseåpningen

Det hele startet med at vi i desember i fjor tenkte: Det hadde jo vært kult å presentere TurtleThread (det tidligere nevnte broderibiblioteket) på PyCon. Eller kanskje EuroPython? Og man får jo ikke muligheten om man ikke prøver, så vi bestemte oss for å skrive en pitch til PyCon US og PyCon Italia. Nåløyet på slike konferanser er trangt, så vi slo oss til ro med at vi kanskje måtte prøve et par ganger før vi fikk tommel opp. Sjokket var derfor stort da vi i månedskiftet januar/februar fikk vite at vi kunne ha både en poster og en presentasjon på PyCon US. Vi måtte plutselig finne ut hvordan vi skulle rekke alt vi hadde lovet, og konferansen var allerede i april!

Heldigvis snakket jeg med min nærmeste leder, Ingrid, om dette, og hun foreslo at Bouvet kunne kjøpe en broderimaskin til Labben (makerspacet vi har på bouvethuset i Oslo). De som jobber på labben var heller ikke vonde å be og for å gjøre en lang historie kort besto de neste månedene av lange kvelder på labben, knekte nåler, tråder som røk og store mengder broderi. Etter en påskeferie med tolvtimers dager på Labben kom vi endelig i mål, og presentasjonen og posteren var klar for PyCon.

Vi gjør siste posterfinpuss på hotellet
Vi gjør siste posterfinpuss på hotellet

Så, her var vi i Salt Lake City på verdens største pythonkonferanse. De to første dagene var forbeholdt tutorials, og summits. Første dag var det en tutorial vi hadde sett oss ut på forhånd: Hvordan lage et produksjonsklart GraphQL endepunkt i Python. Tutorialen brukte Strawberry, som jeg definitivt anbefaler for alle som er interessert i dette.

Intenst fokus på GraphQL tutorial
Intenst fokus på GraphQL tutorial

Dag to av konferansen brukte vi på undervisersamingen (education summit), hvor vi møtte en rekke andre pythonundervisere og fikk høre deres tanker og hvordan de underviser Python. Jeg synes det var spesielt interessant å høre hvordan Chelsea Troy brukte interaktiv undervisning for å gjøre undervisningen passende for et veldig blandet publikum. Den presentasjonen anbefaler jeg alle å se når den blir lagt ut på YouTube!

Så var det fredag, offisiell åpning av konferansen, messeområde var fylt med sponsorboder, og presentasjonene var i gang. For å åpne konferansen var det keynote med Ned Batchelder som på ingen måte handlet om Python, men heller hvordan vi som mennesker bør kommunisere på en åpen og inkluderende måte. Det var et overaskende friskt pust i en ellers så teknisk konferanse. Resten av dagen tilbragte jeg i Packaging summit, hvor vi diskuterte tilstanden til Python pakkeøkosystemet. Hvilke mangler er det, og hvordan kan vi gjøre økosystemet mindre fragmentert. Dette var interessant, og fortjener sikkert en hel artikkel i seg selv, men et mest nyttige jeg lærte var:

  • Python vil mest sannsynlig offisielt støtte mobile enheter om noen år,
  • det er mye fokus på WebAssembly,
  • det er lurt å begynne å tenke på å migrere vekk fra setuptools og
  • det arbeides aktivt for at Conda og PIP skal arbeide bedre sammen.
Konferanseleder Mariatta Wijaya åpner PyCon US
Konferanseleder Mariatta Wijaya åpner PyCon US

Med første dag overstått var det presentasjonsdag for oss. Det var mange spennende presentasjoner, men fokuset vårt ble vår egen presentasjon. Etter en generalprøve og teknisk sjekk i green room, var det opp på scenen som siste foredragsholder for dagen. Presentasjonen legges på YouTube (mest sannsynlig i løpet av mai), men for å gi en liten smakebit snakket vi om hvordan vi kan finne programmeringskonsepter i klassiske broderiteknikker, datakunst (computer art), kreativ koding og hvordan du kan styre en broderimaskin med Python. Heldigvis falt det i god smak og vi fikk veldig fine tilbakemeldinger fra publikum.

Med foredraget vel overstått var neste stopp PyLadies-auksjonen. Dette er en årlig auksjon som samler inn penger til PyLadies, en non-profit organisasjon som arbeider for kjønnsbalanse i Python verdenen (blant annet igjennom rause reisestipend og samlinger). Her var det god mat, god stemning og det ble samlet inn store summer til PyLadies.

Det som overrasket meg med konferansen var stemningen. Jeg har vært på flere konferanser, fra bittesmå til middels store, og alle virket mindre personlige enn PyCon US. Det er vanskelig å sette fingeren på det, men det er tydelig at arrangørene gjør en god jobb med å lage en arena som er åpen for alle. For eksempel arrangerte de noe som het for open spaces, en rekke åpne rom og en tavle. Hvem som helst kan ta en post-it lapp, skrive noe de er interesserte i og booke et rom for en time. Det var åpne rom for alt fra hardbarket data orkestrering og aerospace engineering til strikking og sjonglering! Så dette var en veldig fin arena for å treffe andre Pythonutviklere med like interesser. Selv deltok jeg på en open space for Circuit Python og fikk lekt meg litt med mikrokontrollere og Python sammen med trivelige folk fra Adafruit.

Vi lagde et program som måler hvor lang kabelen vi svinger mikrokontrolleren fra er
Vi lagde et program som måler hvor lang kabelen vi svinger mikrokontrolleren fra er

Med lørdagen overstått var det bare en dag igjen av konferansens hovedprogram, og dette var også dagen for posterpresentasjonene. Vi møtte mange trivelige folk, svarte på mange spørsmål om hva TurtleThread er og hadde interessante diskusjoner om kunst, broderi og programmeringsundervisning. Jeg tok meg også en tur og så på de andre posterne. Noen fra Anaconda presenterte GraphBLAS: Et utrolig kult prosjekt for nettverksanalyse (grafteori) som blant annet Redis bruker som beregningsbackend i RedisGraph. GraphBLAS er i seg selv veldig lite nybegynnervennlig, men med en NetworkX frontend in the making (beta nå), så vil vi snart ha en av verdens mest effektive nettverksanalysebibliotek med et utrolig brukervennlig grensesnitt.

Vi ble ganske fornøyde med sluttresultatet for posteren
Vi ble ganske fornøyde med sluttresultatet for posteren
GraphBLAS posteren til Anaconda var veldig kreativt satt opp!
GraphBLAS posteren til Anaconda var veldig kreativt satt opp!

Avslutningen av konferansen var fabelaktig, med en gripende keynote fra Carol Willing og en liten retrospektiv av de siste 20 årene med PyCon holdt av Guido van Rossum. Så snart det var over bærte det videre til konferansens høydepunkt: Sprintene. Sprintene skjer etter konferansens hovedprogram og er økter hvor open source utviklere inviterer pycondeltakere til å bidra på sitt prosjekt. Vi bestemte oss for å parprogrammere for BeeWare prosjektet og rent spesifikt Briefcase biblioteket: Et pythonbibliotek for å lage og publisere pythonapplikasjoner for Windows, Mac, Linux, Android og iOS. Vårt bidrag (som fremdeles ligger i review) omhandler støtteverktøy for å sette opp briefcase for allerede eksisterende applikasjoner.

Guido van Rossum fortalte om 20 år med PyCon
Guido van Rossum fortalte om 20 år med PyCon
Parprogrammering på BeeWare sprint
Parprogrammering på BeeWare sprint

Så, etter to dager med sprinter, tre dager med talks og to dager med tutorials var altså konferansen over for vår del, men etter en så vellykket konferanse er ikke det noe å klage over! Nå håper jeg bare jeg får muligheten til å dra igjen senere.

Temaer