Too often we as game designer believe that more choice is always better but if we cautiously and tactically take choice away from players at certain points of the game we can make statements in the games we produce. If attempting to convey something in a simulation game that we would not have a choice of in real life by giving the player that choice in the game we are actually destroying the realism. Choices about player stats or builds can also create elitism or resentment amongst players when certain builds are better than others. By making players just get a random class or build destroys these problems as long as all builds feel balanced. These decisions might mean the game is not as popular but could be better for the community as a whole.
Example 1: Rust Edit
Interestingly, Rust gives the player no input on how their character looks. On game startup, the game randomly generates every player a character look and race and connects that design to the steam id so it can never be changed. This arguably lost Rust some sales and made several players uncomfortable as players are forced to play characters drastically different to what they are in real life. Many players describe describe new and interesting interactions due to this that i would argue has had a net positive effect on the community in helping players understand racial diversity.