What We Can Learn About Student Learning From Open-Ended Programming Projects in Middle School Computer Science
Programming by choice: urban youth learning programming with scratch