I hope @gmarceau and @KathiFisler don't find out that I actually named the paper after a very silly British sitcom from the 80s. I expect several Indians will recognize it; but will anyone British? But there's a really important story on research methods behind the paper: 🧵 Award citation for "Mind Your Language" paper from
This work followed-up on our earlier paper, "Measuring the Effectiveness of Error Messages Designed for Novice Programmers". We had done a bunch of work analyzing edits and classifying error output. Seemed like a pretty done deal. But: ↵
We also did a handful of talkaloud studies to see how students really handled errors. Most of it was predictable. But one student said they were confused because they didn't know the WORDS in the error. The words?!? (Native English speaker, too.) ↵
This was the tiniest string to pull on—one remark by one student one time—but we yanked anyway. We realized that there were several mismatches. Profs didn't use the same vocab as the IDE, so even if students knew a concept, they didn't recognize it. Also: ↵
In DrRacket, we had gone to GREAT effort to make the student languages use precise terms: eg, "constructor" vs "selector" vs "predicate". Problem was, students only knew "function". So they were hearing that the frobozicator didn't get a globbeldyglub. WAT. ↵
Still, we had paid a ton of attention, over 15 years, to vocabulary in DrRacket error messages. So we figured it can't be that bad. We decided to run a study to confirm it. But how? Do you see why it's messy? ↵
You can ask students to "define" a term, but they are novices; definitions will be garbled. Anyway, we want to know if they *recognize* a term. So, eg, we gave them programs + error msgs and said "circle all instances of this term in the error in that program". ↵
Our findings were disastrous. In particular, all that careful refinement of DrRacket errors was part of the problem, but not the only part. 3 different institutions, courses, instructors, all miserable. ↵
Another finding was that not only do profs need to align with the IDE, so do libraries. Instead libraries create their own error vocabulary and style, and it clashes with the base language. The result was a STYLE GUIDE for error messages. ↵
ALL this came about because we used QUALITATIVE methods and listened carefully to EVERY word the subjects said. We pulled on the tiniest of strands and discovered a whole dress. Maybe some awesome ML research can do the same…I don't know. ↵
A lot of people have read and incorporated some of the feedback from this work. It's really cool to have had industrial impact. It also shows that to have industrial impact, you don't have to labor in salt mines. Studying beginning students can have direct impact on industry! ↵
Finally, awesome that @gmarceau had three main papers and all three have now won awards.

And today's SPLASH awards also had @mgrnbrg and @ArjunGuha get an artifact award that was presented by @csgordon. Brown PLT represent!!! Like a giant virtual reunion @ the award ceremony. 😃
And for the follow-up to this thread (what came next), see:

• • •

Missing some Tweet in this thread? You can try to force a refresh
 

Keep Current with ShriramKrishnamurthi

ShriramKrishnamurthi Profile picture

Stay in touch and get notified when new unrolls are available from this author!

Read all threads

This Thread may be Removed Anytime!

PDF

Twitter may remove this content at anytime! Save it as PDF for later use!

Try unrolling a thread yourself!

how to unroll video
  1. Follow @ThreadReaderApp to mention us!

  2. From a Twitter thread mention us with a keyword "unroll"
@threadreaderapp unroll

Practice here first or read more on our help page!

More from @ShriramKMurthi

22 Oct
Since there are several ugrads and young grad students following here, let me answer the question: what comes next? We identified a problem; what can we do about it? ↵
One answer is to do what Slim suggests here. It's a GOOD answer. And it probably should be done in addition to everything else. But another is to step back and a question from first principles: ↵
Why do we have this vocabulary at all? It's the bridge from the code to error to the code. It's a LEVEL OF INDIRECTION. And if the indirection doesn't work, communication breaks down: like an NFT whose server has gone down (-:. What can we do instead? ↵
Read 6 tweets
21 Aug
It is with immense pleasure that @KathiFisler, Ben Lerner, @joepolitz, and I announce the first version of our new book, DCIC: a Data-Centric Introduction to Computing. This brief thread explains the book a little. 1/10
dcic-world.org DCIC splash screen image.
The book is driven by three core VALUES: software is written to be read, not only run; programmers are responsible for meeting goals; and programs must be amenable to prediction. That is, it's not just a run-of-the-mill programming text. 2/10
Curricularly, there are three big ideas. The first is an innovation: data-centricity. @KathiFisler and I wrote about this in CACM last year, calling it a challenge and opportunity for computing education. Here, we're executing on that.
cs.brown.edu/~sk/Publicatio…
3/10
Read 10 tweets
16 May
Since so many people seem worried about side-effects from the COVID shots, a bit about my personal experience. Got the two Moderna shots 4 weeks apart. Here's what I experienced: ↵
Shot 1: sore arm, like a flu shot. 5:30 on a Wed. Spent Thu waiting for the fever/fatigue to hit. By 3pm realized I'd squandered the day doing not much of anything, played hooky and read books. No fatigue at all. ↵
Shot 2: also Wed 5:30pm. Much sorer arm for ~36 hours. Otherwise fine Wed. Wasn't going to get fooled again. Worked normally Thu AM, went for a bike ride. Thought I'd take it easy; 5 mins in had forgotten and was riding normally. ↵
Read 7 tweets
15 May
@georgemporter @trello We've tried it to run Bootstrap. For many years it went well. But lately it has not been working so well for us. A bit more on this below. For my personal todo it was really bad because I didn't get email updates (maybe it does that now?). ↵
@georgemporter @trello We use it for our household shopping lists, and it's fantastic for that. Works on all devices, cards are nice and lightweight, etc. But back to managing a group. ↵
@georgemporter @trello One of the virtues was how cards would disappear instantly on everyone's screens when one person archived them. Bootstrap is very distributed, so on a call (pre Zoom) it was vital for everyone to have a shared view, and Trello syncing provided that. ↵
Read 7 tweets
12 May
Shout out to @femaregion1, @RIHEALTH, and others for an amazing experience with COVID vaccination in Providence today, a great illustration that public health is as much a social science as about medicine and biology. A short thread explaining why: ↵
I was accompanying a person who is very, VERY scared of needles. They wanted to get vaccinated, but were also really afraid of doing it. We went to The Dunc [@DunkinDonutsCtr]. Very smooth, quick, efficient. We get to the point where we get assigned a vaccination booth. ↵
The lady senses that this person is really nervous. They can't see the face (mask), but the voice gives it away. They ask, "Are you really nervous about this?" They say yes. I'm expecting the usual, "Oh, don't worry, it's nothing", etc. But no: ↵
Read 16 tweets
26 Apr
Here's a productivity technique I've been using for a month and has worked really well. It reduces distraction, focuses effort, and sets targets. It assumes most of your tasks accumulate as emails. I'll explain it in a short thread. ↵
Some of my inbox entries are big tasks that require a lot of thinking: e.g., correspondence with research colleagues on experiments, results, and papers. They take time and require me to engage deeply. Often interleave email, calls, and shared docs. ↵
But several things are small and, for external reasons, annoying. Examples: I need to: authenticate into a site, look up some info before replying, handle a few things similarly, add entries to a calendar, etc. ↵
Read 33 tweets

Did Thread Reader help you today?

Support us! We are indie developers!


This site is made by just two indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member ($3/month or $30/year) and get exclusive features!

Become Premium

Too expensive? Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal Become our Patreon

Thank you for your support!

Follow Us on Twitter!

:(