Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

I'd like to remind everyone that it's totally okay to do the first 10-15 days and leave the really hard stuff to people who are smarter or maybe have more free time. The first few days will still be fun.

I'm checking out Elixir this year, because I write 95 % Ruby at work and I'm getting really intrigued by the functional stuff seeping into it.



It's also okay to just do the problems without the competitive aspect. I love competitions and all, but sure as hell I'm not waking up at 5AM for an entire month in the pursuit of internet points.


My main use case for AoC is practice with new languages. So I tend to prefer to do the same one from several years ago over and over, because then I can focus on grokking the language and not the problem, and I can compare my solutions across languages to get a better feel for how they affect how I solve problems.

The leaderboard is occasionally interesting to me for the first week of December, but, realistically, I can't see getting invested in it without also moving far, far to the west of where I live now.


Don’t you risk solving the problem in suboptimal or just “wrong” ways for the language you’re trying?


I don’t know about others but I‘be found AoC is quite good for naturally discovering how you’ve solved a problem “wrong” or sub-optimally when you get to Part 2.


I also check out how other people did it on GitHub. But only after I've taken a crack at it myself first.


Thought about that last year. You wouldn't have your solutions public but any chance?


José Valim (creator of Elixir) will be streaming his solutions on Twitch. Thought that might be interesting for you.


I started doing mine in Elixir last year but it was a very steep gradient combined with everything else going on in life. So excited to hear this! I will be watching every episode for sure.


could you provide a link? Having trouble finding



Beautiful, thanks!


I really enjoy doing these problems in Elixir, but the fact that the default collection type is a linked list makes certain problems difficult. However, Erlang does have a fifo queue (a doubly linked list), which can be helpful and let's you practice some Erlang interop while you're at it. https://www.erlang.org/doc/man/queue.html


queue in erlang is a tuple with 2 lists. it reverses the items in one list and put them in the other, if the second was empty, when you try to access the head of the queue. new items still goes into the first list.


I have failed to finish a few times. Not necessarily because they get harder (tho that contributes), but because I go at the speed/time I'm willing to dedicate and once the new year hits I invariably lose interest

Still enjoy whatever I get done


Also, you can be strategic, the weekend ones are built to be longer than the weekday ones, so there's still some fun to be had later on even if you get stuck.


I normally skip out on these things, but I've been wanting to learn Erlang for a few months now and this comment inspired me to go for it this year! It might not help with learning the OTP stuff, but even after finishing the first two challenges I feel my mind expanding (first time doing functional programming).


I did Elixir one year for advent of code! It was pretty fun and helped me learn the language a bit more actually. Hope you enjoy.


I do love using these advents to try out new things. New patterns, new languages, new algorithms.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: