We are always free to choose races. Usually, everyone knows which race he wants to play and the elections are not the same. Less frequently, we randomly choose 3 races and take 1 from them and the other 2 return.
How does your group choose races?
My last few games I've dealt 3 races for each player to choose from, but now I've decided to only deal 2 in the future to prevent the same races from being chosen every time.
We just hand out 2 random races and each player picks. Simple and done in seconds.
We hand out 2 or 3 random races to each player and you choose from them. The number we hand out depends on how many players we have. If we can deal out 3 to everyone we will, but if we have too many players and can't then we do 2.
It's still a bit random, but you have a little bit of choice.
Works for us.
1. Either generate a map or make a preset one.
2. Put a token on one places. Now each player rolls a d% to randomly get a place around the table with highest gets a token and everyone else takes his place in clockwise order.
3. Optionally every player may name a race and pick it if no one objects
4. Deal then all the remaining homeworlds stack to remaining players. Everyone chooses one and discards the rest.
5. Roll d% for a speaker.
Our group decided that this order reflects both facts that we do not choose a world to live in (steps 1 and 2) while geography (or astrography in this case) actually defines cultural features (reflected by racial abilities).
It really works as particularly poor region usually gets either Mentak or Saar, some isolated star cluster is a great for Hacan merchants while adventurous Creuss or raiding Naalu usually settle around wormholes. It's always really nice to give a game a big amount of fluff, especially as vast an epic as TI3.