there's a lot less focus on lower-level development and hardware interaction in schools/colleges than there were in the 80's and 90's
I'm a high school student headed to a top-10 engineering university next year. From the information that I've gathered from current students and tours, while the CS department at this school focuses more on the higher-level abstractions, the CE curriculum in the School of Engineering stresses low-level development, including assembly and direct work with hardware.
Just my two cents, as I by no means claim to be an expert on the topic, nor do I know if similar things happen at other universities, but maybe the departments have simply shifted focus somewhat.
The teacher will probably be relieved to get the help. Be gentle about it though. If the teacher feels threatened by you, your grades will suffer.
I got about 10% of my grade taken off for helping other people understand in the first grading period. Then, about a week ago, she lectured us for about 20 minutes on how we shouldn't be bothering her and we should be consulting with each other for help. Go figure.
I honestly doubt the "scripts" are prepared by anyone even in the district; we've got one of the richest schools in the district and only one CS teacher who I believe does not know what the hell she is doing.
The only reason many of my friends are passing that class is because I try to explain the problem to them when they get stuck, rather than just throwing in code without explaining what it does (as the teacher tends to do).
To the OP: I stand by my original comment. Emphasize the importance of pseudocode and debugging, and make sure to provide plenty of practical examples when teaching an abstract subject.
It is masked but always present. I don't know who built to it. It came before the first kernel.