It's like, here there's zero, and that's you sitting on the couch watching TV. Then over there there's nineteen billion dollars, and that's you being "successful". And in the middle there's nothing. And that's daunting and, of course, ludicrous.
Code little things. Or don't code, do something else. Go make something out of wood. But do it for the enjoyment, for the little thrill it gives you. Don't think about anybody else while you're doing it; don't think about what it might make you, or whether you'll end up on the front page of HN, or whether you'll get funding, or move to SF, or whatever.
Good luck. I'm 38 and your post resonated with me - this stuff doesn't necessarily get easier as you get older!
On to my advice:
Decide on a project to build. Set a deadline you want to build it by.
All those other questions will fall into place.
Don't pick a project that is the next-big-whatever. Just pick something you can accomplish within, say, a week. If you want a list of ideas, I have a couple of links or I'd even be willing to share my list of (mostly non-trivial, hopefully profitable) ideas.
Doing a few projects small projects has turned me around more than once, and made me focused and proud of myself.
Your description resonates with me - physical exercise (a lot of it - back then, it was running 5-10Km 4-5 times a week, in addition to other gym visits and martial arts practice) seemed to be the cure. (Or, it was just coincidence ... who knows).
And I wasn't a sporty person back then, by a long shot - before I took that up (around age 20), I couldn't finish a 2Km run to save my life.
In this world there are 2 kinds of languages. The kind people like, and the kind people use. You'll find pro's and con's everywhere. Just sit down and do something, it doesn't matter how fast it is, how bad it looks. You'll have finished something.
For example; now I'm kind of curious about chemistry. I want to learn more about it, but I can't study forever, I need a job.
I DO want to code. I want to code so well that one day maybe I want to contribute to the Linux kernel! But I want to ask you: HOW do you go on about doing that? The degree I have doesn't mean much. I think I might learn more from books than I did at the university, actually.
(Found via Google search on [linux kernel development].)
Start with a small project, maybe just learning how to compile and install your own custom kernel. Then go look for bugs that other people would like fixed but don't have time to fix, and see if you can fix them. There're a bunch of guidelines (that I'm not too familiar with...I don't personally do kernel hacking) to getting your patch accepted, but I think there's pretty substantive mentoring available for new developers. Good luck.
Start small. There are tons of open-source projects that would appreciate help fixing small issues. For example, I've found Mozilla to be very helpful in mentoring developers who are earnest about trying to contribute to Firefox.
And if none of the large projects have any tasks that strike your fancy, pick something on GitHub, fork it, fix a bug or improve some documentation, and submit a pull request. Worst case is you'll run into a jerk or someone who doesn't want outside help, but at least you'll get some experience with the process, and with learning to read other people's code.
Here are a couple possibilities, though, both based on personal experience:
1. You don't actually want to code, but you have a long, generally enjoyable history with it. It's hard to give up something that has worked well for us in the past, even if it's not working well now. Our actual self changes much quicker than our self-image does, particularly in the teens and 20s.
2. You do want to code, but you are afraid of not measuring up to some external standard. In this case - forget the external standard. Other people's ideas of fame & approval don't matter, only your own.
It's pretty common in our 20s to re-evaluate all the stuff we thought we liked & were good at, but really just fell into because that's what we did when we were kids and we were too afraid to give it up. I would get up off the couch and turn off the games, TVs and movies - but don't force yourself to code if it's not really what you want to be doing. Instead, let yourself be drawn to whatever actually interests you. Maybe it's programming, but it could be any number of other things instead. Writing, socializing, linguistics, business, science, etc. The world is a broad place.