How did you learn programming the Arduino?

I've used and continue to use Arduino in order to get a deeper understanding of C++.

It is brilliant to explore abstract programming subjects.
Get that led to blink no matter what: pointers, arrays, protothreads, finite state machines, multiplex/demultiplex, polymorphism, templates, linked lists... you name it, Arduino does it :wink:

A great tool for learning as well as creating!