I'm not a fan of the drain cleaners they sell in the stores. They scare me. I see so many cons with them: they cost a lot of money, they are poisonous, they can ruin your old pipes, they don't work miracles, and so on.
This is the inexpensive DIY drain cleaner I am friends with:
Step-by-Step: pour your baking soda down the drain. Pour your vinegar over the baking soda, and allow it to fizz, explode, bubble, until the baking soda dissolves. Add more vinegar if you need it. You can also let this set overnight. Then, clear the drain with boiling hot water. The end.
The key is to clean your drains before they run slowly or back up. And this one is actually really fun--it reminds me of making volcanoes in elementary school. I love watching the explosive reaction between the vinegar and baking soda. I mean, cleaning drains can't be any more exciting. Plus, I think it might be a fun chore for kids when they are older.