I've been playing the Pokemon games for many generations (though not much in the competitive/PVP arena). In all that time, I've never quite wrapped my head around the proliferation of moves that either buff your speed or debuff your opponent's -- especially the latter.
Obviously a high Speed stat is almost always good; getting the first hit usually means you win the fight. I'm not talking about that. And a move that attacks and buffs/debuffs speed is still an attack, so that's fine. I'm talking specifically about moves that don't do anything except change speed, like Agility or Cotton Spore.
I can see a few specific scenarios where it's useful. Setting up for another move that specifically benefits from a Speed differential, like Gyro Ball or similar; being able to (usually) see what move Copycat is going to copy; Baton Passing to a slower teammate. I can see using Agility to set up a sweeper, though taking a turn just to speed up seems like a risky proposition for a glass cannon, and slowing your enemy down isn't really going to accomplish much in that case.
Outside of those situations, I can't see how adjusting Speed is useful. If I was acting first anyway, then it's useless, and if I go second and the move changes initiative order, I haven't actually altered anything; we're still basically trading hits. Yet, there are so many speed-modifying moves (which I almost always forget as soon as possible) that I feel like there's something I'm missing.
Is there some strategy or method that I'm overlooking here?