Got through first 5 minutes and I already see that myself and the author have very different opinions on what constitutes "good code":
1) having data structure and its methods isolated in a module is not a bad thing. Modules provide an obvious boundary between pieces of code, so when calling some code from another module you know that you should care only about inputs and outputs and not about the particular implementation of the transformation. But when you have the same pieces of code mashed together in one module – that boundary is blurred, now compiler does not tell you that they don't interact via some shared state not named explicitly.
2) defining an interface to do a type switch. Really? Even if that interface is not exported, this still leads to more fragile code. When you rely on interface compiler will yell at you if you miss a method. But when you add a new type and forget to update one of those type switches – it will blow up in your face at run time. This is less relevant for NES emulator, since it was designed long ago and unlikely to get new entities that need to be accounted for, but doing this for no good reason can establish a habit that will bite you later in other projects.
These needs are not a problem. But not stating them clearly creates a problem, where you do what you think would help, but your needs are still not satisfied.
> I don't like this sentiment that everyone must be a rock and steel-strong independent individual who never has to rely on others/relationships/family/society and just cuts through life like a knife through butter.
I didn't say that either. The more clear and honest you are in expressing your needs to others – the more likely you to get them fulfilled. But for that you often need to do some work first; you can't rely on others to know your needs better then you.
> While I mostly agree with you, if someone acts like they don't want a relationship at all (or plays super hard to get), then I'll just move on to someone who does, because I don't have time to waste trying to get someone interested in me.
I didn't say that you should hide your interest in relationship to get it. I only said that pursuing something you imagine word "relationship" means, instead of paying attention to particular person, will not do any good for you.
In my opinion, if you like someone – say so, if you want to engage in some activity with the person – tell them so. If they reciprocate – good for both of you, if not – get over it and move on.
You need a car to do what? Most commonly, to transport your body from point A to point B. You can also consider other alternatives and pick one that (you think) works the best.
I doubt that there is such a thing as "need to be in relationship", very often it is a cover for some other, deeper need, like "need to not feel alone", "need for social recognition", "need to feel secure" and so on. And unless that deeper need is realized and verbally communicated, there's a high chance that it won't be satisfied in the best possible way, if at all. Some of those needs even cannot be satisfied by another person (e.g. no one can cure your internal insecurities but yourself). It is your job, as a person, to work on realizing your actual needs. And once you do, you can ask another person to help you fulfill them.
Another important difference between cars and people is that people are sentient beings with their own will and their own needs. And when people see that someone is treating them as a tool to fulfill their needs, before even getting to know them better, they are likely to avoid engaging in such activity.
My point is not about how attraction works, it's about what people do about it. You can feel attraction and decide to act on it almost instantly, but that's still your choice and you are responsible for what you do. But if you feel that attraction is "making you do something" against your will, when you realize negative consequences of your actions – that's definition of addiction.
Nope. Attraction is a nice thing to feel, but it's generally more satisfying if you act on it with conscious choice and not feel "forced" to do something just because you feel a certain way.
Attraction sometimes is not a matter of choice, but actions are. You can decide to continue communication with someone or not. You're not a slave of your attraction.
I would argue that it's hard to build healthy relationship when you're _not_ okay being single. Needing a relationship to feel okay sets the ground for developing codependency, which hurts everyone involved. Also, when you're actively looking for someone to have relationship with you look desperate, which scares people off. (Not to mention that having relationship itself as a goal, as opposed to wanting to build a relationship with the great person in front of you, is objectifying and most people would avoid being objectified)
1) for me one of the merits of text communication is that it's asynchronous: there is a space to delay message processing for as long as recipient needs. Setting yourself to expect immediate response under such circumstances is bound to cause frustration.
2) intentionally delaying the response just for the sake of making yourself more desirable sounds very manipulative to me, and I'd be very inclined to stop pursuing emotional connection with person who does this.
1) having data structure and its methods isolated in a module is not a bad thing. Modules provide an obvious boundary between pieces of code, so when calling some code from another module you know that you should care only about inputs and outputs and not about the particular implementation of the transformation. But when you have the same pieces of code mashed together in one module – that boundary is blurred, now compiler does not tell you that they don't interact via some shared state not named explicitly.
2) defining an interface to do a type switch. Really? Even if that interface is not exported, this still leads to more fragile code. When you rely on interface compiler will yell at you if you miss a method. But when you add a new type and forget to update one of those type switches – it will blow up in your face at run time. This is less relevant for NES emulator, since it was designed long ago and unlikely to get new entities that need to be accounted for, but doing this for no good reason can establish a habit that will bite you later in other projects.