I år er det den femtende Google Summer of Code, hvor 206 open source-projekter deltager. I år bliver det første for 27 projekter, inklusive Moira. Dette er vores foretrukne system til meddelelser om nødsituationer, oprettet i Kontur.
Jeg var lidt involveret i at få Moira ind i GSoC, så nu vil jeg fortælle dig på første hånd, hvordan dette lille skridt for open source og et stort spring for Moira skete.
Cirka tusinde studerende fra hele verden deltager i GSoC hvert år. Sidste år var der 1072 studerende fra 59 lande, der arbejdede på 212 open source-projekter. Google sponsorerer studerendes deltagelse og betaler dem stipendier, og projektudviklere fungerer som mentorer for studerende og hjælper dem med at deltage i open source. For mange studerende er dette den bedste chance for at få erfaring med industriel udvikling og en cool linje på deres CV.
Hvilke projekter deltage i GSoC dette år? Ud over projekter fra store organisationer (Apache, Linux, Wikimedia) kan der skelnes mellem flere store grupper:
styresystemer (Debian, Fedora, FreeBSD)
Programmeringssprog (Haskell, Python, Swift)
biblioteker (Boost C++, OpenCV, TensorFlow)
compilere og byggesystemer (GCC, LLVM, webpack)
værktøjer til at arbejde med kildekode (Git, Jenkins, Neovim)
DevOps-værktøjer (Kapitan, Linkerd, Moira)
databaser (MariaDB, PostgreSQL)
Nu vil jeg fortælle dig, hvordan Moira endte på denne liste.
Gør dig klar og send din ansøgning
Ansøgninger om deltagelse i GSoC begyndte i januar. Moira-udviklingsteamet fra Kontur og jeg talte sammen og indså, at vi gerne ville deltage. Vi havde absolut ingen idé - og har stadig ingen idé om - hvor meget indsats dette ville kræve, men vi følte et stærkt ønske om at øge Moira-udviklerfællesskabet, tilføje nogle store funktioner til Moira og dele vores kærlighed til at indsamle metrics og korrekt advarsel.
Det hele startede uden overraskelser. Først udfyldt projektside på GSoC-hjemmesiden talte de om Moira og hendes styrker.
Så var det nødvendigt at beslutte, hvilke store funktioner GSoC-deltagere ville arbejde på denne sommer. skab side i Moiras dokumentation det var nemt, men det var sværere at blive enige om, hvilke opgaver der skulle medtages der. Tilbage i februar var det nødvendigt at udvælge opgaver, som eleverne skulle lave i løbet af sommeren. Det betyder, at vi ikke pludselig kan lave dem i stedet for studerende. Da vi diskuterede med udviklerne af Moira, hvilke opgaver der skulle "udsættes" for GSoC, var der næsten tårer i vores øjne.
Som et resultat endte opgaver fra Moira-kernen (om API, sundhedstjek og kanaler til levering af advarsler) og fra dens webgrænseflade (om integration med Grafana, migrering af kodebasen til TypeScript og overgang til native kontroller) der. Derudover har vi forberedt nogle små opgaver på Github, hvorigennem fremtidige GSoC-deltagere kunne blive fortrolige med kodebasen og få en idé om, hvordan udviklingen i Moira ville se ud.
Håndtere konsekvenserne
Så var der tre ugers venten, en lille glæde fra kædebrevet...
...og en eksplosion ind Moira udvikler chat. Mange aktive deltagere med interessante navne kom dertil, og en bevægelse begyndte. Beskeder i chatten ændrede sproget fra en russisk-engelsk blanding til rent ingeniørengelsk, og Moiras udviklere begyndte at stifte bekendtskab med nye deltagere i deres virksomhedsstil:
"Gode første udgaver" solgte som varmt brød på Github. Jeg var nødt til at gøre noget, der var helt uventet: at komme med en stor pakke med små introduktionsopgaver specifikt til nye medlemmer af fællesskabet.
Vi kom dog igennem og er glade for det.
Hvad sker der nu
Den kommende mandag den 25. marts d Google Summer of Code hjemmeside Ansøgninger fra studerende om deltagelse i specifikke projekter vil blive accepteret. Alle vil have to uger til at ansøge om sommerdeltagelse i udviklingen af Moira, Haskell, TensorFlow eller et hvilket som helst andet af to hundrede projekter. Deltag med os, og lad os yde et stort bidrag til open source denne sommer.