It’s not my first choice, but it’s gonna be TypeScript for me. I’ve got an interview for a primarily TS position coming up this week so would like to brush up on its quirks.

If the interview doesn’t go well, then I’ll probably switch to Go, though hehe. I’ve been really enjoying using it, but no one’s ever paid me to do so.

20 points

permalink
report
reply
12 points

Nix, because I hate myself. No, it is very much not made for this purpose. But it’s possible to use if for this.

permalink
report
reply
4 points

I’ve seen a couple people attempt this. Am very curious about how exactly that will be done. Although I’ll have to say that i’ve seen far worse and/or more difficult submissions. People cook up absolutely insane code

permalink
report
parent
reply
2 points

True. I love how AoC is a hotbed for creative and/or insane ways of solving coding problems.

If you wanna check out how it goes in Nix: https://git.sr.ht/~kintrix/aoc2024

permalink
report
parent
reply
8 points

I’ve started with Go, but I think I’ve realised AoC isn’t for me. I feel so incredibly dense.

permalink
report
reply
9 points

That’s fair if you aren’t having fun, but I wouldn’t write it off completely. Like I only made it to day four last time.

The problems they present are of a totally different class to what most programmers will ever encounter in the “real world.”

Once you get more used to the style of the problems (data structures and algorithms (DSA), like what you might see on leetcode), then you honestly start to have fun with them.

I really struggled with DSA until recently, so if you’d like some help I would be happy to give you some pointers.

permalink
report
parent
reply
4 points

Thanks. I felt very deflated after struggling with something seemingly so simple. I was using Go and couldn’t figure out part 2, at least without nesting loops three layers deep.

Today I decided to try to learn Elixir instead and allowed myself some assistance from Claude.ai, which was much more fun.

permalink
report
parent
reply
5 points

Nesting loops is indeed the first intuition anyone would have to that problem. The only reason I knew to use a hashmap data structures is because I practiced on exactly these kinds of problems, and looked up explanations and answers on the most basic stuff imaginable.

I felt very deflated after struggling with something seemingly so simple.

Definitely not simple. Especially without training in DSA. You shouldn’t expect yourself to spontaneously invent efficient algorithms to problems that have been stumping students for decades.

Try it out yourself for maybe 30 minutes, then do yourself a favour and look up a good explanation to solving it.

My hope for this year is that we can help eachother understand and solve these problems. I’d love to find some good “editorials” on each problem, breaking them down in detail.

permalink
report
parent
reply
7 points

After solving puzzles and seeing other peoples’ elegant solutions while mine feels brutish and ugly (even if our approaches use the same algorithm, mine is inevitably less elegantly-implemented), I also feel too stupid for AoC sometimes.

But hey, I am never going to get less stupid if I don’t try, and solving problems the ugly way is still a solution. I have fun doing it.

But if it’s not just the comparison to others ruining your fun, if it’s that you inherently do not find this activity enjoyable, don’t force yourself!

permalink
report
parent
reply
7 points

I’ve got a really nice setup with benchmarks, auto-input-fetching and solution upload and such, written in Rust, so I’m sticking with that. I kinda wanted to try Odin, but december really snuck up on me, and I didn’t have time to set it up or really get familiar with it.

Iterators and slicing and such are all just… so nice for parsing streams.

permalink
report
reply
5 points

I’ve solved the first two in Rust, and will likely keep going until I can’t anymore, just like with previous years. It’s a fun language, and i’d love some practice too

permalink
report
reply

Advent Of Code

!advent_of_code@programming.dev

Create post

An unofficial home for the advent of code community on programming.dev!

Advent of Code is an annual 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.

AoC 2024

Solution Threads

M T W T F S S
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25

Rules/Guidelines

  • Follow the programming.dev instance rules
  • Keep all content related to advent of code in some way
  • If what youre posting relates to a day, put in brackets the year and then day number in front of the post title (e.g. [2024 Day 10])
  • When an event is running, keep solutions in the solution megathread to avoid the community getting spammed with posts

Relevant Communities

Relevant Links

Credits

Icon base by Lorc under CC BY 3.0 with modifications to add a gradient

console.log('Hello World')

Community stats

  • 478

    Monthly active users

  • 110

    Posts

  • 1.1K

    Comments