Exploring Novices' Struggle and Progress During Programming Through Data-Driven Detectors and Think-Aloud Protocols | IEEE Conference Publication | IEEE Xplore