Sunday, April 2, 2017

Going for the Gold

I had a very special experience recently - to attend my first Girl Scout Gold Award ceremony. This year, I've been the project mentor for a former student of mine who has been working on her Gold Award. Her project? To start Coding Clubs in the community, of course!  We started back in the fall of 2016 by running a few coding clubs at a Boys and Girls Club and a public library to see which materials would work the best. She decided to go with's K-5 curriculum for a few different reasons - accessible entry point to CS for ALL kids no matter their background, streamlined platform with easy sign-in and tracking participants' progress. So, she did it! She continued by reaching out to new community centers and recruited high school friends who needed volunteer hours to help run the clubs. The best part? She created continuity folders so that each site could continue running the clubs on their own. This ceremony was the very first event held at the brand-new Parsons Leadership Center - a gorgeous facility with a mountainous backdrop and desert landscaping.

Some of my favorite quotes from the speakers that day as they addressed the Gold, Silver, and Bronze awardees:
"We believe in equality, opportunity, and potential for girls."
"The future of society rests on your shoulders...we depend on you to be leaders of confidence and honor...we need you to lead."

Program cover
Program blurb

Taking the Gold Award Charge

Special locket with handmade charms including, Raspberry Pi and Google ones! Gold for Riley and silver for me - to go along with the song about friendship sung at the end of the ceremony

Discover and uncover

I've been moving on with CS Discoveries. In between Units 1 and 2, I had my students explore a variety of centers including Raspberry Pi, Finch robots and Hummingbird robotics. After Unit 1 where they defined what a computer was and really dove into input, storage, processing and output, I wanted them to have a hands-on experience of seeing input and output in action. In particular, I love this diagram of Raspberry Pi to really drive this point home of what computers are and the video available here.

Input devices (e.g. keyboard, mouse) send data to a computer.
Output devices (e.g. monitor, speakers) send data to the user.
Storage in the Raspberry Pi is in the form of a microSD card.

Raspberry Pi with pins highlighted

Now moving on to Unit  of CS Discoveries. I thought that the sequence of lessons that led up to this lesson were critical in several ways - Lesson 1 to really have students notice and observe the structure and formatting that appears on websites - differences, similarities and why such structures exist. I was not planning on modifying this lesson, but I ended up making some last minute changes mainly because I did not have my class set up for Unit 2 in the online portion.The modifications mainly involved the websites that I had my students visit. I kept the first set of websites to the restaurant theme:
It ended up being a great discussion because they are all pizza restaurants, but the websites each have a very different look. Initially, the students did not like the one for pizzeriabianco because of the lack of color, but after we discussed the possible reasons for why, they had a richer understanding for the 'why' of the design. Comparing it to Peter Piper that definitely included the 'family' and 'game' aspect of pizza and Pizza Hut that focused more on take-out and counter service, they came to see that Pizzeria Bianco was about the 'experience' of eating pizza from a famous chef. I thought that this was an important discussion to have because even though they may have initially rated a particular website 'low,' there may have been reasons that the web designer chose to do things a certain way. The way the lesson unfolded in my classroom (unintentionally) was that we exercised to abstain from making a value judgment about the website, but kept it more objective, making observations about it (organization, color, layout, purpose and how these aligned) rather than 'scoring' them. 
I then had the students go to theme parks/aquarium/science center sites to compare them for ease of use, attractiveness, etc. They enjoyed visiting the websites of places that they have been to and analyzing them in a different way.
Arizona Science Center
Odessa Aquarium

Connecting the structures and formatting they saw on websites to design their own website in Lesson 2 was logical as well. I found it was important to emphasize the words 'content' and 'structure.' How will you incorporate structure into your website layout? How do other websites handle content and structure effectively?

The emphasis on content and structure led really nicely into Lesson 3 when students had to create their own language to address structure and content. I was truthfully a little apprehensive about Lesson 3 because I found it confusing when I read through it for the first time. Seeing this lesson, however, in the sequence of the others within this unit and how it is placed strategically before Lesson 4 and after students have evaluated websites helped me to stress with my students how languages convey structure. The neat thing was there was actually one group of students who came up with a language with a very similar concept to html with opening and closing tags of their own. With Lesson 4, I had students work in pairs and let them go at their own pace which worked well. I had them check in with me at various points. Having them pay attention to elements, structure and formatting all along was critical because in Lesson 4, this all came together when they had to apply it to creating their own sites, following specific guidelines. 

Having my students reflect on the questions in puzzle 5 on CodeStudio was an important way for them to bridge Lesson 3 with Lesson 4 (sample response below):
In what ways is this language similar to or different from the languages your groups invented in the last lesson?  The language is similar because there are a few commands used that we used last lessons. It is also different because they were able to change the font and color and we couldn't, they were able to make it look like a comic strip.
What are the rules of this language? The rules of this language are there is a opening tag and an closing tag to see where the language starts or ends. There are also spaces in between each picture and text to make the whole thing look organized.
How does this language add structure to the website? It makes the websites organized, it adds ways to make the website look good, it will allow us to add pictures, bullet points, etc., and it will help us be able to add sites and tabs.

Here is an example from Unit 2 - see how content and structure are addressed as students learn and use html?  Font size, paragraphing, headers - all evident here.

Wednesday, March 8, 2017

APP-lying the Problem-solving Process

I'm wrapping up Unit 1 of CSDiscoveries with lessons 8 and 9 that really complement one another well. With lesson 8, we spent time considering the input and output of apps and whether input comes from the user, internet, or smartphone. Students spent time considering what information is input to the smartphone, what problem the app is trying to solve, what information is process by the smartphone, and what information is output to the smartphone. 
With lesson 9, I initially thought that my students may be a little disappointed that they were not actually going to code their app, but they ended up having a great time. I really tried to focus them on applying the problem-solving process that we've been focusing on all unit to their app concept creation and then also ensuring that they included input, output, storage, processing on their posters. During the making of the posters, I tried to bring up algorithms again and apply this to their app concepts. For example with Coupon Clicker, students came up with the idea that information as input would be provided regarding the user's favorite places to shop and weekly coupons would then be emailed to the user. 
The most fun I had was hearing the students' presentations. After each group presented, I had the class give them two stars and a wish. Listening to the wishes was my favorite part. The constructive feedback that students provided was amazing. For instance, with the Coupon Clicker, the students who created it only included it for use with household items and a 'wish' was for the app to include deals for movies, entertainment, amusement parks, and more. 
I've attached some of the posters in this post.
Watch Dog - to replace the 'lost pet' posters hanging on neighborhood mailboxes and to be used together with a pet-tracking device possibly
Coupon Clicker - coupons customized and emailed to ones' inbox according to a personalized schedule (e.g. once a week) and selection of stores to save people from clipping and losing coupons
Apple a Day - health tracker to combat the problem of obesity - tracks amount eaten, makes recommendations, etc.

And more...

Friday, January 27, 2017

Colored Bits

I'm moving along with CSDiscoveries and this week continued with lesson 6 called Processing with Bits.  This lesson was awesome!! My students really enjoyed going through all the levels and figuring them out in pairs.  They used the pixel filtering tool to explore how colors are represented using on/off options and combinations. I tried to make the connection to previous lessons (L4 - what is a computer?; L5 - representing with binary) explicit so that students could connect what they did with the face up/down challenge to input/processing/output and representing information using binary in this lesson. I did not go into colors, binary, and computers, but just treated this lesson at face-value and had students go through the leveled puzzles that were scaffolded really well. The initial task of identifying the 8 colors along with their 'binary representation' was important and students could use that to refer to as they completed the subsequent puzzle levels. I ended up making a chart on the board with the different levels listed and as pairs of students finished, I had them write their names so I could conference with them and chat with them about their work for that level. I found that this helped to move things along for students who were capable of doing so while allowing me to meet and talk with those who needed support. The students really liked figuring out the different challenges and were able to make connections from what they were doing in this lesson to previous ones. The only tricky parts for some students was identifying the numbered bits (1st, 2nd, 3rd). Otherwise, they did very well and even then, not all students found this to be difficult. 

In reflecting on this lesson, here are some thoughts that arose:
-What parts of solving this problem on a computer were harder than just doing it by hand?
Trying to make some of the designs on the computer are easier than doing them by hand. For example if you tried to make Mario by drawing him it would be hard to get the right colors. If you wanted to change a color you would have to change everything and all the bits which would be very confusing.
-What parts of solving this problem on a computer were easier than just doing it by hand?
The coloring process might have been easier if you did the more simpler designs like just coloring something red. 
-What parts of solving this problem on a computer were harder than just doing it by hand?
The parts that were harder was that it was hard to have to keep guessing and checking. You had to pick colors and if it wasn't right, you had to go back and pick different colors . That's what was hard because it took us a while to do all 7 of them. It took about 10-15 minutes for each of them . That is why it was harder than just doing it by hand. 
-What parts of solving this problem on a computer were easier than just doing it by hand?
The part that was the easiest was that you can change the colors with just a simple click. In real life, you can't change black into blue by just clicking something.

Here is a sample creation at the end of the lesson where students could apply the pixel filtering tool to different images to see how the filters affect the output images:
I think a challenge in this lesson was providing students with just the right support that each of them needed. Some were just fine going through it on their own whereas others needed more explanation and modeling.
One change I might recommend is modifying the journal to more closely align with the big picture of computers inputting, processing, outputting and storing information. This seems to be important and useful vocabulary to keep revisiting beginning from lesson 4 and continuing in lessons 7,8, and 9.

Saturday, January 21, 2017

I'm a pilot!

With the new year, comes new challenges curriculum that I am piloting this semester. I am so excited that's long-awaited computer science curriculum for 7th-9th graders is here. It's called CS Discoveries. At its heart, it truly has the middle schooler in mind. With a focus on personal expression through a project-based approach, it is appealing to this age range and there desire to express their unique perspectives, interests, and goals. It is designed to be accessible to every learner, and provides the perfect transition to typed code from block programming. At the same time, the tools used in this course such as App Lab and Game Lab are open-ended enough to be engaging for all students, regardless of programming background. Physical computing is also integrating into this course, providing students with the opportunities to 'make things happen' with an Arduino platform. The heartbeat of the course is the problem-solving process which is integrated throughout the course in different contexts. Whether the students are posing questions, creating an app, programming a game, or analyzing data, they learn firsthand to become active persistent problem-solvers.

Here is the link to Unit 1 - Problem Solving - Computers and Logic. Clicking on each of the individual numbered lessons will take you to a lesson plan within this unit.

Part of being a pilot means that I reflect on a lesson that I teach each week. Here is my reflection from week 1 of piloting Unit 1, lesson 3:

I taught this lesson to 6th graders in Phoenix, AZ. This lesson built really well off of the previous lessons on the problem-solving process. It took me three days to get through the entire lesson (about 40 minutes per day). I did the word search and birthday guests party together in one lesson, then took two days to do the road trip problem. Overall, the students were really engaged in this lesson. They liked the challenge of when I timed them doing the word search and birthday guests problem. I thought that having them complete the activity guide after doing each problem and reflecting on how they used each step of the problem-solving process was critical in order to really get them thinking explicitly about what they were doing through the process. I also had them reflect on how the word search and birthday guests problem differed from the road trip problem (more vs. less well-defined/open-ended, etc.). That led to an interesting discussion about how problems are not always precisely laid out and solutions require creativity. 
I tried to closely follow the lesson plan as written, though next time, I would probably wait to show them the trip planning tool until after the groups had time to set out their criteria. It seemed like once I showed them the online tool, that was it! They just wanted to get right into 'doing' and it was hard to bring them back to establishing criteria.

Sunday, December 4, 2016

Ever wanted to track Santa?

Now you can! Google's Santa Tracker is just in time for the holidays where students can code a snowflake, track Santa using Google maps and more. New activities and lessons unlock throughout the month of December and are connected to subject areas such as computer science, geography, social studies, and language.  Play, learn, watch, code, and explore! 

Here is a sampling:

Code Boogie - Choreograph a dance for the elves using code

Holiday Traditions - Learn about traditions all around the world from Canada to Ghana, France to Australia.

Learn Languages - See and hear different holiday greetings translated into different languages

Play Present Bounce - Try to get the present to land in just the right place

There are these and more activities to come throughout the month, right here in Santa's Village.  On the 24th, there is an invitation to come back and track Santa all night!

Saturday, November 26, 2016

Equity in CS: Empowered to take action

A few years ago, Google came out with a paper entitled, "Women Who Choose Computer Science - What Really Matters." The link to the entire paper is available here.  It's an incredible paper in many ways, but the big takeaway for me was that we are in a position to do something to close the gender gap in education right now. To me, this was incredibly empowering - to realize that there are factors substantiated by research that make a tremendous difference in a girl's life in terms of choosing CS as a degree major. According to the paper, it all comes down to encouragement and exposure. Specifically, this paper found four key influencing factors: social encouragement, self perception, academic exposure, and career perception. Even more amazing was that this research found that uncontrollable factors such as parental occupation play a limited role in women choosing a CS degree.

Armed with this understanding of the impact that exposure and encouragement can have, I started a Girls Who Code club at the middle school I was teaching at. Through this experience, I came to see that Girls Who Code was as much about building community as it was about inspiring the students about computer science. The girls even got to speak at a national STEM conference and sponsor a schoolwide CS event with student council. Fast forward to 2016 and come to find out that research with Accenture and Girls Who Code has found that middle school is a critical time to spark young girls' interest in computer science, coming back again to the all-important role that encouragement and exposure play. This research then goes on to share ways to continue to sustain that engagement in CS through the high school years and on into college where they are inspired toward a career in computing. The link to the article is here. 

Going beyond what was happening just at my school, my district became part of the K-12 Alliance with NCWIT.  Inspired through this partnership, my district has started an initiative called PVWIT in order to address the issues of equity and access in the field of computer science. It's been amazing to see this effort grow, expand and reach students all over. Just last weekend, PVWIT hosted its first Code-a-thon. The way I like to think of it is that the only thing better than creating and coding on your own is to create and code with a community...and that's just what Code-a-thons are all about. I knew that I wanted to gear it toward K-5 students and have middle school students there to help out as well. I invited 14 teachers and the district IT team to host tables: Scratch, robotics, Raspberry Pis, and more. We marketed through social media and teachers sent home bookmarks, paper reminder bracelets and stickers in agendas. I created passports for the day of the Code-a-thon so coders could go around to all the stations we had.

Code-a-thon bookmarks, passports and stickers

I also wanted mentoring to be a part of the whole experience, so I reached out to local industry volunteers with a Women in IT volunteer initiative (in my case, this was American Express). I also reached out to my local university's Women in Computing club with whom I had connected before on class projects and they were also happy to send 5 volunteers. It was great to see industry work alongside university alongside middle school and elementary students - mentoring and community is what it is all about. Or, coming back to the research - we are here finding ways to encourage and expose students to CS as a way to work toward equity in CS.

Code-a-thon 2016

Industry, college and district volunteers