Yesterday I was asked by one of my students, Andrew, where I learned scripting and what sources I’d recommend for learning scripting. To the first question, I learned on my own, with no formal training. I bought books, I read websites on the topic, and I read the SDKs of the software, over and over again. I gradually became more familiar with the syntax, the logic, and my own patience. In 2002, I started with Actionscript, AS, for Flash, which is based on a type of J-script, and from there I graduated to Softimage XSI. XSI had large libriaries of examples in the SDK, software developers kit, written in J-script, and I was able to read and write from those examples based on my experience with Actionscript 1.0. In 2008, I was back into Actionscript for a short while, working on the social networking website prototype, at that point it was now AS 3.0. A fully object oriented programming language, or OOP, and I took to that right away. It took me several years of work in XSI and AS to understand OOP. I’ve also attempted to learn Python, though I haven’t committed the time and resources to use it well enough.
It takes me a long time to write code of any kind, and I require 50-60% guidance, the rest I dream up on my own. Whenever the software couldn’t solve a problem, or when I became very curious on how something works in a software, I’d take the time to write it myself. Sometimes, I’ll automate a task, just to see it in code, and from there it encourages me to take on something a little bigger. Changing software, like the switch from Lightwave to Softimage XSI back in 2005, motivates me to make tools to ease my transition from one software to another. For example, I’m quite happy with my ability to model with curves in Maya, and I’d like that ability in Softimage (curve modeling being one of the weaknesses in Softimage).
As for the second question, here is a list of books in my library that have helped me over the years. I recommend all of these authors.
Any book on the subject of J-script, MEL, python, or programming syntax and logic. Each language has it’s own particulars, but all languages share similar rules. Learning one language makes learning a second far easier.
John Zelle (Personlly, if I were to start all over again, I’d start here. Not because it’s pythin, but because this guy is a great teacher).
Joshua Davis (I’m not sure if he has published anything recently).
MEL (Maya Embedded Language)
There are many other good references, but these authors stand out in my mind. You can find more information about these authors and other great people by sifting through my links to the right.
I have to mention that programming has led me to love math. More specifically, programming has allowed me to see math in action, and I understand it better and apply it better as a result of learning programming.