Tag Archives: Cargo-Bot

Next Year Will Be Even Better – Programming for Kids

from www.tynker.com
from www.tynker.com

For many of us, at least in the United States, another school year is over.  Even as we eagerly embark on our rejuvenation journeys for the summer, you might be thinking, as I am, of new ideas for the next school year.  This week, I would like to share some of the improvements I hope to make in my classroom for the 2013-2014 school year.  Today’s post is about the benefits of teaching programming to our students.

If you are a regular reader of this blog, you have probably noticed that I am a huge advocate for teaching programming to kids.  You can see this trend building in a lot of the education blogs and professional publications.  Like all trends, it needs to be done right so that it will not be a colossal failure or a “flash in the pan.” Here is why it should be done, and how I plan on doing it next year in my classroom.

Why We Should Teach Programming to Kids

I think that there is a misconception that this is all about teaching kids a new “language” that is useful in the career market. While that is, perhaps, one of the benefits, I think that it should not be the main purpose.  Programming languages evolve quickly, and teaching a specific one might be likened to teaching Latin.  It can help you to decode other languages, but it is unlikely you will use it daily.

I learned Basic when I was in high school.  I haven’t used it since.  But I still remember some very important lessons that I learned in that class that can be extrapolated for real life.

The most important lesson was that, if you are not getting the results you want, you can’t keep doing the same thing.  I remember the first couple of times a program did not work the way I wanted it to, and I kept saying to the computer, “That’s not what you’re supposed to be doing.”

Once I realized that I only had myself to blame, I would set about finding out what I had done wrong.  This led to the next life lesson – find the real source of the problem or your “fix” will make things worse.  Sometimes I had to dig deep into the code to figure it out, but would not realize that until I had tried one or two simple revisions that would end in disaster.

When programming, you also advance through the Scientific Process, and learn to change one variable at a time if your conclusion is not what you expected.

And finally, programming is not all about logic.  Once you understand the code, you can use your imagination to create unusual, unique, and even beautiful programs.

What I Plan to Do Next Year

As some of my colleagues pointed out this year, Programming falls very easily into something that we already have in our curriculum for elementary gifted students – Systems Thinking.  Now that I am becoming familiar with Tynker through the online summer class I’m offering, I plan to use Tynker with my 3rd graders during our Systems Thinking unit.  If you want to start anywhere with programming (from about 7 or 8 years old and up), I would highly recommend Tynker as you can create classes and monitor student progress very easily.  Plus, it has an engaging curriculum of projects.

I want to weave programming throughout my K-5 gifted classes, so I will begin my Kinders with the iPad app Daisy the Dinosaur. For 1st, we will move on to Kodable, and for second, Hopscotch.  (I may switch these last 2 around – I need to play with them more to determine difficulty levels.)

3rd grade, as I mentioned, will do Tynker.  4th grade will work on Cargo-Bot.  And, 5th grade will work with Gamestar Mechanic (which is web-based).

If you have any suggestions, please feel free to comment.  Also, for even more links for Programming for Kids, feel free to visit my Pinterest board on this topic.

More Ideas for Programming for Kids

monster2

In the past, I have posted about some options for kids that are available to help them learn about programming:   Codecademy and the iOS apps Cargo-Bot and Daisy the Dinosaur.  I also briefly mentioned Gamestar Mechanic in one of my posts.  Many of my 5th graders have been using Gamestar Mechanic, which you can find here, during their Genius Hour time.  Another option would be programming robots, such as in the Lego Mindstorms program.

Since October, I have co-sponsored a “Code Academy” after school club, using the after-school program from Codecademy that I had read about earlier that year.  It has definitely had its ups and downs.  The Pros are:  it is a very in-depth program that teaches web design and Java, it keeps track of your progress, and it offers badges when you reach certain benchmarks.  The Cons are:  it is not compatible with Internet Explorer (which keeps becoming the default browser on our lab computers despite all of my attempts to change it to Chrome), it sometimes does not explain a lesson well, students must provide an e-mail to create an account, and some of the lessons are very wordy (we have 3rd-5th graders in the club, and some of it is a bit difficult for the 3rd graders to comprehend).

For today’s meeting, I gave the students the option of continuing with Codecademy, or to try a new site called Code Monster that I had learned about from Richard Byrne’s blog.  Once the students heard the word, “Monster”, I think they were sold.  By the end of our club meeting, nearly every student in the club had switched to Code Monster.

Here are the Pros of Code Monster: visually attractive to kids, minimal words to teach each lesson, no login or email necessary.  The Cons are:  no tracking of progress and it also seems to be incompatible with IE (at least the version on our computers).  The good news is that if you use the same computer each time you open Code Monster, you will return to the lesson where you stopped.  You can also click on the link for “Lesson Sections” at the bottom of the page to choose a new lesson.  I would emphasize to the students that they need to go in order, however, as the lessons build upon each other.

Code Monster seemed to work pretty well for our 3rd-5th graders.  Crunchzilla also has a site called Code Maven, which is for teens and adults.  I have not tried that one, yet.

I have embedded a TED video below, which is called “Let’s Teach Kids to Code.”  Mitch Resnick is the speaker, and he is one of the creators of Scratch, another great (and free) option for learning how to program.

Kids learn so much from programming: logic, problem-solving, and persistence.  It seems like there are more resources available every day – and you will find that the students are more than willing to try them.

Daisy the Dinosaur

Daisy the Dinosaur is an iPad app that teaches basic programming to young children.  It has a Challenge Mode, in which the user is given 5 challenges that increase in difficulty, beginning with programming the dinosaur to walk forward.  In Freeplay Mode, the user can experiment with several different commands, including making Daisy grow or shrink.

I think that this app is perfectly appropriate for students as young as Kindergarten.  They may need some help with the reading, but will enjoy solving the problems.  My daughter is 9, and I handed her this app with no instructions.  With no previous experience in programming, it took her a few minutes to understand her task in a couple of the challenges, but she quickly resolved them.  She loved the Freeplay Mode, and was very disappointed that there weren’t any more challenges after the 5th in Challenge Mode.

Daisy the Dinosaur is a good introduction to programming.  If you have a child that catches on to Daisy pretty quickly, you might want to also let them try Cargo-Bot, another free programming app.  I reviewed Cargo-Bot previously on this blog.  Cargo-bot is addictively fun, but is definitely aimed toward older children (probably at least 9 or 10).  Another way to hook children in that age range, although much more complex and expensive, is to get them involved in Robotics using the Lego Mindstorms kit.

All of the above activities are fabulous for working on problem-solving skills, logic, and perseverance.  Even if you have never learned programming, give Daisy the Dinosaur a try, and I have a feeling you will understand how easily it can engage our students.

Cargo-Bot

Cargo-Bot is a free iApp that I can’t decide if I love or hate.  Currently, I am stuck on one of the levels – and it’s in the Easy Category.  But, I can’t stop!  I will keep working on it until I figure it out.  This is why it would probably be a good app for gifted students.  They need challenges that they cannot immediately solve, but that they really want to unravel.

While navigating Cargo-Bot, users are learning the basics of computer programming.  This may not sound like fun, but this app is strangely alluring with its simplicity.  The user is asked to direct the program to move colored crates into certain configurations.  It gives tutorials, and then progresses to the challenges, which begin at Easy.  After Medium and Hard are the Crazy and Impossible levels.  I am halfway through Easy.  I think this says more about my ability to do logic than it does about the difficulty of the app…