Scripting in the Dean’s office

Today I spent a good part of my day solving a couple of problems with a couple of colleagues. It was a pretty typical day in the Dean’s office (I’ve been the Associate Dean for undergraduate programs in the College of Liberal Arts for a couple years now) in that there were logistical problems to be solved that I was able to help with. What was interesting was that for both problems I leveraged my experience in scripting algorithms to accomplish tough tasks. I thought it might be fun to document a little of what I did to help with arguments about whether learning scripting is a useful thing for folks to do. Certainly a lot of the programming that I do is for particular physics projects, but it’s been interesting how often my skills have come in handy in the Dean’s office.

Assigning New Student Mentors to FYSEMS

One of the hats I wear is that I’m the director of the First Year SEMinar program (FYSEM). One of the cool things we do with that program is to build a student success triangle for new students consisting of a FYSEM instructor, a Campus Colleague (a staff member at the institution), and a New Student Mentor (NSM). We find that triangle works really well, and right now we’re right in the midst of assigning NSMs to the FYSEMs scheduled for this fall.

About half the FYSEM instructors identify NSMs that they want to work with. For the remainder of the NSMs, they give their top three preferences and I write an algorithm to pair them up, trying to make them all collectively as happy as I can, based on their preferences.

Basically I use the approach I lay out in these two posts. I randomly assign the NSMs to the available FYSEMs and look to see how happy everyone is. I generate an entire generation of such assignments and determine which ones are the happiest. From those I choose a few and mutate them by making a few switches (randomly). This produces the next generation and I repeat it.

What’s interesting is that I’ve done this for three cycles now and each time I have to make small tweaks to the cost/fitness calculation. This year we had one extra NSM and I had to determine which FYSEM could get two to maximize the happiness of everyone. I didn’t want to re-build the whole system (which currently assumes the number of NSMs and FYSEMs is the same) but realized instead that I could just duplicate one of the FYSEMs and then run the algorithm. Of course that forces that FYSEM to be the one that gets the spare, but the whole thing runs fast enough that I just repeated that with every possible FYSEM to be the extra one and at the end looked for the happiest situation. It worked great!

Fixing hyperlinks in a Google Doc

We’ve got an important visit coming to campus this weekend by a team of observers. They’ve been given a bunch of linked documents to get them prepared for their visit, but we hit a technical snag. It seems the documents we sent occasionally have broken links. They’re not really broken, they just seem to lose the folder structure that’s built in. Regardless, we wanted to make sure that when they were here they for sure had the access they need. I was talking with a colleague in the department and we wondered about using a structured Google Drive folder system as a backup. I thought it might work, but my colleague pointed out that all of the links came in with the wrong structure when we converted it all to Google Docs.

I said I could probably help, but I wanted to make sure that there was a clear path to doing it. He said that all the links end with the proper file name, and that those files were all in a different Drive folder. I said I could probably write a script to get it done, but I wasn’t sure how long it would take. I predicted two hours of learning to fix the first link and then two minutes to fix the other 246 links. He pointed out that he figured it would be 2-4 hours of his labor to do it, so it didn’t seem to be the obvious solution. However, I had the time and he wasn’t sure he could do it today, so off I went.

Long story short, I think it took me only a total of an hour to get the script working, and then it really was only two minutes to fix them all. Pretty cool!

First I just googled how to find links in a Google Doc and found this super helpful Stack Overflow post. It was frustrating to see how hard finding the links were, but I really loved two things about it: 1) It just hunkers down and deals with the fact that every character that’s part of a hyperlink has a connected url. That’s really a pain, but the code clearly just brute forces its way through until it gets to a character that doesn’t have a connected url. It only collects the url once, then spends the rest of its time hunting for the end. 2) It uses a very cool recursive approach, scraping any links it finds and, if it stumbles on a child of text it just sends that child through the very same function.

At first I just wanted to make sure that it could find the links I was looking for (ones that looked like “http://Evidence/…”). That worked pretty well, so I tried to figure out how to do the replacement. First I had to grab the text after the slash and decodeURI it (that’s a javascript function that mostly just turned %20 into a space). Then I had to find the Google Drive url for the file with that name. I’ve learned from the past not to do that sort of hunting around Google Drive over and over again because it’s really kind of slow. So instead I pulled in all the evidence files and built a javascript object with keys given by the file name and values given by the url. Then I could just get the new correct url by doing efiles[filename]. Very cool.

So I made a loop that went through each found link, found the correct url, and then updated the text in the original Google Doc. What was super cool about the Stack Overflow code was that the elements I was dealing with (searching, finding children, doing replacements) were live in the sense that if you made a change, it actually changed them in the original doc. Very cool.

When I first ran it I was super happy and I called another colleague to double check that all the new links were right. However, during that phone call I noted that a bunch hadn’t been fixed. All the ones that were part of bullet points were untouched! So I spent a half hour trying to understand what was different about them. Unfortunately I could have saved all that time if I’d just read the comments under the Stack Overflow code. It turns out that code assumes that all hyperlinks have unlinked characters at the end. The bullet point ones didn’t have that! A simple adjustment to one of the if/then arguments fixed it and I was done!


So, a fun day. I got to solve two problems that needed solving and I got to do some fun coding, using two very different programming languages (Mathematica and javascript). I would argue that my particular skill set is an excellent one to add to a Dean’s office, as these sorts of problems show up a lot. Maybe I’ll try to document more of them here just to have a record of them. Off the top of my head, here’s some other projects I’ve used these skills on:

  • Student evaluation comparisons
  • Finding student paths through our curriculum
  • A neural network trying to understand what makes our students successful
  • Sending individualized Dean’s List notifications
  • Sending emails to students on our Early Alerts list and connecting them to proper resources
  • Collecting applications for general education requirements and assigning them to random members of the Undergraduate Curriculum Committee
  • Helping folks transition off of committees by changing the owner on thousands of documents
  • Making graphs of the enrollment trends for courses

Your thoughts?

Here are some starters for you:

  • I really like how you paired up the NSMs. What I liked the most was . . .
  • I don’t understand why you don’t just randomly assign the NSMs. Who cares about their preferences?
  • Can you tell me more about the triangle, especially the Campus Colleagues?
  • In your 7 year old post you talk about Nobel Prize work on the pairing problem and yet it seems you still haven’t read and applied their work. Jerk.
  • Why don’t you just print out all the evidence docs and put them in an awesome binder for the visitors?
  • Are you saying there should be some technical requirements to be an Associate Dean?
  • Why don’t you just write Ass Dean?
  • I have a pairing problem. Can you write an algorithm for me? It would have to be in python.
  • Google wants everyone to just use search to find everything. Why didn’t you just strip the hyperlinks and tell people to just search for any evidence they need?
  • Let me get this straight: Half this post is just riding on the coat tails of someone who wrote a Stack Overflow answer. How can you call yourself a programmer?
Posted in dean, programming, technology | 6 Comments

Doppler Drum Corps

One of my favorite oral exam questions to give students in introductory physics classes is to ask them whether marching bands should worry about tuning because of the Doppler Effect (lots of details below but the short version: if there’s relative motion between the sound source and listener, the two disagree about what pitch they hear). It often leads to a great conversation about who’s moving and how and who might hear any tuning problems. Sometimes I get a confident “no” from a student and I know immediately that they’ve got some marching band experience. Mostly they talk about how they’ve never noticed it so it must not be a problem. It’s fun to do some quick calculations to see how fast you have to walk for this to be a problem.

Enter my kid’s fun adventure these past few months. They’ve committed themselves to taking the next step from their high school marching band experience (when they won the state championship last summer!) and to set a goal to get into one of the elite Drum Corps International programs. Long story short: They made it! They tried out for a few corps to get a sense of their culture and are super excited to play with Phantom Regiment this summer.

So, the question we’ve been talking about lately is whether marching corps at the elite level should worry about the Doppler effect. They told me a really interesting detail about the training they go through: in order to optimize the tuning for various chords, some corps ask their members to perfect the process of being able to raise or lower their pitch by eight cents. What are cents? If you consider two consecutive keys on a piano, break up the pitch difference between them into 100 pieces. Each of those is a cent. Therefore eight cents is effectively eight percent of the way to the next note on the piano. When they told me about that I started to wonder if the Doppler shifts you’d get in normal Corps routines might be on par with those eight cents.

Structure of this post (for those that want to skip the derivations 🙂

  • Doppler effect discussion including a derivation for the Doppler shift at arbitrary orientations of the source and listener (though always with a stationary listener)
  • Pitch/frequency discussion including the Just Noticeable Difference
  • Issues around simulating the Doppler shift for brass instruments
  • Simulations of brass instruments doing simple maneuvers on the field and how that affects their perceived sound
  • Discussion of the ramifications (if any) for Drum Corps

Doppler Effect

For everything I’ll be talking about in this section, the listener will be stationary and only the source will be moving. There are two reasons for this. First, it’s what happens in Drum Corps. The only listeners who are moving are the players themselves and they’re not the target audience. Second, this derivation is much easier without the listener moving. See if you can spot why.

Below is a sketch of the generic situation. The source is L units “up” and x units to the side of the listener. The source is moving at speed v straight down. Note that this represents all possible orientations (see below for a proof of that).

Original orientation of the source and listener

In order to figure out the frequency that the listener hears, we’ll focus on the period of time between when the first and second wavefronts hit. The first is launched when the two are in the orientation shown above. The second is launched after the source moves down for one period as measured by the source as shown below.

orientation of the source and listener when the second wavefront is launched

The time it takes the first wavefront to get to the listener is given by the distance it has to travel divided by the speed it moves at, which is the speed of sound that we’ll label “c”.


The time it takes for the second wavefront to get to the listener is the sum of the time that the source waits to launch it (also known as the period as determined by the source) and the time it takes to travel from that location to the listener:


where T_1 is the period according to the source. The difference in those times is the period that the listener would measure:


Typically we calculate the Doppler shift as the ratio of listener frequency to source frequency:


This is ugly! We were hoping for some expression that would be independent of either frequency, since certainly that’s how the Doppler effect is typically derived. The way we get around that is to take the limit when T_1\rightarrow 0. Why do that? If we expect a common ratio to work it should work for all frequencies, and when the period goes to zero then the source has barely moved. Since most marchers move a lot slower than the speed of sound this seems to be a reasonable thing. Taking that limit forces you to go to the Hospital. Sorry, I meant to say L’Hopital. The upshot is:


By the way, you get the same result if you take only the first term of a Taylor expansion of the full expression above. Also note that if x=0 you get the familiar:


While this seems like quite a constrained situation, it turns out that any (stationary listener) scenario can be described with an appropriate L and x. The reason is that there are three physical points of interest: 1) the original location of the source, 2) the location of the listener, and 3) the location of the source when it launches the second wavefront. Those three points will always be on a plane together and so you can reorient them so that (3) is directly below (1) and then you can measure L and x from that. If you let \hat{v} represent the unit vector from 1 to 2 and if you label the three points \vec{r}_i you get the following for L and x.

L=\left(\vec{r}_3-\vec{r}_1\right)\cdot \hat{v}


To get a sense of how the Doppler shift changes as x goes away from zero (which is how it’s usually derived in introductory physics), here’s a plot of the perceived frequency when the source frequency is 440 Hz (common tuning note) with L=10 meters and x ranges from zero to 10 meters with the source moving at 1% of the speed of sound:

Doppler shift for 1% speed of sound with a transverse position given by x and a longitudinal distance of 10 meters

Another way of looking at is is to plot what you hear as a sound sources approaches and then passes you but misses you by, say 1 meter. This time I’ve set the speed to be 55mph.

Hearing pitch changes

I know, I know, you don’t care about all that derivation. You just want to know if people marching around causes enough of a problem for elite drum corps. Ok, fine, but now we have to talk about how much pitch shifting you, or more likely the DCI judges, can handle before things are either noticeable or bad (or perhaps those two are the same). Mathematically as soon as a pure tone gets mixed with one even one cent off you’ll hear beats, which is often the hallmark of things being out of tune, but even then you’d have to know if the two tones are being played long enough for you to even notice (one cent off at 440 Hz is 440.25 so the beat period would be 4 seconds). Secondly, there aren’t any pure tones in Drum Corps (no flutes allowed) so there’s always some things that aren’t perfectly in tune.

That takes me to another favorite thing to teach: You can’t possibly get all 12 notes in an octave (7 white keys and 5 black keys on the piano) to be in tune all at once. Speaking an an amateur piano tuner, that really sucks! What’s going on here? Western music has coalesced around 12-tone scales for centuries and now you’re learning that it’s an impossible task. Yep, them’s the breaks. The way I usually teach it is that if you declare a frequency ratio of 3 to 2 as pleasant sounding (it’s what we call a perfect 5th in music, so C and G together or, for us brass-leaning folks, Bflat and F), then you should be able to go all the way around the circle of fifths by raising the frequency by a factor of 1.5 (3 to 2 remember) and eventually come back to your original note, though of course several octaves higher. Ok, let’s do it. We’ll start at A 440 and then keep multiplying by 1.5 12 times to all the way around the circle of fifths and back to an A. The order is A, E, B, G flat, D flat, A flat, E flat, B flat, F, C, G, D, A. What do you get? 440\times 1.5^{12}=57088.38. Ok, big deal. But how many octaves up is that? 57088.38=440*2^n\rightarrow n=\log(57088.38/440)/\log(2)=7.02. Uh oh, that’s not a integer! See the problem? If it was a perfect 7 octaves we’d be in business, but it’s not.

So how does the music industry deal with that mistake? Well, there’s lots of ways. Each is called a “temperament” and there’s been lots of shifts to which one is dominant over the centuries. Some, like the “Pythagorean Temperament” sounds great for 5 or 6 of the notes but really can sound like crap for the rarely used accidentals in the key of the song. If you’re going to just use those 5 or 6, that’s the temperament for you. However, given how most instruments these days can play in any key (one key’s accidental is another key’s super important 5th) and given how composers often make use of key changes, the “equal Temperament” is basically the dominant player these days. Have a electronic tuner in your pocket right now? It uses the equal temperament. “Equal” sounds great, but what it really means is that only the As are perfect and the problem described above is spread around equally to all the other notes. That’s right, if you use a digital tuner, only your As are perfect! Don’t believe me? Well the E on a digital tuner is set to 659.255 Hz. That’s not the “perfect” 440×1.5=660 you were expecting, is it? The other temperaments spread that pain in different ways, some concentrating it on a single interval that people have called the “wolf fifth” because it sounds so horrible if you use it.

Ok, long tangent done, back to what “sounds bad” when it comes to pitch problems. There’s a few ways to describe this. One is the beats described above. If you’re tuning with a buddy who’s playing the same instrument, you can hear that you’re close to being in tune when you hear your combined sound to be throbbing (loud, soft, loud etc). That rate at which the beats happen tells you the difference in your frequencies, so if you can make that rate be zero, you’re in tune. That works best when you’re just a few Hertz off from each other, otherwise the beating is so fast you can’t really hear it.

Another way is to listen to one instrument and then another (so they’re not playing together) and determine who is sharper (or flatter) than the other. Humans can do this, but only down to a frequency separation of about 8 cents (remember those from above?). That’s what’s known as a Just Noticeable Difference. In other words, if two instruments are only off by 4 cents, say, you can’t tell them apart if they play one at a time, but you can hear the beats if they play together.

Simulating Doppler Shifted Brass

I wanted to be able to not just calculate how much the Doppler shift affects Drum Corps but also try to simulate the sounds a little. My first try was to see how to make a midi sound file be off by a little. Unfortunately Mathematica’s “SoundNote” function that can access midi samples only lets you play pitches on the equal temperament (but see below to see how I got around that). So my second try was to simulate a single instrument (a tuba, since that’s what my kid plays) with just a small collection of pure tones. I used the amplitudes and frequencies from this page to produce this sound of a single tuba:

Simulated tuba with just a small number of pure tones

The nice thing about just a small number of pure tones is that it’s easy, then, to apply the relevant Doppler shift. It definitely sounds like a low brass instrument, but I was hoping for better.

Luckily there’s a somewhat new function in Mathematica that gives me access to the raw time data for the midi samples. Using that, I can simulate the Doppler effect by resampling that time series and then playing it back at the original sample rate. I do that by interpolating the original data so that I can make an estimate of the pressure wave’s value in between the data points that were actually collected. Here’s what an unshifted low B flat from a tuba sounds like from the midi collection:

I guess it sounds a little better. Ok, so now I have all the tools to make some simulations.

Drum Corps simulations

Here’s the situation I’m going to simulate:

Phantom Regiment from the year before they won the championship.

Instead of having them play a series of notes, I’ll just simulate them playing a simple B-flat major chord with the contras on the low B-flat, the baritones on the D, the mellowphones (think marching French horns) on the F, and the trumpets on the high B-flat. I’m only using 12 players (3 each of the various horns all shuffled together spanning 50 yards). Here’s what the simulation sounds like when they’re standing still 10 meters away:

hornline playing B-flat chord 10 meters away standing still

Here’s them 10 meters away but jazz running towards us (they cover 5 yards every 6 steps at 160 beats per minute so 6 to 5 160).

Hornline 10 meters away coming towards us at 6 to 5 160

Here’s the same but 1 meter away (there’s a big sound difference here because the ones in the middle dominate the sound).

Same hornline only 1 meter away

And here’s the prior three all strung together one after another:

Previous 3 all strung together

Finally, in case none of those sound bad to you, here’s the 10 meters away version with them running at three times the speed.

10 meters away but going 3x as fast just to really show the distortion

To get a sense of how many cents sharp the players are in these simulations, here is a plot of the cents for everyone, first at 10 meters:

Cents for the hornline players when they’re 10 meters away

and then 1 m away:

cents for the hornline when they’re 1 meter away

What’s interesting about these two is that if there had been a player in the middle, their cents would have been the same for both, namely 10.3. But the biggest change as the horn line gets closer is that the ones towards the end have very small shifts.

Drum Corps Ramifications

So, can you hear the difference? Certainly the corps think that somewhere around 8 cents is worth worrying about, as my kid has been asked to try to reliably make that sort of change. But if they’re marching around, the Doppler effect brings about that level of pitch shift into play, so if you don’t correct for it, all the other things you’re doing at that level are washing out.

Of course, a lot of the big hits you think of in drum corps happen when they’re standing still. Certainly the youtube traffic seems to head toward clips like this one of them just warming up standing still:

(I love that video. I get goose bumps every time I listen to it).

So, if on the order of 8 cents is meaningful to you, it might be worth it to look at your drill (that’s their marching diagram/orders) and determine if there are times when making a light adjustment might make sense. I’m happy to help (but likely only for Phantom 🙂

What do you think?

  • I really liked this, especially the part where you . . . My question is . . .
  • I think this is dumb, especially the part where you . . . My snarky comment is . . .
  • I know for a fact that some judges move around while judging and so you’re a liar when you say that the target audience doesn’t move.
  • Why do you say any three points can share a plane? I’m sure there’s some crazy non-Euclidean geometry where that’s not true but I’m too furious with you right now to prove it.
  • Flutes don’t produce a single pure tone, you anti-woodwind-ite.
  • My Just Noticeable Difference for quality blog posts is telling me that this sucks.
  • I thought you said your kid got into Phantom Regiment. Why are you showing a Carolina Crown video?
  • Why didn’t you talk about the cents difference it takes to go from equal tuning to perfect 5:4 and 3:2 tuning which is surely what these corps do?
  • Once again you’ve forsaken Python to do all this in Mathematica. Loser.
Posted in fun, general physics, mathematica, parenting, physics | 4 Comments

Learning outcomes for research skills

tl:dr: I’d love some feedback on the SEEC approach with students:

  • S: Students should see that all ideas are embedded in a complex web of ideas
  • E: Students should explore that web when dealing with an idea
  • E: Students should evaluate the connections to the idea, looking at issues like authority, history, etc.
  • C: Students should contribute to the web when dealing with ideas.

One of the hats I wear these days is “Director of the First Year Seminar” at my school. This year we’ve been looking at nearly every aspect of our undergraduate curriculum with an eye toward student success and retention. The first year seminar (FYSEM) program is a big piece of that, at least from my perspective. Last year we streamlined the learning outcomes for the program from 17 down to 3. If you were to look at the list of the 17 you’d likely nod your head to them, but they were unwieldy from a training perspective, especially for new faculty to the program. So now we’re at three and it’s been fun to work with the faculty and staff to really think about them all from a student success and retention framework.

In this post I’d like to talk about what we’ve been up to for the learning outcome that’s about students doing a scholarly or artistic research project. We did a lot around it this past fall, but I’m hoping to get some feedback about a new paradigm we’ve come up with to place fysem in the larger picture of the entire undergraduate curriculum for this issue. We call it SEEC (see the acronym spelled out at the top of the post).


We want our students to understand that all ideas are connected to other ideas. Even thoughts off the top of our heads are in the complex web of ideas that exist. We want students to realize that research isn’t just formal research projects but rather that it’s all a matter of degrees when swimming in the sea of connections around an idea.

Critical thinking is key here. One of my colleagues asks her students in class if they’ve engaged in critical thinking that day. Sometimes they shrug but she reminds them that just getting dressed in the morning involves critical thinking. They had to determine how their clothes would interplay with the weather, the people they’d see, and their laundry schedule. While admittedly they weren’t overly explicit about it, they were drawing and exploring many connections around that single task. Similarly we want students to see that every idea has connections to other ideas in myriads of ways.

As students dive into a field of study, we want them to develop tools that help them see whole new layers of connections. Lots more of that below.


Once students start to see and seek out the connections, we want them to explore them. What types of connections exist? What tools or skills do you need to even see the various types? Are any contradictory? Are any tangential? Are any connected to whole other ways of thinking that you’ve studied?

As they continue to pursue a field of study, the students not only see whole new levels of connections, but learn how to examine the connections. In physics I think about the various models we want students to think about: the momentum principle, conservation theorems, wave/particle duality. I want my students to have those approaches handy when they explore a new idea in their physical lives.

At the FYSEM level we want students to be able to use library research tools to explore connections and to hone skills that their future field of study will lean on and further refine.


Seeing connections leads quickly to evaluating those connections. Trimming them to refine an argument. Ranking them on scales including authority, history, appropriateness, meta steps, etc. Seeing and exploring can get students lost in the forest, collecting trees instead of critically evaluating the idea. Evaluation tools can help students craft critical arguments, especially from different viewpoints.

At the FYSEM level this is strongly connected to source evaluation that the librarians help our students with. We want, for example, our students’ annotated bibliographies to be deep, rich, and most of all useful. Evaluating sources and making clear their connection to an idea that a student is researching is vital in not getting lost in the forest.

As students get deeper into their field of study they will see and explore whole new layers of connections for an idea. They need to be able to evaluate those connections using tools developed in their field. In physics this could be connected to subtleties of energy use/flow/conservation, for example. As students think about more ways that energy can be stored, they get a deeper understanding about things like inelastic collisions, for example.


This one is vital to our plan. We want students to add to the web of connections around an idea. Even something off the top of their head should be placed in the web and appropriately connected. Students should be able to draw new connections, question existing connections, contribute whole new nodes to the web.

Another hat I wear in the dean’s office is speechifying for prospective students and parents. I’ve been heard many times talking about how at our institution we want students to be practitioners while they’re still with us. We don’t want to simply give them tools/knowledge in the hopes that they’ll be practitioners after they graduate, rather we want them to put those things into practice with us. This often gets a decent reaction from parents, but recently we’ve been having conversations internally about whether that’s an appropriate goal. While I’m ok calling my students physicists while they’re working with me, my psychology colleagues struggle with calling their students psychologists, both from the perspective of societal titles and from the idea that perhaps undergraduate majors don’t yet have the skills/tools/knowledge to own that title. I think this notion of students “contributing” to the web of ideas is likely more palatable to everyone.

At the FYSEM level this would likely get the least attention, as S, E, and E would get the primary work. However, our hope is that work will help our students realize that everything they’ve been seeing, exploring, and evaluating is produced by human thought and interaction and that they are expected to do the same.

The students’ field of study is where this will happen, particularly at the capstone level. Armed with the tools they need to interrogate the web of connections around ideas, they’ll be able to produce new ideas that are carefully embedded in the web. They’ll do collaborative research with my faculty colleagues, honoring the great meme: “if we knew what we were doing, they wouldn’t call it research.”

So, what do you think? Can you help me refine this? Here are some starter comments and questions for you:

  • How do you pronounce “SEEC?”
  • I like this, but I think it needs more. Here’s a new letter for you . . .
  • I don’t like this because it has too much, here’s one fewer letter for you . . .
  • Why do you think FYSEM won’t concentrate on “Contribute?” It seems like a great place to do it. Here’s a few ideas how . . .
  • Why do you use the big first letter option in WordPress? I think it looks dumb.
  • This is exactly what my school does, thief. We call it _____, though, loser.
  • I teach _____ and this would work great for grounding the work that my students do. Here are some ways I think about that . . .
  • I teach _____ and this does not at all reflect what my students do. Please don’t push this on us!
  • What school do you teach at? I want to encourage my kid to go there.
  • What school do you teach at? I want to discourage my kid from even thinking about going there.
  • They let you direct the FYSEM program? That’s awesome, I think you bring the following great qualities to that . . .
  • They asked you to direct the FYSEM program? What were they thinking?!
  • I never see you wearing hats, stop lying.
Posted in dean, teaching | 4 Comments

Stable, asymmetric dice

A while ago I set about trying to find asymmetric dice that might be fair. I’ve put a lot more work into it, but mostly because there’s been a lot of frustrating interesting tangents. Here’s the main thrust of the project:

  • Original plan: see if I can use evolutional programming to find an asymmetric die that rolls fairly
    • Asymmetric is easiest to do by avoiding the platonic solids (the dice D&D folks use, for example). A lot of what I’ve been doing has been with a 46-sided die (not sure how I landed there, but it’s 25 vertices, which is a fun number).
    • The idea was to form random ones and evolve to a shape where the distribution of sides was flat enough
  • Updated plan (because it’ll run a lot faster): Find an asymmetric unfair die but find contiguous regions on the die that all collectively have the same probability of landing. For example, on the 46-sided die, find, say, 7 collections of sides that all have the same total probability. Then, if you printed it, you could use seven numbers, most (all?) of which would repeat a few times. This came from a great question I got at a local AAPT meeting from my awesome colleague, Bruce Bolon.
  • In the last post you can see that I’ve basically worked out how to roll a 3D die. I can also run on a server at work so that I can roll it thousands of times to get a decent histogram of the probabilities for each side.

Here are a few examples of 7 contiguous regions on a 46 sided die:contiguousregionsdie

As you can see in the previous post, I figured out how to roll 3D dice. I figured I could just roll a die a bunch of times, find the histogram of rolls, and be off and running.

But then I hit a problem (the first of many!). I needed to make sure I randomized the initial conditions of the roll. I figured I could just randomly orient the die before the roll begins. However, I started to notice odd histograms. I double checked things by rolling perfect platonic solids. Here’s the histogram of the probabilities of landing on each side of an 8-sided die where I randomized the die by picking a random axis and a random angle to rotate around that axis:

preorientation histogram using random axis and rotation

Oops! See the problem? Wow it took me a while to figure that out, but I finally did, thanks to the discussion on page 108 of this link. It turns out that picking a random axis and rotating around it randomly quite often leaves the original north pole in the northern hemisphere. Ok, so then I just did random Euler rotations:octahedron histogram with fixed euler.png

This time showing the expected even line and the standard deviations based on the number of rolls. Ok, cooking with fire, right? Nope.

So I moved onto larger dice and thought I’d be ready to go. But I discovered that I would often get sides that would never roll. I wondered what was going on and found out that a randomly generated die often produced sides that were unstable. First let me explain how I produce a random die: I pick, say, 25 random points on a sphere and use Mathematica’s ConvexHullMesh to turn that into a 46 (or 2n-4) sided die. Next, what do I mean by unstable? What I mean is that when you put that side flat on the surface of the table, the center of mass of the die is not directly above it. If that happens, it’ll always tumble away from that side.

Ugh, so that meant I had to carefully figure out which “random” initial points on the sphere that I could use so that all sides had at least a chance of rolling. I figured that it’s probably best to stick close to dice that have the vertices roughly evenly spaced, so I started digging into how to do that. This site helped a ton. In particular, it talked about how you could treat the vertices as charged particles and find distributions of the vertices that minimize their potential energy. So that’s what I set out to do.

Here’s a vid of starting the vertices randomly and letting them move under the influence of their mutual repulsion along with some viscosity (so that they’d settle down near a stable point):46sidedevolution.gif

That looked great, but then I did a side-stability test and found that, while the energy had effectively been minimized (to my satisfaction, at least) there was still a pesky side that was unstable! It’s hard to see, but here are two images that highlight the unstable side. In each, there’s a blue line drawn from the center of mass of the die (which isn’t the center of the sphere that all the vertices lie on!) perpendicular to the face of the offending side. If that line pierces the face, then it’s stable. You can see in the zoom image that it’s just barely unstable:

Cool, huh? I was excited that maybe there was some weird physical thing going on here until I reran the energy minimization with different (random) initial locations for the vertices. When I did that, the final die was fully stable. Still, that’s pretty interesting that it can sometimes not quite be fully stable.

So what’s next? I’d like to take a fully-stable die and do the contiguous regions analysis. I haven’t run the thousands of rolls it takes to get a good histogram, but this analysis of a 36 sided die shows good correlation: Red: probability of rolls, Green: solid angle of side as seen from center of mass, Orange: area of side, Blue: volume of cone from center to each side. It should be noted that this die had a few sides that were unstable, so I think that’s why the correlations aren’t great.

36sided1000eulerfix comparison

But with that, I think I’m excited to use this 46-sided die (this is a graph of the area of each side):

46 side sizes.png

Whew, so that’s where I’m at. Fun, huh?

UPDATE: Here’s the same graph as above but for a fully-stable 36-sided die (Again: Red: probability of rolls, Green: solid angle of side as seen from center of mass, Orange: area of side, Blue: volume of cone from center to each side):36stable10000comparison

Your thoughts? Here are some starters for you:

  • This is cool. What’s D&D?
  • So basically this is all Bruce’s project? Why isn’t he given credit as an author on this post?
  • Why do I have to flip to page 108 of that link? Can’t you just explain it, loser?
  • What do you mean by random Euler rotations?
  • What do you mean when you say that n points lead to a 2n-4 sided die? That seems suspicious because that means that I can have a d6 with just 5 vertices. A d6 has 8 vertices and Plato says so!
  • Why don’t you try to find a fair d6 with 5 vertices?
  • What do you mean by “to my satisfaction at least” when talking about minimizing the energy? Surely you mean you’re finding the perfect global minimum to 100 decimal places, yes?
  • At first, you said the only way to test for stability was to see if the center of mass was directly above the side when it was resting on the surface. Then you said you just drew a line from the center of mass that was perpendicular to the side and looked to see if it pierced the side. Which is it?!
Posted in fun, mathematica, physics | 5 Comments

See the process

A few weeks ago I gave a presentation at the American Association of Physics Teachers summer conference in a session about accessible technology. I talked about how I make use of student assessment videos, but I tried something new in this presentation. It worked well, for the most part, and I wanted to get down some of the details.

Because it was about accessible technology, I wanted to focus on how seeing students work through a problem helps me identify student needs that aren’t apparent in the final product (of a homework assignment or exam, for example). I wanted to show how watching a student work, through a video, can really show things that you, as an instructor, can give useful feedback on. The problem that I faced as I prepared the talk was that often, when showing such videos in a presentation, audience members don’t focus on the pedagogical question but rather they focus on the physics problem and try to solve it along with the student. Because I really wanted my audience to focus on the process, I was trying to think about how to change that dynamic.

I had an idea, but I thought it might not go very well. I wondered if an analogy might help, something that got the process point across but didn’t have a physics problem for them to get caught up in. I was concerned that folks would be frustrated with a non-physics example. I was worried the analogy wouldn’t be strong enough. But I thought I’d give it a try.

The analogy I used was art, specifically drawing. I have a great app on my phone that captures all the pen strokes during the creation of an image. I’ve been trying to get better at drawing over the last few years, so I use the app a lot. The video creation part is something I hadn’t really paid attention to, but I realized it might work well for this analogy. Essentially I planned to have a conversation about the difference between looking at a final product and watching its creation. I hoped to then talk about how those differences manifest when talking about physics. It actually went pretty well!

Here’s the final product I showed (I drew it for a friend’s birthday who’s a big soccer fan):3c827807-7c0c-4b13-922f-247d6cf13974

Yes, I know, I suck, get past it. I showed them this and asked them to critique it. One said they liked how I used color to indicate motion (something I hadn’t done consciously!), another talked about the perspective involved. Then I showed them this:

(clicking through takes you to a public google photo video page, hopefully that’ll work for folks)

I asked what they noticed. One commented on how I used fundamental shapes to block things to begin. I pointed out how I spent a ton of time on one hand, but very little on another and how I put likely way too much time and effort into the detail of the soccer player. We talked about how you get a much better sense of me as a practitioner (and maybe as an artist, but that was secondary for this) by watching the video than by looking at just the final product.

We talked about the shapes comment is like watching a student use good fundamental approaches in a physics video. We also talked about what it means when a student spends too much time on a particular detail (something you don’t see in the final product). I shared how I had a student who was frustrated that her videos weren’t getting the same high scores as her colleagues, pointing out that she had the same work and talked about the same things. I told her that she spent equal time on everything; an indication to me that she didn’t have a firm grasp on what the important concepts were.

My favorite comment, that really connected to the accessibility focus of the session, was when someone said that in the final product they thought the goal netting looked funny but only when they saw the video did they see that it was right on the edge of the image. The final product was a white-background image placed on a white screen (just like above), but the video, during the part when I zoomed in, indicated where the boundary was. This led to a great conversation about not always being able to see the barriers that students face, especially when you only see their final product.

So, all in all, I think it went pretty well. I then pivoted to talking about physics examples and we were able to use the art analogy vocabulary throughout the conversation.

Your thoughts? Here are some starters for you:

  • This is cool, but why didn’t you also . . .
  • This is dumb, art is not physics. What you should have done instead is . . .
  • Another great analogy would be . . .
  • Did you give the finished product or the video to the birthday boy?
  • You kind of suck at drawing, why in the world would you show the world that?
  • I thought you were all about hearing student voices, this is just a silent video. How is that the same?
  • I hate it when audience members just focus on a tangential thing in presentations. My favorite example is . . .
  • You really don’t know how to use semi-colons.
Posted in screencasting, teaching | 1 Comment

Research introduction for students

This summer I’m developing a fully-online course for transfer students to help them hit the ground running in our program (this is part of an entirely online program currently for psychology and business majors). The learning outcomes for the course focus on familiarizing students with the Hamline version of a liberal arts education and on research skills. It’s the latter part that this post is about because I’m seeking some feedback on the tentative plan.

The main approach will focus on having students investigate the research that debunks popular myths in their discipline. The rough outline is:

  1. Explore popular (mis)uses of a particular myth.
    1. This will intentionally have students use lower quality resources like the top 10 hits of a Google search.
    2. The goal will be to flesh out how the myth is understood in society.
  2. Form groups to dig deeper into each myth. Have them form a 10-100 explanation of the myth.
    1. This is where the groups have to describe their myth using the 10 100 most used words in the English language (the word “thousand” isn’t in the 10 100 most used words). I’ve done this in courses before.
  3. Learn how to seek out and evaluate higher quality resources.
    1. We have some good modules for this from our library that first-year students use.
  4. Review the lower quality sources from step one above to identify potential loopholes in the established research that might explain why the myth is so hard to dislodge from society’s general understanding.
  5. Put together an annotated bibliography of sources
    1. Include sources from steps 1, 3, and 4.
    2. Typically the annotations will include how they discovered the source, what its general arguments are, and whether it targets a loophole.
  6. Turn the annotated bibliography into a graphical one
    1. Each source is represented in the graphic.
    2. Physical space in the graphics is leveraged to communicate:
      1. How the sources agree
      2. How the sources reference each other
      3. How the sources refer to the loopholes
      4. Areas where new research could close or illuminate loopholes
  7. The graphical bibliography will not be turned in as a graphic. Rather it will be the context of a video the groups will make to describe their project

Things I like about this:

  • I’m excited to facilitate conversations around what high-quality research really says, as often it’s quite narrow. For example with (my favorite false myth) learning styles, a lot of the debunking research looks at particular features, like the learning comparison between being taught with a variety of approaches vs targeting the students’ claimed learning style. These are powerful pieces of evidence to argue against learning styles, but they are rarely comprehensive against every possible use.
  • I love the 10-100 assignment as students really struggle to find the words that they’re allowed to use to explain something that they understand. This works as a great analogy for how researchers have to learn to communicate.
  • I’m super intrigued by the graphical bibliography. I think that it could be a great way to illustrate the various connections among the sources.
  • I like the notion of closing loopholes. If the groups can find that, say, some company is making money leveraging learning styles, maybe they can find that a new research study could help close that loophole, or identify a use for learning styles that’s legitimate.

Things I’m worried about:

  • Letting students in the first week use just Google results might set a bad precedent.
  • Access to full-text sources in a short term (the initial version will only be 8 weeks long).
  • While I’m developing the class, I won’t always teach it, so I need to make sure that the assessments are solid and able to be performed by any qualified instructor.
  • Psychology myths are pretty easy to find, but business myths have proven harder to track down.

What do you think? Here are some starters for you:

  • This class sounds cool, my favorite part is . . .
  • This class is a waste, what you should do is . . .
  • Why not have the students develop a thorough research proposal for those loopholes?
  • You should add in myths about online learning while you’re at it.
  • What’s your beef with learning styles?
  • Here’s a bunch of business myths for you: . . .
  • I disagree with how you’re categorizing high-quality resources. It seems to me that they are comprehensive. Here’s an example . . .
  • When I think about preparing students for research, I think of a bunch of different ideas than yours. Here’s twelve . . .
  • If you love the 10-100 assignment so much why don’t you limit yourself to those words for your blog posts?
  • There are tons of resources for graphical annotated bibliographies that you should be ashamed you didn’t mention. Here’s my favorite . . .
Posted in dean, research, teaching | 2 Comments

Helicopter vs snowplow

Working in the dean’s office has given me all sorts of new respect for the Dean of Students office. Specifically, I’ve been very impressed at how they leverage students’ parents when helping the students get through tough times. My experience before the dean’s office was cloaking myself in FERPA and basically not talking to parents from the initial recruiting meetings (when I often try to keep eye contact with the potential student) to graduation, when I’m happy to both pose for and take pictures of the family.

But in the dean’s office, I am beginning to see how useful parents can be. If they reach out to us (or the dean of students office) with concern, they kick us into action, even though we’re unable to call them back. Typically we figure out if the student is ok and we convince them to call their parents to let them know.

I was teaching a class once and I was curious how often students contacted their parents. I asked “who has contacted their parents once this week” and most hands went up. So I began to raise the contact number and the hands started to go down. Except for one student. Theirs stayed up, even as I went extreme just to get them to bring the exercise to the end. “Ten times?” Nope. “One hundred times?” Nope. Finally they said “my mom is my best friend and I’ve texted her twice during this class.” I used to tell that story to warn of ‘helicopter parents’ but I’m beginning to see it differently. That parent, as with most, knows their students quite well, and can often act as an emotional guide when tough college-based decisions come up. “Should I do my calc homework or audition for the play?” “Should I try for 3As and a C or 2As and 2Bs?” I don’t think there’s one answer for those sorts of questions, and often the answer is best a set of further questions. But what I’ve learned is that parents are really good at helping students in situations like that. If they need straight academic advising, I’m good at it. But holistic advising? I need help, and parents, even helicopter parents, can be a great tool to leverage.

So I think I can like the concept of ‘helicopter parent’. They are there for support when the student needs it, but, just like my July hobby of watching the Tour de France, they don’t impede.

However, there is a type of parent that I struggle with: the snowplow parent. This is the parent that pushes everything out of the way and chooses the path. That’s a very different beast than a helicopter parent.

I was recently talking to parents of new first year students and I realized that I had a good example of how I went from a snowplow research advisor to a helicopter one as I got better at it. When I first began working with research students (typically in the summer), I would be in my office working on something (typically my teaching plans for the fall) and a student would come in to say that the laser wasn’t aligned anymore. So I’d walk back to the lab with them and show them how to do it. Really I would elbow them out of the way and align it for them, thinking that they’d get more done with an aligned laser than not. I never really realized that I wasn’t doing a good job, but I should have realized how that connected to how they’d act during poster sessions. They’d happily tell anyone who stopped by all about their poster, but when asked a question, like “why this approach” or “have you thought of …” or “I would have …” they’d gaze around the room looking for me in the hopes I’d come and rescue them. Which I would, with answers like “oh, we do it this way because I knew it would work well” and “they’ve probably never heard of that approach but it’s a good idea” and “that’s a good idea, let’s you and me go talk about it.”

See, snowplow advising. Hurts to read, doesn’t it.

Then one summer I had to be gone for two weeks and I left my students behind with a long todo list. I broke my promise to check in with them via email so I was nervous the day I got back. As I walked into the lab, I immediately got furious. I was mostly mad at myself, but I’m sure it came off as furious with them. I walked up to the apparatus they’d built saying “there’s no way this will work” and I started taking it apart. As I was doing that I mentioned that another section of the apparatus was a mistake as well. Then they said “STOP!”. I said “What?” And then they said the two bravest words I’ve ever heard students say to me: “Get Out!” They explained that they’d tried lots of variations and they’d finally found a way to get the experiment to produce actionable data. As I went out to the hallway, still steaming, mind you, I finally realized that’s what success looks like.

So now I try to be a helicopter advisor. I set up an environment where they can learn and I hover, making sure they’re making good decisions. If they get stuck, I try to remember to ask good follow up questions hoping they’ll figure a way out, and I now realize that ending a summer with good data that I’m solely responsible for with a bunch of students who’ve watched me do it is a waste.

So, I think I’d like to be a helicopter advisor and I think I like helicopter parents. Just don’t be a snowplow.

Thoughts? Here are some starters for you:

  • I like this. I especially like . . .
  • I hate this, I especially hate . . .
  • I think FERPA gets in the way. I wish I could call parents. Here’s what I’d say . . .
  • I love FERPA, I never talk to parents and I hope I never have to. Here’s why . . .
  • How can you defend helicopter parents? When they hover my students suffer and here’s why . . .
  • I live in Florida, what is a snowplow?
  • I think the lesson you should have learned is to not bother coming in in the summer.
  • What are those students doing now?
Posted in dean, research, teaching | 4 Comments