I'm recently registered at socialcoder.org , in order to gain skills/experience, but it seems really hopeless.
even for some of the obviously unpaid work they wanted volunteers with experience , I just feel like giving up :( 2 years , learning C++ , javascript/jquery, html/css and still a beginner , still unpaid and gotten nowhere.
You're being too negative. I've been programming for 22 years and still consider myself a beginner. Want to know how many programming jobs I've held or been paid for? 0, fat goose egg. I program because I love doing it and don't seek to have a career doing it. Just keep at it and try to join as many projects on sourceforge or git as you can. Submit bug fixes for programs you like. Make some games. There are tons of things you can do in order to get experience and to be helpful.
Maybe but I'm not doing it for fun. I have social anxiety and this is the only thing I can do (work from home) to hopefully start earning, but it feels completely hopeless, I'm so overwhelmed and feel I've gotten nowhere.
It might be that the world is too competitive, the skilled ones will likely eat all the good ones and you will be given no chance to show your true self. Similar website is Freelancer.com, you can bid however you want people will not choose you because mainly you don't have a bright profile from the start.