Well, if you realy want to know how I (who is a she btw ;) ) chose my fish, I'll show you.
1st, water perimeters. My water is soft with 6.5-6.8pH. That rules out a lot of fish!
2nd, tank size. I have a 10gal and a 25gal. That rules out more fish (especially in the 10)
3rd, swim level and size of fish. I want smaller fish and something on both the bottom and mid level for lots of movement. I wouldn't mind a school or 2 if they would fit.
4th, live plants or no? Some fish will graze on live plants and some with flat out distroy them. I wanted live plants.
5th, compatability between fish inclding that impulse buys when I was a newbie.
In the 10gal, I have my little impulse buy, a male VT Betta named Gus. So, what goes with him AND my water? Kuhli Loaches, Otos, and the smaller types of Corys are all good options for me. Kuhlis thrive in 20gal+ tanks, but can live happy lives in a 10. However, I had bought Mystory Snails and as Kuhlis can eat snails, I ruled them out (btw, snails and soft water do not mix. I have 1 healthy adult. The rest did not make it because the water was contraindicative to shell growth). This leaves me with Otos and Corys. As Otos are not readily avaliable in my area and have a higher bioload, I will be getting Corys to add to it soon.
For my 25gal, I decided to make it a betta sorority as I love the breed. To add movement to my entire tank as well as a cleaning force, I will be adding the 2 breeds I really liked but could not add to my 10gal - Kuhli Loaches and Otos
And that's it in a nutshell :)