This is something that I have been meaning to do for some time. As always I haven't found the time, or need, to do so. I have constantly been so busy with work that hasn't really required the development of API tools, or that I haven't been able to justify the time expense to convert the work to an API based toolset.
I think that a time comes when you realise it is time to learn some things. Coding is like learning a language. Without the right mindset or need, it is very difficult. But when offered a good practical reason to learn, new concepts and knowledge seem to be learnt a lot more fluidly. I feel this is where I am now. My python coding has got to a certain point in Maya, and I now see a use for the power that I can harness through the API. Although slow, I am picking it up a lot better than last time I started reading the API.
I find one of the biggest things is realising how to read the help docs, and being able to read the C++ documentation and convert it to python. This will prove useful when delving into C++. For the moment I am learning the Maya Python API so I can focus on learning the API toolset, and not have to worry so much about syntax. Once I have that sorted I will start moving accross to C++.
For the time being my goal is to work though David Goulds Maya Programming Books, and as I do so to build some simple nodes and commands that package up some commonly used rigging node graphs that I often build.
Keep checking back for my progress.