Text this: Algorithm and intelligent tutoring system design for ladder logic programming