Tuesday, August 28, 2018

Take our Daughters and Sons to work day 2016

So I ran an event at my job for Take our daughters and Sons to work day for the past few years.  They went pretty well and I've been meaning to write about it for a while.  I'm doing a lot of this from memory, so I might have some of the details wrong, but the general idea is the same.

The high level theme was to take Rasberry Pi's, build a game in scratch and turn some LED's on and off.   The outline looked like this.


  1. Welcome 
  2. Logistics (bathroom, water, etc)
  3. Who’s built a computer before?  Lets build one now!
  4. Boot/copy - get everyone setup.
  5. Intro slides what we do here - Dev, QA, Product, Research, operations
  6. Walk through Pi - play a pi game
  7. Start scratch go over key concepts
  8. Show and tell
  9. Timecheck - lunch?
  10. Scratch video game  - Catch stars - Product/research
  11. Dev’s get to work Set background 
  12. Add one octopus, random star placement, catch stars.
  13. A BUG! - octopus gets stuck in side - QA catches these  - add on touch bounce
  14. This is too easy lets make it harder
  15. More octopuses, faster, color, on-bump-face cat
  16. Timecheck - Lunch if haven’t had, break time otherwise 
  17. Show and tell
  18. Interact with the real world - turn on an LED
  19. Security alarm (PIR sensor)
  20. Wrap-up 

Since I had a supply of keyboards, mice and 17" monitors, the minimum the kids had to bring was the Pi.  I had suggested kits, such as Kana Kits or Vilros kits that have a lot of the stuff already bundled.  These examples are for Pi 3s but when I did this in 2016 they were Pi 2s. 

The majority of the ideas for this even came from the BooleanGirl organization.  BooleanGirl is a fantastic program and I can't say enough good things about them.  One of the new things that has come out between my 2016 event and now is the BooleanBox.  A prepackaged Raspberry Pi kit with all the stuff you need to get started.  It doesn't stop there - they also have Boolean University where they have structured lessons and projects for you to build with your BooleanBox.  If I were to do this all over again, I'd do BooleanBoxes as the base.  Back in 2016 their website had similar content where they walked you through getting started with a Raspberry Pi.  I took that as a starting point (6 and 7 above for instance)  and went from there.

In item 10 I walked the kids through building a video game in scratch.  The book Coding Games in Scratch by Jon Woodcock was perfect for this.  In his book he walks you through several different games you can build in scratch.  I picked one called Star Hunter, which had a similar game play and style to one from the BooleanGirl website.  The book was a great resource to follow as it breaks down the game construction bit by bit, which gave natural stopping points where I could check in with all the kids on how they were doing. The walk through purposefully introduced some bugs to kind of show what QA's job is in our office and introduced new feature requests and other software development concepts to give a feel for what we do here.

After lunch we started working with physical computing - turning LEDs on and off, and trying to get a PIR sensor to work.  This was a bit of a disaster.  The breadboard concept doesn't translate well for younger kids.  It took a lot of one on one interaction to muddle through this.  While helping others, the kids who got the concept and were ready for the next step got bored.  It was further complicated by everyone's Pi being a little bit different - different colors, different bread boards different versions of the n00bs linux packages.  If I did this all over again, I would pre-assemble mini-breadboards and I would also re-flash everyone's Pi with the same image so everyone had the same stuff.  I even had the mini breadboards with me, but just didn't have time to put them all together.  That would have saved a lot of time.

The PIR sensors were next, but by this time, we were loosing kids due to parents being done with work already (we have folks who traveled from Philly to DC) and just general exhaustion.   I had PIR sensors for everyone, and had a few slides how to connect them.  They sorta worked, but would often get stuck in the 'detect' mode.  I think this was mostly due to to GPIO libraries being different across the versions of Noobs.  Almost everyone's screens looked different, had different settings and values. It wasn't a great way to end the day. 

All and all, it was a positive experience, most of the kids enjoyed it and several came back for 2017.  Hopefully I'll write that one up next.

No comments:

Post a Comment