100% Free Forever
AI-Powered Learning
Industry Expert Content
Certificates & Badges
Learn At Your Own Pace
Programming

Advent of Code

By Eric Wastl

BeginnerPlatform5.5K learners

Advent of Code is an annual online programming event, released as a daily series of coding puzzles each December, that developers can solve using any programming language.

Definition

Advent of Code is an annual online programming event, released as a daily series of coding puzzles each December, that developers can solve using any programming language.

Overview

Created by Eric Wastl, Advent of Code began in 2015 and has run every December since, releasing one new two-part puzzle per day from December 1st through December 25th, styled loosely around an Advent-calendar and holiday narrative. Puzzles are language-agnostic — participants submit only their numeric answer, not code — so solutions can be written in Python, JavaScript, or any language of the participant's choosing, which has made it a popular vehicle for learning a new language through practical, self-contained problems. Difficulty typically increases through the month, starting with beginner-friendly puzzles and progressing toward problems that require more advanced algorithmic thinking, data structure knowledge, and sometimes significant runtime optimization. Each day's puzzle awards up to two stars (one per part), and the event has built a strong community culture around comparing solutions, discussing approaches on forums like Stack Overflow and Reddit, and informal private leaderboards among friends or coworkers. Unlike interview-prep platforms such as LeetCode, Advent of Code is run as a free, seasonal community event rather than an ongoing commercial product, and its puzzles tend to reward creative problem-solving and storytelling engagement as much as raw algorithmic efficiency.

Key Features

  • Created by Eric Wastl, running annually since 2015
  • One new two-part puzzle released daily from December 1 to 25
  • Language-agnostic — any programming language can be used
  • Difficulty generally increases as the month progresses
  • Free, community-driven seasonal event rather than a commercial product
  • Supports private leaderboards for friendly competition among groups
  • Popular as a way to learn a new language through practical puzzles

Use Cases

Learning a new programming language through daily practical puzzles
Practicing algorithmic problem-solving in a low-stakes, festive format
Competing on private leaderboards with friends, classmates, or coworkers
Building a daily coding habit during December
Exploring performance optimization on progressively harder puzzles
Engaging with an active community discussing varied solving approaches

Frequently Asked Questions

From the Blog