Step 2 of the Girl Scout Senior Programming Robots badge asks the kid to build a robot arm. Step 2 of the Ambassador Programming Robots badge asks the kid to build a motorized robot.
Let's streamline the process of mentoring a Girl Scout Senior and Girl Scout Ambassador through earning this badge together by asking them each to build a motorized robotic arm!
You guys, these kits were TOUGH!!! I would consider both my kids adept at reading and following step-by-step directions, possibly even a little more adept than your average teenagers, just because we do a lot of step-by-step tutorials and crafts and hands-on activities in our homeschool. But they both struggled quite a bit with these robotic arm kits, and each made several mistakes that they had to go back and troubleshoot.
The older kid wasn't quite as careful as her sister, and she even managed to break a couple of pieces--she stripped a screw that she really needed to be able to unscrew to get back into the plastic casing to see what she'd done wrong (she'd put a piece of the motor on backwards), and she accidentally pulled a wire off of its connection. That one, at least, was an excellent learning opportunity, as it then became the first time she ever stripped wires and soldered them to their connection:
It was VERY satisfying when the motor then worked perfectly!
Other than the couple of times they got stuck (and thank goodness their grandfather happened to be visiting, because he had the patience both to compare every step of the instructions to their work to find the mistakes, and to sometimes disassemble the robotic arm back to that step so they could try it again), they mostly worked peacefully while we listened to podcasts together. We got through the entire 36 Questions podcast while DIYing robotic arms!
Finally, all you have to do is assemble the battery case and add SO MANY BATTERIES--
--and then you've got a fully functional robotic arm all of your very own!
You can see in this photo how a little hot glue was also required. The older kid was so rough on her poor robotic arm!
These robotic arms have already come in handy for more than just earning Step 2 of the Programming Robots badge. The older kid is at work on the Ambassador Designing Robots badge, and used her robotic arm, along with some of the hydraulics that were last used building a cardboard robotic arm the last time the kids earned the Programming Robots badge at the Cadette and Senior levels to make a working model of a robot that could dispense a drink into a cup.
The kids will soon have yet another use for their robotic arms, as well, as for Step 5 of this badge, they'll each be using the USB Interface Kit to write a program for their robotic arm. So it's a good thing that they got their robotic arms working... even if it did require a bit more hot glue and duct tape than I'd been expecting!
P.S. Want to know more about all the weird math I have my kids do, as well as our other wanderings and wonderings? Check out my Facebook page!
None of my Girl Scouts, including my own kids--and especially including me!--have ever been super enthused by the Girl Scout Journeys. Some are definitely better than others, and Will, who's obsessed with earning badges and awards, always completes the three Journeys needed to Summit at every level, but I'm not gonna lie--my favorite thing about the Think Like a Programmer Journey is how fairly quick and straightforward it was.
Technically, you can complete the Think Like a Programmer Journey without touching a computer, as its focus is on teaching the process of computational thinking that programmers use, not on actually, literally programming. But incorporating actual, literal programming made the Journey a LOT more interesting to the kids, and added additional STEM enrichment into our school days.
As the intro to the Journey, we watched this Code.org video about how computers organize, process, and represent information:
We discussed a couple of ideas related to this video: 1) the importance of programming solutions that are workable and understandable to the user (not just the programmer), and 2) computational thinking as a method of problem-solving that breaks down problems to manageable bits and works towards solutions that are beneficial to the user--not just the programmer!
These ideas are applicable to Girl Scouts in a lot of ways, particularly in the ways that we try to be of service. Because Girl Scouts often requires Girl Scouts to create and enact service projects in order to earn awards--or even badges, sometimes!--it can be VERY tempting to get some of these service projects done in ways that are expedient for the Girl Scouts, and not necessarily in ways that best serve the beneficiaries. It never hurts, then, to have a reminder that the beneficiaries of our projects are the ones who need to be able to understand and work with our solutions--and in a real way, not just the kind of surface level that could earn a kid a Journey but that we all know good and well isn't going to result in any kind of lasting change for the better.
To that end, the kids started a working doc in which they practiced coming up with needs/problems and proposed solutions for various user groups. They worked in the document periodically throughout this Journey, and if you read down their lists you can actually see them begin to be more thoughtful and detailed, and to think more deeply and specifically about the real needs and problems of their user groups.
I'd actually anticipated that something on this list would eventually inspire their TAP, but nope! If only life/Girl Scouts was that easy!
On another day, the kids and I explored how language choice affects the value of a solution. Fortunately, I've been telling the kids for their entire lives (usually after they've smugly corrected someone's grammar, but sometimes right before I correct their own grammar, ahem) that "effective communication is good communication." In other words, if you get your point across, that's good communication, whether you've gotten your point across using invented spelling because you're newly literate or lots of gestures combined with a very limited vocabulary because you're in Quebec trying out your Parisian French 101 on a French-Canadian hotel clerk.
Ahem.
The point is that a programmer is in charge of figuring out the most effective way to organize and represent knowledge and information, and any method of effective communication is fair game.
To practice this, the kids tried out the Representing the Alphabet Activity for the CSA Think Like a Programmer Journey in the Volunteer Toolkit.
I wouldn't usually do all this printing and cutting for a single activity, and I did think about trying to substitute LEGOs, but whatever:
I really like how each kid chose to represent her word using a completely different method. Syd's uses a vertical two-animal pair to represent each letter--
--while Will's relies on a very precise arrangement of stacked papers:
And yet they were both able to read the other's words without struggle! Yay for good communication!
Before sending the kids to work on their user groups doc some more, I helped them make the connection that they can approach a problem the same way they approached a message to be decoded--by working backwards and illuminating the underlying algorithm. If only every problem had its handy-dandy decoding sheet all written out for us!
Another day's lesson was also a real-life programming activity: binary!!! I got out the white board to teach the kids how to read and count in binary, discussing, as well, some other number systems that use different bases. The Sumerians, for instance, used a sexagesimal system!
To make sure they grasped the concept, I gave the kids this set of binary puzzles to work. One of them needed a couple of tries, but in the end they both mastered Base 2! That meant that I could tell them that these ones and zeros are also called bits, and you can use a bitmap to visually represent the information encoded in binary... or you can use it to make a picture! We Google Imaged some examples of bitmaps, then the kids used the Pixelation widget on Code.org to make their own. They enjoyed the open-ended free play of creating black and white and color pixel images, while practicing their binary and learning hexadecimal.
Our special activity for this Journey was building a computer from a kit:
The Kano kit is a super fun walk-through of assembling the parts of a computer, then setting it up. It's got Raspberry Pi to support more sophisticated programming activities, or a variety of add-ons that you could purchase to give a younger kid different coding experiences.
After building the computer, we used another computer analogy to think about user-centered needs. If every need/problem is an output, then the reasons why a problem is happening or a need is occurring are the inputs. You can decode the problem the way that we decoded the animal alphabets, trying to figure out the inputs. When you think you understand the input, you can work towards a solution that changes that input and produces a better output.
The kids did some more programming in later days--Will made me a table tennis game, for one!--and played with our Turing Tumble, but once kids understand the concept of computational thinking, they're actually ready to use computational thinking to solve a community problem.
The kids' TAP dealt with the deficit of good educational materials to teach the Robotics badges, especially to younger levels. When we were learning the parts of a robot, the kids made their own graphics, diagrams, and definition cards, but it's probable that most troops wouldn't have that kind of time. But those visual, tactile learners still need to learn the material!
To solve the problem, the kids created this set of educational materials that can be presented online or printed.
If printed, they can be copied at different sizes and the definitions can be used to label the robot graphic. It's a pretty nifty plan, and you can tell that a couple of homeschooled kids who've had a heavily Montessori-inspired education created it!
Computers playing games is the theme used to introduce Girl Scouts to the Ambassador Programming Robots badge, and it's a pretty brilliant theme! There are all kinds of great pop culture references to game-playing computers, and kids have all kinds of experiences playing against computers in all kinds of games.
The first thing we did for this Journey is, obviously, watch Wargames! Happily, it's currently free with ads on YouTube:
I LOVE Wargames as the ultimate computer hacker, retro, semi-apocalyptic vision of what living with all-powerful computers can be and the importance of careful programming.
It also has the ultimate pro tip for how to butter your corn on the cob. Watch for it, and thank me later.
Deep Blue and Watson are real examples of computers learning how to play games, and fortunately, there are also tons of easily available videos covering the process of creating, programming, testing, and troubleshooting the computers. Here are two of the several that we watched:
There's so much more to get into, though, if your kids are interested. You can replay those literal chess games, following the algorithms or going off on your own, or talk about Jeopardy game theory--all of that is not just super interesting, but increases a kid's appreciation of all the variables that go into creating a computer program that can not only mimic game play, but win it!
After all that, what better way to model this process of teaching a computer how to play a game than by playing that Wargames gold standard, Tic-Tac-Toe?
First, the kids and I all played a few (million) games of Tic-Tac-Toe, because Tic-Tac-Toe is never not fun.
Next, I reviewed the concept of the algorithm, and then modeled playing Tic-Tac-Toe while following a set algorithm... a program, doncha know?
Then, I challenged each of the kids to create an algorithm for winning a game of Tic-Tac-Toe. The rules are to create a step-by-step program that they must follow exactly when playing an opponent, but they may use "OR" and "IF...THEN" commands.
And then... we played!
Yes, Will's algorithm is written in red Sharpie on her arm. No, I don't know why.
We tried some various permutations of a computer playing against a person, two computers playing each other, playing X vs. O, etc.:
Syd's algorithm gave her a sneaky advantage, as she insisted that in order to correctly follow the program, the computer MUST play X:
Gives one a bit of a hometown advantage, I do believe!
The ultimate lesson, of course, is the same one that Joshua learned during Wargames--you can't really bank on winning Tic-Tac-Toe. Especially if you're the human playing against the algorithm, you can use your own creativity and spontaneity against the program.
If you want to write a program, then, you need to write it with these caveats in mind: 1) A computer can only do what you've programmed it to do, and 2) humans don't have programming, so they can do literally ANYTHING.
If you want to offer another type of model to help kids develop a more nuanced definition of programming, you can also show them mathematical map coloring. A strategy is just another term for "algorithm," so kids could also develop their strategy for four-color map coloring, then test it, problem-solve it, give it to another kid to beta test, etc.
P.S. If you want to sneak in some high school English credit, have your kid read Ender's Game and write a paper comparing it to Wargames. They both came out at about the same time, with a historical background of the Cold War. They're both about gamifying war by manipulating beings who do not have the lived experience to throw off these manipulations, and they both question how the use of technology affects culpability. Powerful stuff, and issues that it's really good for teenagers to explore.
P.P.S. I'm overly attached to my Craft Knife Facebook page, and I post there way too often. Come find me!
If your kid isn't tooling around with Raspberry Pi, are you even a homeschooler?
We finally joined the world of homeschoolers who tool around with Raspberry Pi thanks to this Kano computer kit:
We've actually had it for ages, with Syd, especially, eager to unbox it and play, but dang, did her public school schedule leave zero time for any extracurricular educational fun! This summer, though, I've been taking both kids through the Girl Scout CSA Think Like a Programmer Journey--Syd needs a Journey under her belt so she can start thinking about Gold, and Will, as usual, wants to Summit at the Ambassador level. Even though the Think Like a Programmer Journey is more about learning and utilizing the logical, step-by-step, user-centered problem-solving sequence that programmers use than about actual, literal computer programming, you know I had to sneak in the actual, literal computer programming.
Starting with putting together your own computer!
The manual is super cute and perfectly suited to walking even young kids through assembling the computer parts while explaining what each part is, what it does, and how it works with the other parts:
And when you're finished, you hook it up to the TV, which the kids thought was exceptionally fun and charming:
The little games and apps that are already installed on the Kano are below the kids' interest and experience level, unfortunately, although they did play around with them a bit. What we're most looking forward, to, though, is playing around more with that Raspberry Pi! I have requested just about every iteration of Raspberry Pi for Dummy Idiot Kids books for us from the library, and I hope that soon the Raspberry Pi programming experimentation will commence!
After you learn how to program robots, you can focus on how to design them to both meet specific challenges AND be pleasing for others to experience.
The kids learned a LOT about robots during our Programming Robots study, and I'm excited for them to be able to make use of that knowledge while they develop creative solutions to problems that they find interesting.
First, though, we've got to figure out what it means to "design" a robot, what the qualities of good design are, and how to think about problem-solving in a way that encourages good design.
I really love the emphasis, here, on research to find out what the intended users' needs and experiences are. Skipping that step results not just in bad design, but bad charity projects, bad business start-ups, bad Christmas gifts, bad social justice efforts... bad everything! Putting people first, and really taking the time and effort to meet them where they actually are, so that you can serve them in the ways that most benefit them, is crucial. It's the first step in everything from solving world hunger to fighting racism.
Before we get started on designing robots for real, I wanted the kids to have the chance to play around with some fun and easy designs, just to get the idea of how design can transform an object. I gave them this recycled robots kit (that I checked out from the LIBRARY!!!!!)--
--and told them to build me any kind of automaton that they wanted.
Their automatons turned out useless and adorable, just they way we wanted them to be!
As well as being cute and fun, this activity is a good example of "bad" design. Sure, the little automatons are cute and fun, but they're also useless, and their designs are meaningless. There's no particular reason for any given design feature, and although aesthetics IS a good reason for some design decisions, each decision should still have a reason for why you did it that way.
If I had this lesson to do again, I'd have the kids make their recycled robots first, then constructively critique them after learning about the Design Thinking process, and THEN redesign them on paper or as a model so that they actually DO fulfill a purpose or solve a problem.
...Actually... I may do that last part as our next robotics lesson!
Origami isn't one of our enduring passions, but it IS super fun, and I'm always stoked whenever something randomly reminds me that, "Hey! We like origami! I should get a bunch of how-to books from the library and make an evening of it!"
This time, it was reading the leader manual for the Girl Scout Cadette Designing Robots badge, and noticing that origami is one of the suggested starting activities for Step 1: Pick a challenge.
Hey! We like origami! I should get a bunch of how-to books from the library and make an evening of it!
Which, with the addition of the first season of The Unbreakable Kimmy Schmidt (on DVD, also from the library), is exactly what we did:
I busied myself make the stars from Hello Origami, trying to get the folds even and then making myself an entire rainbow. Later, Syd sneaked them onto the Christmas tree for me!
The folds are for sure not even, but whatever.
Will is our origami champion, though. She made the Compass from Modern Kudusuma Origami and made us our tree topper!
We have a nine-foot tree this year, so that star is HUGE!
And speaking of sealing... previously, we've experimented with sealing origami designs with beeswax. The five billion coats of polyurethane sealant that I just put on my lap desk, however, had made me wonder if we could also seal origami that way. I don't know what the benefits of it would be, though, as our origami paper is already pretty archival--perhaps it would stiffen it and make it even more workable as an ornament or in a garland?
Stay tuned!
Here are the origami how-to books that we still have on our shelves:
I want to make the folded box and the lazy Susan. Will wants to make the dragon.
I think the Christmas tree and Santa would make good embellishments for the front of a greeting card. And the Star of David looks super easy!
I am seriously going to try the gift tags before I wrap the last of my Christmas gifts, because I've really been needing a DIY gift tag!
Honestly, we're not going to make anything from this book, but I'm keeping it on our shelves until it's due so that I can pretend like we are. I SUPER want a giant paper sphere made of origami octagons folded as edges!
I thought that Syd was going to go nuts for this origami book all about folding miniature articles of clothing, but she's not into it. Nevertheless, *I* want to fold a couple of the skirts and then see if she'll draw me a person to match.
Okay, we are legitimately going to make EVERY SINGLE THING in this book. It's got a ton of geometric solids, and then interesting extensions of them, and creative embellishments... I'll be fine having this be our weekly math enrichment activity for the rest of the school year.
I think we've got enough to keep us occupied on all of our long, cold winter nights!