Wednesday, October 26, 2016

Robots for Teaching are everywhere–Which should I use and how?

Do a search for “robots for teaching programming” using your favorite search engine sometime. You’ll find a lot of news about the latest and greatest robot for educational use. They are all “new” and “innovative” and designed to get students excited. This week it is Root – a robot that climbs walls or white boards. It even has a brush for erasing the white board. Looks pretty cool and I know at least one of the people on the team and they are awesome. This adds to a long list of educational robots. And I do have a list of robots for teaching programming.


So should you be using them to teach programming? And if so, which robot? Or several robots? How are you to know? My wife and I have purchased a number of robots over the years. My wife uses them with her students but honestly I haven’t been driven to use them with mine. I can’t explain why other than I’m just not sold on the idea for me. Although perhaps there is some analysis paralysis involved.

I’ve got some friends who just jump right in and try things out. My friend Doug Bergman has a number of robots he uses with his students. (Doug if you are reading we need a blog post or two about this.) I admire him greatly for his innovation. He has more time with his CS students than I do though that is a factor as well. When you have one semester total to teach programming as I do there is a tendency to play it safe. That may or may not be the best thing but …

I was thinking about this on my drive into school this morning. What I’d really love to see is a whole track at CSTA on robots. We’ve had the occasional talk about using robots in the past. And we had some robots exhibiting at the last CSTA conference. (Thanks for coming Wonder Workshop.) Wouldn't it be cool to have lost of educational robots in the exhibit hall and a bunch of teachers talking about their use of robots in actual classrooms?

I’m not on the program committee and I don’t know what the plans are or who is exhibiting but I can dream.  And I can suggest that if you are teaching with robots you submit a proposal. :-) If not that PLEASE leave a comment about the robot(s) you are using and how it is working for you.

Tuesday, October 25, 2016

Teaching Computer Science and the Good Idea Fairy

The Good Idea Fairy struck again today. I have been taking about data checking and data safety with my freshmen lastly. One of the things we talk about is parity checking (I blogged about that three years ago at Making Magic With Software) Garth Flint offered the term “Good Idea Fairy” in a comment there.  In any case I started to think about other things we do in computing for data integrity. Things like cyclic redundancy check (CRC).

CRC is an important topic and I do talk about it. The math is not something I want to do with my freshmen though. Still I wanted something that would be quick and easy to have them do. That lead me to think about check digits.  They are used in all sorts of things and yet some of them are fairly easy to calculate. The check digits used for the machine readable numbers on passports for example.

The formula is simple. The first digit is multiplied by 7, the second digit by 3, and the third digit by 1. Then the cycle repeats so the fourth digit is multiplied by 7 and so on. The results are added together and the result divided by 10 with the integer remainder being the check digit.. imageCalculating the check digit for a birthday (in the format yymmdd) is pretty trivial but gives students an idea of what is involved.

So I did that with student in class. Step two of the Good Idea Fairy is now I have more ideas for programming projects.

The easy version is to calculate a check digit from a set of numbers entered. That’s ok. And maybe fun for a bit. But I was thinking – suppose I created a data set of numbers with check digits and had students write code to scan the file for invalid data. Or just build a new data set with the check digit added. Now those would be more interesting. That may happen soon.

What is the latest project or teaching idea the Good Idea Fairy has hit you with?

Monday, October 24, 2016

Interesting Links 24 October 2016

The two big news event around computer science last week were the Distributed Denial of Service (DDoS) attack on Dyn and the release of the new K-12 Computer Science Curriculum framework. The DDoS attack was local news for me. Dyn is located not far from where I teach and where I will be taking students for a hackathon in a few days. While I’ll be talking about the DDoS attack with my students the longest lasting news for CS education is the framework so I’ll start with a few links about that.

 Introducing the K–12 Computer Science Framework, a milestone for CS education – this is the announcement as posted by Code.Org

One of the many gifts the K12 CS Framework provides -> a glossary of CS terms!

Educators, Organizations Develop K-12 Computer Science Framework This is one of many articles about the framework. I like this one because I was interviewed for it and quoted. Smile 

Cozmo looks like a fun robot. An interesting look into how Artificial Intelligence will help robots be companions perhaps. A good thing or a bad thing? Or just a thing?

How Your First Programming Language Warps Your Brain I’m not sure I buy the premise as given in the title. What do you think?

How I'd teach computer science by @davewiner Great idea. I think a lot of university courses do this already. It’s always interesting to hear/read the thoughts of how to teach CS from people who don’t actually teach CS themselves.

Don’t forget that the  2017 CSTA Conference Call for Proposals is now open!

Monday, October 17, 2016

K–12 Computer Science Framework Released

After over a year of hard work by a lot of people (I had a small role myself) the K–12 Computer Science Framework is now officially out.

Frankly I expect some criticism. This is computer science after all and we argue more than politicians or theologians. I think it is a good start for people to build on though.

The official announcement follows below. Check it out for yourself.

After over a year of hard work and countless writing workshops, stakeholder convenings, and lots of hotel food, I couldn’t be more pleased to announce today’s news.

The Association for Computing Machinery,, Computer Science Teachers Association, Cyber Innovation Center, and National Math and Science Initiative are incredibly excited to announce the launch of the K–12 Computer Science Framework. This is a big moment for the computer science education movement in the United States. Check out this video.


Thanks to the leadership of fourteen states and four districts, the hard work of twenty-seven writers and twenty-five advisors, and the support of leaders in the corporate, nonprofit, and education sectors, there is now a framework for implementing K–12 computer science. The framework promotes a vision in which all students critically engage in computer science issues; approach problems in innovative ways; and create computational artifacts with a personal, practical, or community purpose. To achieve this vision, the framework offers a set of guidelines to inform the development of standards, curriculum, and computer science pathways, and also help school systems build capacity for teaching computer science.

A number of corporations, nonprofits, institutions, technology professionals, and notable members of the computer science education community have announced their support of the framework, including Google, Apple, Amazon, Microsoft, International Society for Technology in Education, Project Lead the Way, Southern Regional Education Board, New York City Department of Education, and professors from universities such as Stanford, Harvard, and Duke. A full list of supporters is available at

A webinar about the Framework will be held on Wednesday, October 19, at 12 PM Pacific / 3 PM Eastern. Visit for more details and to watch the webinar on the 19th.

Personal note: To all my friends in the computer science education community, thank you for your support of the framework’s development—the unity shown has been the most encouraging part of the process. Now the work of implementing the framework begins!

For more information about the K–12 Computer Science Framework, including a list of practices and concepts, visit

Pat Yongpradit, on behalf of the K–12 Computer Science Framework

Interesting Links 17 October 2016

Lots of announcements from the Computer Science Teachers Association this past week. We’ll start with them for this week’s links.

NCWIT: Recognizing females in high school in Computer Science by @dougbergmanUSA Talks about the 2017 Award for Aspirations in Computing  for high school girls.

Bill the Lizard: Books Programmers Don't Really Read – an interesting look at some books that programmers read or say they read. 

Ford CEO Mark Fields on self-driving cars and Henry Ford   Is Ford a technology company? Where does code fit in? A lot of interesting things in this interview.

Using Minecraft in Education: 30 ideas for using Minecraft in the classroom 

What Makes a Program Elegant?  Software developers are always talking about elegant code but I’ve never been sure what that means. This article gives some idea of how one person looks at the idea.

Sunday, October 16, 2016

2017 CSTA Conference Call for Proposals

The CSTA Annual Conference is my favorite conference for computer science education. I have been privileged to attend most of them over the years. And honored to present at several.  This is the conference where people doing interesting things in K-12 computer science education come together to share ideas in workshops, concurrent sessions, birds of a feather gatherings and informal conversations. If you are doing something interesting, fun, or new teaching computer science you really should submit a proposal to present here.

The Computer Science Teachers Association (CSTA) invites you to participate in the 17th Annual CSTA Conference. This event will be held July 9-11, 2017, in Baltimore, Maryland.

The CSTA 2017 Program Committee seeks proposal submissions related to the practice of teaching and learning computer science and information technology in K-12. This year, the conference is seeking 3-hour workshops, 1-hour sessions, 20-minute mini-sessions and 1-hour Birds of a Feather.  Proposals for all session types must include:

  • the names and contact information for all presenters
  • an overview of the session
  • a description of the intended audience (level, knowledge, …)
  • a description of session activity (in sufficient detail for an informed decision)
  • presenter background and presentation experience

Proposal must also include an expanded description (to be submitted as a PDF attachment) that provides the following information:

  • background for the topic to be presented
  • description of the information to be covered
  • description of why this information is relevant/useful to K-12 computer science and information technology teachers
  • description of what the attendees will learn from this presentation, and
  • description of any handouts

Presenters will have the use of a computer projector and screen. If additional equipment or facilities are required, this should be clearly requested in the proposal; it may be possible to accommodate such requests but this cannot be guaranteed. Presenters will be required to pay for their conference registration.

All proposals will be submitted through the online conference submission system that can be found at If you encounter a problem with the submission system, please contact Chris Crucetti at or Tammy Pirmann

The deadline for proposals is midnight (Hawaiian time) on November 4, 2016. Review of proposals will occur shortly thereafter and notification of a decision will be made around December 5, 2016.  All submission will be evaluated on the following criteria:

  • technical quality
  • writing and presentation
  • relevance to CSTA (focus on K-12 computer science)
  • uniqueness
  • general conference theme and needs

Successful proposers should expect to be asked to submit a draft copy of their presentation by May 8, 2017. Draft presentations will be posted on the website for attendee reference and note-taking. All final presentations will be gathered by room proctors at the end of each session. Some sessions may be selected for videotaping, which will be shared online post conference. All workshops and sessions will be photographed.

Why present at CSTA 2017? The CSTA annual conference is the only CS conference specifically dedicated to meeting the needs of K-12 computer science educators. Come network with your peers, present your great ideas, and learn best practices. Here is what some 2016 conference attendees had to say about the conference:

  • “Best session and workshops I’ve ever attended at CSTA conference!”
  • “This was my first year as a CS teacher, and I’ve heard a number of good ideas that I’m excited to research further and implement in my classroom”
  • “CSTA has very welcoming presenters, participants and volunteers”
  • “Excellent conference! Very informative and exciting!”
  • “Networking opportunities and new friendships are invaluable!
  • ‘Best conference value for my PD dollars that I have found to date!”

Additional conference details can be found at

The deadline for proposals is midnight (Hawaiian time) on November 4, 2016.

We look forward to receiving your proposals and to your attendance at the conference.

Friday, October 14, 2016

Security and the Internet of Things

Yesterday I wrote about Cars and Code about the intersection of transportation and software development. As a teaser I mentioned secure code and the need for that with our software dependent and increasingly connected cars. Car makers are talking about cars sharing information with each other about things like road conditions and weather. Great stuff as long as everyone has good intentions. That is a bit much to expect though.

The Internet of Things is growing and we are only starting to think about what that means. If you haven’t started thinking about it this cartoon from may get you started.


Thursday, October 13, 2016

Cars and Code

The other day I heard someone talk about what it might be like if car makers or other manufacturers released products the way most companies released software. Think about it. “We think the wheels will stay on but we’re looking for beta testers for our new car.” Anyone want to sign up? Probably not. And yet a lot of software is widely released so that other people can do the final testing for the company. Think about beta releases of Windows for example.

As I mulled that over during the day I found myself listening to part of an interview with the CEO of Ford Motor company. (Ford CEO Mark Fields on self-driving cars and Henry Ford) During the interview he said that the Ford F-150 has something like 150,000,000 lines of code. Ok that is a fairly meaningless number in many regards but it does highlight the amount of computing power and related dependence of software in modern cars and trucks.

Image result for google self-driving carSelf-driving cares, which Fields also talked about, will be even more dependent on software. If that doesn’t make you at least a little nervous you probably never worked on the development of commercial software.

We probably need to think a bit more seriously about software testing and quality control for software designed for self-driving cars than we do for video games. But wait there is more!

More than it works and doesn’t kill people? Yes actually. There is the whole security question. (Hackers Remotely Kill a Jeep on the Highway—With Me in It)

We really need to get more serious about writing good, secure code.