I think I belong to the second group more than the first. Should I switch to a different major? Or is there a place in the world for programmers who aren't hackers?
As a third option, someone might have some magical "how to become a hacker" advice that I haven't already read.
Don't switch majors because of other people. Switch if you don't like what you're doing. Do you really like programming, exploring code or at the very least making that code work? If so, there's bound to be a place for you. As for "becoming" a hacker: again, try not to look at other people. The path to people having ideas and making projects is always a bit askew and twisted. If you ever want a side project, go ahead and start one. Get your hands dirty. The more you do, the wiser you get. But don't feel like it's a necessity.
Also remember that lots of college students are just learning to code. The self-taught kids have a few years' advantage in a lot of situations. That doesn't necessarily make them better (though a lot more of them have an aptitude for the subject matter). It's certainly possible to get into programming late in your career and still turn it into something meaningful.