It's that time of the year again! Only a few days until Christmas. Chocolate makes you fat and lately there have been scandals of mineral oil in advent calendars each year. How about feeding our brains instead?
Each day we get to open a door with a puzzle to solve by code.
I made a few utility scripts through the year, here's how to use them:
Run the Python script .utils/new_year.py
to set up folders and the Readme for a fresh new year!
This script symlinks the .utils folder into the year as well.
Run the Python script .utils/new_day.py
to setup files for each day to solve the puzzles.
This also fetches your data for the puzzle!
I wrote a few common data parsers for AoC in .utils/parser.py
.
🐍 Improve Python and explore the Python ecosystem (especially the datascience stack) and improve understanding of the inner workings of Python.
🖧 Exchange ideas on the subreddit and learn from other approaches as well.
Using the detailed error log again, since it really helps learning. Just gonna have fun with this one, work's hard enough as it is.
Decided to make Matt Harrison's idea of a detailed error log this year's focus. Put it in the Readme.md of 2022.
Keeping on Keeping on.
Finish AOC without restrictions. Consistency is key. Have fun while doing it. Don't aim for the leaderboard, it opens 5am and people are crazy fast anyways. Tinker with the Day class and possibly add some nifty utilities to make each day a little easier.
Learn some OOP and build a reusable class for each day. Build tests with Pytest, ideally trying some TDD to solve the problems. The examples give a great basis for small-scale tests and the input-file serve larger tests which can be added after the right solution was found.
Get acquainted with Advent of Code and solve some of the puzzles in Python.
1st | 2nd | 3rd | 4th | 5th | 6th | 7th | 8th | 9th | 10th | 11th | 12th | 13th | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Part 1 | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ |
Part 2 | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ |
14th | 15th | 16th | 17th | 18th | 19th | 20th | 21st | 22nd | 23rd | 24th | 25th | |
---|---|---|---|---|---|---|---|---|---|---|---|---|
Part 1 | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ||
Part 2 | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ |
1st | 2nd | 3rd | 4th | 5th | 6th | 7th | 8th | 9th | 10th | 11th | 12th | 13th | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Part 1 | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ |
Part 2 | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ |
14th | 15th | 16th | 17th | 18th | 19th | 20th | 21st | 22nd | 23rd | 24th | 25th | |
---|---|---|---|---|---|---|---|---|---|---|---|---|
Part 1 | ⭐ | ⭐ | ⭐ | ⭐ | ||||||||
Part 2 | ⭐ | ⭐ | ⭐ | ⭐ |
1st | 2nd | 3rd | 4th | 5th | 6th | 7th | 8th | 9th | 10th | 11th | 12th | 13th | 14th | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Part 1 | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ |
Part 2 | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ |
15th | 16th | 17th | 18th | 19th | 20th | 21st | 22nd | 23rd | 24th | 25th | |
---|---|---|---|---|---|---|---|---|---|---|---|
Part 1 | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ||||
Part 2 | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ |
1st | 2nd | 3rd | 4th | 5th | 6th | 7th | 8th | 9th | 10th | 11th | 12th | 13th | 14th | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Part 1 | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ |
Part 2 | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ |
15th | 16th | 17th | 18th | 19th | 20th | 21st | 22nd | 23rd | 24th | 25th | |
---|---|---|---|---|---|---|---|---|---|---|---|
Part 1 | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ |
Part 2 | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ |
1st | 2nd | 3rd | 4th | 5th | 6th | 7th | 8th | 9th | 10th | 11th | 12th | 13th | 14th | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Part 1 | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ |
Part 2 | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ |
1st | 2nd | 3rd | 4th | 5th | 6th | 7th | |
---|---|---|---|---|---|---|---|
Part 1 | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | |
Part 2 | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ |