Programming talent is developed through practice, and in order to practice, you need a foundation. This book gives you a good foundation:
http://en.wikipedia.org/wiki/Structure_and_Interpretation_of...
SICP is an extraordinarily difficult book; "Simply Scheme" by Brian Harvey and Matt Wright is a good stepping-stone.