Advent of Code

Preferences are fine, but your preference seems to be “I would prefer if the law of conservation of energy wasn’t true and I could build a perpetual motion machine.” There’s not much more to say.

Except that is not at all what I said. I don’t want to change anything about the universe, just expressing that as things change they are going away from what I prefer so maybe I will stop doing the thing that is becoming less enjoyable. That’s a nice strawman you’ve built there.

2 Likes

I don’t even know what you’re saying then.

By one person’s perception:

Early on in AoC = problems that test more general coding knowledge and skills, without a single type of algorithm as a solution. And I enjoy that.

Later in AoC = do you know this single CS theory and can you look up the algorithm that solves it? And I don’t enjoy that.

2 Likes

This is what I thought you were saying originally, and it’s what I was addressing. This assessment of the situation is itself false. The puzzles do not come in two flavors. They all come in the exact same flavor whether they are day 1 part 1 or day 25 part 2.

“Here is a problem in P. The algorithm to solve it is already known to the world. Find it, or re-invent it from scratch, and apply it to the provided data. Then give us the answer it produces.”

Brute forcing by writing code that can merely verify a correct answer and then trying every number won’t even work on day 1.

What’s really happening here isn’t that the puzzles are somehow different. It’s simply that you have finally encountered a puzzle that is beyond your current level of understanding. For the puzzle makers to make all the puzzles be the kind you prefer, they would have to quiz you personally to gauge your knowledge level and make sure to never ask about something you don’t already know.

Some people hit that limit on day 1. They think every single puzzle is the kind you don’t like where you have to look things up. They are there googling for things like loops, lists, conditionals, and variables, assuming they even know the words to Google for! Some people never hit that limit. They think every single puzzle is the first kind. To them, a shortest path algorithm is just general coding knowledge and skills. They understand within their minds how to get a computer to solve most problems in P that we know the answers to, and they are probably even smart enough to find new ones.

Yesterday I had to lookup A* because I hadn’t used it in years. Today I didn’t have to google. I made a tree and did all kinds of recursion. But I guarantee that someone else out there was Googling what I just knew intuitively.

If you prefer only to do puzzles where you can work out the answer on your own as you are now, you are certainly welcome to stop at any point. Nobody is forcing anyone to continue. That actually a feature of AoC whereby scaling the difficulty, and keeping old years available, you can do as many or as few puzzles as you wish at whatever difficulty level you wish.

All I can say is, that attitude might help you refresh your existing skills, but will definitely prevent you from building new ones. That ridiculous person out there who “just knows” the algorithm without looking it up? They got that way by looking it up several times until maybe the fifth or sixth time they just understood it as automatically as a novice programmer understands a basic concept like a loop or an array.

Back in the day a lot of people learned to program by just copying BASIC programs out of magazines. Just typing them in one letter at a time. It seems archaic, but that’s actually a fantastic way to learn programming. I never feel bad about looking something up and implementing it again. That’s the right way to do it unless you’re a genius like Edsger Dijkstra who can come up with the answer using nothing but his brain and a computer made of relays.

How are you this bad at having a conversation on the internet? Good lord.

See also: Is it possible to have a conversation with nuance on the internet?

*Edit: I disagree that there is no distinction to be made in the types of coding challenges, whether in AoC or any other exercise. But I will not attempt to change your mind because:
A) I don’t care to try
B) You have decided you are right because you told yourself so therefore it is pointless for me to spend any effort
C) That was not the purpose of my original comment

I will say that you have repeatedly commented in the past about your dislike of Marvel superhero movies but you like other movies. Some might say that there is no distinction, these are all movies and if you don’t like Marvel movies then you must not understand movies. I disagree with that assertion and respect your right to not prefer the Marvel stuff even though I like a lot of them. No big deal, I don’t have to go on a diatribe explaining why your premise is flawed.

I agree preferences are preferences. If someone prefers green to blue, that’s perfectly fine. Those are both things that exist. But if someone says they prefer the color green to the color green… Like uh, those are the same color. Or if they prefer @#$%@#%)* to green, uh, that’s not a color.

Clearly there’s nothing more to be said here since we’ve devolved into the “I’m right, but I won’t actually bother to argue my points” territory.

I will just say that my mind is very changeable. Simply provide an example of two puzzles. One in category A, and one in category B and demonstrate how they are fundamentally different in and of themselves regardless of which person is doing the solving.

In fact, don’t even post about it here. Just prove it to yourself and don’t try to change my mind.

Humans: I have mild preferences between two very similar types of things, and the line between them is fuzzy, but I know when I’ve crossed far enough over the line and enjoy it slightly less, therefore I’ll not spend my free time on it any longer.

Robots and, it seems, Scott: I WILL NOW LECTURE ON COMPUTER SCIENCE SO NOW PROVE TO ME THERE IS A SOLID CONCEPTUAL BARRIER BETWEEN TWO SETS OF THINGS.

4 Likes

If you don’t like me, or disagree with what I’m saying that’s fine. Also, if that’s the case, why are you spending your time reading what I wrote and replying to it? But I will kindly ask to you address the actual discussion, not post anything at all, or talk about something else entirely as opposed to insulting me. I don’t see me insulting anyone else or having done anything to deserve being on the receiving end of such.

I am not disputing the fact that people have preferences between things. I am disputing what they have a preference for. I am seeing a person looking at two bottles of red wine. They point to the second bottle and they say out loud “I prefer the second one because it is cyan, and I prefer cyan wine.” Not only does cyan wine not exist (to my knowledge), but both wines are clearly red. I do not doubt they prefer the second wine, and that it is a valid preference. I am simply discussing the nature of the wine itself. Those wines being the same color, the difference in preference must be accounted for by some other reason than the stated reason of there being a color difference.

Perhaps there is a such thing as cyan wine and I think it is red because there is something I don’t know or can’t see. If that is the case, please let me know so I may stand corrected. Calling me a robot is not the way to accomplish this.

Technically yes, but it’s a brand, not actual cyan colored wine. It’s a decent enough red for the price, but not really what you were talking about in your example.

Lol, by complete coincidence.

Yep, pretty much, and it has no bearing on the matter at hand, but I did think it was an interesting side note.

What the hell is wrong with you? What are you doing? Can’t you read the room?

You just piled in on someone soooo much like you, who is hanging out on the same forum as you, who is doing the same programming puzzle solving event as you, who is following along with your results, who is watching the live streams of you programming, and then who is also reading a thread on the entire project and wanted to join in on the discussion!

They just wanted to have a conversation!

There is NO kind of human interaction that jumps from “I’m having a conversation” to “I’m now happy to read over 1000 words about P=NP, with the entire effort of writing it to show why my opinion is groundless”.

Honestly, I’ve no idea who you think you wrote all that for.

You asked why I’m reading all you wrote? I DIDN’T read all that P=NP post, because I understood what you were getting at with the first line:

“You know the P=NP that programmers are always going on about? Suddenly it’s relevant.”

That’s all you had to write! And if that’s all you did write, Neo would have smiled, probably nodded, and you’d both go on with your lives.

Neo would still enjoy reading this forum, and participate in this thread and in AoC, and you’d not have to spend half an hour writing a post about P=NP that was irrelevant to the emotional response that Neo was trying to share.

Sometimes a throwaway comment is what a conversation needs, not a lecture or a short novel.

Sometimes, if you think someone is wrong on the internet, a brief message saying so, and asking “if you’d like to know what I’m getting at, I’d be happy to continue” is the best course of action.

My insults in this thread are not about different kinds of programming, it’s about trying to communicate with you that emotions are real. Other people you are communicating with have emotions, and sometimes want to talk about them, and the reasons for them, without literally being lectured into why they are wrong.

Because being lectured at also creates emotions, usually negative, and makes people less likely to join in any thread on this forum where you, Scott, are contributing.

2 Likes

It’s so nice to see a breezy two-sentence correction to a point that was tangential to the original post.

I never said anyone’s emotions themselves were wrong. I said that their claimed reason for those emotions is wrong. Therefore, there must be some other explanation.

I write a lot of words because the point I’m making is extremely specific, and I want to be absolutely clear what I’m saying and not saying. I’ll also repeat my points in an attempt to achieve clarity, because I’m so often misunderstood, just like you are misunderstanding me now. It’s an attempt to achieve the nuance you specifically complain that the Internet discussion lacks. Yet you fully admit to not reading it. I don’t see how I can be blamed for that when you freely admit to not reading, and continue to misconstrue what I’m saying as a result.

There’s a point I’m interested in making enough to put effort into writing all those words. If you’re not interested enough in hearing it to read all those words and trying to fully understand the nuanced and extremely specific thing I’m saying, ok, don’t read it. But if you’re not interested enough to read it, then also don’t reply.

Okay, I’ll explain using your wine analogy:

The exact same wine from the same grapes and same barrels and same everything, are in two different types of bottles. One half of the bottles have screw top lids and the other have corks that require corkscrews, and if you mess up the corkscrewing technique, crumbs of the cork fall into the wine.

Someone quite likes the wine, and likes to pour themselves a wine each evening. At the start of the month, all the bottles of wine have screw caps.

Then, two weeks later, more of the bottles of wine are corked. The exact same wine, with a cork, is okay for the first few nights. But then, after faffing with a cork screw a few too many times, the person thinks “You know what? I’d rather have bottles of wine with screw caps. If these bottles keep coming with corks, I might not bother pouring myself a glass each evening.”

Because the person isn’t a professional wine bottle opener, and don’t feel any need to get better and uncorking wine bottles, and were really just drinking the wine because it was fun, any addition of “not fun” makes it not worth their while.

And that’s it.

That’s why I don’t need to read your explanation of P=NP. Because it was never about the content of the bottles, it was about how enjoyable it was to experience the content of the bottles.

I don’t need to read many repetitions of extremely specific explanations, of you trying to win an argument or prove a point that only you yourself care about. I read through it now, and yeah, I have no more knowledge or understanding of the situation, neither the limitations of an automated puzzle checking system, nor how badly you misunderstood Neo’s complaint.

In and of itself the point about P = NP and the Advent of Code is mildly interesting, and if it had been presented as a one paragraph comment in the conversation, I’d have read it right away. But you wrote 654 words on the topic, so there was a lot of scrolling left to do on the page even though this was the only new post, so I didn’t feel like it. Once I saw the first reply was “Me: expresses opinion about a preference. You: let me write a manifesto about P & NP” I knew I was right to skip it.

I was never replying to your points about P=NP, but how badly you misjudged what was, up until then, an interesting conversation or exchange about what it felt like taking part in the Advent of Code.

Just a coincidental side note more than a correction, really. Scott pretty clearly meant it differently I think, though I suppose you could use it as a point about specificity and interpretation.

1 Like

Your analogy does match the original point being made, but you are still missing what I am saying. All the bottles are the same. Every single one is corked from the first to the last. I am seeing a person who literally just took out a cork and claimed it was a screw cap. What inherent property of the day 1 puzzle, irrespective of who is solving it, makes it any different than the day 15 puzzle?

I don’t see writing a lot of words as a bad thing. If we want to have that nuanced complex discussion on the Internet the way to get there is to both write and read more words to achieve clarity. The only way to achieve that is with more effort from both writers and readers, and that effort barrier is clearly why it’s so rare. Few people are willing to put in the work. It’s easier to stick to a tweet length. Certainly people who are much better writers than myself can use less words to say more with greater clarity, but there is still a limit. The more complex the point being made, the more words are needed to fine tune the meaning. If we’re not going to put in the effort to read and write enough words, we only have ourselves to blame for the weakening of the discourse.

Nobody wanted to have this detailed and nuanced debate about Advent if Code problem setting. Everyone else was happy with short updates about their experiences.

That’s the point. That’s what I’ve responded to with every post. If I kept repeating it over and over, at more length, it won’t help you understand it more.

What is different about day one and day 15 is “day 1 was fun” and “day 15 was less fun”. If that isn’t enough for you? I don’t know what to say.

1 Like

well, at least the challenge for today was easy (and quick enough for brute forcing) :sweat_smile:

pathfinding had a less interesting description, but I found a solution that was finishing in an ok time (like 30seconds), by focusing on the requested result (the cost and not the path)
I had a small issue were the part 2 with full input didn’t get the correct solution, luckily it was easy to find, because I had no idea how to debug that properly there, besides kinda randomly poking in the dark

the one yesterday had a bit too wordy of a description I think. First I coded along with the examples (and thinking it would be like an assembler like language)
so I had to refactor it a bit along the way
But in the end I found it to be an interesting puzzle, and part 2 was super quick (I did similar things a couple times before, so maybe that also helped a bit)