Khan Academy offers kind-of-scaffolded computer science learning: Doing away with the teacher

August 15, 2012 at 8:32 am 27 comments

With a bold claim, “Khan Academy Launches the Future of Computer Science Education,” TechCrunch described Khan’s new foray into computer science.  They’ve had CS videos in the past, but now they have a powerful text editor in which students can edit JavaScript, or manipulate variables like in Bret Victor’s cool demo.

The TechCrunch article actually cites research (see below), a paper by Cindy Hmelo.  Cindy’s paper is actually on problem-based learning, but it does describe scaffolding — as defined in a Hmelo & Guzdial paper from 1996! How about that!

What I see in the Khan Academy offering is one of the kinds of scaffolding that Cindy and I talked about.  Scaffolding is an idea (first defined by Wood, Bruner, and Ross) which does involve letting students explore, but under the guidance of a tutor.  A teacher in scaffolding doesn’t “point out novel ways of accomplishing the task.”  Instead, the teacher models the process for the student, coaches the student while they’re doing it, and gets the student to explain what they’re doing.  A key part of scaffolding is that it fades — the student gets different kinds of support at different times, and the support decreases as the student gets more expert.  I built a form of adaptable scaffolding in my 1993 dissertation project, Emile, which supported students building physics simulations in HyperTalk.  Yes, students using Emile could click on variables and fill in their values without directly editing the code, but there was also process guidance (“First, identify your goals; next, find your components in the Library”) and prompts to get students to reflect on what they’re doing.  And the scaffolding could be turned on or off, depending on student expertise.

I wouldn’t really call what Khan Academy has “scaffolding,” at least, not the way that Cindy and I defined it, nor in a way that I find compatible with Wood, Bruner, and Ross’s original definition.  There’s not really a tutor or a teacher.  There are videos as I learned from this blog post, and later found for myself.  The intro video (currently available on the main Khan Academy page) says that students should just “intuit” how the code works.  Really?  There’s a lot more of this belief that students should just teach themselves what code does.  The “scaffolding” in Khan Academy has no kind of process modeling or guidance, nothing to explain to students what they’re doing or why, nothing to encourage them to explain it to themselves.

It is a very cool text editor.  But it’s a text editor.  I don’t see it as a revolution in computer science education — not yet, anyway.  Now, maybe it’s way of supporting “collaborative floundering” which has been suggested to be even more powerful than scaffolding as a learning activity.  Maybe they’re right, and this will be the hook to get thousands of adolescents interested in programming.  (I wonder if they tested with any adolescents before they released?)  Khan has a good track record for attracting attention — I look forward to seeing where this goes.

The heart of the design places a simplified, interactive text editor that sits adjacent to the code’s drawing output, which updates in real time as students explore how different variables and numbers change the size, shapes, and colors of their new creation. An optional video guides students through the lesson, step-by-step, and, most importantly, can be paused at any point so that they can tinker with the drawing as curiosity and confusion arise during the process.

This part is key: learning is contextual and idiosyncratic; students better absorb new material if they can learn at their own pace and see the result of different options in realtime.

The pedagogy fits squarely into what educators called “scaffolded problem-based learning” [PDF]; students solve real-life problems and are encouraged to explore, but are guided by a teacher along the way, who can point out novel ways of accomplishing the task. Scaffolded learning acknowledges that real-life problems always have more than one path to a solution, that students learn best by doing, and that curiosity should drive exploration. This last point is perhaps the most important, since one of the primary barriers to boosting science-related college majors is a lack of interest.

via Khan Academy Launches The Future of Computer Science Education | TechCrunch.

Entry filed under: Uncategorized. Tags: , , , , , .

Daphne Koller’s TED Talk: What’s new about MOOCs Report on “Computational Freakonomics” Class: Olympics, game consoles, the Euro, and Facebook

27 Comments Add your own

  • 1. Kim Wilkens  |  August 15, 2012 at 9:16 am

    I’m actually pretty excited about this announcement and what they have done so far. I think whether as educators, we believe in the philosophy of Khan or not, it clearly has some clout in the world at large and if Khan can generate additional excitement and enthusiasm in young people for computer science – that’s a good thing (because they are generally not getting that opportunity in school). The other thing I really like is that the tool they are developing was inspired by Bret Victor’s “Inventing on Principle” talk. His principle is that “creators need immediate connection with what they are making”. He believes that “ideas start out tiny, weak and fragile” and in order to develop and mature, the ideas need an environment where the creator can nurture them. In my experience of teaching programming to a private school vs. a low-income population is that they all are able to generate creative ideas for their programs, but the private school population is much more likely to demonstrate self-efficacy with the tools needed to create the program. Bret’s talk made me realize that the tools really shouldn’t have this kind of power over the students’ ideas.

    John Resig ( writes about the Discovery Lab where they tried out the CS content with middle school age kids this summer. He also admits that “One question is obviously: How much “Computer Science” do we actually teach? Obviously, right now we’re not teaching very much in the way of traditional Computer Science content…”

    • 2. Rob St. Amant  |  August 15, 2012 at 10:56 am

      Thanks for the pointer to Resig’s post. I think it’s great if Khan can get kids interested in computing, but I was left with a question: What are they learning? I guess it’s still early days for an answer.

    • 3. Chris Dillon  |  April 7, 2013 at 6:03 pm

      [I have come upon this discussion late from a link.]
      It was interesting to read this article, and consider the Khan tools, in context with Bret Victor’s own analysis of the launch and his his “Inventing on Principle” talk.
      Specifically the link between learning with scaffolding and the use of JavaScript & Processing: “A live-coding Processing environment addresses neither of these goals. JavaScript and Processing are poorly-designed languages that support weak ways of thinking, and ignore decades of learning about learning. And live coding, as a standalone feature, is worthless.”!/LearnableProgramming

  • 4. Justin Reich  |  August 15, 2012 at 9:23 am

    Great post. Just FYI, they did test with kids. See here:

    It’s a good introduction from John Resig about his designs, vision, etc.

    • 5. Mark Guzdial  |  August 15, 2012 at 11:11 am

      Thanks, Justin! John’s post really helps a lot to see what they were after and what they built. I didn’t see all of that in my explorations last night and this morning.

      It still feels too much like “This is what I would have liked as a kid, so let’s build that!”. We have the students in CS who were like us. Now we need others. I’m particularly disappointed in the claims that the kids in the pilot studies learned and did so much more than in a college class? Really? How did they know? Did they actually look at a college class? Or did they just assume based on their own experience?

  • 6. mike south  |  August 15, 2012 at 10:25 am

    “nothing to explain to students what they’re doing or why, nothing to encourage them to explain it to themselves.”

    I think this tool is only limited by the imagination of the teacher/user using it. For example, why not create challenges which guide the user & present problems for them to fix?

    It’s like saying a chalkboard has no encouragement factor!

    • 7. Mark Guzdial  |  August 15, 2012 at 11:07 am

      Hi Mike,
      Can we count on a user/student to know how to guide or challenge themselves? That’s a high degree of metacognition to expect. Teacher, sure, but it’s not clear how the teacher enters the picture here.

      • 8. Kim Wilkens  |  August 15, 2012 at 11:23 am

        I can see teachers and students using the stand-alone editor ( to create their own screencast tutorials.

      • 9. John Kershaw  |  August 17, 2012 at 9:41 am

        Did you miss the small green play button under the tutorial code windows? I did for a while.

        When you click it, a soundtrack plays whilst code is written in the code window and the app appears in the canvas window. But the nice part (for scaffolding) is that the learner can pause the video and play around with the code (using sliders or whatever) to see exactly what’s going on.

        When they’re happy, they click play again and the narration returns to where you left off (as does the code).

        • 10. Mark Guzdial  |  August 17, 2012 at 9:49 am

          I later found the play button, and knew that it worked like a screencast, but didn’t know that the code snapped back when you started playing again. That’s quite interesting. That facility wasn’t highlighted in the intro video, nor in blog post by the designer. I’d like to see a real description of what’s all there.

  • 11. gasstationwithoutpumps  |  August 15, 2012 at 9:51 pm

    Side note: I get a little tired of critics of the Khan Academy mis-spelling the name as “Kahn”. It isn’t that hard a name to get right. Unfortunately, getting the name wrong immediately lowers your credibility as a critic (like using all-caps in political statements or Comic Sans in PowerPoint—it doesn’t affect the content, but it changes how it is percieved).

    I have no opinion on the usefulness of the Khan Academy’s foray into teaching programming, other than that JavaScript is not the language I would start with for teaching.

    • 12. Mark Guzdial  |  August 15, 2012 at 9:58 pm

      Thank you — I got it right in some places, but not in others. I have fixed it.

    • 13. Grant Hutchison  |  August 17, 2012 at 11:28 am

      From what I can see they use Processing (simplified Java – IMHO) as the language of learning and not JavaScript.

      Until I attended a CS educator workshop the other day I didn’t realize how Processing code can be dropped into websites using HTML5 tage and the Processing.js library. It is really slick and I plan to use this as a gateway for my students as they transition from Python into the world of Java with OO.

      • 14. gasstationwithoutpumps  |  August 17, 2012 at 1:44 pm

        Processing looks to me like a much better choice than JavaScript, though I don’t see it as a necessary transition between Python and Java. I’m curious whether your students will see it as helpful or as yet another random thing to learn.

        • 15. Grant Hutchison  |  August 17, 2012 at 1:55 pm

          I really don’t know if they will find it helpful, but I will try it out and see. I will have them answer a post course survey in an attempt to determine if it was helpful or not.

          I totally agree with you that Processing would definitely not be a necessary step to transition from Python to Java.

          Here is a small example of a Processing sketch running on my website. I expect that students will find it motivational to be able to take their Processing sketchs and integrate them into a website.

  • […] Khan Academy offers kind-of-scaffolded computer science learning: Doing away with the teacher […]

  • […] De Khan-academy lanceert nieuwe tools, Techcrunch noemt het de toekomst van ICT-onderwijs, maar niet iedereen is zo onder de indruk. […]

  • […] I’m still reading about the new Khan Academy Computer Science portal. Mark Guzdial calls it “a very cool text editor” [emphasis his]. Dan Meyer says, “…students play a very active role in these lectures. […]

  • […] Khan Academy offers kind-of-scaffolded computer science learning: Doing away with the teacher ( […]

  • […] was reading Mark Guzdial’s blog some time ago and his post on the Khan Academy’s take on Computer Science appealed to me for a number of reasons, not least for his discussion of scaffolding; in this case, […]

  • […] another, on the Khan Academy CS supports, from an “Anglo-Far East Gold Bullion” site: The system works wonderfully. Educators […]

  • 22. Sakila Khatun  |  September 8, 2012 at 2:34 pm

    Personal Computer Technology is still one of the most analyzed areas. Due to its need universities have started Computer Science online applications. As with the introduction of online education people have signed up in almost so many different areas but still computer science online level applications are popular. The Personal Computer science system concentrates mainly on the application side. Development in different dialects is taught in this area. Languages like BC-plus plus, BC, Pascal and Coffee. It also instructs computer programming concepts, computer programmingand operating application. In computer science applications a student must have a very sound understanding about all the basic applications, architectures and coding.

  • […] badges and mascots. Please read Mindstorms. Okay?”  The essay is explicitly a response to the Khan Academy’s new CS learning supports, and includes many ideas from his demo/video on making programming systems more visible and […]

  • […] with multiple modalities (yes, you can watch a video, but you can’t read the screen well; and the tools to provide audio narration for clearly-readable code are still developing), and there’s evidence to believe that multiple modalities are key to learning to read code […]

  • […] we believe that teaching allows people to succeed who might not succeed on their own?  (Isn’t that the definition of scaffolding?)  Are MOOCs really teaching, or are they filtering out the people who couldn’t learn on […]

  • […] describing the big trends in learning to code this last year, from CodeAcademy to Bret Victor and Khan Academy and MOOCs.  But the part that I liked the best was where she identified the problem that cool […]

  • […] a repository for videos that teach computer science.  Unlike Khan, it’s open to anyone to contribute.  Unlike YouTube, it’s only about teaching […]


Leave a Reply

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

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

Twitter picture

You are commenting using your Twitter 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,184 other subscribers


Recent Posts

Blog Stats

  • 2,053,712 hits
August 2012

CS Teaching Tips

%d bloggers like this: