I've been with Ameritrade for almost 2 years. They have a easy to read interface and pretty good customer service. The only downside is that you don't get the streaming data for free (they have couple of paid options though). Overall, I'm pretty satisfied and the fee is a $8 a trade which is pretty decent.
Hope that helps.
I'll probably move some of my stuff to TD for the miles (penny stocks that I don't trade everyday) as soon as they go up some (I keep dreaming

) so I get at least that 10'000 bonus miles.