I'm trying to figure out the difference between the two. I think てくれる can be used when talking about others but then why not just use てあげる for others and てもらう for yourself
1 Answer
So the best explanation I've heard for this is actually thanks to the concepts of うち and 外 first, or (in English) it basically depends on point of view.
てもらう can be used to describe anyone receiving a gift from anyone else; when the receiver is the subject of the sentence.
てくれる is used when the giver is the subject of the sentence.
I know this is discussed in Genki textbooks (Genki II) but the best explanation, along with diagrams, I've seen as to how this works is via Tae Kim's and also lingo-app's entry on giving and receiving in Japanese.