Here's a perspective from someone who's been in the industry now for over 25 years, mostly around Silicon Valley and San Francisco, and hired a lot of programmers.
Around here, the real questions employers have about programmers are:
Can you do the job that needs to be done?
Can you get along with the people you have to deal with at work, and otherwise not be troublesome?
You can certainly succeed without a CS degree - I'm a chemist and mathematician myself, and have hired very capable programmers with degrees in non-technical disciplines including history and music. And I've known people who didn't even graduate from high school who've had successful programming careers.
However, the normal path employers expect to see in someone starting out in programming is to have gotten a degree in CS or a related technical field, and then go right out and get a job. Anything else may be perceived as a possible red flag that needs some explaining.
Having a degree in anything not only proves you've passed particular classes, but also that you have enough perseverance to get through college without quitting, and you weren't so irresponsible that you got kicked out. That may seem silly and obvious, but I know a pretty good programmer who freely admits he won't finish a degree because he refuses to take required classes he doesn't like. Potential employers look at him and think, "If I have to assign you work that needs to be done, but you don't like it, are you going to quit on me? No job here for you, buddy."
If you want to do a degree and experiment at home instead of getting a job, that's going to be tricky. Not impossible, but tricky. If you want to get a job after that, you'll need to explain what you did and why, so your experiments need to be pretty successful. You'll also need to have a way to sustain yourself while doing this. Again, it's not impossible - I once hired a brilliant programmer who had been working as a supermarket stocker while polishing his game-writing skills. But employers tend to look at this a little oddly, and most would rather hear you were delivering pizzas than sponging off your parents.
JB King mentioned co-op and intern programs, and those are very helpful. I even know a couple of guys in the 70s and 80s who never finished their degrees because their co-op employers offered them big bucks to stay on. But that's pretty unusual these days.
If you don't have a degree at all, you absolutely must have some very solid experience in the area the employer needs. Having a hit iPhone program in the App Store, or being a maintainer of a major open-source project, would probably suffice. :-)