>>1
Jesus christ for a moment I thought this might've been something I asked like 2 months ago bumped to the top but I see it was made today. I think we're in the same boat.
Don't JUST sit in front of the computer and don't JUST program. A good percentage of getting a program done is learning more. Buy or borrow some books that are relevant to what you're doing and don't be afraid to study other peoples' code and examples. Take time out to do tutorials. Gaining knowledge, even if you don't -immediately- need it, will still help you with confidence.
I was sitting around picking my nose doing nothing but sitting in my own anxiety about writing a program that loads and animates Doom3 .MD5 models (the long-term goal is a boss-fest, non-scrolling shmup game, but one-step-at-a-time is best)... so... I started with the basics and bought a book on 3D mathematics fundamentals. Not a book on "3D programming" -- just 3D mathematics. These last 2 or so weeks I've learned a lot of things I didn't know before and I've been doing that... once I'm confident about the math library I've written and make sure it's functionally sound, then I can go on to more programmer-y things like data structures, file loading, OpenGL, etc, and then I'll be buying/borrowing books on that layer of programming abstraction.
Do everything in small increments. That's basically what most big commercial software projects are -- dozens or hundreds of individuals gluing together their small bits 'n pieces.