Comfortable Classroom

When I first started teaching, I was greeted with a room without windows and bare walls. I wanted to do something to make it more personal, but I wasn’t sure how. I’m not a bulletin board designer type. I did have several posters from The Physics Teacher and found others stored in the room. I had them laminated and plastered the walls with posters.

The room was okay. Some students found the posters interesting, but the room was nothing special.

Over the past few years, my colleague and I have transformed our current room to a comfortable, student-personalized space. There are very few posters but lots of student-generated projects and art work.

Some of my favorite pieces are a former student’s AP Studio Art portfolio which was focused on physics.

AP Studio Art Project

The two pieces on the left are also part of her portfolio. We also highlight some bridges and towers that students have built. Sometimes inspiration strikes and a water bottle gets glued to the wall.

studnet projects

We also frame and hang photos from students who have entered the AAPT High School Photo Contest.

ferrofluid

We display photos from the clubs that we mentor, like Physics Club and FIRST Robotics, to inspire students to participate.

high-altitutde ballooning

The whole ceiling is covered with mobile projects (forces and torques in equilibrium). Almost every student leaves their project until next year’s class makes their own.

100 0935

My least favorite part of the room is now the individual desks. The plan is to get hand-me-down tables and chairs from an adjoining physics room and be able to arrange students in groups of four next year!

Computational Modeling with VPython

The second session I led at the DuPage County Science Institute was on Computational Modeling with VPython.

I tried to explain what computational modeling is and how it is more than just programming. I then encouraged teachers to use computational modeling in their classroom and shared why I think it improves student learning.

We used VPython and the physutils package.

We started with John Burk’s 1-dMotionSimulation.py example. I then asked each teacher to modify the model in some way and observe the results.

I then presented [several starting examples](https://github.com/gcschmit/vpython-physics ) that I created for my AP Physics B class and shared how students built upon these examples to solve everything from homework problems to their projectile motion lab practicum.

I left lots of time for teachers to explore these starting examples and help each other and get help from me. I saw teachers unfamiliar with Python create some pretty cool models in very little time.

Here are the slides I used to introduce computational modeling:

Computational Modeling with VPython by

Here are the links to the resources that I displayed at the end of the session:

LoggerPro Graphing Tutorial

I lead a session at this year’s DuPage County Science Institute on LoggerPro for graphing (a.k.a. because life is too short to struggle with Excel). The intended audience were teachers not familiar with LoggerPro whose students would benefit from using it for graphical analysis.

I started with the basics: specifying names, short name, and units for the dependent and independent variables; titling the graph; setting the graph options. I showed how linear the fit uses the specified variables and units and how to specify measurement uncertainty and see its affect with error bars.

We then focused on using calculated columns to perform linearization manually and then using LoggerPro’s curve fit feature.

Near the end of the session, I demonstrated some of the more advanced graphing features of LoggerPro with examples from this year:

  • multiple data sets on the same axis
  • multiple y axes
  • examine and tangent tools
  • grouped graphs (position vs. time and velocity vs. time)
  • histograms

Here is the tutorial handout I provided:

Logger Pro Graphing Tutorial by

Greatest Benefit of Canvas

Last spring, I was part of our district’s pilot for an LMS. I became a fan of Canvas and was very pleased when we selected it as our district’s LMS.

I absolutely love Canvas’ ease of use. I use all the typical features like announcements, discussions, and file storage. More unique features like modules help my students find everything they need for each unit and pages allow me to easily share enrichment materials.

However, looking back at this first full semester with Canvas, I was surprised which feature had the greatest impact on student learning. It wasn’t any of the above. It was SpeedGrader. Specifically, the ease with which SpeedGrader enables me to provide rich feedback to students on their assignments. Sure, I provided feedback before Canvas by writing comments on lab reports, but it was time consuming (I write much slower than I type) and not always legible (my handwriting is poor). I always had more feedback to provide than what I took the time to write. SpeedGrader has changed all of this.

Here’s my workflow for AP Physics B. Students create an ePortfolio in Canvas that contains all of the labs for which they perform analysis and are assessed. I create an assignment in Canvas for each lab and they submit a link to their ePortfolio. (The ePortfolio part isn’t critical, you could create assignments and have students submit their work in any number of ways.) In SpeedGrader, I can view their ePortfolio in one pane while typing feedback in another. This feedback is what has had the greatest impact on student learning.

SpeedGrader

I don’t score labs by subtracting a bunch of points, I read them. For my AP class, they earn a score of 1-5 which is reported in the online grade book, but doesn’t show up anywhere in Canvas. In Canvas, I just mark the assignment as complete or incomplete. In Canvas, the focus is on learning; not grades. What students do get is my feedback which often starts a discussion about their lab. My feedback is usually questions of the type I would ask of them in person. Questions that help them make connections between different ideas, clarify a misunderstanding, or illustrate an inconsistency in their analysis. In addition, I can easily point out sections that are incomplete. Many students have their notifications configured so that they receive an email when I submit feedback and some respond back almost immediately.

The integrated discussions in SpeedGrader is a perfect example of the role that technology should play in education. Enhancing a sound educational practice (rich feedback and discussion) by making it more efficient and easier for all involved.

Four of my five classes submit all of their assignments in Canvas. Guess what that fifth class will start doing this semester?

Capstones

My AP Physics B class developed capstones as their final rather than a traditional exam. I give them tons of tests to help them prepare for the AP exam; so, I didn’t want to give them a traditional summative final for the fall semester. I wanted them to synthesize multiple concepts, have a choice in the topic they pursue, and present it in an engaging and creative manner.

I had remembered reading about John Burk’s capstones and modeled mine after his. While I have done similar end-of-semester projects before, these were by far the most successful. Reflecting on the capstones, I think a couple of factors helped my students be so successful.

The first is that I provided several exemplars as sources of inspiration. I stressed that I didn’t want a traditional lab report or a PowerPoint presentation. I wanted something that other students would want to read or watch. I pointed students to the following YouTube channels and blogs:

Based on our current unit, I frequently share links to these folks; so, most students were familiar with their style. Since I wanted students to spend the final exam period engaged in each other’s capstones and I would be spending my winter break scoring these capstones, I wanted them to be as interesting as possible.

The second factor that contributed to my students’ success is the requirement that students submit an initial idea for their capstone and then are provided considerable time in class for work and feedback from me. I spent an entire two days moving from student to student and sharing feedback on their capstone. Students had two additional days to work in class, solicit additional feedback, and use lab equipment. This wasn’t enough feedback for every student. A few really needed another round of review and feedback as their capstones missed the mark. While they could have solicited this additional input on their own, their final capstone would have been better if I could have shared another round of feedback.

The third factor that contributed to success is that I provided access to a wide range of technology, but I didn’t mandate that students use any particular technology. This is how educational technology should be integrated into the classroom, it is a tool to enhance learning where appropriate and not a means to an end unto itself. Students chose to use a high-speed video camera, Tracker, Logger Pro, iPads, iPad document camera stand, Educreations app, Scribd, video screen capture, VPython, LabPro and sensors, Vimeo video hosting for embedding, and Canvas ePortfolios.

There were so many fantastic capstones. I selected several to share that represent the variety of engaging presentations:

Thanks to John Burk for planting the capstone seed in my mind and Derek, Henry, Rhett, and Randall for providing amazing and engaging exemplars for my students to model!

In case you’re interested, here is the rubric. It isn’t perfect, but it worked okay:

Capstone Rubric

Pedagogue Padawan’s Annual Report from WordPress

The WordPress code monkeys put together a cool 2012 annual report for Pedagogue Padawan:

4,329 films were submitted to the 2012 Cannes Film Festival. This blog had 13,000 views in 2012. If each view were a film, this blog would power 3 Film Festivals In 2012, there were 22 new posts, growing the total archive of this blog to 73 posts. The busiest day of the year was January 5th with 160 views. The most popular post that day was Holometer.

The full report is available.

Differentiation and Choice in Programming Activities

I just finished teaching my first semester of AP Computer Science. I had no concerns with the content (I have a BS and MS in Computer Engineering, worked as a software engineer for a decade, and can recite Stroustrup’s Design and Evolution of C++). But, as I shared with students on the first day of class, I have experience teaching college graduates advanced software engineering techniques, not high school students how to understand programming. What I was lacking (and continue to lack) is pedagogical content knowledge (PCK). I hope to make it to an AP conference next summer or another workshop, but many of them seem to target the very important audience of “I just found out I’m teaching AP Computer Science and I’ve never programmed before.” What I’m looking for is a Modeling Instruction workshop for Computer Science. If you have any suggestions for workshops that focus specifically on PCK, please let me know. Despite my lack of PCK, I did stumble upon a couple of effective techniques that I wanted to share.

Differentiation

I have a very diverse collection of students in my AP Computer Science classes. I have students struggling in algebra 2 sitting next to students who are taking multi-variable calculus. I have students who debug race conditions on our FIRST Robotics programming team and students who are still struggling to distinguish types from variables. I welcome this diversity. I don’t think there should be a math prerequisite. Managing this diversity wasn’t nearly as challenging as I expected. In fact, I find it easier to differentiate in my computer science classes than I do in my physics classes. I do this is a couple of ways.

First, we spend most of our time in class programming. If a student isn’t working on their own program, they are most likely helping someone else with their program. Most of the programming activities that we do are learning activities and, therefore, not graded. I welcome and encourage their collaborative efforts. That’s how software is created in the real world. As a result, the students who need a lot of extra assistance get significant one-on-one time with me and students who need a little assistance get help from other students. This works quite well.

Second, I (and sometimes the students) create challenges for each programming lab. There is a certain base level of functionality everyone will achieve, but that will take some students two days and others twenty minutes. While the students that finish in twenty minutes can help others, I want to provide them a challenge that makes them stretch. I’ll illustrate with a couple of examples.

One activity was to write a palindrome tester. The challenge was to only examine letters and ignore punctuation. Students who met the challenge found some really long palindromes to test.

Another assignment was to use arrays to implement a stack of integers and then use that stack to implement a base-ten integer to binary converter. I defined a couple of challenges: implement a peek method and optimize memory usage by shrinking the array when it is way too big. However, the most popular challenge was found by a couple of students; they extended the program to support converting decimals from base-ten to base-two!

Choice

When practicing looping structures, I provided three different programming activities. One was mathematical: the program calculated multiples of a specified number and the challenge was to write another program that calculated square roots using Newton’s method. The second was printing based: the program printed a triangle of asterisks and the challenge was to print a diamond instead. The third was graphical: the program printed various sized boxes and the challenge was to make the graphics look like a Mondrian painting.

While providing students these challenges is good and helps keep all of the students challenged and engaged, the choice of how to apply looping structures in different contexts seems even more powerful and important. I’ve been reading a bit about the disproportionate representation of women and minority groups in computer science classes and these types of choices seem to align with some of the suggestions of how to interest everyone in computer science.

I spent the past couple of days skimming Guzdial and Ericson’s Introduction to Computing & Programming: A Multimedia Approach. Their approach is fantastic; I’m going to start next semester by applying our new knowledge of arrays to image and sound processing.

Looking forward to next year, I plan to interweave various application strands (multimedia, computational modeling, numerical methods, graphics, databases) as we learn the various concepts. I hope to expose students a bit to all these strands while permitting them to spend additional time and effort on those that appeal most to them. I may field test some of these ideas next semester with capstone projects if time permits.