What is Advent of Code
Advent of Code Website - About
Advent of Code is an Advent calendar of small programming puzzles for a variety of skill sets and skill levels that can be solved in any programming language you like. People use them as interview prep, company training, university coursework, practice problems, a speed contest, or to challenge each other.
That was my first year trying Advent of Code daily! I chose Go since I’ve been having a great time developing stuff in it for the last 2 years. Now I was not familiar enough with the problems that constructed the Advent of Code challenge but then again, where’s the fun of knowing all about it?
Day 1 and Initial Thoughts
I recall having trouble solving Day 1. It was one of those moments where after you solve it you go:
Man, I think I’m stupid! Someone must’ve solved that in like 10-20 minutes.
Typical, hard-on-himself George
Then again there’s Reddit. People seemed to have a really tough time with it, considering it was the 1st challenge, so I got my motivation up. After that, I recall most following days being quite easy.
Storyline
The storyline was really amazing. Not going to spoil anything, but for anyone who is not familiar, the advent of code typically involves some story in which you, the coder, save Christmas and usually help the elves do their job by solving code challenges.
This year the story was really creative, kudos to the team.
The process and endgame
This year’s advent of code felt too much after some point. I don’t know about the relative difficulty of other years, but not being accustomed to specific algorithms made it almost impossible to solve some problems. Most problems do come from a mathematical/logical standpoint and while most felt super rewarding to solve, some days simply went too far, even for someone who has studied math, not programming. The last one that I attempted was Day 11, which I recall reading the answer to and going: “I would’ve never solved that on my own”.
And that was kind of a bummer for me.
I’m not an expert in algorithms but I have studied math, with also having a decade of coding experience. I appreciate the efforts of the team, it’s an amazing project. I just feel like it’s not fair to state that:
You don’t need a computer science background to participate - just a little programming knowledge and some problem solving skills will get you pretty far.
Advent of code, About Section
Depends on what you mean by saying “pretty far” though, even though for me 11/25 is not quite far.
Anyhow, I had fun and will come back next year. I do hope the uber-specific algorithmic knowledge is not needed, but then again, I’m not familiar with how other years went. I just know that there’s a certain mathematical expertise that helps with those kinds of problems, that makes them not accessible to the public.
I advise all programmers to try this. It’s an actual act of programming, the advent of code, and it’s something that most of us have forgotten when working with the daily ins and outs of the web. Programming is an extremely fun activity.
To the next one, cheers!
George Spanos
Moby IT