Well, and there's some dispute about whether Tillerson was informed of his firing by Twitter or was told by Trump on the telephone. It turned out eventually that it was on the telephone. But they were minutes apart.
He had been aware that his job was dangling by a thread for many months, probably since he referred to President Trump, in private but in a leaked private session, as a moron. President Trump does not take kindly to disloyalty. And this was obviously a very egregious act of disloyalty that Tillerson didn't deny.
The fact that he was fired is not a surprise. The manner and timing, as is so often the case with Trump, has been something of a surprise.
The fascinating thing about Mike Pompeo's nomination to replace Tillerson is that Pompeo is very much on the same page as President Trump on a number of issues, such as really visceral hatred of the Iran nuclear deal, pretty overt disrespect for the Muslim world, and more in tune with Trump's sort of softly approach, softly, softly approach to Russia.
Now Tillerson has gone to be replaced by somebody who's very much with Trump on the big issues, whereas Tillerson was a check, acted as a brake on some of Trump's more Trumpian, America First instincts. So this cognitive dissonance, if you like, between having a president who tweets one thing and having cabinet principals who say another is narrowing. The gap between Trump and his big spokespeople is getting narrower. And Pompeo is probably going to eliminate that altogether between the State Department and the White House.