Start with
Addon move to
Getting started with writing addons and branch out from there to interesting links.
It helps if you actually "code" through the examples, even the simplest ones.
After getting through those you should have a better understanding of base concepts
and able to take the next step.
Examining existing addons code also helps alot.
For starters pick small / simple (with a very particular goal stated in addon description) addons
to analyze and stay away from addons that use higher level concepts like OO (object oriented programming) modules, plugins, optional components and Load on Demand etc.
Addons that use frameworks (Ace, Cosmos etc) or libraries.
Stick with self-contained addons to begin with.