Real (ish) Life Computational Thinking

I went to see the most delightful talk this week, given by a graduate student. Like many academic talks, the speaker outlined a problem, described similar research and attempts at solutions, which have all failed, then argued for a new solution that he has done research on. The format, obviously, is not what was delightful, instead it was two other features of the talk.
First, the problem: “The dirty dish dilemma.” Our young grad student has lived for many years in communal houses. The policy is “clean your own dishes.” But sometimes dishes get left in the sink! Like the broken windows theory of crime, soon it snowballs into a sink full of dirty dishes and a lot of unhappy housemates.
When was the last time you went to a talk about something you actually found entertaining? This is so much better than the problem of writing across the curriculum or differentiated instruction! (And truly, I think life at most schools would be more improved by 30 minutes on solving the dirty dishes in the staff room sink than by 30 minutes on curricular reform.)
The second delightful part was his research method. It would be hard to go out to lots of communal houses, try different solutions, see which ones worked and then test the “working” solutions at other houses to make sure they really work. But it is easy to download NetLogo and create a model of dirty dishes, including the people who wash and dirty the dishes. And it’s very easy to modify the model once you create it – varying how slobbish the people are, trying different solutions, adding or removing constraints (like when Mom gets fed up and yells and all the dishes get washed at once). It was the most realistic example of the use of computational thinking I’ve seen, and at no time in the talk did the speaker use the phrase computational thinking, nor did he even appear to know that’s what he was doing.
Incidentally, the solution is to change the policy to one of small altruism. Instead of “do your own dishes” the policy should be “do your own dishes plus one other dish. Then no one gets stuck having to clean up after everyone else just because their prep period is right after lunch.
Michelle Hutton
CSTA President

Loners Will be Loners … Or Not.

Many of us are fortunate to have taught classes in which all students are active participants and teaching and learning are natural activities in the classroom setting. Chattering among my students brings a smile to my face. But every once in a while, there is that one student who “prefers to work alone.”
The Hart Research Associates surveyed employers and concluded that a majority of employers believe that greater emphasis should be placed on a variety of learning outcomes developed through a liberal education. One such outcome is teamwork skills and the ability to collaborate with others in diverse group settings[3].
Computer Science Principles is a course presently under development and being led by a team of computer science educators organized by the College Board and the National Science Foundation. This course seeks to broaden participation in computing and computer science. Listed as one of six computational thinking practices covered in the curriculum is “working effectively in teams”[4].
A comment from one computer science teacher in response to a pair programming thread in an electronic discussion group: “The popular kids will always flock together and the loners will always be loners.” I would like to say, “Not so.”
Many teachers encourage productive teamwork by incorporating pair programming in their classes. “Pair Programming” is an agile development technique in which two programmers work together at one computer following specific techniques[1]. The intention is to have two people as resources; they are working towards the completion of the same task at the same time with two sets of ideas. They are working collaboratively to accomplish this task. This is very different from working cooperatively.
There are no loaners in my class. I have tried various techniques, some working better than others:
* I assign pairs and monitor all pair programming (they do this activity only during class time)
* I have allowed the “loaners” to work alone if they are willing to accept a grade deduction of about 20%. This is not a popular choice but has been accepted by a few.
* I assign pairs based on requests and honor requests of “I do not want to work with so-and-so”. All requests are confidential!
* I start the year with a pair activity to break the ice [2].
But I still search for new ways to eliminate the loaners so that all students WANT to work collaboratively on a team or use pair programming techniques.
What do you do to effectively eliminate the “loners” in your class?
Resources:
[1] Pair Programming: http://agile.csc.ncsu.edu/pairlearning/educators.php
[2] Pair Draw: http://industriallogic.com/games/pairdraw.html
[3] Hart Research Associates: Raising the Bar: http://www.aacu.org/leap/documents/2009_EmployerSurvey.pdf
[4] CS Principles: http://www.csprinciples.com
Fran Tees
CSTA Chapter Liaison

Things are Happening in Massachusetts

Things are happening in Massachusetts on the Computer Science education front. First, Dot Diva, a program sponsored by WGBH and ACM to promote the field of Computer Science for high school girls. The Dot Diva launch is September 27 in Cambridge, MA.
Another upcoming event to promote Computer Science for high school students is being sponsored by the Tech Hub Initiative, a group of industry and academic leaders focusing on mobilizing efforts and enhancing awareness of the need of computational thinking and STEM in education. This event, called the Tech Youth Summit, will take place on October 16 in Cambridge, MA. Students (and their teachers and parents) are encouraged to attend to learn more about paths in computer science. Hopefully, an additional outcome of this event will be a fuller understanding of students’ perspectives on computer science. Perhaps the students can give us some insight on ways that CS can be promoted to people their age.
Lastly, the founding of a local CSTA chapter in Massachusetts is in the works! Several people have been working on this and are planning an organizational meeting at the end of October.
As the school year gears up, it is energizing and motivating to me to see all these events taking place. I am excited to see where this will lead on the local front. What CS events taking place in your area? What has you excited as you start your new school year?
Karen Lang
CSTA Board Member

I Know What You Did Last Summer

If you are like most of the teachers I know (and how I used to be) then you probably spent your summer doing any combination of the following: vacationing, resting, conferencing, professionally developing, or working. And I would guess many of you spent more time doing the last two than the first three.
As teachers, we expect our students to hang on our every word (ok, really we would be happy if they hang on even 50% of our words) and to put into practice what we teach.
So, my question for you is: What did you learn this summer? And how do you intend to put it into practice? Our wish is for this blog to be very interactive, so we welcome comments from you so all our readers can live vicariously through you! I’m sure some of you attended the CS&IT Symposium or perhaps an Alice Workshop. Or maybe there was a workshop at a local university? Or maybe you taught a summer course and were surprised by a project one of your students created? Tell us about these experiences! We continue to grow through shared experiences.
As Vince Lombardi once said “The achievements of an organization are the results of the combined effort of each individual.” Do not be afraid to share something. CSTA is not just for you, it is you.
So let us know what you did last summer!
Mindy Hart
CSTA Board of Directors

Computer Science and Reading Literacy

Recently, my school received their results from the high stakes testing in our state. While my school maintained the Excellent rating for the fifth year in a row, my school is not meeting the AYP (Average Yearly Progress) reading requirement with our low socioeconomic status students. My school has now begun a school wide reading literacy program where teachers are asked to promote reading literacy within their subject area. Teachers have been encouraged to promote the reading of subject targeted materials in the classroom.
A close friend of mine is the Vocational Agriculture teacher. He has found a book with an agricultural theme and written in a style that would appeal to his Voc Ag students. His plans are to have the students read a chapter every couple of days and then to discuss it as an addition to his normal curriculum.
I would like to ask for some help from our readership. How do you promote or integrate reading literacy into your Computer Science program? What books, magazines, or online materials do you use and how do you use them in the classroom?
Dave Burkhart
CSTA Board of Directors

New Challenges in the School Year

Back to school. At the K-12 level, it used to mean parents had to deal with the expense of pens, pencils, notebooks, and paper, maybe some art supplies, the occasional protractor, and a simple calculator. Now, of course, it means much more as we include more complex calculators, (with some teachers being very specific as to the make and model required!), flash drives, and maybe even a notebook computer.
Of course, it is more complex on the educator’s side as well, as teachers not only prepare their lessons but their websites, Blackboard, E-Chalk and more. Electronic grade books need to be created and prepared. Course outlines need to include email addresses and website URLs. Lecture presentations must be updated to include the multi-media content our students now seem to require to absorb material.
And let us not forget those administrators. A quick check of the student handbook in our school finds references to forbidden pagers and Walkman, even as they have been updated to forbid cell phones and iPods. Policies about internet usage, social networking perils, and no-texting-in-school must be written and added to the handbook. Pity the poor administrator who will have to update the book this year now that we have pointed out the errors! Coaches and club moderators want to create Facebook sites to keep students and parents connected. Can you imagine the tossing and turning the dean of students is experiencing?
Riding the wave of it all are, of course, our students. They enter our buildings this fall with new cell phones, iPods, iPhones, and other tiny devices that have more computing and communication power than the computers in our labs. They will talk about their new iPads, notebooks, E-readers, Playstations and XboXes, and multi-media entertainment centers the way previous generations discussed their summer vacations. They will expect us to be up-to-date, entertaining, and media savvy from the moment they walk in the door.
Are you ready?
Ron Martorelli
CSTA Board of Directors

Preparing for the New School Year

I usually devote a portion of my summer vacation preparing for the next school year. I use my summer break to attend at least one professional development workshop. This summer I was able to attend three: CS4HS, CS & IT Symposium, and Microsoft Teacher-Leader Workshop. I attend these workshops because I feel that I need to stay current in the computer science field and I want to learn from the successes of other teachers. I found that attending these workshops I also learn from the other teachers that are attending.
According to Harry K. Wong in his book,The First Days of School, “The effective teacher works cooperatively and learns from colleagues.” He also states that “The effective teacher goes to professional meetings to learn.” I believe these two statements really capture the importance of making time for professional development.
I also prepared for the new school year by applying for a grant that I happened upon while looking into an alumni membership for my son. I met the criterion so I applied. I was pleasantly surprised when I received an email to inform me that I was selected to receive the classroom supply grant. Through the grant I was able to purchase Computer Science curriculum that was more current than the district supplied textbook.
How do you prepare for the new school year? I would like to learn from you as to how best to prepare for a new group of students.
Myra Deister
CSTA Board of Directors

CS Lessons From Facebook

As teachers, we are continually faced with the chicken-egg dilemma. Beginning computer scientists need to start with small, manageable problems in order develop foundational skills. However, these toy applications are not always engaging to students and may not appear relevant to the problems
they face in their everyday lives.
I was at a meeting at Facebook this summer and was struck by the enormity of scale that they deal with. Talking to students about how they use Facebook, and then expanding into a general discussion about how to organize and search MASSIVE amounts of data is an interesting and highly relevant exercise. Interesting facts I gleaned from the meeting:
* Facebook is the most popular Web site, with more than 700 billion minutes spent on Facebook every month by more than 500 million users. That’s more time spent than the next six most popular Web sites combined.
* There are more than 8 billion action events occurring each day on Facebook, including roughly 100 million photo uploads.
* If you graphed the social network defined by Facebook, there would be more than 500 million nodes (people and groups) and more than 80 billion edges (friend relationships and group memberships).
I found one tidbit especially interesting and have already incorporated it into an assignment. When you enter text in a Facebook search box, you may notice that it starts showing possible matches immediately, starting with ranked items that match the first character you type, then refining them as you enter more characters. Given that the number of possible search matches is HUGE, it is important to do this search and refinement efficiently in order to appear instantaneous to the user. It turns out, they simply utilize two binary searches – one binary search through the sorted list of potential matches to find the first matching one, then a second binary search to find the last match. Simple, fast, and understandable to a CS1 student.
Dave Reed
CSTA Board of Directors

What Does a Computer Scientist Look Like?

Career and Technical Education exposed me to the field of computing. I joined two organizations in high school that changed my life. My participation in FBLA (Future Business Leaders of America) and ROCAME (Region O Council for the Advancement of Minorities in Engineering) allowed me to see what a Computer Scientist and Engineer “looked like.” These organizations also groomed me for the experiences that followed during my years as an undergraduate Computer Science student in the College of Engineering at North Carolina A&T State University. It was all relevant.
We as adults base our decisions on statistics and track interest rates for credit cards, various loans of all types and follow the Stock Market closely. This type of data is important to society and allows us to make effective decisions. Is this type of data relevant to our students when determining course enrollment or college majors? No. Do we provide students with effective and relevant data that would assist them in deciding to pursue a career in the field of Computer Science? My prior students were concerned with the amount of money they could make upon graduation. Some students were concerned about whether or not people represented in certain careers aligned with their profile or if they were “cool.” Did I mention they want to know how much money they are going to make?
When I toured companies as a high school student in ROCAME, I was convinced after my first onsite meeting. Why? The mentor assigned to our chapter discussed aspects of his job that seemed fun, he looked like me, I made a connection with his experiences and they aligned with my interests. He showed me what a person in his field looked like and made it relevant. We have a great responsibility to expose students to the field of Computer Science, be visible in their classrooms as well as during post school events.
I am currently employed in one of the largest districts in my state and there are less than ten Computer Science programs. How do we effectively integrate this field at every level in K-12 education and show students what a Computer Scientist looks like? How do we make it relevant?
The resource Pathways in Computer Science is posted on YouTube. It assists in marketing the field of Computer Science to students.
It’s a start.
Shemeka D. Shufford
CSTA Board Member

New Developments in the Exploring Computer Science Curriculum

Many of you are familiar with the Exploring Computer Science (ECS) curriculum, developed in partnership with CSTA as part of an NSF grant. Though initially developed to broaden the participation in computing for Los Angeles Unified School District high school students, many teachers and educational leaders throughout the nation have adopted some or all of the ECS curriculum in a variety of school and informal educational settings.
This spring, we made some substantive changes (along with minor edits) to strengthen the curriculum. As in years past, our revision cycle relies on the feedback of Los Angeles teachers who have taught the curriculum to students and have ideas for improvement. Newly released version 3 includes several large edits to Unit 1 (Human Computer Interaction) and Unit 2 (Problem Solving) with some smaller edits to Unit 3 (Web Design). We are excited about these changes and feel really good about the improvements made in this 3rd edition. The pdf document with daily lesson plans and associated electronic files are all available to download in a zip file from the CSTA website.
Also, in collaboration with UCLA’s Center for Embedded Network Sensing (CENS) and Google, we recently piloted an alternative Unit 6 (Data Modeling) with a small group of Los Angeles teachers. In this new pilot unit, students were given smart-phones to document the assets and concerns in their community. They used the phones to map these chill/stress locations, and used the statistical programming language of R to synthesize their findings. With the decreasing cost of smart phones and the knowledge students already hold about their community, we found this to be a dynamic unit for teaching students about the relevancy and power of computer science. It is our hope that we will eventually get enough funding for classroom sets of smart-phones for all of our Los Angeles computer science teachers.
Stay-tuned for more updates on Exploring Computer Science.
Joanna Goode
CSTA Equtiy Chair