Using Automated Assessment Tools To Analyze In-Depth Student Learning Of Programming Concepts