Readit News logoReadit News
pmulv · 7 years ago
People have been interested in this in the past so I'll post it again: Peter Norvig's satisfying Jupyter notebook solutions from AoC 2016[0].

[0]http://nbviewer.jupyter.org/url/norvig.com/ipython/Advent%20...

kbirkeland · 7 years ago
He also did one for 2017[0]. I imagine if he does this one it will end up in the same repo.

[0] https://github.com/norvig/pytudes/blob/master/ipynb/Advent%2...

mochtar · 7 years ago
Last year I created a visualization of our private leaderboard [1], but that required same manual work to update the ranking each day.

So for this year I've converted it to a browser extension, so it fetches the data automatically :) Available for both Firefox [2] and Chrome [3].

[1] https://github.com/amochtar/aoc-ranking [2] https://addons.mozilla.org/en-US/firefox/addon/aoc-ranking/ [3] https://chrome.google.com/webstore/detail/aoc-ranking/jbnlaf...

aczerepinski · 7 years ago
I'm exited to dust off my Elixir skills. Jose Valim (creator of the language) is going to stream solutions on Twitch on a one-day lag.
rehemiau · 7 years ago
sfusato · 7 years ago
This is a really cool thing for Jose to do. It's a unique opportunity.
PopeDotNinja · 7 years ago
If you want to pair for fun, hit me up! I love Elixir, and it's probably my strongest language. Email in profile.
ThorinJacobs · 7 years ago
I'm really excited for this year's AoC, and trying to get other devs at my work involved too!

Last year I tried to solve at least the first few days in a bunch of different languages, doing Red/Green TDD so I could learn how to set up a basic project and do tests in languages I was less familiar with. Still trying to decide if I should take that approach again this year or focus on getting every day done in a single new language.

aczerepinski · 7 years ago
That's what I did too and my original plan was to use 25 different languages throughout the month. However as the puzzles got harder, I found there just wasn't enough time in the day. I'm sure the puzzles remain easy for some, but for me personally they got challenging even in the languages I already know.
netcraft · 7 years ago
I've participated in this the last couple years. It is really well done. The puzzles get progressively harder as the month goes on. I usually try to use a language im interested in but don't have a lot of experience with, but thats even more of a challenge and generally by the 15th or 20th im struggling to find enough time to complete the puzzles, but I try to go back and finish everything eventually. Always learn something new; theyre generally problems different from what I work on day to day.
keithnz · 7 years ago
this is what I like to do too.... it's quite nice for learning languages.

Not quite sure what language I'm going to do this year though

notjustanymike · 7 years ago
Forget the code challenges for a minute, and just look at that beautiful font and text-shadow combination on the logo.
j1elo · 7 years ago
To be honest that website looks very bad to me. Fonts are too thin and that makes the text quite difficult to read. Much more than e.g. HN. And that's in my desktop PC, in mobile I went directly to close the tab.

(Update) The "high contrast" CSS style they provide is more readable, but I'm sure it should be possible to create a dark style where readability doesn't suffer that much. That font is just not the best choice.

xPaw · 7 years ago
It really is a thin font, I've pinged the author on Twitter a couple of days ago.

https://twitter.com/thexpaw/status/1067699713745530883

bhrgunatha · 7 years ago
I use Stylus with a set of rules to increase contrast and change the font. Just changing the font (with default weight 400) has a huge effect on legibility.

Stylus - https://add0n.com/stylus.html

fells · 7 years ago
Excited for this year's version. I did last year's event in OCaml which was a challenging, yet very rewarding experience. Still trying to decide what language to use this year.
snake117 · 7 years ago
This is my first year participating in AoC and I am going with Elixir. I think this will be a great experience as I can try solving the problem on my own and then watch Jose Valim's approach live on Twitch. Here is more information if you are interested: http://blog.plataformatec.com.br/2018/11/lets-learn-elixir-t...
jaaames · 7 years ago
I'm going to do Rust.
fells · 7 years ago
Yes, Rust is my other option I'm leaning towards. In process of learning it by building a ray tracer, so doing Advent of Code would be another way to get more familiar with it.
sten · 7 years ago
Gonna try using rust this year as well. I have no background in rust at all so I'm a bit excited for the extra experience of trying a new language.
Tinyyy · 7 years ago
Interesting choice. What made you want to learn Ocaml?
fells · 7 years ago
Always had been fascinated with functional programming, but kept stumbling with Haskell. Discovered the Real World OCaml [0] book and was instantly hooked. Sadly haven't been able to use it much outside of last year's Advent of Code and a toy ray tracer.

[0] https://dev.realworldocaml.org/

netcraft · 7 years ago
Would be cool if they asked for information after you completed a puzzle for the day - scale of 10 how hard did you consider the puzzle, did you learn something new, what language did you use to complete it - would be super interesting data I bet.
aleksei · 7 years ago
Can you expound on that? What would you wish to know?
netcraft · 7 years ago
I think the three I mentioned would be a great place to start.

- On a scale of 1-10, 1 being you could do it with your eyes closed, 10 being you thought it was nearly impossible, how difficult was this puzzle for you?

- Did you learn something new because of this puzzle? Could be something about your language or a library or a new algorithm that helped you solve it.

- What language(s) did you use to solve this puzzle?

It could let you compare yourself with other developers - if you thought it was hard and most others didn't then you would know you might need to practice something more. It might be something that would best be combined with some profile level questions - like their experience level and primary languages that they use day to day.

It could tell us that people who used python found this particular puzzle easy (maybe because of some built in function in the stdlib) but people using some other language didn't.

Year over year it would be awesome to compare the languages that people use. Nobody is doing this for their job supposedly so these are either languages that people enjoy or find practical. I bet you'd find some correlations though too between language and how many puzzles they complete in a year - ie people using language x tend to finish the whole year but language y tend to drop off after day 10.