More important than progamming, you need to understand how an engine works, how timing and fuel play their roles, what adding or removing any ingredient does and what the benefits or what damage can be done by your changes or mistakes.
If you really wanna learn the fundamentals, a guy named Bruce Plecan wrote a really informative document. Its up on gm_ecm's ftp site but its address escapes me.
There is a couple docs on their website, both written by Bruce. One is "Bruces Tuning Tips" and is at:
http://diy-efi.org/gmecm/papers/tunetip.html
The other very good resource, also by Bruce is:
http://diy-efi.org/gmecm/papers/prog_101.html
Which goes over the functions of the various tables and calculations made by the GM computers. That paper is written more for a different ECM, but much of the INFO can be applied here.
Once you fully understand all consequences or your changes, its then time to worry about doing the programming. I am just a tinkerer. I cannot program, I just have (I think anyway) a good idea what it takes to make a car run well. If you can do both, like the Lubrants and the Carters of the world, you'll do well
Just realize it will be a learning experience, and be prepared to take things apart should you do something wrong
