Verscheidene teksten en delen van de aoc.infi.nl/2023 website

Advent of Code 2023 Tribute: drie winnaars!

Jeroen Achter de schermen

Al sinds 2016 sponsoren we jaarlijks Advent of Code, en maken we ook jaarlijks een “Tribute” puzzel. We zijn ook in 2023 er weer even goed voor gaan zitten en kozen drie winnaars in drie verschillende categorieën.

In december hebben we weer genoten van Advent of Code: elke dag van advent een nieuwe set programmeerpuzzels! Al sinds 2016 sponsoren we elk jaar AoC, en ieder jaar maken we een bescheiden “Tribute” puzzel. In november kondigden we de puzzel van 2023 aan.

In december hebben we heelijk meegepuzzeld en op ons interne leaderboardje gestreden om de eer en bescheiden prijzen (voor de eerste 5 puzzels dan). En nu was het tijd om de inzendingen voor aoc.infi.nl/2023 te bekijken!

Vijf mensen die naar een projectiescherm met code kijken, van achter gefotografeerd

We hebben alle inzendingen zorgvuldig bekeken, en echt genoten van wat we zagen!

Omdat we dit jaar iets krapper bij kas zaten hebben we één tier lager gesponsord dan normaal. Daardoor kwam onze Nederlandstalige advertentie, en dus Nederlandstalige puzzel, ook bij veel bezoekers buiten Nederland terecht. Maar dat heeft jullie niet tegengehouden! We zagen inzendingen met bijvoorbeeld comments in andere talen, wat betekent dat jullie de moeite hebben genomen om een auto-translated puzzel op te lossen. Dat verdient wel een shout-out!

Hoewel we alle inzendingen waarderen, hebben we met wat moeite toch drie winnaars gekozen, in drie verschillende categorieën. Tijd om ze toe te lichten!

⚠️ Warning: Spoilers voor de 2023 Infi Puzzel volgen!

Meme oplossingen

We zagen een aantal keren inzendingen voorbij komen die de Python meme dat er een package voor alles is tot het extreme dreven. Het was een close call tussen de runner up van Infi-alumnus Anna Baas, en de inzending van Ivor Bosloper. Maar laatstgenoemde was nog beknopter en om de meme kracht bij te zetten was de import zelfs in de def zelf geplaatst. Dat maakt de oplossing voor deel 2 simpelweg:

def f2(input):
    # pip install smallestenclosingcircle
    import smallestenclosingcircle
    return sum(smallestenclosingcircle.make_circle(tuples)[2] for tuples in input)

Wat een riante mix van emoties (en bijbehorende slow clap) bij de jury opleverde. “It gets the job done” zullen we maar zeggen!? De bijbehorende meme-prijs en goodie bag wordt snel opgestuurd!

Rauwe wiskunde

Een hoop inzendingen leunden echter totaal niet op packages. Nee, mensen hebben gewoon netjes de wiskunde benodigd voor de oplossing uitgeprogrammeerd. Het meest onder de indruk waren we van de oplossing van Maks Verver: leesbaar, handcrafted, en extra bonuspunten voor de svgeneratie voor debugging, waarmee deze inzending net iets boven de rest uit stak. Ook hiervoor is een passende prijs en goodie bag binnenkort onderweg!

Programmeertaal op een voetstuk

Tot slot hebben we nog een winnaar een prijs toegekend, omdat deze inzending als geen ander een programmeertaal in het zonnetje zet. De C++ inzending van Barnabás Kálmán was om door een ringetje te halen! We kregen hernieuwd respect voor deze beproefde programmeertaal, ook al gebruiken we ‘m bij Infi niet heel vaak. Ook hier: binnenkort een passende prijs onderweg!

Afsluitend

Heel veel dank aan iedereen die een oplossing heeft ingezonden! Het was een genot om er doorheen te gaan. We hebben gelachen, gehuild, en geleerd!

Hopelijk is er in 2024 weer een editie van Advent of Code. En als dat zo is, zijn we met Infi in elk geval weer van de partij! Jullie hopelijk ook!?

Meer over Advent of Code

Een afspraak maken bij ons op kantoor of wil je even iemand spreken? Stuur ons een mail of bel met Jolanda.