We investigate two related issues. In what ways can we support student inquiry in the classroom? How can innovative representational systems support learning? In the first case, we advocate collaborative designas a form of activity particularly suited for supporting student inquiry in physics. Students can easily understand and engage in activities that are framed in terms of design, and the task of design also provides a context in which idealized worlds can be considered naturally. With respect to representations for learning, we explore the use of a programming languageto mediate design and inquiry in physics. Programming provides students with an alternative means of expression that is precise and compact. Because a computer language contains certain commands and structures, and not others, it both constrains and enables. In addition, programming can easily capture causal relations and time development, features central to physics. We make our points by displaying and analyzing a teacher‐led class discussion in which a group of high school students, working together at a blackboard, designed a computer program that models frictionless Newtonian motion.