Yes, Trump should think before he tweets and speaks, but he won't. He won't change who he is. He has and always will be the same person that says stupid things. He says whatever he wants and doesn't care what people think about it. It doesn't matter that he is the president, he will still say something that may insult a foreign leader.
It isn't the first time anyone has said this, and I doubt it will be the last. Donald Trump has a nasty habit of throwing Twitter tantrums without fully thinking it through, making himself look even more ridiculous than he already did. When he spouted off about the protests, notice how quickly he followed up with a remark about respecting protesters. It was clearly someone else in control of his account, trying to save him face.
It is amazing that a person who has accumulated such wealth and has had such extensive business dealing never learned the lesson to avoid putting negative thoughts into writing. It is no debate that everyone, especially Trump should think before they tweet. However, to characterize his as calling for protests when Obama took office is unfair and not totally accurate. He questioned Obama's birth certificate, as did many at the time, but he retreated once his questions were addressed, so to characterize him as calling for protests may be slightly off the mark.
Donald Trump is a master of lying so often that some people are actually convinced that he's not lying. He repeats his lies over and over again, and continually denies the truth, until many people are confused about what is true and what is not. When that happens, people who support Trump tend to take his word for it, and people who don't support Trump assume that he is lying. This works very well for Trump. His only goal is to gain more power for himself. He doesn't care about telling the truth or appearing hypocritical.