Well my first language was Java and I learned by building an RSPS. I took a short tutorial online through one of those free websites to learn basic syntax. After that I just browse through an RSPS source looking at and changing code to see how it affected the game. Soon I could read RSPS tutorials well enough to customize the server how I wanted. Once I got hired to work on Rune Z, I did a lot of googling to learn enough to add all the content the owner wanted. Since then I've enrolled in college so I've been able to solidify everything I learned while making RSPS. Even in college though I started working on a side project in addition to my course work, and googling things that I need to know how to do for my side project has probably been just as, if not more helpful than any class i've ever taken.