What we should be teaching kids about CS and changing our tools to get there: Ben Shapiro

October 21, 2017 at 7:00 am 5 comments

Ben Shapiro gave the opening keynote at VL/HCC a couple weeks ago. (See Amy Ko’s great summary of VL/HCC this year.) He shared the slides with me, and he just made a video of himself re-giving the talk.

Ben has been exploring what we need to teach kids to prepare them to create authentic applications for the world that they live in — multiple, heterogenous platforms with rich networking.  He wants kids to think about networks, failures, and communication between programs running on devices with different capabilities. Today, we talk about teaching kids variables and loops. Tomorrow (like, literally tomorrow), we should be teaching them about the realities of the digital world in which they live.

But we’re not going to do this with Scratch, Python, or Java. He’s suggesting new kinds of tools, including having young kids work with machine learning.

I recommend letting Ben change your thinking about the next things to teach in CS.

Entry filed under: Uncategorized. Tags: , .

Georgia Tech Receives CMD-IT University Award for Retention of Minorities and Students With Disabilities in Computer Science Why Tech Leadership May Have a Bigger Race Than Gender Problem

5 Comments Add your own

  • 1. Akos Ledeczi  |  October 21, 2017 at 7:46 pm

    I completely agree that networking, distributed systems and related issues need to be taught in K12. But I do not agree that they cannot be taught with current tools. In fact, we have been teaching these concepts with NetsBlox (http://netsblox.org), a Snap! extension. With NetsBlox, kids can use message passing and Remote Procedure Calls (RPC) to write multi-player games, implement distributed algorithms, create a client-server chatroom and a multi-user shared whiteboard, or build a mesh network where they send messages around the table by only communicating with their direct neighbors. And these are all 10 to 40 block programs, not complex applications. NetsBlox also support Google Docs-like collaborative editing of projects. As for the “boring” part, RPCs make google maps, weather info, USGS earthquake data, the Sloan Digital Sky Survey, the ThingsSpeak worldwide IoT database, the Movie Database and gnuplot accessible and intuitive to use right in their programs. Here is a video on how to create an interactive worldwide weather app in 10 minutes (with no loops or if-statements used): https://www.youtube.com/watch?v=mNUfYkYIWb8

    • 2. Mark Guzdial  |  October 21, 2017 at 8:37 pm

      Can you share your evaluation results? Can average students use your tool to make all these things?

      • 3. Akos Ledeczi  |  October 21, 2017 at 11:24 pm

        We had two separate week-long summer programs with good results. The paper is under review ( I can email it upon request). Currently, we are doing a semester-long middle school course, so that should provide better insight. But I would say that many of these projects would fit in an AP CSP level course. Of course, distributed algorithms get complex fast, so we stick to simple ones.

  • 4. Ben Shapiro  |  December 27, 2017 at 2:25 pm

    Hi Akos. Thanks for your comment here. I very much like what y’all are up to with NetsBlox (we reference your work in a journal article that will be coming out in 2018).

    FWIW, I think of your Snap! extension as a new tool (i.e. it adds functionality that neither Snap! nor Scratch otherwise provide), so I don’t think that we are in disagreement here about how existing CS Ed tools need to change to embrace the future.

    It’s probably also worth noting that the BlockyTalky project started prior to NetsBlox. I mention that not to claim some sort of hipster we-did-it-first glory, but to point out that our team and yours both began approaching this sort of work when there were not yet widely used CS Ed tools for this kind of networked computing. Certainly there are precedents (e.g. Boxer and ToonTalk) but I think our projects are the first to really try to empirically investigate the affordances of these kinds of approaches for student learning.

    It’d be great to talk sometime. Perhaps we could carve out some sort of collaboration?

    • 5. Akos Ledeczi  |  December 27, 2017 at 8:20 pm

      Thanks for your comment, Ben. I have sent an email. Best, Akos


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 )

Google photo

You are commenting using your Google 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 9,005 other followers


Recent Posts

Blog Stats

  • 1,878,994 hits
October 2017

CS Teaching Tips

%d bloggers like this: