Tuesday, July 28, 2015

Coding From Blocks to Text

So many rich block-based programming environments have become available during the last several years. The release of Scratch into the world by MIT Media Lab's Lifelong Kindergarten Group catalyzed the invention of similar block-based environments for all sorts of purposes and a revolution in novice learners' ability to use the building blocks of computer science to imagine and make things. Block-based environments provide the important affordance of building programs without making

Sunday, July 26, 2015

Games and Controllers With Scratch, MaKey MaKey, and 3D Printing

I first wrote this post a year ago. This past year I revised a couple things as I did the project again, and the revisions will be noted.
We got a Makerbot Replicator 2 last December (now a year-and-a-half ago) and one of the projects I came up with turned out really well, and I think is worth sharing. My 7th graders designed key press controlled games in Scratch, then designed hand-held controllers with embedded switches, and we connected MaKey MaKeys to the leads on the switches for a great game experience. The highlights

Saturday, July 25, 2015

LED Handbell Gloves

This project was quite long in development, more than a year, in fact! I learned a lot about technology design so the process is worth recounting. Two then-juniors I taught in a robotics class, Susannah and Nicki, now graduated, asked me for help with an idea they had. They were members of a handbell group they had played with for 5 years and wanted to make handbell gloves that light up each time they play a bell, unveiling the gloves for one piece in their final concert. We batted around some ideas. They thought about using a Lilypad Arduino and an accelerometer but I thought we

Thursday, July 23, 2015

Animate Poems With Scratch

Some of the most successful tech integration collaborations happen at unexpected times. Our 5th grade English teacher, Jenny Kirsch, asked me to help brainstorm ideas for her students to somehow animate excerpts of poems they had written. It was meant to be a quick end-of-year activity, a fun way for the students to extend and present their work. What resulted was a very nice opportunity for

Wednesday, July 15, 2015

3D Print Pagoda Project

Our 5th grade history teacher was doing a study of Vietnam with her class and wondered if her students could make and print pagodas. After looking at some examples and doing a couple test prints I settled on a general design that featured hexagonal or octagonal base with openings on some or all sides, which was repeated

Monday, March 23, 2015

Controlling 8 X 8 LED Matrix With the MAX7219

At first it was annoyingly difficult to get this LED matrix working properly but after putting it down for a month and coming back to it I suddenly have it working. We have a spiral staircase leading up to a Mac lab and my office and the student and teacher traffic always leads to an annoying jam when people

Friday, July 18, 2014

Can Middle School Kids Create iOS Apps?

The Problem

No question about it, Apple does not make it easy to write apps for iOS. I take the fact that the Apple Developer program license is only free to university programs to be just one sign that Apple does not expect many students in K-12 to be making apps, no matter how much teachers may want them to (and they do!). I'm not talking about rare whiz kid 12 year-olds who follow enough tutorials and have enough guidance and a fairly good idea to make an app and get it in the store. I work with teachers who want to integrate app-making for iOS into their science curriculum, with 50 students developing

Wednesday, July 16, 2014

Arduino waitForButtonPress function

Lots of programming robotics languages (RobotC, leJOS NXJ, Cricket Logo, NXT-G) have functions that allow you to suspend processes while waiting for some kind of input. My robotics students most learned about leJOS NXJ's Button.waitForAnyPress() method. When we moved on to programming Arduinos one of them wanted to use the same concept to run a sensor calibration routine in setup(). So we had to make one, and it turned out to be very easy. She was initially trying to do something complicated with boolean variables but I remembered using this simple construct in

Wednesday, May 21, 2014

Keeping Multiple Electroluminescent Wires Bright With An Arduino

I recently helped a student with a nice, provocative installation with kitschy religious imagery that used EL wires to simulate a neon sign. She had a border, made by a yellow wire, framing three words in orange, each made by its own wire. She wanted the border to stay lit while the words blinked on and off. If you've ever worked with EL wires you will know that if they have the same power source, such as an Arduino (with El Escudo Dos controller) the more wires that are lit at once the dimmer they all get, since the voltage is shared. She really should have done the words with one wire but she

Monday, March 24, 2014

Controlling NXT Robot From the Keyboard with leJOS NXJ

Bad GUI for robot control
(UPDATE: So this was all well and good as a proof of concept but we found when we brought the motors into the mix the motors were too slow to respond to direct commands. We learned a lot in the process, though.)

I worked up a proof of concept in leJOS NXJ I'll be teaching my high school robotics students soon for a method of controlling a