Molly liked him, because he noticed her. He was so sweet at first, so kind. Then he met Sherlock. She was angry with Sherlock for what he said, until she realized that Jim was the one she should be angry with, and so she ended it. It wasn’t Molly he had noticed, but Sherlock—she was just a way to get close to him.
John disliked him on sight. He couldn’t explain why, but somehow he knew there was something off about Molly’s new boyfriend. It wasn’t jealousy—no matter what it looked like. He knew right away that Jim was bad news.
Sherlock hardly noticed him at first, only observing the obvious. He kicked himself for that later—he should have been able to see through the deception, to see more than what Moriarty wanted him to see.
But how do you read someone who changes personalities like a girl changes earrings?