College / University level IT (instructor/professor) education requirements
The undeniable fact about the impeccable territory of programming is that some famous and very successful programmers on the planet have no official degree in either IT or CS, at all... So, one might claim that the interest would be the necessary condition for being a good programmer. Actually, official education would open your mind to integrate various but interconnected stuffs within the IT and CS realm to be a better programmer.

The case will be, considerably, different when one is eager to teach programming. Transferring the ideas to the novice people is tough enough, such that the trainer must be rather proficient and experienced in the target subject. Actually, an officially-trained programming teacher would access to more professional opportunities, because (s)he had been, probably, confronted with different aspects of the programming, such as fundamentals of the software engineering, web-based development, embedded programming, object-oriented programming, aspect-oriented programming, agent-oriented programming and the other paradigms, in a coherent manner. Whereas, above stuffs might be acquired by a self-learning programmer after spending a lot of money and time. Furthermore, people often tend to consign the training positions to officially-trained experts, because their degree could act as a convincing proof for their capabilities.

All in all, I think you better pursue an official degree (a B.A.Sc. or M.A.Sc.) to pave your professional way at the future.