Showing posts with label Crafty Computer Science. Show all posts
Showing posts with label Crafty Computer Science. Show all posts

Monday, September 23, 2013

Binary Flippy Do - How To

Today in AP Computer Science Principles we made the Analog Binary Calculator. We have been working up towards binary. I do not start them with the big explanation of This Is Binary.

Instead I do a series of puzzles as warm ups and exit tickets for the week or so before the actual lesson. That way by the time we get to full scale binary they have had some positive experiences and built their own understanding of how binary works.

(Why do I even do Binary? Here you go)

So for example I show them a picture of two light switches and point out they can either be on or off. Working with a partner they have to figure out how many numbers they can store using the light switches. What if we add a third switch, how many then? Without listing all the combinations can you predict how many numbers you could represent with 4 switches? This makes a great warm up activity.

The great thing about the flippy do is it is super easy to translate numbers back and forth. My stronger math kids pick up the number theory behind it quickly, while my weaker math students are successful so they will stick with it rather than tuning out.

If you also cover the full two's comp representation it is also an incredibly easy way to teach the steps.



Materials:
  • Index cards - 4x6 or larger
  • Markers
  • Scissors 
  • Rulers - helpful, but not necessary


Steps:

First you fold up the bottom 1/4, draw 8 columns, and cut the bottom flippy things like this:

Can you tell this is my white board?

Second, you label the powers of two. Then put 1's on the back of the flaps and zeros underneath as shown:



Then I have them do a few puzzles:
  • How may ways can you represent 13? 3? 15?
  • Count from 0 to 13. Any pattern with even/odd numbers?
  • What is the largest number this can store?
  • What is 01111111? 00111111? 00011111? - what is the pattern here?
The point here is, if I just tell them that there is only one way to make any base ten number in binary it goes in one ear and out the other. Snore.

If instead they are doing a puzzle, and after a few realize THEMSELVES that there is only one combo per number, they internalize that at a different level. They don't forget it.


After all this we do the algorithm to change from binary to base ten and back. The best part is when the kid in the back, the one that hates math, tells their neighbor "Hey, I actually get this".

Wednesday, July 31, 2013

Makerbot Lecture - 3D Printing with David Wells



One of the nice things about all this crazy travel this summer is I have gotten to do and see some things that are just not available in Richmond, VA. Last night I got to go to the Makerbot store in NYC to hear a talk about 3-D Printing and Maker spaces.

3-D Printing Filament


The speaker was David Wells from the New York Hall of Science. He is the Manager of Creative Making & Learning - I know, best job title ever.

Last year my computer club's project was 3-D printing. They fund-raised and bought a PrintrBot tight at the end of the year. I am so excited to see where this takes us next year.

The presentation was a great overview of 3-D printing, some of the recent changes and how to incorporate it into maker spaces. One of the general themes was that engagement with museums tapers off as kids hit their teen years, and these maker spaces are a great way to bring them back in.

Several of the folks working at the Makerspace for the summer were there to show off what they were working on. They are part of Maker Corps Education program. They are officially called explainers, which I might borrow for when we do recruitment in the lab.

Oh, and if you are in the neighborhood NYSCI is the host of the Maker Faire NY this fall on Sept 21 - 22. If you haven't been to one you must go. Really - it's your homework. Find a Maker Faire near you and get to it. I got to do the one at the Henry Ford Museum last summer in Detroit and it was amazing.

Resources:


And if you need a story to help inspire you to the power of 3-D printing: 3-D Printer Brings Dexterity To Children With No Fingers.


Monday, May 27, 2013

Shopping List - Painting Electric Circuits

This has gotten to be a bit of an obsession over the past few days. Using paint to create electric circuits.

Seriously, it is all I can think about. I am making a lot of  "this sweater is OK, but it would be awesomer with some LED light bulbs" statements that make my children hover between interest and a deep tween embarrassment that only mothers can induce.

It started with a CNN article on Pens that can be used to draw circuits. I know, great idea.



Except they are from the UK, and kind of pricey (12 pounds which is about $18 today). And according to my sources on twitter the conductivity isn't great once it is dried over long distances. That said the site has some nice classroom kits that include thumbtack batteries. There has been a hollow empty void in my life that is filled now that I know thumbtack batteries exist - you know what I mean?

Also according to the website these pens are available in Radio Shack, so good for those of us stateside.

Think Geek Conductive Paint

For about $30 you can get a 50ml tub of paint from Think Geek. I have visions of renumbering the computers in my lab using this ...possibilities are endless.

This appears to be the same company, so it is probably the same stuff that is in the pens, but it is a better price point for just the paint.

I also found a video describing how to make copper based conductive paint. Sounds fun, but given my overall free time...I might just head to Radio Shack.

MIT also has some resources listed:



One of the main reasons I am interested is the application for wearable electronics. I am curious to see if the paint can be used to attach conductive thread to the power source. I'll let you all know if it works.

Need more inspiration? Here is a video of interactive wallpaper made with conductive paint. It plays music.

We do some very simple circuits and logic gates in the APCS Principles class suing play-doh. The play-doh works well because it can be changed and experimented with very easily, but the stuff dries out so nothing can be taken home. This paint would make a nice extension, especially if they can make something to take home. Prototype in play-doh then paint for permanent.

Wednesday, April 24, 2013

Printing - in 3D


Our new 3-D Printer:

Bits and Pieces

The computer club kids have been working all year to raise the money for our new 3-D Printer. They bought it from Printrbot. They offer a $150 teacher discount, which helps.

Hopefully it starts looking like this by Friday:


I have been working over the past year to build the lab into a hacker space. We have programmable sewing machines, screen printer, button maker and now the printer. It has created a lot of excitement around the computer science program here and brings a lot of kids into the lab.

Is this computer science? Maybe. Computer Science folks never question having robots in the lab, and frankly the amount of "coding" that goes into the embroidery sewing machine or the other stuff is about the same as many simple robots like the Finch (with Snap).

For me it builds a culture of creating and crafting, with coding at the core, and that is enough.

Saturday, December 15, 2012

Weekly Roundup - Computer Science Surfing

Some Computer Science websites I've been looking at this week:
  • Little Bits these kits let you build circuits. They snap together with magnets. When we cover conditionals in the CS Principles class we also do logic gates and circuits. This could be a fun way to visualize this.


  • Ted Talk Andrew Blum. What is the Internet Really? We're just finishing up our Internet unit in CS Principles. Monday is our last day before break and this will be a great way to finish up the whole thing.
  • While you are at it you should really read his book: Tubes . My fantasy field trip at this point is to go to Northern VA and visit the parking garage he mentions that housed the early pieces of the Internet. Then we'd have ice cream, because sometimes that's what it takes to make a parking garage exciting.
  • Ada Lovelace Video - Her birthday was on Monday. This video is the best explanation I have found about why she matters. The kids seemed to like it to. It is always a good sign when they 1) watch the video without trying to sneak in a round of Bloons Tower Defense and 2) ask questions after it is done. Score on both counts.
  • Also on Monday Google did a Doodle of Ada. As always, Google helps make it relevant.
  • The rest of the video series also looks great - covers everyone from Alan Turing to Hedy Lamarr.
  • Also: Good article about Facebook Interns on why CS is a good choice.
  • Also, if you are feeling crafty - This site has templates for Star Wars snowflakes.

Wednesday, December 5, 2012

Paper Robots

We're doing a little crafting in the lab today.

(Source: Next to Nicx)


My CS Principles kids are plugging away on their Internet Portfolio papers. They have chosen some very interesting problems to write about. We are also doing the CSS section of Code Academy. My plan is for them to do a web page about thier paper to present their solutions.

A few of  the kids have gotten ahead. On the paper, and the CSS, they even have done all of the Ruby stuff in Code Academy.

So we're making paper robots.


Tuesday, November 27, 2012

Recruiting

We are registering for classes on Dec 14th this year. Really early, but it overlaps nicely with CS Education Week. Have you pledged to participate? Do it now, I'll wait.

So this year the CS club is holding an open house during our regular weekly meeting. I haven't had time to go to classes to do demos, so instead I am asking teachers to nominate students they think will do well.



Next week I will hand deliver a nomination letter to each student  inviting them to the open house. I usually also mail a letter home to the parents letting them know their child was nominated.

The plan is to have student programs set up to demo what we do in the various classes. I usually try to serve food - this year we're doing ice cream and toppings. CS Club kids bring in the toppings and I supply the ice cream.

Also, following the rule of reciprocity, everyone will get a button. They all say Computer Science is... then the words underneath were suggested by my current students. I do think the button maker is one of the best investments I have ever made - super useful.


Thursday, September 20, 2012

Weaving Binary and Peeing in Buckets

Weaving! Today was craft day in CS Principles. We are starting binary numbers - and if you think weaving in a computer science class is odd, I'll have you know that one my favorite computer science book ever was A Computer Science Tapestry by Owen Astrachan. It totally relates.

I borrowed a frame from our art department and set up the warp using this description:



I used cotton for the warp and wool for the weaving. Using a  needle and thread I got us started, then we passed it around and everyone took a turn:




So, why weaving in computer science? Binary is the mast basic way of communicating weaving and knitting patterns. Think knit - purl - knit -purl. In weaving it is over - under - over - under. Alternating rows of over - under gives a small checkerboard pattern. By changing this we get different patterns in cloth.


Houndstooth Pattern


This brought on a whole load of questions, and we did get off topic a bit. One kid brought up that the Romans used urine to dye fabric...and in fact To dye animal fibers you need an acid to fix the color to the fibers, which is why Kool Aid can be used to dye hair, or wool. Uric acid was the first commercially available chemical. Long time ago folks used urine to do indigo dyeing, which meant collecting a lot of the stuff. In a bucket, in the barn.

We did finally get back on track and watched a video on Jacquard Looms. I know we always use the examples of punch cards coming from looms, but really who cares? Today was the first time in all the years I have taught this that it mattered at all to the kids. Doing the weaving first made them really ask a lot of good questions about the loom. And the idea of storing a pattern and algorithm in a binary system is the basics of everything we do.

The final Product, it's a bit lumpy, but it is made with love.


They really got into this and had lots of questions. Had I known I would have set everyone up with a loom so they could make their own. Might be an interesting extension to give them a pattern in binary and see what the design ends up being.

After the weaving we started on binary numbers. Last class we spent about 20 minutes doing an activity covering how base ten numbers work. Today for the fast start their question was "if you only had 1's and 0's to represent numbers how would you represent 0, 1, 2 and 3?" Lots of good debate over how to show certain numbers.

Last we made our Analog Binary Calculators that we'll use the next few classes as we go more in depth on how binary works.


Thirteen!


Update: Here is a post about the weaving program at the Henry Ford Museum in Michigan. I got to see the Jacquard loom in action last summer when I was there for Maker Faire.

Tuesday, March 6, 2012

Chalk Talk

We just finished Algorithms and methods last week. I focused on the connection between using methods in C++ and designing good algorithms to solve problems. This is a change, this year I introduced methods before we did if's and loops. My thinking is if the students start by using sub routines we don't have to undo bad habits later. So far it has gone very well.

We did BYOB - Scratch right before Winter Break to move from learning about the Internet to programming. Nice (and unplanned) side effect, it has made methods in C++ much easier for the students. I wish I had designed this nice transition. The reality was that day two of methods one of the kids turned around and yelled across the room "This isn't hard - it's just like all those blocks we did in Scratch before Christmas".
Well, duh.


Sidewalk Chalk

So the Friday before the test we had one of those days. Any public school teacher knows those days. I lost power to 1/3 of the lab (future reference the breaker box is in the boiler room, panel 4). And a mouse, four-legged kind. A very active mouse.

There is a point where no matter how beautiful your lesson plans are, you just have to dump and run. Kids were distracted and we really couldn't do our computer practice. So we went outside.

I borrowed some chalk and put the kids in teams of three. I gave each group a copy of the lab we'll do at the end of next unit. The lab has them design methods for a calendar program. They have to count the number of days left in a month, return the total number of days in a month, then using these they have to count the total number of days between two dates.

We haven't done if's or loops yet, so this is not something they could code in C++, but I was curious to see how they did. They each had to sketch out an algorithms they could use to find a solution.

The solutions were great. Every group figured out that they could use the first two methods in a loop to count the days. This is a program I have done in the past with students and they often struggle with this concept. I am curious to see if the coding is easier this year.

And the mouse is gone- I caught in a cup later that day and he was released back into the garden.

Friday, February 24, 2012

Sidewalk Chalk

Quote of the day: "It was one of those fight or flight things, and you can't fight a mouse." 12th grader explaining why he ran from a mouse.

We had a four legged mouse in the lab today, tiny and cute, but it's gotta go. The kids have already named it Billy and want to keep it.

Considering this week started with 7 inches of snow and today it is 80 degrees they have been a bit off the walls, even without rodents.



So, for the CS Principles class we went outside today. We've been working on Algorithm design (Big Idea # 4). To work on this we did sidewalk art. each team was given a copy of a lab we will program in C++ next month, and using pseudo-code they had to plan out a solution. We haven't done ifs or loops in C++ yet, but they all came up with a correct algorithm for solving the problem.

We started this fall with BYOB Scratch, and they seem to be doing much better this year with using methods in designing their programs. They all got exactly how to call existing methods to find the solution. I am looking forward to seeing if how their labs compare to previous year's students after drawing out their plans.

Friday, February 10, 2012

There's an app for that

Today the first-year students worked an art project after finishing a test on while-loops.
 

The groups were asked to describe a problem that students face in school that could be solved with a computer program. They described what the app does, gave it a title, and designed a button for the app. These are the buttons hanging in the hall outside my room.


We had the i-genda, a student planner. Several apps to allow students to check their balances on their lunch accounts in the cafeteria - must be a real need there. My favorite so far is a marauder's map inspired one that lets teachers and students know where administrators are. Maybe not so appropriate, but certainly out of the box thinking on that one.