UC Berkeley Memorial Stadium at Sunset
Michael Ball staff photo


Hello, my name is Michael Ball! I’m a currently a Lecturer in the UC Berkeley Computer Science Department, and a Software Engineer at Gradescope!

My work revolves around teaching computer science to broad and diverse audices, including building tools to help teachers teach and learners learn.

During my undergraduate and masters work, I spent most of my time working on “The Beauty and Joy of Computing”, an exciting introduction to computer science for non-majors. At UC Berkeley, this course is CS10, but it’s also taught in high schools as an AP Computer Science Principles Course. BJC is a long time project of my advisor Dan Garcia, and Brian Harvey. Part of what makes BJC special, is its programming language: Snap!. Snap! is a blocks-based visual programming language that is easy to learn, yet also exposes fascinating, powerful, and mind-bending concepts like Higher Order Functions to young students. Snap! was invented by Jens Mönig and Brian Harvey, and I contribute design and development to the language and infrastructure along with Bernat Romagosa. Along the way, we’ve worked very closely with Tiffany Barnes at NCSU who has led professional development for hundreds of high school teachers.

I was also fortunate to join Gradescope shortly after graduating. Gradescope is a feedback and assessment platform which makes it easy to give detailed feedback, and provides incredibly powerful workflows for teaching large courses. I used the prototypes as a student and TA before it was even a company! Gradescope was acquired by Turnitin where we’ve had the ability to work with many talented engineers and educators.


Creative Commons License
This work by Michael Ball is licensed under a Creative Commons Attribution-NonCommercial-NoDerivs 3.0 Unported License.
Based on work at https://mball.co
Permissions beyond the scope of this license may be available at https://mball.co.