And How Was Your Day?

Today was the start of Computer Science Education Week and I was excited to get it started and then ….

Got this email … High Hour of Code traffic – progress not being saved
Uh oh, I was concerned that my plans for 6th grade would have a problem especially when you add the fact that we have slow Internet access and computers without much memory. I was also afraid that students might not be able to share the work they created when they completed the final level – luckily, they can. Whew!! Anyway, I reworked plans for 6th grade quickly and plan to have them try Code.org’s Dance Party later this week.

What can possibly go wrong with an Unplugged Activity?
My 3rd-5th graders are starting their #CSEdWeek activities with Code.org’s Dance Party Unplugged. So, I got to school and opened the Spotify link for the Dance Party playlist and uh oh, it wouldn’t open on my computer at school. I couldn’t track down what exactly was missing and clicking on the link provided did nothing so … plan B. I pulled out my Chromebook, found some speakers, which was more difficult than you might think since they needed USB for power and the Chromebook has USB-C, and used the Chromebook to play the music. After the set up issues the Unplugged Dance Party was enjoyed by all.

This Plugin is Not Supported
5th grade finished in time to start on the coding portion of their #CSEdWeek activity. This should have been a no brainer because the plan was to code a dance party in Scratch. We have used Scratch many times in the past. We have used other Flash based sites often. For some reason today, going to a website that used Flash just told us that the plugin was not supported. So, I decided we should try it on Firefox instead of Chromium since we had used it on Firefox all last year. Well, that just kept crashing the Firefox browser. Uh oh! So, plan B time again. Luckily, the Scratch 3.0 beta seems to run just fine on Chromium so 5th grade started their programming project there. I am a bit concerned with my 3rd graders having to download to save and upload to open on this but it will be learning opportunity for them! Guess that means I need to redo all of my video tutorials for this on Scratch 3.0 and add two for “saving” and “opening”, as well.

I’m hopeful that tomorrow will be a better day!

Robots: Future Overlords or Devices for Learning?

I had the privilege to guest moderate #TynkerChat on Twitter on March 27th and I thought I’d take this opportunity to answer the chat questions in more depth. It’s hard to share everything in 140 characters!

Why would we want to use robots to teach coding/computer science to students?

There is so much available to teach students coding these days, so why would we spend money on robots when there are free apps or websites available? There’s just something amazing about putting a robot into the hands of a student, whether they’ve had to build the robot or they’re just programming it. Seeing something like a robot do what you’ve told it to do helps students to understand that robots and computers aren’t magic. They need someone to tell them what to do! Also, providing the tactile, physical experience of a robot is a great way to reach many of our learners and it forces them to slow down and think about what they need to do in order to program the robot to do what they want it to do.

What robots are available for student learning and which do you use and why?

There are many options for robots for learning these days and there seem to be new ones every month. Here’s what my students have been using this year. I’m not going to go into detail about how to use these robots – that’s a whole different post!

  • Bee-Bot & Robot Mouse: These are perfect for young learners and don’t require any device except the robot. They help to teach directions and sequencing and problem solving and collaboration in a physical way just by pushing buttons on the robot and they can be integrated into any curricular area.
  • Cubetto: I bought this (and I only have one) to try some programming with our preschoolers. I haven’t used it with them yet but my kindergarten students have had fun with it. Cubetto comes with a story book and story mat which is a great introduction to how the robot works. Students program this robot with blocks that fit into control board and no electronic device is needed, so this is a very physical way to write and debug algorithms. If you’re looking for ideas of what to do with Cubetto, there are lots of ideas here.
  • Dash & Dot: Dash and Dot are really versatile and very cute as well. My younger students have used them with apps that let the students “program” the robots by drawing a path for the robot to follow. My older elementary students use the Wonder Workshop coding apps and the Tickle app.
  • Sphero: Some people think of Sphero as only for older students but I have used them with 1st grade through middle school. I highly recommend the Lightning Lab app (you can even export data from your programs on this one!), the Tickle app, and Tynker app for working with Sphero. If you have Chromebooks, you can even program Sphero on those as well. There are a lot of ideas for using Sphero on the Lightning Lab website.

Why these? Well, these are the robots we have and I have found them to be pretty versatile. They let my students learn not only computer science concepts but I can easily integrate them into other curricular areas as well. We also have a couple of mBots and some Lego WeDo that I’m hoping we have time to use this year and if not, there’s always next year! I would really like to get into more building of robots next year so I would love more mBots, more WeDo (original & WeDo 2), and Hummingbird Robotic Kits.

Teachers may often have one or only a few robots. How can they still be used effectively?

First, robots should not be a 1:1 experience. Robots should be used in pairs or small groups. Part of the magic of robots for educators is that students are not only learning how to write and debug programs to control a robot, they may also be learning or reviewing other curricular content, and they are learning to communicate and collaborate with one another and share roles and responsibilities.

For example, when my younger students work with Bee-Bot, they often work in groups of three where one person is the human robot, another is the coder/debugger, and the third is the robot programmer. The human robot actually walks the mat as the robot programmer tells them where to move. As they are doing this, the coder/debugger lays out coding cards or writes the code on an erasable white board. Once the human robot has reached the goal, the coder reads back the code and the robot programmer pushes the buttons on the Bee-Bot to program it. When the robot programmer presses GO on the robot, the coder/debugger keeps track of which command Bee-Bot is on so they can fix the code if needed. Students then switch roles so all students have the chance to perform all roles. For older students, there should also be assigned roles which might be things like the programmer, the robot handler, and the debugger. Again, students would switch roles regularly so all students have a chance to be responsible for all roles.

Even in groups of three, teachers may still not have enough robots for all students to be using them at the same time. Here are some ideas if that’s the case:

  • Use robots in a small group center so that one or two robots can be used for an entire class as they rotate through the center. Yes, even for older students!
  • Have some students using robots while other students are doing “robot programming” on apps and/or websites. It is still a good idea to pair students when they are doing these activities as well. Have one student be the driver (the person at the keyboard or holding the tablet) and the other is the navigator who helps to write the code (but does not touch the tablet or keyboard) and debug any problems. Again, students should switch roles often. I like to have them do this either when they have solved a level (in a puzzle type app) or on a specific time schedule, like every 5 minutes. Some “robot programming” apps and websites are listed below. There are other apps available beyond what are listed here but these should get you started.
    • Bee-Bot Emulator: This is great if you have Bee-Bots because you can often have the students working online doing the same activity as those using robots except the students using the emulator are programming a virtual Bee-Bot. For example, if you are having students program Bee-Bot to the beginning letter sounds of words, you can give both the students working with the real Bee-Bot and the students using the emulator the same picture cards so they can be navigating on a ABC mat to the beginning letter sound in either case.
    • Bee-Bot App: If you have iPads, this is a good app to use when students are working with Bee-Bot since in the app they are also programming a Bee-Bot. Again, pair students and have both a navigator who lays out coding cards or writes the program on an erasable white board as the driver figures out the code in the app. This app does not keep track of the commands that are entered so writing down the program is important in order to debug.
    • Bits & Bricks: If you are using Lego WeDo 2 or if your students just like Legos, this is a great companion website to use since it features Bit the Robot who is very similar to one of the robots you might build with Lego WeDo 2.
    • RoboBlockly: RoboBlockly is a web-based robot simulation environment that lets students program virtual Linkbot and Lego Mindstorms NXT/EV3 robots.
    • RobotMesh Studio: Program a virtual VEX IQ robot called Mimic.
    • NASA Rover: Program a virtual NASA Rover
    • RoboMind Academy: Program Robo through a series of levels.
    • StarWars Hour of Code: Program BB8 and R2D2 through a series of levels and create your own game at the end. Can program either with blocks or Javascript. Really fun to do if you happen to have a Sphero BB8 robot that you can then program with the Tickle app when you’re done.
    • Lightbot: Lightbot has apps available for most devices and a Flash version on the web. All of these feature a small robot that you program through a series of levels.
    • Fix the Factory: This game use Lego Mindstorm robots which go through a series of levels to fix a factory and works on iPads and Android tablets. There is also a web version but it won’t run on the Chrome browser or on Chromebooks.

Considering the cost of robots, how can we help more teachers & students have access to them?

In order to get robots, you may need to do some fundraising. Donors Choose is the most well known option available and is a great one to try if you are a public school teacher. Unfortunately, I teach in a private school so DonorsChoose is not an option for me but here are some crowdsourced fundraising sites that private school (and public school) teachers can try:

Some schools and districts now have robot lending libraries. If yours doesn’t check out the Finch Robot Loan Program and if you’re a member of CUE, check out the CUE STEAMPunk Mobile Labs.

So, are you using robots with your students? Which ones?

Thoughts Halfway Through Qtr 1

I do think this is going to be a great year!

  • I am loving using Google Classroom with 2nd-8th Grade. I’m even thinking of trying it with 1st Grade soon and maybe even Kindergarten before the end of the year!
  • Our Middle School Language Arts teacher is also using Google Apps – Classroom & Docs – for essays and book reports this year.
  • There are multiple teachers at my school who are working on building their own classroom websites this year.
  • II have a 3rd grader who types 63wpm! I had nothing to do with this but it is inspiring others to work on their keyboarding skills.
  • 1st Grade had the chance to work with Bee-Bot last week and I’m looking forward to more work with robots and coding coming up.
  • I’m going to have the opportunity to present and share at quite a few tech events in the next couple of months.

How’s your year going so far?

How Can I “Scratch” on an iPad?

At my school, coding is done during classes in the Computer Lab which means it’s typically done on desktop computers. As I have mentioned in the past, my students often use Scratch to create games and to show what they know in other curricular areas. I do have a couple of iPads and a few Android tablets that I can and do use with students. For events like the Hour of Code, I will also sometimes borrow tablets from parents for student use. I am always on the lookout for coding apps on tablets and mostly on iPads because that’s what I can usually borrow.

I also do presentations and training sessions on coding at tech fairs and conferences. I always say that coding can be used across the curriculum to let students show what they know using code and I firmly believe this is true. In order to use coding across the curriculum, it is helpful for coding apps (and websites) to allow students to:

  • Tell stories which means sprites (characters) must be able to be customized and must be able to interact with other sprites (characters)
  • Create quizzes (and games) which means there should be a way to notify if a question is answered correctly or not or if a game is won or lost; often this means a way to keep score
  • Use math calculations
  • Draw pictures with code
  • Import custom images and sounds

Since many schools these days have 1:1 iPads, I am often asked about block-based coding on iPads. Okay, to be honest, the question I am usually asked is, “Can I run Scratch on the iPad?

Unfortunately, since Scratch is written in Flash, it doesn’t run on the iPad or most other tablets. There are other block-based coding options that run on the iPad (and some on Android tablets, as well) but none I have found have all of the capabilities that Scratch does for creating cross-curricular projects.

Here are some block-based coding apps that I use and recommend. These all let students create projects starting with a blank canvas:

Link to Spreadsheet

Do you have a block-based coding app or website (that runs on the Safari or Chrome browser on an iPad) that you feel is a perfect replacement for Scratch on the iPad? Please share!

Planning for the Hour of Code

Last year all of my Kindergarten through 8th grade students participated in the Hour of Code. It was a truly great week in the lab and amazing to be a part of 15 million+ participating.

Kodable - 1st GradeMiddle School - App Inventor and Touch Develop

Plans are underway again this year for the Hour of Code in the lab. Can Hour of Code really have 100 million participants this year? The Hour of Code at our school will be a “teaser” for a larger Computer Science unit that will be happening during the second semester. I had hoped to have a Family Coding Night as part of our Hour of Code activities this year. December is so busy with holiday activities that I don’t think that will be happening this year but it may be something we do in the spring instead.

My goal with the Hour of Code is to get the students excited about the possibilities in Computer Science and to, hopefully, create something. Last year, we used a lot of leveled coding puzzles which are great and teach coding concepts but don’t really create anything.

This year, I would like to concentrate on creation options with coding as much as possible assuming we can overcome our technical issues:

  • Only 2 iPads available (without borrowing from parents)
  • Some online apps (Tynker, for example) don’t run well with the memory and/or bandwidth in the lab

Assuming I can borrow the iPads needed and that our computers & bandwidth can support the web apps, here are the plans for the Hour of Code at our school this year:

Oops, as you can see, I’m not quite sure about Middle School yet. I need to do some testing on the computers at school to see if the Processing and/or Khan Academy will work with our bandwidth and memory.

What are your plans for the Hour of Code?