Keep in mind that people differ from one another, and what one can accomplish in a few minutes, the other can accomplish in a couple of days. The process you’re going through is natural, and I think everyone gets to a certain point and starts asking himself “I’m useless, it’s too tough, should I quit? …” I would suggest that you look back at what you have created so far, at what you have learned … it will keep you moving forward, and discourage you to look back.
As it has previously been mentioned, you are not expected to know everything – that’s impossible anyway. Can you find the pieces of information you need to? If so, great! That’s eventually the skillsets you need. You’re going to learn the things you use on daily basis eventually.
The other day, I was supposed to make an app using C#, which I had never used before. What did I do? I searched for some information on the Internet, and tried to put all the pieces together to make my app work, and I managed it by using Google. The chunk of code I came up with was the bare minimum, but I learned some stuff about the language, it was me who composed all the necessary pieces.
Whatever you do just make sure you’re enjoying it, and don’t ever doubt about your skills! You may not see the results now, but you’ll see them later on.