Michael Schoenly- How develop a new Add-on?

Hello,

I am Michael Schoenly. I am a programmer. I was planning to develop Add-on want a basic idea to develop add-on. Is it similar to writing a software program.