If you know basics of the language you are trying to learn, start working on a project which interests you. It need not be a live project which is given by someone to you, you can start working on something you feed better to do. Just do it for your satisfaction and you will automatically learn things in completing the project.
If you do not know anything about the language, the best way is to attend few classes either in tutorial, online or in some class but should be done by an expert in that language. Once you get familiarized with the basics, read the above point again.
Rather than paying a hefty amount at a tutor's i prefer learning them reading books, checking out youtube and the inherent 'help' in the software. Recently I learnt Matlab all by myself. Youtube is a serious gold mine. The 'help' section in Matlab is the best I have seen till date with detailed explanation and demos and videos. First try learning by yourself and then go to a teacher.
Well first go for basics with help of someone, like computer center. Then do lots of practice with different formula which will surely improve logical funda in the programming.