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

October 21, 2017 at 7:00 am 3 comments

Ben Shapiro gave the opening keynote at VL/HCC a couple weeks ago. (See Andy 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

3 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.


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 )

Twitter picture

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

Facebook photo

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

Google+ photo

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

Connecting to %s

Trackback this post  |  Subscribe to the comments via RSS Feed

Recent Posts

October 2017
« Sep   Nov »


Blog Stats

  • 1,452,036 hits

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

Join 5,177 other followers

CS Teaching Tips

%d bloggers like this: