Live data from Hacker News

Advent of Code 2019

adventofcode.com

21–30 of 75 posts

Re: Advent of Code 2019

#21
post #19

What are you guys "using" the AoC for? Highscore hunting in your most favorite environment? Learning something new, or unusual? For me, this year, I'll give it another try to get into rust a bit more. Or maybe finally golang, after all these years of enterprisey java.

I've been doing the last few years in Clojure (mostly to keep my knowledge of the corelib and the functional paradigm fresh until I can use it in a project). It helps in some problems, and hurts in others - sometimes an imperative, mutable approach is simply the only practical way, and I've fallen back to Java once or twice to do so.

For the simulation-style challenges, I've found the language to be an absolute pleasure, giving some truly lovely code; I'm fairly sure you could make similarly lovely OO code as well, but my tastes find the functional expression of the simulation extremely attractive. Some debugging certainly does get easier, in my opinion.

Re: Advent of Code 2019

#22

I'm have seen people being really excited for AoC. What's so special about it?

In my opinion, the thing that makes these puzzles different from bog-standard code challenge sites is simple, but profound: 'the twist'.

Each day's puzzle is not one, but two-fold. You first solve the problem you're given, and then the second half is unlocked. /This second half usually incorporates some sort of twist./ That means that you may have to rethink your program, generalize it, find some missing optimization or think your way around the problem as it's given, etc.

In some ways, it feels like what you have to do to a real program: You write what you think is a perfect solution, then discover you need to model the problem more deeply, or refactor it all, or scrap it and start over. It's a flavor of 'puzzle realism' that makes each day a bite-size nugget of a challenge that's genuinely fun to work out.

Re: Advent of Code 2019

#23
post #19

What are you guys "using" the AoC for? Highscore hunting in your most favorite environment? Learning something new, or unusual? For me, this year, I'll give it another try to get into rust a bit more. Or maybe finally golang, after all these years of enterprisey java.

I've used it to play with a different language each year, I find the puzzles perfect for that.

This year though, I'm not even starting until January! I find I get completely obsessed with trying to complete them and it can ruin December for (the people around) me ;)

Looking forward to January 1st though :D

Re: Advent of Code 2019

#24

I'm have seen people being really excited for AoC. What's so special about it?

It’s a neatly polished programming challenge site which is both communal and competitive, there’s a bonus score (I think) for completing on the same day a challenge is released, there’s a leaderboard race for the first 100 answers each day (typically all gone within 1-2 minutes after midnight) and there’s a subreddit where people share their solutions in all kinds of languages, and it’s nothing to do with competing f…

I should have linked the Reddit: https://old.reddit.com/r/adventofcode/

and see on the sidebar on the right in desktop view, the "Solution Megathreads" e.g. from Day 5 last year there is https://www.reddit.com/r/adventofcode/comments/a3912m/2018_d... with tons of solutions including more oddball ones like VimScript, less popular like Common Lisp and APL, and lots of people use it as an excuse to learn/use a new language, so plenty of Python, Kotlin, Rust, C#, GoLang, D, and so on.

As the days go on, the challenge difficulty increases quite a lot (not linearly) so the threads often turn to discussions about performance, mini-competitions between people, tips on complexity, different approaches and debugging, etc.

Re: Advent of Code 2019

#25

Excited as ever for this. Got my toolkit ready. Trying to decide if I want to aim for something besides speed this year; maybe visualizations, or literate code. Given my current work, I probably won't focus on a new language.

This will be my first year. Can you explain what your toolkit is? I don’t have anything prepared and if people are going in with a toolkit it seems like I might not be prepared?

The puzzles are released each day at the same time - 5am UK time (I think it's midnight Eastern Standard Time but don't hold me to that) - and people race for the first correct answers. Check last year's leaderboards and look how fast people answer: https://adventofcode.com/2018/leaderboard/day/1

You don't have to race, it isn't required, but the people who do race are very very quick off the draw - they have scripts which login and download their data file as soon as it's available, then templated code ready to read it in as if it were numbers, as if it were a CSV, and load up some counter variables and arrays to save a few seconds typing, and they skim read ignoring the story, trying to jump to the calculation, code it in moments, run it, get an answer, paste into the site, and verify it. Then download the datafile for part two, skim read the story for part two, modify their code to handle it, run it, get an answer paste that in. First person did both those, all that, in 1 min 48 sec. (!)

Toolkit is mostly "I've done this last year, know what held me up, or what patterns came up several times", you don't need one at all if you're not racing for the first 100 answers.

btw. you can sign up now and do previous year's puzzles if you want to see what it's like.

Re: Advent of Code 2019

#26

I'm have seen people being really excited for AoC. What's so special about it?

In my opinion, the thing that makes these puzzles different from bog-standard code challenge sites is simple, but profound: 'the twist'. Each day's puzzle is not one, but two-fold. You first solve the problem you're given, and then the second half is unlocked. /This second half usually incorporates some sort of twist./ That means that you may have to rethink your program, generalize it, find some missing optimization…

[deleted]

Re: Advent of Code 2019

#27
post #10

Do you still need to sign up in order to use this? I've been wanting to do AoC for the past few years, but the mandatory signup prevented me from doing so. Just give me the tasks. I don't want any leaderboards or anything like that. Edit: The aspect of customized tasks does not require sign-ups. Just use a cookie or something.

You can login with Reddit or with Github, and Reddit doesn't need an email address, so if you can make a HN account here to rant with, you can make an account for AoC ??

Re: Advent of Code 2019

#28

Will I actually do this past day five this year for a change?

Outside of family, work, and exercise, I have time and energy for approximately one personal project. AoC got to be a bit of a grind for me last year. Something came up, and I missed a few days towards the end. I told myself I was going to go back and finish, but I never did. I'm tempted to try again this year, but I don't know. I already have projects languishing in need of some attention. On the other hand, it's lo…

Same here. I got back to some problems I left open due to other obligations but finally quit. Plus there's the "problem" of the timezone: Puzzles start at 6am here. Last year I had some time off between jobs but this time it collides with my usual heading to the train. Unless I am really fast and am able to solve between 6:00 and 6:04 ;-)

Related is the tool of choice. I was and would probably still be using Python with the addition of Numpy which by studying other solutions found out to be quite efficient for the AoC type of combinatorics puzzles. Although I had the intention of learning it I didn't make it over the course of a year.

Re: Advent of Code 2019

#29
post #10

Do you still need to sign up in order to use this? I've been wanting to do AoC for the past few years, but the mandatory signup prevented me from doing so. Just give me the tasks. I don't want any leaderboards or anything like that. Edit: The aspect of customized tasks does not require sign-ups. Just use a cookie or something.

Mandatory signups on the internet, especially for tools that don't require them, are dangerous. They feel like deliberate or accidental honeypots, trying to get people's passwords. As members of the industry who have seen the problems that thrive from this practice, we should be opposed to them.

The number of things you need a membership for a extremely limited. Can you imagine if you went to your local supermarket to buy milk, and they said "I'm sorry, you can't buy milk without a membership".

Surely this is one of those cases when a signup is not necessary. Anyone who asks for personal data they do not genuinely require should not be trusted.

Re: Advent of Code 2019

#30
post #10

Do you still need to sign up in order to use this? I've been wanting to do AoC for the past few years, but the mandatory signup prevented me from doing so. Just give me the tasks. I don't want any leaderboards or anything like that. Edit: The aspect of customized tasks does not require sign-ups. Just use a cookie or something.

Mandatory signups on the internet, especially for tools that don't require them, are dangerous. They feel like deliberate or accidental honeypots, trying to get people's passwords. As members of the industry who have seen the problems that thrive from this practice, we should be opposed to them. The number of things you need a membership for a extremely limited. Can you imagine if you went to your local supermarket t…

Can you imagine if you went to your local supermarket to buy milk, and they said "I'm sorry, you can't buy milk without a membership".

We're almost there. At Safeway, you can buy without a membership, but it costs up to twice as much.

Post reply on HN