Challenging Little Coders

Welcome back.

If you remember from my last Little Coders post, I had promised to let you know how we went in the next two sessions. So, let’s talk about how I assessed the students in these sessions.

Session 4 (& 5).  We started, as I always do, reviewing our past skills. A quick game of ‘Who knows this code?’, holding up the Ozobot code block flash cards (mode 1) and having students answer individually. Then we moved on to creating a sequence on the board with our text code cards, like before the students work with me making decisions on what we will include and what we need to complete the sequence (see session 3. for more info). ozoblockly-mode-1

Then we had a go creating the code in the Ozoblockly editor, this was the easy part. Most students can now use the editor very successfully, a few make some simple errors, such as selecting a backwards code instead of a forwards code.

 

What is tricky is programming the Ozobots on the monitor, to test their sequence. A few tips to teach which are vital for success are:

  • Train the students to check the display brightness, using the buttons on the monitor. It must be set at 100% or it will not load. We work in a computer lab which the whole school uses, and other students will change the settings.
  • Train the student to calibrate the Ozobot before every program load. This is usually the number one reason for failure. You must: hold the button in on the Ozobot until it flashes white, release the button and then place on the screen, hold until it flashes green (yay, it’s working), then it will turn itself off. You are now ready to load the program.
  • Train the student to load the program. They must turn the Ozobot on and release the button before placing it on the monitor. *Do not hold the button down. With the Ozobot turned on and held in place on the monitor, click the load button. The program will load; you know it is working if it is flashing green. *If it flashes red it is not working! Redo the calibration and try again.
  • Train the the students how to run their program. They must learn to double click the button on the Ozobot to run their program. If they only click once it will not run their program.

check-listNext, I got my check list out to record what they could do, and I changed the text code sequence which was on the board. I added a few different codes and lengthened the sequence. The students were asked to create the sequence and I walked around marking off who could do what (the basics). As students finished loading their programs they called me over and demonstrated their sequence using the Ozobots. When we are watching the Ozobot, we are also looking at their code on the monitor and talking about what’s happening. This reinforces the connection of what is on the screen (the code) and what the robot is doing…is the robot flashing the right colour, has it moved forward or backward, is it turning in the right direction, etc? We actively look for any errors. We talk about the errors and I listen to what they say, what do they need to do? Can they identify, fix the error and modify the code independently? You can get a very clear picture of their knowledge. *Note: this is very time consuming, I did not get to view every student, and that is with having an extra staff member in the room to monitor the class and help students with any issues. I ended up assessing over two sessions (4 & 5), with help. Be easy on yourself and break it down into targeted groups for assessment over several classes.

What we are assessing? Basically,  can the student…

  • Use the hardware and software to meet specific objectives.
  • Create a set of sequenced steps, using provided commands for a robotic device, to make them move in an intended manner.

 

Session 6. This time I make the task more challenging and creative. The students must use the provided basic codes but they have freedom of choice in designing their own sequence in any order they wish. They can add as many steps as they like, choose any colours they wish, make choices about direction (including degrees) and wait time, and light features. I place a selection of basic codes (using the text cards) on the board, and I 2016-10-21-17-59-18ask the students to create their own sequence using the codes. The text codes include: set colour, move forward, move backwards, turn right, turn left , wait, and turn in a (circle choice). I also write on the board that they must include four special lighting or movement codes of their choice (This makes it more fun, who doesn’t want Christmas tree lights flashing, before you zig zag along?). I also stipulate that they must have between ten and twenty code blocks within the sequence.  They must then load the program onto the Ozobot, test the program and make any modifications, before showing the teacher.

Sounds fun, but where is the challenge? The challenges vary greatly depending on the student, their abilities, their choices and the criteria that you set. For instance:

  • Can they log onto the computer?
  • Can they find and open the software?
  • Can they select mode 1?
  • Can they create/design a sequence using the set codes? *Note: Students could draw/design a plan on paper to create a sequence, prior to them coding on the Ozoblockly editor.
  • Can they identify and locate the code blocks they need?
  • Can they track how many code blocks they have included? Have they used them all and met the criteria?
  • Have they snapped/joined the code blocks together?
  • Can they calibrate the robot?
  • Can they load their program onto the robot?
  • Can they run/test their program? Are they making links/connections between what code is on the screen and what the robot is doing?
  • Can they problem solve when the robot does not run as it should? (Monitor brightness, calibration, loading procedure)
  • Can they talk about their sequence, their code choices and what the robot is doing? *Note: You could have students draw their completed sequence and write what each code means after they complete the task.

Wow, I am exhausted just typing it!

Once again it boils down to our basic skills and knowledge goals: using hardware and software, reading and using a set criteria to create a sequence (algorithm), in order to get our robots moving in an intended manner.

 

Advertisements

Binary Blitz, a 0101!

Learning about binary code can be daunting for some students. Some kids will switch off when they realise it is Math! “Why are we doing math in coding class?” was the cry of outrage put to me during Friday’s class. “How come we aren’t working on the computers?” was the next question. It took a lot of convincing that what we were about to do would be interesting and fun. And fun it was, so much fun that I felt it was one of the best classes we had had. A 0101 (5) out of 0101 (5) or five star class. Everyone participated, they all enjoyed the challenge and we all learned something new, staff included.

We worked on unplugged activities, no electronic technology needed. Who needs a computer or device when you have hands?

We started off by watching two short videos available on YouTube (Ok, so there was a little bit of technology involved). There is a lot of different videos available to watch which teach the basics of binary code (Base Two). You do need to watch a few yourself to see what will work for your class. This is why we watched two, differentiation, meeting the needs of all my students. The first one we watched was ‘What are binary numbers?‘ with James May, I thought the celebrity status would help. They all know James May from Top Gear, but at the end of the video I got comments from some students “I’m confused” and “That was too confusing.”. Hence, video two ‘Intro to Binary Numbers‘ a very simple and visual explanation.

We then discussed the concept and I drew how binary numbers worked on the front board. One of the things which confuse the kids is that the numbers run right to left, not left to right, they need to see this. I then used a set of dot cards on the front board to demonstrate how it works. You can get the binary card PDF and activity ideas from the csunplugged.org site. I enlarged the individual cards to A5 size and made up seven sets, printed, glued onto coloured card and laminated.

Once the majority got the hang of it we got our textas out and drew the binary numbers on our fingers. Who doesn’t like drawing on their hands? The trick with finger binary activities is the direction, the kids must write the numbers on the correct finger and facing the right way. The problem is which way is the right way, many of the finger activities online have the hands facing a different direction. You need to pick which way you want to go with and stick to it. I used palms out to audience which means the number one is on the pinky finger. A good example of palms out can be shown here.

Image from Rosio Pavoris’s blog (link above)

binary-finger-numbers

Binary fingers image from Rosio Pavoris blog

We then played several games to get our heads thinking and working with binary numbers. First up I called out numbers for the class to make, they held up their fingers to show me the answer. Be aware that with older students’ number 4 becomes very popular. We all had a 15948105702_58bb9ec283_zgood laugh over this, tried it out on each other (this may be the only time that you can demonstrate your true feelings) and moved on. Then we paired up and challenged our partners to make various numbers. I then handed out the binary card sets to each group; it gave those struggling with the finger binary an easier visual method. While the class was practicing using cards and fingers, I went to each group and checked if each student understood the process and could demonstrate for me. This was lots of fun and the students enjoyed showing off their new skill.

The next challenge was writing the numbers in binary, ones and zeros. I called numbers from the front, they made them using either cards or fingers and then told me how to write it on the board in binary code. For instance,

10 = 8 + 0 + 0 + 2 = 1010

13 = 8 + 4 + 0 + 1 = 1101

Next we had a competition seeing who could calculate the numbers the fastest, our Education Assistant working with our Auslan student won!

During our next class we will keep working on converting decimal numbers to binary numbers, writing them as binary numbers and then explore the alphabet in binary (ASCII). It should be just as fun.

There are many different binary code/base two teaching and learning ideas and resources available online for you to use, here is a few that I like:

iPad…tick!

 

Using an iPad these days is common practice for many of us. For me it is a vital tool which I carry with me and am never without. Every day I use it for a variety of personal, work and educational purposes. Yesterday it helped me to research and purchase a new oven and dish washer, find an appliance store, watch a movie online, contact a friend, share some documents, check out my weekly lesson plans, catch up on social media, read a book, look for new teaching resources, download worksheets, and wake me up! Much like a mobile phone, iPads have become a must have tool.

Many schools are using them on a 1:1 basis or sharing classroom sets. This of course means that both teachers and students are having to learn how to use them. Luckily this is usually an easy process as iPads have been designed with the user in mind. Students quickly learn how to operate the iPad, they share what they know with their peers and often teach their teacher tips and tricks.

Recording what skills students can do with an iPad can be useful for assessment purposes book-creator-for-ipad-iconand also guide you in what you need to teach them next, with regard to operating an iPad. A couple of people had asked about check lists, so that we can tick off what they know, record the data and move on. I have created two different versions, Version 1. has the basic operating skills which all students should learn, plus skills often used when using a creative application (app) such as Explain Everything or Book Creator. explain-everythingVersion 2. has more complex operational skills which you would expect your older students to accomplish, and also has some browser skills. How you use them is up to you, a simple tick would work to indicate the student can independently use each operating feature or you could use symbols, D for developing, A for achieved, etc.

checklist

The checklists can be found on my resources curriculum page, I would suggest printing them out as an A3 document. I hope they are useful, feel free to share them around. I will be creating other checklists for various digital technology learning areas in the near future.

Assessment D.T. tasks?

Digital technology assessment? Hmmm, so we are teaching great stuff, the kids are loving it. You are learning new skills, the school has invested money for new resources and if you are lucky some great PL opportunities. You may even have had D.T. incursions or excursions, visiting robots certainly add to the buzz! The D.T. unit you developed for the term was a success, the Principal is impressed and the parents can’t stop talking about it. But really the whole point is the result, did your students achieve what was expected?

They may have mastered how to use ‘Scratch’, created a game and had lots of fun in the process, but how do you collate and record what they did when it is all digital? And are they really using computational thinking if they are just following the provided steps and dragging block code onto an editor? We may think we are teaching D.T. by engaging with these resources but perhaps we are not really challenging our students, nor collecting real evidence.

There are many resources out there that are recommended to us as being great for teaching digital technologies. Lots are FREE (Don’t we love that?) and some cost screen480x480us a great deal of money (plus time!), each has value or does it?  For example, I have used Cargo bot with a previous class. For those of you who haven’t tried it here is a video to give you some idea of how it works. It is a great app to demonstrate the use of symbolic code and it can be very challenging. In fact, so challenging that you become frustrated. For our high school students, this resulted in many students off task or students cheating by googling how to solve the various tasks/levels. Well, we did want them problem solving!

If we have to provide evidence of a student’s skill and knowledge of using this app for assessment purposes, what are we going to say? Student A got to level 3 and student B reached level 8, so student B clearly understands symbolic code, pattern and repetition (iteration), or perhaps student B is just better at googling the answers?

Let’s talk about using Ozobots. As you know I am a big fan of these little robots, to the point that I bought my own to play with before introducing them as a teaching device. The Ozobot website provides many lesson plans and workshops. There is challenges along the way and something for every age group (K-12). I have used many of the provided resources, and they are great, but still, I felt that collecting evidence of a student’s true computational thinking abilities is not always evident. Students often help each other, which is a skill we are looking for, collaborative problem solving, but when it comes to assessment for reporting it is individual. One of the ways I have been dealing with this is by modifying the supplied Ozobot lesson plan/workshop. For instance, there is a simple worksheet activity which has students draw a simple compound shaped track and then write the code needed to program the robots. Yes, I said write, a little bit of practice writing code and some evidence collection. With me, the students only attempt this after library_shapetracer-basicthey have become familiar with the basic online editor games, Shape Tracer and Shape Tracer 2.

After finishing the simple activity sheet, I set them a new task. Using graph paper and textas they must draw their own track. I set a few rules:

  • there must be seven or more objects on the page (much like a birds’ eye view of a map-buildings)
  • they must have colour changes within the route (the robots flash various colours)
  • the robots must travel around the buildings/objects
  • they need a start and finish point or they may create a loop (iteration)

I keep it simple as what I am really after is what follows. The students create very different tracks, some are very simple and some extremely complex. I then set the next task which is writing the code (sequence = algorithm) for programming the route. They have their original worksheet to refer to which has a section with the correct coding terminology and choices, such as ‘right turn 90 degrees’, ‘slight left turn 45 degrees’, etc. This helps support the students, they don’t need to concentrate on the terminology, they need to focus on reading their route and finding which code they need for their programming to run successfully. For assessment purposes it gives me an indication of whether they understand the different codes, if they can problem solve by selecting the correct code, add the extra information needed (i.e. number of steps, etc.) and create a sequence (algorithm).

The next step is block coding their written code onto the computer, we use the Ozoblockly editor to do this. Once again students need to demonstrate that they can read/understand editortheir own code, they drag and drop the block code into the required sequence (algorithm). They then program the code onto the robot (from the computer monitor) and run the programmed robot to test if their coding is correct. Here is where they find errors and correct their coding (both online & on their paper coding).

So what have they learned and what can we assess from this activity? Quite a bit, here is a few areas (from various grades) which we have covered:

  • Different types of data, and the same data can be represented in different ways (ACTDIK008)
  • Data is represented using codes (ACTDIK015)
  • Design, modify, follow and represent both diagrammatically, and in written text, simple algorithms (sequence of steps) involving branching(decisions) and iteration (repetition) (ACTDIP019)
  • Implement and use simple visual programming environments that include branching (decisions), iteration (repetition) and user input (ACTDIP020)

Anyone else have assessment ideas to share? What have you been using and doing to collect assessment data?