Well after two semesters and three absolutely 'horrible' teachers I've decided to drop my C, C++ courses and move over to a different line of study at college. This is sad really since I'm almost 40 and had been hacking for the past 15+ years and really needed more professional training. I will still pursue the language - but more in a self-study capacity. If anyone knows of any good C/C++ certificate courses that can be done online, please let me know.
In the meantime, if I could give any advice to those who may consider teaching this language, please consider the following. These are just my own personal observations within my limited scope of experience and as such you may agree or discount whatever you see here:
1) You are brilliant - therefore you just 'get it' - the rest of us don't. Please pretend that you are teaching english to non-english-speaking students. It is a language after all.
2) Keep you code examples small, with plenty of comments. And, unless you absolutely have to, do 'not' combine one example into another without providing examples of them separately first.
3) Introduce each new concept using defined steps (ex. step 1 - do this, step 2 - do that). Be ridiculously exhaustive in your explanation about each new line of code. Remember, you get it - we don't.
4) Use smaller in-class assignments and not one 'huge' one that due at the end of the term. Be there to observe, encourage and help during the assignments.
5) Pace you classes - reserve at least 15-30 minutes for coding help per class. You may discover a missing part of your material that wasn't addressed.
These are only observations from my little experience in this college. I'm sure the community has 100's of stories of how good their professors are. I'm very happy for all of you who have that and I wish you all well.