Why does Revolver Ocelot spend so long spinning his guns?
As you can see from the following video, Revolver Ocelot is a HUGE fan of his revolvers.
But after having played the game, I still don't understand -- what was the effect of him spending so long spinning those guns? I mean, considering that even though they were considered enemies, wouldn't the time Ocelot spent spinning his guns plenty of time for someone to just shoot him dead?
What is the reason Ocelot spends so long spinning his guns? I've heard of plenty of theories, ranging to intimidation to just showing off (but for what reason?). Is there a canonical reason he spends forever just spinning his guns?
I don't think there is a canonical explanation, and it would surprise me if Kojima talked about that point in particular.
Out of universe, it is to make Ocelot impressive and develop his character, it is also just plain and simple another example of the out of proportion, hammy (warning, TVTropes link) characters that are the bread and butter of MGS. (Wouldn't have found this pun if I wanted to)
In universe, my interpretation is, he knew Snake would not surprise shoot him, if Snake wanted him dead, he would had killed him at the start of the game.
Furthermore, Ocelot is ADAM, and as such a ally of Snake. So he need to show off to back his story to Raikov, but must not kill Snake either. That is why he show off so much, he is "beating his chest" in front of Snake and every GRU soldier, so that everybody think he truly is after Snake, while being losing time.
I do not remember the exact context of the scene, but if I m not mistaken, Snake was at the time surrounded by GRU soldier, which Ocelot called off because Snake is "his target", and he want a "fair fight". Snake wouldn't have survived against so much soldiers in the open and surprised. Ocelot, by loosing time (showing off, make a long fight...), allow the Boss to create the diversion via the hornets, which makes the soldiers flee, and allow Snake to continue his mission, and nobody can blame him for it.
MGS3 is a interesting and hard to understand game because of all the layers of faking, deceptions and treasons going on, and Ocelot is right in the middle of all this, fooling everyone and being one of the few who know what is at stakes and who is working for who.
If you think that is not credible because of the pursuit at the end of the game, Ocelot knows EVA is not the real EVA, and is working for someone else. She is the real target, Snake just happen to be there at the wrong moment.
EDIT:
Another point about the pursuit, you may still be wondering why he still pursuing Snake to the plane and ask for a duel.
If you play the scene multiple time, or choose the wrong gun, it is made clear Ocelot just wanted to duel Snake, he don't try to stop him, he don't even try to kill EVA anymore, he just see a worthy rival in Snake and want to have a real fight with him.
(That is also why the final fight in MGS4 was so touching, because he at long last, 40years laters, have his fight)