Specific advice: read, study, and practice SICP:
http://ocw.mit.edu/courses/electrical-engineering-and-comput...
It's a book that will permanently upgrade your perspective on creating software, in a way that's language-agnostic. To start, get and install MIT-Scheme and Emacs, then follow along with the videos. And/or dive into the book and do the exercises.