I've been using index cards for about twelve years now. It's not only fast, easy, and cheap, it also allows me to pull out cards when people delay/ready actions and track monster hit points independently.
I use blue cards for PCs and write passive Perception, Insight, and defenses for each character. I use yellow cards for monsters and green cards for things that act on an initiative count but isn't a creature (like traps and hazards). I sometimes use sticky tabs to keep track of status effects and ongoing damage, but my players are good about tracking it and being honest with these sorts of things.
An added benefit as a DM is the ability to add tension to a scene with harmless extra cards. I can stick and extra yellow or green card in the "deck," leave it blank, without the players knowing what it is... When the players see me cautiously contemplating a yellow card that they haven't seen associated with a critter, they assume that there's something invisible lurking somewhere on the battlefield, or that perhaps one of the monsters is really an elite, or something else unpleasant. Good times.
In olden times (1E, 2E and early 3E), I actually used graph paper. You can make a very simple matrix to track round-by-round effects and conveniently mark off who has acted yet and who hasn't. I discontinued this practice because 3E went to a cyclic initiative model, which works much better for the index cards.