I have to agree with the majority, that one does not become a great programmer in a short amount of time. It takes a lot of dedication and time, and to say it bluntly, you are asking wrong questions from the wrong people. Rather, we don't have the answers you want, since we are more or less all amateurs when it comes down to "real coding" so to speak (except maybe Two9A and olaf). We can only point you into the right direction where to look for answers, but that is certainly not enough.