As a programmer myself I just quit my "day job"... a contract job with a group that does marketing.
Over the last two decades (yes, I'm oldish...) I realized that all you really need as a programmer is to identify something that most people do by hand and then automate it... and figure out how to put it in front of them.
My initial project will be out in a weeks time and has a potential user base of about 300,000 people.
I've identified a couple of markets where I can speak directly to those that need it and ways to get it in front of people with large mailing lists where the primary audience consists of people that could use what I am writing.
Love the compact display.
Once you are decent with programming... consider "switching" careers, learning something that a lot of people do, and then taking a hard look at what could be automated... and write it.
Instant cash.
Correct, this is how I've been approaching things the last 3 years. The best part is being able to recognize when a problem has already been solved, but someone else doesn't like the way it works.
Being able to write another (not clone) version with their input is always a good thing.
When UX doesn't fit the bill for someone, or they want a different process, it makes things fun.