How the Cheesecake Factory is like Healthcare and CS Education

September 2, 2019 at 7:00 am 10 comments

Stephen Dubner of the Freakonomics Podcast did an interview with Atul Gawande, author of the Checklist Manifesto. Atul is a proponent of a methodical process — from a behavioral economist perspective, not from an optimization perspective. People make mistakes, and if we’re methodical (like the use of checklists), we’re less likely to make those mistakes. If we can turn our process into a “recipe,” then we will make fewer mistakes and have more reliable results. Here’s a segment of the interview where he argues for that process in healthcare.

DUBNER: Okay, what’s the difference between a typical healthcare system and say, a restaurant chain like the Cheesecake Factory?

GAWANDE: You’re referring to the article I wrote about the Cheesecake Factory…Basically what I was talking about was the idea that, here’s this restaurant chain. And yes, it’s highly caloric, but the Cheesecake Factorys here have as much business as a medium-sized hospital — $100 million in business a year. And they would cook to order every meal people had. And in order to make that happen, they have to run a whole process that they have real cooks, but then they have managers.

I was talking to one of the managers there about how he would make healthcare work. And his answer was, “Here’s what I would do, but of course you guys do this. I would look to see what the best people are doing. I would find a way to turn that into a recipe, make sure everybody else is doing it, and then see how far we improve and try learning again from that.” He said, “You do that, right?” And we don’t. We don’t do that.

Here’s where Gawande’s approach ties to education. Later in the interview:

DUBNER: And do you ever in the middle of, let’s say, a surgery think about, “Oh, here’s what I will be writing about this day?”

GAWANDE: You know, I don’t really; I’m in the flow. One of the things that I love about surgery is: it is, I have to confess, the least stressful thing I do, because at this point I’ve done thousands of the operations I do. Ninety-seven to 98 percent go pretty much as expected, and the 2 percent that don’t, I know the 10 different ways that are most common that they’ll go wrong and I have approaches to it. So it’s kind of freeing in a certain way.

I think about teaching like this. I have been teaching computing since 1980. I actively seek out new teaching methods. Teaching CS is fun for me — because I know lots of ways to do it, I have choices which keeps it interesting. I have mentioned the fascinating work on measuring teacher PCK (Pedagogical Content Knowledge) by checking how accurately teachers can predict how students will get exam questions wrong. I know lots of ways students can get computer science wrong. I still get surprises, but because I’m familiar with how students can get things wrong, I have a starting place for supporting students in constructing stronger conceptions.

We can teach this. The model of expertise that Gawande describes is achievable for CS teachers. We can teach new CS teachers methods that they can choose from. We can teach them common student mental models of programming, how to diagnose weaker understandings, and ways to help them improve their mental models. We can make a checklist of what a CS teacher needs to know and be able to do.

Entry filed under: Uncategorized. Tags: , , .

Holding ourselves to a higher standard: “Language-independent” just doesn’t cut it Where a Notional Machine Doesn’t Help: JavaScript and the DOM

10 Comments Add your own

  • 1. gflint  |  September 2, 2019 at 4:52 pm

    I do not think the recipe analogy works with CS or programming. A recipe implies doing it the same way every time. I look at a fairly straight forward programming course like my Python course. I have an outline where I want to go but the actual course is different every semester because I get kids with different skill levels in programming. I also have a tendency to get bored with giving the students the same assignments year after year so I am always throwing something new into the mix. I feel that any topic taught with a fixed recipe is doomed to mediocrity. Having that checklist, a long checklist, of what a CS teacher should know is the big thing. Knowing most of the different ways students can mess up a program or alternative ways of reaching a program solution would make for a great methods course but the course might have to be several semesters long! The kids are still finding solutions I had not thought of to problems I have taught for years. Cool!

    Reply
    • 2. Mark Guzdial  |  September 3, 2019 at 9:57 am

      Garth, let’s make a distinction between what works for you and what works for the average teacher. You’re an exceptional teacher who gets excited about changing assignments and getting new kinds of responses from students. You’re not average. Would the average CS teacher find some benefit from a checklist that reminds them what they need to do to make things work?

      Reply
      • 3. gasstationwithoutpumps  |  September 3, 2019 at 2:41 pm

        I’m probably not an average teacher either (if such a thing even exists), but I can’t see much value in a checklist for anything but the bureaucratic trivia.

        Also, like Garth, I find that students are infinitely creative in finding new ways to mess things up. I tweak my textbook and lab assignments every year, to avoid the problems uncovered in the previous years, but students find new ways to do things wrong. That is part of the reason that I’ve never found rubrics to be of much use for grading—they tend to omit the problems that need to be addressed this time.

        Reply
        • 4. Mark Guzdial  |  September 4, 2019 at 1:24 pm

          I think we’re talking about different things. I did a blog post for CACM a few months ago about things a teacher can do to reduce long lines at office hours: https://cacm.acm.org/blogs/blog-cacm/236593-how-to-reduce-long-lines-at-cs-office-hours-in-five-tweets/fulltext. That’s a checklist. Did I do all of those things? You might forget about one or the other (e.g., update the assignment, but forget to make sure that all the concepts, tools, and APIs for that assignment appeared in previous lectures). That’s where a checklist might be helpful, and none of those are bureaucratic trivia.

          Reply
      • 5. Bonnie  |  September 4, 2019 at 10:02 am

        Are there actually CS instructors who don’t change their programming assignments around? If I tried to reuse last year’s project assignment, the students would all just give me copies of the work last year’s students submitted!

        Reply
        • 6. gasstationwithoutpumps  |  September 4, 2019 at 12:39 pm

          In my graduate bioinformatics course, I generally updated only one out of ten assignments each year. Because the class was small and I read each submission carefully, I had never had a problem with students submitting someone else’s work. I no longer teach that course, but the person who took it over has been evolving the assignments at about the same pace.

          In my electronics course, students are encouraged to work together on the homework, and as paired partners for the lab. The homework has low weight, and students do often submit work that they don’t understand, but the design reports for the lab work (which again I read very carefully) rarely show signs of being anyone else’s work.

          Copying from previous classes is generally a problem only when the grading is automatic or divided up among many graders, so that students think that duplication will go undetected. Here, the CS courses have the biggest problems with mass copying, because of the size of the courses and the automatic grading. They have had to use automated plagiarism detection also, which has caught large numbers of students.

          Reply
        • 7. Mark Guzdial  |  September 4, 2019 at 1:25 pm

          I’m teaching a class that hasn’t changed its homework assignments in four years. We use MOSS extensively.

          Reply
  • 8. Michael Ball  |  September 3, 2019 at 3:53 am

    There’s a lot to resonate with this. I’m in my first semester full-time teaching and I’ve got 3 new courses. I understand the content, but the structure, policies, etc are all new. I really wish I could be team teaching — focus on the bits I know, but have a chance to learn and practice. That said, I still enjoy this, of course, but teaching is really different when you don’t have that flow.

    Reply
  • […] in Computing. Rather, he gave a concrete checklist of how to develop good exams in CS. I’m a fan of checklists, and his were great. I’ll definitely use these tips in the […]

    Reply
  • […] just finished Atul Gawande’s The Checklist Manifesto (which I already blogged about here, before I even read it). It’s a short book which I highly recommend. I hadn’t realized before […]

    Reply

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Trackback this post  |  Subscribe to the comments via RSS Feed


Enter your email address to follow this blog and receive notifications of new posts by email.

Join 10,185 other subscribers

Feeds

Recent Posts

Blog Stats

  • 2,060,405 hits
September 2019
M T W T F S S
 1
2345678
9101112131415
16171819202122
23242526272829
30  

CS Teaching Tips


%d bloggers like this: