I have a lot of questions from people about what "code" means. Lets remember that code is a bare minimum, but does not always represent best practice.
When you see your doctor do you know what his/her class rank was when they graduated? They graduated, they met the bare minimum at the very least. They could have been number 1 or number 501, but they all got the same diploma. It is the same with code. We all would rather have the doctor that graduated number 1.
For example, I went on an inspection recently with a young couple and their 3 year old son. The front porch was two risers and and about 18 inches high, not high enough to require, by code, a porch railing or guard. All I saw in my head was the 3 year old son falling off the porch. I also, asked my clients if they would have elderly visitors and they said they would. This sealed the deal for me. Although the porch was "code", it was not safe for their circumstances. Especially in the Chicago area, where we have snow and ice.
I noted in the report and told them that it would be a good idea to have a railing installed to prevent their child and elderly family members from falling off the porch. I felt that if I had not noted this, that I was doing my clients a disservice.
Ever wonder why different municipalities have different codes? Seems arbitrary doesn't it? That's because it is. It is at the whim of the building department of that municipality. It depends on what they are comfortable with, or what they think is best. So, let's not get too caught up with "code". Certainly if something is below code it should be noted. But, if it is code, but still unsafe it should be noted also.
SAFETY FIRST! :)
Michael,
Knowing some code as a home inspector is good. We however can not cite it in our reports. As you said if something is unsafe, then we should report it as such, regardless of code.
The only time where code is really applicable in our jobs is inspecting new construction. If components are not "to code" then they need to be corrected.