I wrote hubs that people were interested in, so they wanted to follow me (they get email notifications when I publish something new).
The majority of my hub traffic is still from other hubbers, but I am getting a steadily increasing number of organic search engine users. At first, I only had one or two hits from google. Now I'm getting about 15 google hits per day, one or two from yahoo, and I've had a couple from bing. It takes a while for good SEO terms to work their way through the system, but some subject matter has less competition than other subject matter.
Have you used Google's Adsense keyword tool? Look at the number of searches/month, but also look at the competitiveness of each keyword term. Try using ones with the least amount of competition: it might help, but it will probably take time.