Dependent Sample Assessment Plots Using granovaGG and R

9/4/2011 Update: granovaGG is now available directly from CRAN.

Just over one year ago, I wrote about creating Dependent Sample Assessment Plots (DSAP) Using granova and R. Since then, Brian Danielak has been developing a new, ggplot2-based version of granova named granovaGG, which is almost ready for release on CRAN. This article updates my earlier granova-based version, but leaves much of the article text unchanged.
Continue reading

“It’s the model that matters!” — Eric Mazur

At the ICER 2011 keynote, Eric Mazur reported that when students see a demonstration and either do or do not engage in a discussion of the demonstration, they adjust their memory to fit their model1. In other words, they retain their prior (possibly non-cononical) mental model and mis-remember the facts of the event to fit that model, rather than updating their mental model to account for the new facts2.

In physics education, given the following modes of instruction

  • No demonstration
  • Demonstration to students
  • Student Prediction without discussion
  • Student-to-student Discussion (similar to peer instruction)

students do equally poorly on a standard instrument intended to assess students’ understanding of Newtonian mechanics.

So, if we assume that we can’t skip demonstration altogether, and if we can’t just demonstrate, and if demonstration followed by discussion all suffer this fate, then what can be done? Engage students directly.

It’s not the act of predicting or discussing a prediction that triggers changes in student mental models, but rather confrontation with confusing experiences: staking ones intellectual ground so that one knows what one believes, then being confronted by a confounding example, and finally needing to substantially defend and explain the new experience.

Confusion seems to be an essential part of the learning process, or at least the ability of students to reflect and express their confusion3. In a physics class where students were asked to report on what they were most confused about each week, those who expressed confusion did much better than students who claimed no confusion. Willingness to express confusion positively correlates with understanding4.

So, in a peer instruction environment, we teach by questioning, not by telling or showing. We facilitate students’ engagement with the material rather than their obedience while in our classroom.

There is work on students’ use of mechanistic reasoning (i.e., trying to articulate the underlying entities, entity properties, activities in which entities engage, and the mechanism by which those activities give rise the the phenomena of interest) in physics and math education by David Hammer (now at Tufts), Rosemary S. Russ5 (now at Northwestern), Andrew Elby, Ayush Gupta, and Brian Danielak that relates to this… how students express their understandings of and reasoning about mechanisms underlying physical phenomena.

In short, if we’re not changing students’ mental models, than any learning that may occur is shallow and fragile. Some modes of instruction have a better chance of engaging students and changing their models, but unfortunately not the most popular modes of instruction, currently.

  1. Mazur, E. (2010) International Computing Education Research Conference (ICER) Keynote. Providence, RI. Slides available from
  2. The keynote is also discussed by Mark Guzdial on his blog at
  3. see the Dunning–Kruger effect–Kruger_effect
  4. forthcoming from Mazur, E., et al
  5. Russ, R. S. (2005) A Framework for Recognizing Students’ Mechanistic Reasoning. A dissertation available from

Richard Feynman on Question Formulation

How we frame a question both constrains and frees our creativity1,2. The form of the question itself either encourages or precludes certain types of answers. Some forms of questions encourage shallow, quick answers while others encourage you to dig deeper into a topic.

In this video, Richard Feynman– lecturer and physicist– discusses why questions in an attempt to understand magnetic force.

CS2130.01 Mobile Web Applications Development

Location: Bennington College
Term(s): Fall 2011
Class size: TBD

We will learn how HTML5, CSS3, and JavaScript can be used to create Web (i.e., non-native) applications for smart phones. We will build several applications that demonstrate the potential to address mobile computing needs.

Prerequisite: Ideally, some experience with HTML, CSS, and/or JavaScript. For those without such experience, a short workshop (TBA) will be offered
Credits: 2
Time: M/Th 4:10 – 6pm
(This class meets during the SECOND seven weeks)

CS4150.01: Seven Languages in Seven Weeks

Location: Bennington College
Term(s): Fall 2011
Class size: 5

For students with some programming experience, we will explore the structure, syntax, and philosophy of seven different programming languages in an effort to understand the reasoning underlying each model of problem solving and the types of problems to which each is well-suited.

Prerequisite: Programming experience or permission of instructor.
Credits: 2
Time: M/Th 4:10 – 6pm
(This class meets during the FIRST seven weeks)

CS2110.01: Computing Fundamentals

Location: Bennington College
Term(s): Fall 2011
Class size: ~ 20 students/term

Students will rediscover the foundational ideas that gave rise to modern computing including Boolean logic, binary arithmatic, algorithms, Turing machines, transistor logic, stored program computing, and modern computer hardware and software architectures. Students will learn to program in at least one computer language and will explore the problem solving idioms unique to computational thinking.

CS2105.01: Making Computing Socially Relevant

Location: Bennington College
Term(s): Spring 2011
Class size: ~ 20 students/term

Educators are beginning to attend to the challenges of developing meaningful computer science education: identifying a common core of intended learning outcomes, instructional designs, and assessments. Computer scientists are beginning to attend to the challenges of making computing relevant to communities and society and educating the next generation of computing professionals.

However, existing approaches to teaching computing tend to focus on small projects, solely for the consumption of the teacher and students in the class (“toy projects”); formal methods (the “traditional” approach); game development (“projects about toys”); or examples intended to be meaningful to the digital generation (“relevant” projects, but with a lower-case “r”).
Continue reading

Reason I wish Apple wasn’t so secretive #43

When a new product comes out, it takes 6-12 months for production of accessories to ramp up, by which time you already have something that works (rather than something you’d love to have) and you’re approaching a new product release (which will change the device’s form factor). For example, iPhone 4 cases… MacBook cases… iPad cases, etc…

I love my MacAlly faux-suede Bookstand iPad case… I worried about ordering them sight unseen, but I couldn’t have been happier with mine — it has provided great protection and no fuss. It gives me access to all the ports and gives me comfort when I put the iPad into a bag.

Yet, if these two things had been out at the time, I might have gone with the combination of them, instead:

I don’t whether I would have liked them better or worse than the Bookstand, but I like the idea of them.

CS4202.01: Advanced Projects In Computing

Location: Bennington College
Term(s): Fall 2010
Class size: ~ 7 students/term

Students will engage in group critiques of both individual project program code and free & open source program code to explore idioms and best practices in several programming languages: JavaScript, Ruby/Rails, and Processing, for example.

Students will be expected to present on at least one technology and one project as well as to actively engage in providing feedback on others projects.

CS2103.01: Social Nature of Information

Location: Bennington College
Term(s): Fall 2010
Class size: ~ 7 students/term

How does information influence individuals, groups, organizations, communities, governments, and society? Why do we share information? Is information a scarce resource? Understanding what information is and how it can be created, shared, manipulated, or destroyed is increasingly critical in understanding public policy and civic engagement. This course will explore how access to or lack of access to information changes how we behave individually and collectively. We will consider policy areas such as education, health care, the environment, science research, intellectual property, and governance and analyze how information supports and detracts from these discussions.