As someone who makes indie games professionally, I taught myself how to program by making video games. Maybe it's just my adhd, but I have a difficult time with organized learning, but I pick things up really quickly by doing. I wouldn't get too caught up in the "I need to learn it the right way before I make games" part, since the making games part is exactly what kept programming interesting and engaging enough to prevent me from getting bored.
Second I also wouldn't get too locked up trying to decide which programming language to use. Modern programming languages are all conceptually pretty similar. It's really only minor syntax differences. Learning a new programming language is mostly just a matter of "how do I write a for loop in this language again?" It doesn't take too long to adapt.
I use Unity and C# right now, and I'm in the middle of learning Godot to make the switch. I would generally agree with what other people have said. C# is a pretty good language to start with. Just low level enough to make sure you learn fundamentals without being so low level that you have to fiddle with memory addresses and pointers like c/c++.
As for codecademy, I tried it when I was first starting out like 10 years ago, so I can't vouch for it now, but it seemed to very much be "Learn how to type code" and not "learn how to actually program." Just explaining how to write if statements and for loops isn't really teaching programming. I still don't think there's really a good universal way to teach it, even after taking programming classes in college. Everyone sort of picks it up differently, at different paces, and enjoys different parts of it, so I still think picking a project you think sounds cool and finding and following along with YouTube tutorials and just trying stuff out until it works is a pretty good way to get started. You can always take the time to read a book or take a course after you've determined if programming is even something you're vaguely interested in.
This puzzle is definitely impossible. In fact it seems to be some sort of parity issue, although I'm having trouble with the actual proof. Basically if you always keep the start in the top left corner, then you can only complete a rook's tour if the end square has an odd manhattan distance (x distance + y distance). If you put the end square an even manhattan distance away, then you create this issue where you're always unable to hit one square.
The rule is better said that you can visit each square "once and only once." Every time you move to a non-adjacent square, you're crossing a square for a second time and breaking the rule.
Yea, I was confused too. It's important in two ways. One is that EX pokémon normally can't be evolved, so this ability lets Evee EX evolve. You don't normally notice the rule since EX pokémon are typically fully evolved pokémon that can't evolve anyway.
The second part is that you can't typically run more than 2 of the same pokémon in a deck, and pokémon typically only evolve from one type of pokémon. So typically you could not evolve Evee EX into Jolteon, since Evee and Evee EX are two different species of pokémon and Jolteon only evolves from Evee. This ability however lets you do exactly that.
Now you can run 2 Evee and 2 Evee EX in the same deck and have all 4 of them evolve into the same Jolteon, Flareon, etc.
Edit: Also, the line "if you play it from your hand onto this Pokémon" means that it won't work with some trainer cards, like those that allow you to pull an evolution card from the deck and play it directly onto the Evee EX.
Ah, yea, sorry, my brain scrambled that. But same point really. Chatgpt doesn't always pull from the current official website for its data either, so same problem. Chatgpt and Google are loudly marketing, "Hey you don't need to search for the info, our AI will give it to you," when the Ai is wrong a lot.
Well, sure. But if you go the PayPal website you can see the correct information. Before Google's AI popped up at the top of the screen, the PayPal website would have. In this situation, Google is now prioritizing pushing the misinformation that their AI found from some outdated website instead of the official PayPal website that has the correct info. That's the issue.
So in the simple version where the host doesn't do anything, there's 3 possibilities for the car. It's either behind door number 1, 2 or 3. So when you pick one, there's a 1 in 3 chance you pick the door with the car.
Now as for why the host's choice matters:
The host always opens a door that you didn't choose and that also does not have the car. This information seems like the useful part, but it's actually not. No matter which door you pick, one of the other two will always have a goat. He's just showing it to you for the show, but that doesn't change anything, because you don't get to pick which of the two other doors, only "switch," that's the important part. This recontextualizes the choice you made, effectively your choice is now between the door you picked, or the other two doors combined (the one he showed you which is wrong, and the other one).
When you first picked the first door, the odds of the car being behind it were 1 in 3, and those odds still haven't changed. There's still a 1 in 3 chance that your door has the car behind it. And when you first picked, there were 2 in 3 odds that the car was behind one of the two doors that you didn't pick. Having the incorrect door revealed after the fact doesn't change that fact about both doors. So now the door you chose initially has 1 in 3 odds and the other choice - switch to both doors - has 2 in 3 odds. That's twice the odds, so you should definitely switch. You'll be wrong 1/3 of the time, but it's the best pick.
At least that's how I think about it: by staying, it's like you only got to open one door, and by switching it's like you get to open both of those two doors.
If the host showed you the wrong door ahead of time, you'd be right though. Your choice would be between two doors and be 50/50, but by showing it after you've already picked one, the likelihood of the car being one of the doors you didn't pick stays the same, and since the revealed door now has a 0 in 3 chance the last door must have that remaining 2 in 3.
True, but the line comes from the Bible with the context being that you also shouldn't let it rot. If you're going to sow, that comes with the responsibility of reaping, and that you shouldn't try to escape reaping after you made the choice to sow those seeds in the first place.
As someone who makes indie games professionally, I taught myself how to program by making video games. Maybe it's just my adhd, but I have a difficult time with organized learning, but I pick things up really quickly by doing. I wouldn't get too caught up in the "I need to learn it the right way before I make games" part, since the making games part is exactly what kept programming interesting and engaging enough to prevent me from getting bored.
Second I also wouldn't get too locked up trying to decide which programming language to use. Modern programming languages are all conceptually pretty similar. It's really only minor syntax differences. Learning a new programming language is mostly just a matter of "how do I write a for loop in this language again?" It doesn't take too long to adapt.
I use Unity and C# right now, and I'm in the middle of learning Godot to make the switch. I would generally agree with what other people have said. C# is a pretty good language to start with. Just low level enough to make sure you learn fundamentals without being so low level that you have to fiddle with memory addresses and pointers like c/c++.
As for codecademy, I tried it when I was first starting out like 10 years ago, so I can't vouch for it now, but it seemed to very much be "Learn how to type code" and not "learn how to actually program." Just explaining how to write if statements and for loops isn't really teaching programming. I still don't think there's really a good universal way to teach it, even after taking programming classes in college. Everyone sort of picks it up differently, at different paces, and enjoys different parts of it, so I still think picking a project you think sounds cool and finding and following along with YouTube tutorials and just trying stuff out until it works is a pretty good way to get started. You can always take the time to read a book or take a course after you've determined if programming is even something you're vaguely interested in.