Developing an AI-Driven NC Programming Assistant: A Productive Failure Approach in CNC Education | IEEE Conference Publication | IEEE Xplore