My current projects generally revolve around novel pedagogical tools to increase teaching efficacy. While a graduate student, my research was in the realm of virtual reality and haptics.

Educational Activities

Some of the educational activities that I have become involved with have become publications.

  • Aaron Bloomfield and Borja Sotomayor. "A Programming Contest Strategy Guide". Proceedings of the 47th ACM Technical Symposium on Computer Science Education (SIGCSE), March 2016, Memphis, TN.
  • Aaron Bloomfield, Mark Sherriff, and Kara Williams. "A Service Learning Practicum Capstone". Proceedings of the 45th ACM Technical Symposium on Computer Science Education (SIGCSE), March 2014, Atlanta, GA.

Sustainable Energy

How can people make informed decisions about energy use when there is a general lack of education about the inter-dependencies of sustainable energy choices? (more description to come)

Engineering Genome

How to do you connect similar concepts across different pedagogical disciplines? (more description to come)

Digital Paper Exam Grading


In modern college courses, grading of student work can be a tedious task. It is often difficult and time consuming to assess and generate statistics based on anything more than the total score awarded for a given assignment or examination. With paper-based exams, a significant amount of time is used on tasks that can be automated: flipping through exams, adding up the scores, transferring them to a spreadsheet for electronic distribution, and returning of the exams to the students.

This project allows for paper-based exams to be graded via computer, after scanning in the exam pages. Each exam is recognized via a specialized footer, shown above. The result is a system that can reduce grading time by as much as half, while improving grading consistency and data collection.

We build upon this system to create a new teaching paradigm centered around the ability to quickly perform fine-grained analysis of student performance on class material. The heart of this project is a new assessment environment for nearly all examination types — including traditional paper-based and on-line — as well as many assignment types administered in college courses. This new environment provides a variety of pedagogical innovations that will result in a richer understanding of student knowledge, without requiring additional time from instructors.

Integrated Computing Submission System

Electronic submission systems abound, but few are customized to computer science submissions: programs that can be compiled and run, and possibly automatically graded. Indeed, the assignment submission in most course management systems (CMS) are tedious to use, with little thought put to rapid work flow in the grading process.

This system aims to solve that by allowing for the submission, grading, and return of student assignments in a course setting.

IBCM: Itty Bitty Computing Language

IBCM interface

Machine language is necessary to be understood in an undergraduate curriculum, but often tedius to teach due to the complexity of the language. We present the development and implementation of the Itty Bitty Computing Machine (IBCM), a machine language designed specifically to be taught to lower-level undergraduate students. The presentation of the material takes about one-week of lecture, and allows understanding of all the concepts of machine language without having to deal with the complexity of modern machine language implementations, such as x86 and MIPS. A number of pedagogical aspects are addressed concisely via IBCM, such as treating all data as untyped and performing arithmetic on instructions.

While we are not the first to introduce a short machine language module, we do provide a number of benefits over older versions: a modern browser-based implementation, a full set of pedagogical tools, and a decade of experience teaching this module. All of the necessary materials, including compilers, simulators, and documentation, are available online and licensed through Creative Commons licenses.

The IBCM website, and the other IBCM materials, can be found in the PDR (Program and Data Representation) github reposisotry. An online version of the website can be found here.

  • Aaron Bloomfield and William Wulf. "IBCM: The Itty Bitty Computing Machine". Proceedings of the 42nd ACM technical symposium on Computer science education (SIGCSE), March 2011, Dallas, TX.

NSF Showcase at SigCSE

Showcase booth photo

I coordinate the NSF Showcase, which is an opportunity for recent NSF grant awardees in various computer science education fields to present their research to a wider professional audience. The showcase aims to help potential grant applicants understand what is required of a successful NSF grant, while also allowing existing grants to achieve greater publicity, collaborators, and adopters. This showcase happens each year at the SigCSE conference in the spring.

A list of all the showcase participants can be found here.

Environmental Awareness via Haptic Feedback

Tactor suit

In a virtual world, force feedback is often impractical. Proper force feedback would require a significant amount of force to be applied to the user in certain situations, such as when you are pushing hard against a wall. This requires very expensive equipment, and there are significant saftey considerations.

Instead, an alternative is to use vibratory feedback. By small vibratory motors (the same used in a vibrating cell phone) along the arm and hand, tactile feedback can be presented to the user without the disadvantages of full force feedback.

Other Research

More details to come...