Sunday, August 20, 2017

Welcome to Another Year of Amazing

The summer just flies by doesn't it? It seems like just the other day I was putting everything in boxes and locking the cabinets. Now I am trying to remember where I put everything as I set up for the coming year.

For those who are new to Sinclair, welcome! For those of you returning, welcome back! I am looking forward to another exciting year in the STEM Lab. This will be the STEM Lab's 3rd year and I feel pretty comfortable saying that it is going to be the best yet. I have a wealth of projects planned that will challenge the students to think in new ways and to build things they never thought possible.

Testing the Scratchboard with
Mitch Resnick of MIT
OMG! It's Colleen Graves!
I hope that everyone had a great summer. I sure did! A definite highlight was getting the chance to attend the International Society for Technology in Education (ISTE) conference in San Antonio. It was an exciting chance to meet and learn from some some of my educational technology heroes, and to see what is new and upcoming in the field. I attended a pair of workshops led by Mitchell Resnick, one of the creators of the Scratch programming language. I met the amazing Colleen Graves the inspiration behind so many of the projects we did last year. I finally got to meet the team from ScratchEd, Willa and Karen, who wrote an awesome article about the work Sinclair's students have been doing in the STEM Lab with Scratch. I presented some of the work students did last year on the Raspberry Pi computers we have in the lab at the ISTE Raspberry Jam. Also, as part of the conference, I got the chance to become a Certified BrainPop Educator. There were so many amazing things to see and people to talk to that I cannot possibly list them all. Suffice it to say that it was a truly awesome experience.
The ScratchEd Team, Karen & Willa

I spent big part of my summer visiting family and taking my daughter to visit colleges. It was great to spend some time traveling (which many of you know is a big part of my summers) and seeing new places.

It's Moby from BrainPop!
It is going to be an incredible year in the lab! Sinclair will once again have Schlumberger sponsoring our after school coding clubs. We will continue to participate in HISD's UIL contests. The robotics club will venture into uncharted territory with Dexter Industries' GoPiGo robots. Watch for information on these opportunities in the next few weeks. As always, let me know if you have any questions. Be sure to drop by the lab during Meet the Teacher on Friday, August 25, from 4:30 to 6:45. Check the Sinclair website for more information.

Sunday, May 21, 2017

Made with Scratch, and with Scratch Jr.

For the final rotation of the year, I decided to introduce the 2nd graders to full size Scratch. I had done a few lessons with them using Scratch Jr. which is a programming tool for early readers. These lessons focused on how to use the various commands to create different movements and actions. The great successes the students had with Scratch Jr. led me the decision to take them to the next level. In doing so, I hope to have them ready to use Scratch as a means of expression in their work next year.

During the first week of the unit I had students work through the built in tutorial lessons found in Scratch. After a brief introduction to the user interface, drawing their attention to the various palettes and drawing tools, I set them to work on the "Animate your name" lesson. Students worked in partner groups as pair programmers, taking turns as drivers and navigators. This partner work helps by lending each project 2 sets of eyes to read the directions and to watch for mistakes. Over the next few days, the students made a number of different games that employed a variety of programming techniques including different kinds of loops and conditional statements.

The second week began with an introduction to using broadcasts to control the flow and action in the programs. I started with a whole group example program using a knock knock joke. In the program the sprites each say their portion of the joke at the appropriate time. This is accomplished by coding each statement the sprites say as separate script, each initiated by a broadcast. The first task I set the groups was to program a simple conversation. Many elected to copy the knock knock format, but others decided to try to create an original conversation. Keeping their broadcasts in order proved challenging to many students. As the conversations grew in length and complexity (thanks to the addition of more sprites), the number of broadcasts also grew. They worked on programming conversations and stories all week. There was some frustration when all of the sprites started talking over each other. However, there was a lot of excellent debugging practice as well. By the end of the week, most groups had succeeded in creating a story with conversations, movements, and scene changes. No two stories were alike, which is the most wonderful thing about Scratch, the amount of creative freedom students can have while still working on the same assignment.


As I had done with second grade, I also taught Scratch Jr. lessons to the kindergarten and first graders. The focus was on using the various tools and giving the students time to explore and experiment. During this final unit, I wanted to begin to teach them how to use Scratch Jr. to show what they have learned about a topic similar to what the 3rd and 4th graders have been doing. So each day we started by watching a Brain Pop Jr. movie about a different topic; parts of a plant, frog life cycles, the seasons, etc. and made some kind of illustrated foldable paper display for the information gathered. The next class, after reviewing the previous day's topic, student pairs then worked in Scratch Jr. to create a program that shared what they knew about that subject. I offered some guidance about getting started for each topic, but most of the creative choices were left to the students. They had to learn about drawing their own sprites and backgrounds. They also had to master the Scratch Jr. version of broadcasts to initiate scene changes and sprite conversations. The most truly wonderful part of watching the students work on their programs was the moment each day when a student made a discovery and called to his or her neighbor and said, "Look at this!". The neighbor would inevitably ask, "How did you do that?" at which point the first student would teach what they had learned. In this way, discoveries spread across the room from all directions like ripples in a pond.

In the end, I am so proud of the amazing work these young coders have done and I am so excited to see where they will take this learning next year.


Friday, May 5, 2017

Makey Makey-ing Interactive Displays

For the final STEM Lab rotation I wanted 3rd and 4th grade to employ all of the skills they developed this year. They constructed cardboard arcades and costumes for robotic story retells. They created a variety of Scratch projects, some to share content area knowledge, some just for fun. So I planned a unit that would require both their physical and digital making acumen. Enter the Makey Makey.

The Makey Makey is an input/output board that allows students to create circuits that act as keyboard presses. Using the programming language Scratch, students are able to create projects with an interactive dimension. The end product of this unit is an interactive poster or display that responds to the user's touch to activate the different parts of the program.

Students were organized into pairs and then used the project selector to be assigned a topic. This was the first introduction to Makey Makey for most of them. The project selector is a Scratch program I created with several lists of topics. Students pressed one of 4 foil switches left over from our STEM night, and the project told them their topic. (Third grade received a science concept, 4th was assigned an influential woman from history.) This was followed by a day of research. Student teams recorded their information in journals and then planned their Scratch projects. They grouped their facts plotting what images or animations would be on screen at the time. The teams also had to plan their physical display pieces. I showed the classes a few half done versions of the projects to give them a starting point. Most groups ended up far exceeding  my ideas in terms of creativity and skill.

With their research and planning finished, the teams began creating their Scratch projects and displays. Students learned how to insert photographs and other graphics from their research into the program. They also learned about proper citations of sources and images. The Scratch presentation required students to build scripts around key press events. For example, when the space key is pressed the background changes or an animation begins and a sprite tells a piece of information about the topic. Other key press events cause different things to happen in the program. The displays could be anything from posters to paper sculptures. There was a wonderful variety of display pieces; posters like protest signs, a 3D submarine, a model of the UNIVAC, and a diorama of the jungle.

Once both parts, digital and physical were complete, the groups used copper foil tape with a conductive adhesive to "wire" their projects. Metal fasteners were used as buttons on the outward side of the display with the wires on the reverse. The Makey Makey uses alligator clip wires to connect the contacts on the device to the copper foil wires. Each contact is designated as a particular key, space, the arrow keys and 6 letters. The user touches a ground point on the display with one hand and one of the buttons with the other, thus closing a circuit. Makey Makey signals the computer that a key was pressed. The act of wiring and testing that touching the display caused the correct response in their program was an excellent exercise in basic circuits and debugging.

As always, I have been deeply impressed with the work the students produced. Now that they are familiar with using Makey Makey I cannot wait to see what they do with it next year!


Tuesday, April 11, 2017

That is so cool! Physical Computing with Raspberry Pi

Last year I added Raspberry Pi computers to the STEM lab. My main reason for doing so was to have more computers available for my after school coding club. The more familiar I became with these amazing devices, the more I wanted to teach a whole Raspberry Pi unit to my regular classes. The problem was that I was not quite sure where or how to start. Then I was fortunate enough to be selected for the Picademy training held in Austin this past December. (I wrote about that amazing experience here.) This unit is the result of what I learned there. It is a work in progress, a "first attempt in learning" as they say at Picademy. I will take all of the lessons from this unit, including student feedback, and use that to plan Raspberry Pi units next year for at least 3rd, 4th, and 5th grade.

I decided to put the focus of this unit on physical computing, using a computer to control or respond to events in the real world. During the previous rotation in the lab, 5th graders learned to use a breadboard to build circuits using LEDs, buzzers, and buttons. These circuits were battery powered, so the set up was a little different. (That was the first thing I learned in fact, be explicit about the differences between wiring a circuit to a battery and to a Raspberry Pi.)

We started our physical programming adventure with an overview of the Raspberry Pi, paying special attention to how it differs from a "normal" computer. The Raspberry Pi was designed specifically for teaching computer programming and digital making skills to children and comes loaded with a number of programming tools and languages. One of those pre-loaded languages is Scratch. The students are already quite familiar with using the "broadcast" blocks in Scratch to tell stories and control the action of their projects. These same blocks are used to configure and control the GPIO pins that make physical computing possible. I started them off with blinking LEDs and then button operated LEDs. As red and green LEDs blinked to life, the room was filled with surprised gasps and exclamations like, "It worked!". It was one of these beautiful teaching moments when you know for certain that every student is engaged and genuinely excited about what they are doing. After their initial successes, students went wild adding LEDs and tinkering with the blink speed. The final challenge was to build a traffic lights arrangement of LEDS, operated with a button. This is a fairly complicated task, not because the sequencing of the lights is difficult, but because of the large numbers of broadcasts that are needed. I am proud of how the students I have had so far have persevered and succeeded. This part took a day longer than the two that I thought it would take, but that has not been a problem as it allowed the students extra time to experiment with their code.

.From Scratch, we moved on to Python which is text-based, unlike Scratch which uses blocks. I set them essentially the same tasks, blinking LEDs, buttons, and traffic lights, but this time they had to type everything. This took the necessity of careful attention to details to a whole different level. Python is extremely user friendly for students, but syntax and indentation does matter. At first, there many error messages. Once again, I had reason to be proud as my students, albeit with much grumbling about commas and capital letters, stuck to their work and overcame the challenges. Students having an understanding of the two languages also provided an excellent opportunity to compare them to highlight their similarities, and to dig deeper into computer science concepts like abstraction.


The final two days of the unit are a mini project in which students apply what they have learned to another program. The first group created a multiplication quiz game in Scratch with LEDs that light when the player answers, red for an incorrect response, green for the correct one. This the end of the second rotation and the students are just starting these final projects. I am experimenting with giving them a choices of final product. A few selected the multiplication quiz (those with a pronounced preference for Scratch), but most elected to work through a tutorial on programming Minecraft Pi with Python leading up to combining physical computing with events in the Minecraft world. I am so excited to see how these projects turn out, and to see what the next 2 groups achieve.

Sunday, March 5, 2017

Building Creative Confidence in K-2

The first two units of the year for kindergarten, first, and second grade were focused on computer programming and algorithmic thinking skills. They started with a unit of computer science, and then worked with robo-mouse and a bit of Scratch Jr. programming. I wanted their 3rd unit to move away from the computer for a while to do some hands-on building and making. I decided to divide the unit into two mini projects, the first focused on guided/directed building, the second much more open-ended.

The theme of week one was architecture. We began by reading the book "Iggy Peck: Architect". It's the story of an architectural prodigy whose singular passion for building at first causes friction with his classroom teacher, but ultimately saves the day. For this portion of the unit, the building materials were drinking straws and chenille sticks. My plan was to have students start by building basic 2D shapes, and then connect those shapes to make more complex figures. However, a number of classes (1st and 2nd grades) had students who independently discovered the technique of using 2 chenille sticks in one straw end to construct 3D figures. This led me to differentiate the builds a bit to account for the different levels of building acumen. For kindergarten, we focused mostly on 2D shapes and identifying their attributes. Kinder did try their hands at 3D building, but for some the fine motor coordination was too much. With first and second I stuck to my original plan of a 2D day, a 3D  day, and 2 building challenges.

Building challenge number 1 was to construct a tower that would hold a ball several inches off the table top. This challenge provided an excellent lesson in keeping one's focus on the intended function of the structure. In each rotation I had groups that built amazing towers over 2 feet tall, but that did not manage to elevate the ball because their focus was on building up, not for holding the ball. Another teachable moment from this challenge was that triangles are more stable than squares. Many groups built structures that could hold the ball, but that twisted and fell due to a lack of support when the ball was added. Some teams kept building past the point that was necessary because they did not think to test what they had built. That said, each class had teams who managed to build something to hold the ball.

The second building challenge was a bridge the could span a 12 inch distance between 2 boxes. Again, there were groups who lost sight of what they were building for and dismantled workable models because they did not take the time to test their structures. Some teams built simple beam structures, while others built triangular supports and overhead trusses.The most impressive part of the bridge challenge was seeing the students use what they had learned from failures in the first challenge to avoid making the same mistakes. As usual, with this and the first challenge, the students surprised me with their abilities and creativity.

The second part of this unit was themed on animal adaptations. We started by looking at a variety of animals and discussed their various adaptations and how they were suited to survive in their environments. Students were challenged to design an animal that was a mash-up of two or more animals, incorporating both animals' adaptations. They had to explain how each adaptation contributed to their imagined animal's success in its particular habitat. First, students drew and labeled pictures of their animals highlighting the adaptation they thought were most important. Then they built a 3D model of their animal based on their drawing using a variety of upcycled materials. Finally, they constructed a model of the animal's habitat using a file folder and the same upcycled resources they used for their animal models.

This portion of the the unit was hard on those students who are not yet fully comfortable with the creative freedom I strive to provide in the lab. They kept asking questions that started "Can I..." and "Is it OK if..." and so on. Building my students' creative confidence has been one of my personal goals this year and this unit has shown me that, while things are not yet where I would like them to be, we are moving in the right direction. From the beginning of the year to now, there is a noticeable decrease in the number of students holding their work up to me and asking, "Like this?". And that is what I call progress.

Saturday, February 18, 2017

We Need More LEDs!

We have had a busy start to the new year for the 4th and 5th graders in the STEM lab. Between half weeks, holidays, early dismissals, rain delays, and 5th graders going to camp; we have had to make some adjustments. However, we have persevered and filled our time with flashing lights and 3D design.

This unit has a two part focus, electric circuits and 3 dimensional design and printing. My goals for the electricity portion were to give the students more hands-on practice building circuits and to teach them to use bread boards and LEDs as a lead in to the physical computing unit coming up in the 4th nine weeks. As for the 3D design/printing, these classes have spent the year so far engineering and building with their hands in the physical world and I wanted them to have some exposure to designing objects in the digital realm.

We began our work on circuits by reviewing what students already knew about the topic. The students are all well versed in the vocabulary of electrical circuits, conductor, insulator, open and closed circuits, switches, and so on. We discussed the various components that we would be using and how they fit into the students' existing knowledge. New terms included resistor and breadboard. Most had heard of an LED but were not familiar with what it stands for, light emitting diode. We examined the breadboard and sketched out how the different sets of holes are connected. Then I talked the students step by step through setting up a complete circuit. The best part of this unit so far has been the loud "oohs" and "aahs" that have accompanied the moment that first LED begins to glow. From there students build circuits using the remaining LEDs and resistors. In the next lesson, students are introduced to adding a button that turns their lights on when it is pressed. This exercise provides a great teachable moment in debugging circuits because there is always a group or two that wires the button in such a way that it turns the lights off by creating a short circuit when it is pressed. Once the students master the button, I have them add a buzzer. (Truth be told, these buzzers are much louder than I thought they would be when I ordered them.) The final challenge is then to connect all 5 LEDs and the buzzer to the button. Because of the small size of the breadboards we are using, the students must figure out how to use both halves of it in order to connect all of the components.



The materials for this part of the unit were provided by the generous individuals who supported my Donors Choose grant earlier this year. I cannot thank them enough.

The other half of this unit centers on the principles of 3D design and 3D printing. Students use a series of lessons provided by Project Ignite to learn hoe to use the tools in Tinkercad. This elementary computer assisted design program allows students create 3 dimensional objects digitally. These can then be printed on the classroom 3D printer. Students must complete the lessons and demonstrate mastery of the vocabulary and tools before being allowed to design and print an original object. One issue that keeps cropping up is that students get distracted designing some truly amazing things mid lesson and lose track of what they are supposed to be doing. (I suppose they are staying true to the spirit of tinkering.) A number of students have been able to print so far, and many more have completed the lessons and will be able to design and print during the next rotation. Moving forward, this year and into next, I will have students design and print objects not for their own sake, but as parts of other projects.

Sunday, January 1, 2017

Tales of a Third Grade Robot

Frankly, I debated a bit about which robots to use with the 3rd graders this cycle, the robo-mice or the Ozobots. In the end I decided that, though the programming would be challenging for many of them, to go with the Ozobots. These smaller-than-a-golf-ball robots have 5 optical sensors in their undercarriage. The robot uses these sensors to follow dark lines against a light background as well as to read color codes that initiate a variety of pre-programmed behaviors. The Ozobot can also be programmed using blockly (as in, but I opted not to introduce that with 3rd grade.
Students began with an introduction to the Ozobot and how to handle it correctly. Then I gave them some time to explore its use with the games and code stickers in the starter kit. The second day I distributed markers and a guide to all of the color codes that Ozobots can read. Teams practiced drawing good lines and neat codes on the back of scrap paper. This hand drawing was where I anticipated students having the most difficulty and that concern was not unfounded. Ozobot is sort of flexible about lines and codes, but not too much. The sensors lose sight of lines that are too thin, and color codes that are not uniform do not register as codes. Students with a natural inclination towards neatness were creating great codes in no time, while others needed a bit of practice. Eventually everyone was able to create a line with several embedded codes that worked.

Once the classes had gotten to know the Ozobot and the codes, I assigned puzzles for them to solve. At first these were printed and placed in a plastic sleeve and student teams used the code stickers from the kit to test their solutions. This saved paper and made debugging a much simpler process. I gradually increased the complexity of the puzzles, some of which had multiple solutions. Finally, we conducted an experiment to determine if the turn choices made by the Ozobots were indeed random.

To conclude the unit, students were challenged with a language arts themed project. Their task was to use the Ozobot and a team created story map to retell a familiar story. I showed a couple of examples and lead a discussion of how different codes might be used in different stories. For example, use the "nitro boost" for Goldilocks running from the bears, or "tornado" when the wolf blows down each little pig's house. Each team was allowed to choose whatever story they wished and used the design process recording sheet to brainstorm, plan, and document the creation of their map and pathway codes. Groups had 3-4 days for this project, so they had to make the most of their time. 

Not every group was able to get a polished story map and presentation created within the time constraint. Some teams were overly ambitious and took on too long a story. Others got carried away with background details and neglected to adequately test their lines and codes so that when it came time to present, the Ozobot did not behave as intended. Regardless, of exactly how much they got done, each team did an amazing job of working through the parts of the design process. Time may have prevented some from finishing, but everyone learned something about project management which I saw in the unit reflections they submitted.