Thursday, December 20, 2018

These Kids Get It -- Talking Web App Development With Fourth Graders

Yesterday I had the chance to talk about my life as a programmer and business owner with two fourth grade classes. It was fun! To liven things up, I walked the kids through an imaginary project: developing a web app to help parents pick the best summer vacation activity. The kids asked great questions and had no problem following along.

Here's a bunch of resources I put together to power my sample project:

  • A Google Form to capture input from students about their summer plan preferences. The students use Google Forms regularly, so this was known territory for them. My lesson to them: they can build software using existing tools they already know.
  • A Google Sheet to collect up data from the form. Here I demonstrated the use of conditional formatting. My lesson to them: some programs, like conditional formatting expressions, are tiny but quite powerful.
  • An XML data feed used to transfer data from the Google Sheet to my custom code. My lesson to them: behind the Internet you know is one designed to allow programs to talk to each other. You can use these connections to build something amazing.
  • A PHP app that pulled in the data, did some simple math and generated parent friendly output.
  • A Google Sheets add-on that generates test data. After highlighting that our system only works if there's data behind it, we talked about what a tedious job it would be to load data into the system. My lesson to them: if you find yourself doing the same thing over and over again, stop and write some code to do this.

Nearly everything about the presentation went to plan: I was able to plug my Chromebook into the projector, access the internet and allow the students to fill in the Google Form in real time. Heck, I found a way around the school's firewall to access ssh. Unfortunately, my presentation was a bit too authentic: when the time came for the big reveal of the web app, I realized that there was a bug that caused it to show the wrong results. D'oh!

The bug was easy to find a fix. But alas, with a room full of 60 fourth graders I couldn't debug the issue on the fly. Still, it was a teachable moment about the life of programmer.

All in all, it was a delightful day and a joy to talk shop with a group of smart kids.

No comments:

Post a Comment