How to be Add-On maker?

Hi everyone. I love addons and i want to know how to do this with Python. And i know its hard work. But what’s you recommend for me for beginning? Any links for free books or staffs like that? I really want making, developing and filling with my own addons for Blender. First my addon will be oriented to BGE. Exactly to Baking textures with GPU Compute. You know what is it and how its cool that if it will be release. So, anyway, wait your replys and your suggestions.
Thanks,
Odil.

Actually I have started to write my first add-on for Blender something like a month ago. For me the following two links worked well as an entry point:

http://wiki.blender.org/index.php/Dev:2.5/Py/Scripts/Cookbook/Code_snippets/Multi-File_packages
http://en.wikibooks.org/wiki/Blender_3D:_Noob_to_Pro

Based on that I have started to check code of similar add-ons as mine and tried to learn how Blender is handling data. The documentation is for sure a valuable source to look for single commands:

http://www.blender.org/documentation/blender_python_api_2_69_1/#

Also this forum here helped me in case I was stucked.