One of the reasons I chose to settle down in Raleigh, NC. Not a large city, but a great tech scene that still pays well, and very reasonable cost of living.
Not as much to do as San Francisco or NYC - but I certainly think it's worth it.
I work in Wichita, KS and could easily get a house in the country with <30 minute commute. Software developer jobs are everywhere. You just have to be willing to trade some job mobility.. I probably wouldn't be able to immediately find another job here working with C++ at the same level of hardware.
Not as much to do as San Francisco or NYC - but I certainly think it's worth it.