Weil es hier kein allgemeines Unterforum im Bereich „Programmierung“ gibt, schreibe ich das mal ins „Offtopic“:
Auch eine Pandemie konnte Eric Wastl und seine Helfer (Elfen?) nicht davon abhalten auch dieses Jahr einen Advent of Code vorzubereiten. Ein ”Adventskalender” mit kleinen Aufgaben die man mit einer Programmiersprache seiner Wahl lösen kann. Eingebettet sind die Aufgaben jedes Jahr in eine schräge Geschichte wie man dem Weihnachtsmann dabei hilft seinen Job zu erledigen.
Gefragt ist nicht das Programm, sondern die jeweilige Lösung zu gegebenem Aufgabentext und Eingabedaten. Die Daten sind in der Regel für jeden Teilnehmer individuell, so dass man die Lösung nicht einfach von jemand anderem ”abschreiben” kann, sondern tatsächlich den Lösungsweg braucht.
Die aktuelle Aufgabe wird jeden Tag vom 1. bis zum 25. Dezember um 6 Uhr mitteleuropäischer Zeit veröffentlicht und besteht aus zwei Teilen. Der zweite Teil wird freigeschaltet nachdem man den ersten Teil gelöst hat, und bezieht sich auf den ersten Teil. Das heisst die Aufgabe vom ersten Teil wird erweitert oder etwas geändert.
Die ersten vier Jahre waren die Aufgaben der Tage unabhängig voneinander. Letztes Jahr war so ungefähr jeden zweiten Tag eine Aufgabe, die sich auf einen vorherigen Tag bezog: Es musste ein Emulator für einen virtuellen Prozessor um Befehle erweitert werden oder man musste den emulierten Prozessor zur Lösung einer Aufgabe verwenden. Man kann sich auch die Aufgaben der vergangenen Jahre auf der Webseite anschauen und das alles auch noch lösen wenn man möchte.
Warum das hier vielleicht nicht ganz Offtopic ist: Solche Challenges eignen sich für Leute die Programmieren lernen wollen, die Grundlagen durchgearbeitet haben, aber nun keine Idee haben was sie programmieren könnten um zu das Erlernte zu üben/anzuwenden.
Und eventuell wäre beispielsweise ein Raspi-Zero schon eine Plattform die eine zusätzliche Hürde darstellt, die durch die ”langsame” CPU und den ”kleinen” Arbeitsspeicher ein bisschen mehr herausfordert, als normale Desktoprechner mit mehreren Ghz und Kernen und Unmengen an RAM wo man einiges auch einfach „brute force“ lösen kann, ohne sich Gedanken um eine effizientere Lösung machen zu müssen.