Join-in-progress ruins stuff like Iron Banner. In a game mode where winning is actually important, do you think anyone wants to join into a game where their team is like 5000 points behind? Nope. I join into one of those matches, I'm leaving straight away, meaning that all that's happened is everyone's time has been wasted. And you know why you get put into games in progress so much? Because there is no penalty for quitting a match, so everyone does it all the time, and thus matches are almost never full.
The solution is that there should be punishments for quitting, like a temporary ban from matchmaking if you quit too many times, or if you play another game too soon after quitting the last one, you get no rewards. If there was a penalty for just backing out the second the game isn't going your way, then games would remain full much more often, and there would be no need for a join-in-progress system. Everyone wins.
-
Well most multiplayer games have it these days, simply because without it matchmaking would grind to a halt. I know it's annoying but it is necessary at times.