This guy has a suggested way to learn to program well, and I think that if you work at it hard enough, you could be decent at the end of his timescale. But it can't be rushed, and you have to work hard.