Celebrate the 10th Anniversary of CSEdWeek

This December marks the 10th anniversary of Computer Science Education Week (CSEdWeek) and it’s remarkable how far it has come. I’ll be honest, I wasn’t a CS teacher during the first-ever CS Education Week, so I can’t claim to remember the full history, but thanks to the magic of unlimited email storage I can share the first email I ever got about CS Ed Week:

It’s no surprise that my local CSTA chapter was also my connection to the early days of this national movement. I know I proudly took the 2010 CSEdWeek pledge (not that I can remember exactly what the pledge was anymore).  In 2011, I remember trying, unsuccessfully, to get my local alderman to get the Chicago City Council to officially proclaim CSEdWeek. Given the amazing momentum around CS education, it’s easy to forget that we’re building on a foundation built by passionate teachers, and I am so proud that CSTA has been there supporting teacher voices from the start.

That’s why I’m very excited that CSTA will be co-hosting this year’s CSEdWeek kickoff. We’ve partnered with Code.org and the Computer Science Alliance to launch CS Ed Week 2019 in Santa Fe, New Mexico, on Dec. 9 with an insightful panel discussion focused on this year’s theme — CS for Good — and the announcement of the 2019 Champions of Computer Science. For those of you who can’t make it to Santa Fe, we’ll be live streaming this event, so I encourage you to watch if you have the opportunity.

Behind the scenes at CSTA, our team has been developing new classroom resources honoring the CS for Good theme, including a set of posters that feature diverse people who use CS for Good in multiple industries. We’ll be releasing these as part of our CSEdWeek celebration, so make sure you’re following our social media channels to learn how to download the posters. 

What happens in each of your schools and classrooms is what makes CS Ed Week most exciting. Please share what you do by tagging @csteachersorg in your Tweets and use #CSforGood #CSEdWeek in your posts.

Jake Baskin, CSTA Executive Director 

Dr. Jan Cuny’s National Impact On Computer Science Education

by Art Lopez, 9 – 12 representative, CSTA Board of Directors

In writing this blog post, I wanted to take the opportunity to share with you, our members, the impact that Dr. Jan Cuny has had on our children, our communities, our country and on computer science education. I do not know if you know or heard about Dr. Jan Cuny; Jan is the Program Director for Computing Education in the in the Division of Computer and Network Systems for the National Science Foundation and, in my opinion, why computer science education has progressed so far forward for the past several years.

I first met Jan in Washington, D.C. in an event sponsored by the NSF and the White House Office and Science Technology in 2014 on recognizing the top 100 CS educators in the country. Jan informed us of the importance of providing computer science education in public education for ALL of our children, the broadening of participation of underserved and underrepresented groups in computer science (women, ethnically diverse, and learning differences), and equity access. Jan was incredibly inspiring, and I found an article she had written in ACM Inroads, {VOL 3, ISS 2, (June 2012)} named Transforming High School Computing: A Call to Action. Jan clearly outlined how important computer science education is for our children and our country’s future.

I was so inspired, yet, at the same time, unsure of what I could do to help contribute to advancing computer science education in my community and region; I did not know how to proceed. A few months later, I got to meet Jan again and was able to have a conversation with her. Jan said she believed in and encouraged me (and so many others!) to think of ideas on connecting with our higher education colleagues and organizations such as CSTA, Code.org, Exploring Computer Science, CS for All, CSforAll Teachers, and the Broadening Participation in Computing Alliance Program  (BPC-A) (just to name a few), to motivate young people and adults of the importance of computer science education in their lives; to broaden participation and provide equity access for computer science education that can change the lives of our children and communities for the better. Through Jan’s connections and the NSF funding of programs, I connected with my higher education colleagues at UC-San Diego to help push forward computer science education in my district, the Sweetwater Union High School District, the region of San Diego and Southern California.

I wish I had the space to share with all of you of the efforts and work Jan has done in having so many people and organizations to be a part of this endeavor and national effort, such as the creation of the AP Computer Science Principles course, Exploring Computer Science, providing training and resources for teachers and students, broadening participation, equity access, and so many other programs. Unfortunately, I can only offer a small view of what Jan has done.

Jan has, through the NSF, not only impacted and offered me opportunities to impact the education of our children, but impacted and created a community and a network of so many people and organizations that can collaborate and share their expertise: experts in computer science and educational practices with teachers who are experts in teaching. It was, and remains today, a great collaborative effort for the advancement of Computer Science Education for our children and country.

A few months ago, I got to see Jan speak at the College Board’s AP CS Principles reading and once again, was so inspiring with her talk to the readers. I had a side conversation with her and really enjoyed our discussion about how far we had come in providing computer science education courses to so many more students, schools and communities in the past few years; but we also talked about how much more we had to go to reach out to ALL students; this would NOT be happening without Jan’s commitment and vision.

Recently, Jan has decided to retire from the NSF; there was a great tribute to her at the CSforAll Summit, and many people whose lives she has touched over the years shared with her how important and central her vision and she has been for the advancement of computer science education, broadening participation and equity access.

I did not get a chance to be there and do the same; but, I can share with you, our members, the importance of Jan Cuny and what she has done (and continues to do!) for the advancement of Computer Science education for our kids, teachers, communities and country. Jan gave teachers, higher education colleagues and institutions, and organizations the opportunities to integrate and embed computer science education in public education, to impact and hopefully make the future of our children’s lives and communities better; and I think that is the best thing I can say about anyone: Jan, you made the world a better place; thank you Jan.

Art Lopez
9-12 Teacher Representative

Thinking about Reflection

I have always loved this quote by Seymour Papert: 

“You can’t think about thinking without thinking about thinking about something.”

It always leads me to wonder what students are thinking about their thinking as they are learning. Are they able to think about and grasp the concepts they are learning as they write a game in Scratch or program a step counter on a micro:bit or build and program a robot? Are they able to understand what they have learned and transfer it to a new programming environment? What can we do as teachers to help our students to think about their thinking so they can understand what they are learning? 

To make reflection a normal part of the process for my students, each student has a portfolio website for sharing and reflecting on the projects and activities they complete during their technology classes. My youngest students use Seesaw for sharing their work. Starting in 3rd grade, my students use Google Sites for their portfolios. This allows the students to not only think about their thinking and reflect on their current work but it lets them look back at their thinking in prior years, as well. 

I decided to use these types of portfolios for a few reasons:

  • Reflecting on and documenting their work may help to meet computer science standards, including:
    • 1A-AP-15: Using correct terminology, describe steps taken and choices made during the iterative process of program development.
    • 1A-IC-17: Work respectfully and responsibly with others online.
    • 1B-AP-17: Describe choices made during program development using code comments, presentations, and demonstrations.
  • Since the students are writing during their computer science classes, it may also help them to improve their writing skills and meet language arts standards as well – CCSS.ELA-LITERACY.CCRA.W.2: Write informative / explanatory texts to examine and convey complex ideas and information clearly and accurately …
  • Their portfolio shows their growth over the years.

It can be difficult to get students to think about their work. To help, younger students are given sentence stems to complete or are asked to answer certain specific questions when they post their work. They will also often record their answers rather than typing in their answers like Natalie did when she was in 1st grade talking about Hello, Ruby lessons

Upper elementary and middle school students are still given questions and other guidance to help them focus on their thinking and learning but the amount of guidance decreases dependent on the grade level and ability of the student.

3rd Grade Girl Scratch Project Reflection
4th Grade Boy Scratch Project Reflection

Check out a 7th grade girl’s reflections on working with micro:bits.

While I love using student websites or blogs as a vehicle for students to think about their thinking and reflect on their learning, it’s not always possible to do so. It also does increase the time required to finish an assignment or project. This got me thinking about other less time intensive ways for students to reflect on their learning and serendipitously this popped up on Twitter:

I love the idea of using a simple checklist document to help students reflect on what they are actually learning. This could easily be printed or turned into a Google Form and used as an exit ticket in the last few minutes of class. 

How are your students thinking about their thinking and reflecting on their learning?

Vicky Sedgwick K-8 Teacher Representative

Using Drones in the Classroom

Many students look at drones as cool toys to play with, not an emerging technology with several career possibilities. Drones are being utilized in several industries and are making huge impacts on society. Below are a few examples:

From an educational perspective, exposing students to drone technology in the classroom provides an innovative learning experience. In addition to having students explore the many career possibilities in this fast-growing, multibillion-dollar industry, drones can also serve as an educational tool to teach computer programming. Drones also present many opportunities for students to practice 21st Century Skills, such as communication, collaboration, critical thinking and problem-solving. Last year I implemented Apple Swift Playgrounds and the Parrot Education Subscription to teach my students how to program and pilot a Parrot Mambo drone. Students learned how to program a drone to takeoff, land, move in all directions, make aerobatic figures, and even control accessories. It was a successful hands-on learning experience for my students and they had the opportunity to see first-hand the cause and effect of their programming. Although there were many successes, there were also failures, providing authentic opportunities for learning. For example, one of the challenges I gave my students was to program the drone to fly through an obstacle course. This challenge posed a lot of struggles for my students; but every time they failed, they worked to troubleshoot their programs and figure out why the drone was not doing what they wanted it to do. They then fixed their code and tested it again. The perseverance that I witnessed by my students during this experience was truly amazing. 

Drone resources that I use in my classroom can be found at https://bit.ly/2XlLkBI. I encourage you to consider incorporating drones into your classes. They are engaging and a great opportunity for learning computer science.

Kristeen Shabram
K – 8 Representative

What is easy?

I have been thinking about the phrase “it’s easy,” and how hurtful that phrase can be. Just because something is easy for one person doesn’t mean it is easy for everyone. And conversely, just because something seems like it will be hard doesn’t mean it will be hard.

Maybe you think someone doesn’t have a lot on their plate compared to you. But maybe their plate is smaller than yours and doesn’t have a lot of room to begin with. Or maybe their plate is paper, and their flimsy paper plate can’t hold as much as your sturdy ceramic plate can.

Secret Kindness Agents

Sometimes “it’s easy” is deployed in a very personal way – something I think is easy but someone else might not find easy. For example, I think functions are fairly straightforward – easy, even – but for many students they are one of the most challenging parts of programming. Even when I am frustrated as a teacher, telling my students that it is easy doesn’t help them understand, it only makes them feel worse about how challenging they find it.

When I taught middle school, a teacher down the hall had a big sign in her class that said, “YET.” Her philosophy was that when students did not succeed, it was because they had not yet mastered the material. What a forgiving and empowering view of learning: it isn’t that students are deficient, it’s that they aren’t strong yet. Yet is a very growth mindset point of view.

On the flip side, “it’s difficult” can be just as arbitrary. One teacher I know believes that nothing is truly difficult (even functions!), that if students are struggling, it means we aren’t teaching it very well.

One example of something that seems hard is recursion. We have a shared belief that recursion is hard. It means that students come to believe that recursion is hard. Yet at its most basic, the idea that a function can call itself isn’t that hard. And especially for problems that are recursive in nature – the Fibonacci sequence for example – the recursive solution is obvious, and is what students will natively come up with if asked to figure it out.

Thinking things are hard or easy can be a barrier for students – scaring them or preventing them from accessing things we perceive to be too hard, or making them feel bad for not grasping things that are “easy.” Hopefully we can all achieve the goal of making learning accessible – not too hard and not too easy.

Michelle Friend
At-Large Representative

Preparing Computer Science Teachers

I’ve been fortunate enough to have some great conversations about what CS teachers need to know over the last year. Stakeholder groups, including teacher education programs, state department of education specialists, CS and education faculty at higher education programs, are all working to figure out how to develop sustainable models of preparing computer science teachers to meet the growing demand for CS teachers.

Some of the conversations are driven by and informed by the current process to refresh the CSTA and ISTE Standards for CS Educators. In January 2019, CSTA and ISTE began work on these standards, which seek to set clear goals for CS teachers know and be able to do in the classroom, serve as aspirational goals for CS teachers, and establish benchmarks for those providing learning opportunities for CS teachers. The second draft has now been released and is available at csteachers.org/page/standards-for-cs-educators for comment until October 11th. The final version is expected to be available by the end of 2019.

Other conversations have been very focused on practical matters, including what should be included in a computer science methods course. Here is a list of items that education and computer science faculty brainstormed during a workshop sponsored by the Maryland Center for Computing Education this summer. Workshop participants drew on their experiences teaching methods courses for generalist educators (often at the elementary and middle school level) and for secondary educators seeking licensure in a specific topic.

  • CS Subject Matter Knowledge (SMK),  in particular for generalists as they may not have had a standalone course in computer science
  • CS Pedagogical Content Knowledge (PCK) – how to teach computer science
  • Evaluating curriculum – how to choose a curriculum that aligns with relevant standards, is relevant to students, engages students, etc.
  • Unit Planning – how to create a set of lessons that build on each other to achieve learning objectives
  • Understanding and aligning with student standards (e.g. CSTA K12 Standards)
  • Common misconceptions in learning computer science, including how students construct models of how a computer works
  • Classroom management, especially managing instructional technology and devices
  • Formative and summative assessments of computer science learning 
  • Designing instruction for all students, including those with learning or physical disabilities and those typically underrepresented in computing
  • Understanding professional codes of ethics for computer scientists and the impacts of computing
  • Supporting students in learning academic vocabulary as well as reading in the content area
  • Teaching methods for computer science, including strategies such as peer instruction, POGIL, pair programming, worked examples with subgoals, Parson’s problems, and many more
  • Integrating computer science in other content areas, in particular for generalists
  • Field experiences – a teaching placement in a school that includes computer science

Of course, this is not an exhaustive list of what might be included in a CS methods course, nor would all of these topics necessarily be included in a single methods course. Teacher educators may need to consider their local context, including where there is overlap with other areas of their education program and the state licensure requirements. But, it is a start and I’m looking forward to having more conversations in the future with stakeholders working on developing sustainable programs for computer science teachers.

Jennifer Rosado
Board Chairperson

7 things for CS teachers to know: K-12 CS experiences of Google engineers

At Google, I lead the Outreach team for Computer Science and Digital Skills Education, which means I get to support CSTA and other great organizations working to broaden access to CS education. In this role, I often find that educators are especially interested in learning more about Google employees (we call them Googlers) who use computer science, so that they can better prepare their own students for the workplace. 

I recently undertook a non-scientific study and polled a small sample of 15 Googlers* in technical roles (nearly all engineers) about their K-12 CS education experiences, in hopes that they’d provide some advice I can pass onto CSTA members. Here are seven themes that emerged:

1. Encouragement is really important and comes in many forms. 

Given the body of research demonstrating the importance of encouragement in helping students persist in CS education (e.g., this white paper), it’s not surprising that Googlers talked a lot about receiving encouragement. This came mostly from teachers and parents. Interestingly, friends/peers were a pretty distant third place. Googlers gave lots of examples of how educators provided them with valuable encouragement, including:

  • My AP CS teacher encouraged me to apply for an NCWIT award, which I won. I joined the Facebook group and immediately felt more included in the national CS and specifically women’s CS community.
  • My high school math teacher was my biggest cheerleader when it came to CS. He had a pretty limited coding background himself, but had the foresight to recognize that CS was the next big thing and that I was good at problem solving and puzzles. 
  • My teacher encouraged me to apply for internships and the Computer Science Summer Institute program, which I attended before college.

2. Share opportunities and challenge your students to stretch themselves.

While some Googlers didn’t know about CS opportunities or didn’t have people in their lives with access to that information, several mentioned that teachers often passed on valuable information about internships and scholarships. Some said that their teachers challenged them to stretch themselves in ways that they might not have otherwise considered. 

  • My teacher pushed me to try the next thing and keep investing in my CS education.
  • My teachers shared available IT-related internship opportunities in the area.
  • Even if they don’t feel qualified, get your students to apply for scholarships, summer camps, and other opportunities. Most will feel hesitant even if they are qualified! Consider offering extra credit for stretching themselves.

3. Make computer science relevant. Personalize the education.

Googlers shared that effective teachers used a wide range of examples and projects, tying content to students’ interests, to make CS feel relevant. Practical applications were especially inspiring, as were real life demonstrations of programs to show CS in action. Some Googlers called out the importance of rigorous CS content or having flexibility for advanced students to explore and learn further on their own.

  • The teacher built a class management system that would randomly pick students to answer questions, and would automatically grade them at the end of the term based on their answers.
  • Leveraging CS to run low-cost experiments can show its relevance.
  • Find and share exciting examples through YouTube videos related to topics of interest. 
  • Don’t be afraid to let the students have freedom to do things their way — it’s messier, but empowers creativity. 

4. Connect lesson plans to WHY students should learn CS.

Related to the above theme, Googlers gave examples of how successful teachers not only taught them how to do things, but also helped them understand why they were learning those CS concepts.

  • My best CS teacher made the lessons relevant. He always highlighted why we were learning specific concepts.
  • Begin by posing problems first, then introduce the tools to solve them. This encourages creativity and divergent thinking, making it easier for students to remember the applicability of the tools.
  • Connecting theory with their practical industry experience made it much more tangible why we were learning CS.

5. Foster collaboration, sharing, and connections.

The importance of teamwork, community, and sharing work samples were mentioned by several Googlers. By inviting students to share their work, teachers not only encouraged peer-to-peer teaching and learning, but also provided validation and recognition. Similarly, building communities fostered friendships among peers with similar interests.

  • Seeing advanced work done by peers encouraged me to learn more.
  • [My teacher encouraged me by] letting me show my finished programs.
  • Peers played an enormous role, as we were programming together to solve Project Euler problems.
  • My teacher sponsored a computer club, which introduced me to other students with similar interests.
  • One friend took the intro course [with me], and her friendship was key to me staying in CS.

6. Teacher support helped students overcome various challenges.

Googlers shared a host of challenges they faced, and in some cases, how teachers helped them overcome these barriers. The most common themes were: lack of CS as a core subject or unavailability of courses; insufficient computer or internet access, especially in rural areas; lack of exposure to CS and mentors; facing gender stereotypes and being made to feel out of place as a girl; and general low self-confidence or impostor syndrome. 

  • Resources were limited, but my teacher pointed me towards opportunities that were available (university classes, online forums and Q&As, etc.).
  • I had a couple of big missed areas due to being self-taught.
  • My biggest challenge was lack of structured content beyond intro level.
  • The first time learning something it can seem impossible, but revisiting makes it clearer. Keep reteaching tough concepts to struggling students — it might eventually click.

7. Keep up the great work!

Finally, Googler advice for CS teachers included some gems that didn’t quite fit the themes above, but that I felt compelled to share as they aligned nicely with CSTA’s work of supporting CS teachers through professional development, community, and inspiration: 

  • Keep growing as computer scientist yourself!
  • Have a growth-mindset approach to teaching (and learning).
  • CS classes changed my life. Your classes will most likely change someone else’s.

* Here’s more information about the 16 Googlers who completed my survey: 80% are engineers with varying years of experience. There was a diverse representation across age ranges and also race/ethnicity, and 60% were female. On average, the Googlers were first exposed to CS at age 14 (responses ranged from 7 to 18), though they reported really enjoying CS at age 17. Not surprisingly, nearly everyone described multiple points of exposure, with in-class learning and self-learning by far the most commonly cited. Learning from family/friends, after-school programs, informal programs (libraries and youth-serving organizations), bootcamps, and internships were also mentioned. Over two-thirds of Googlers identified a teacher who played a critical role in their learning: most mentioned a CS/programming teacher, but mentors also included computer lab staff and a librarian.

Hai Hong
Partner Appointed Representative

Recent Good News on Participation and Opportunities for Young Women Studying Computer Science

Two pieces of important and good news have come out recently about the state of, and opportunities for, the participation of young women in computer science.   The first is the participation of women in the 2019 computer science advance placement exams; the second is the announcement of this year’s Aspirations in Computing awards program organized by the National Center for Women & Information Technology.   Together, they are an indication of how far we’ve come as a community in recent years in embracing the opportunities for young women to study computer science in high school, and in providing encouragement and support to continue these studies in college.

The participation in the computer science AP exams, like most everything else associated with computing, has exploded in recent years, and the participation of young women has outpaced the overall growth.   As is summarized in this article, the total number of women taking CS AP exams in 2019 grew 32% since last year, to over 48,000, and the percentage of women among all test-takers increased to over 29%.   The growth in the number of women taking AP CS is nearly five-fold in just four years, and the percentage of women which had hovered in the high teens for years has grown dramatically.

Much of the growth of enrollment in high school computer science, and in CS AP exams, is due to the CS Principles course.   As is described here, in just three years since this course and exam were introduced, the number of students taking CS Principles AP has skyrocketed to over 96,000, which now is nearly 60% of the total CS AP test takers. And the participation of women students in the CS Principles AP exam outpaces the overall CS AP participation by women, at 33%.   This still is far from half but is approaching a tipping point! 

A great accompaniment to the quickly growing participation of young women in high school computer science courses is the NCWIT Aspirations in Computing Program.   The Aspirations program has grown over recent years to include not only awards that have become well known, but also community elements that stretch down to lower grades and up to the university level.  Here I’ll just focus on the upcoming awards program.  The Aspirations awards are a great opportunity to recognize and encourage young women who are actively engaged in computing at the high school level.   By a system of competitions and awards that now is conducted in 79 separate regions across the US, this program provides opportunities to recognize many young women annually (nearly 14,000 since 2007!), as well as their teachers.   Having been to several regional Aspirations awards ceremonies, it is inspirational to see the impact of this program on the young women and on their families.   Please encourage your students to apply to Aspirations, and support them in taking courses that lead to the CS AP exams!

Bobby Schnabel
Board Representative

The Second-Best Job

Don’t get me wrong, being retired is the best job ever (with teaching a close second!) but I must say I feel very lucky to be able to stay active in the computing education community. Particularly, being the co-chair of the ACM Education Board and participating as a CSTA Board member has given me opportunities to keep learning and participating with people around the world. 

I was invited to attend the ACM SIGCSE China conference in May, 2019 in Chengdu China https://www.acmturc.com/2019/en/SIGCSE.html(and yes, the panda bears were very cute). I was part of a panel which was titled Computer Education Research. Panelists included Junlin Lu (China), Juan Chen (China), Jane Prey (USA), Steve Cooper (USA), Andrew Luxton-Reilly (New Zealand), Brett Becker (Ireland), Bo Yang (China). While this may sound like a research discussion, we ended up talking about various scenarios for teaching computing in primary grades (aka K-12.) There were many opinions and ideas around the availability of resources, diversity and engagement. We discussed the different languages used, the various approaches, etc – takeaway #1: People from around the world ask the same kinds of questions we do on how to best teach their students. 

What I enjoyed most were our conversations on how “easy” vs “challenging” the content should be and if programming/coding should be the principle deliverable from the class. Particularly interesting comments included:  if it’s too easy, what are they learning?, how to keep students interested in doing something challenging?, how to challenge students and have them feel successful and rewarded for doing the hard work?, how to recognize when to push and when to hold back, how to have students add to their ability to solve problems? My takeway #2 is that our group (panelists and attendees) believe that computing in school should be fun, that fun does not mean easy, that fun should include moments of reflection and work, that work should be fun. 

Takeaway #3: there are many smart and passionate people around the world working to answer these questions. I am very lucky my grandchildren will be taught by such people. 

Happy New School Year!

Jane Prey ACM Representative

Data Science in Schools

I’ve no doubt that good CS education involves finding some motivating contexts for getting the ideas across, and for pupils to get to grips with programming. Lots of teachers have found their pupils highly engaged through creating games and animations, or through interacting with the real world through physical computing and robotics, or, perhaps more unusually, through algorithmic art or composing music. I think we could make a good case for adding some data science into this mix, getting pupils to do a little visualisation and exploratory data analysis, and through this starting to answer some genuinely interesting questions. 

When we wrote the English computing curriculum, we included some explicit references to working with data: 7-11 year olds are taught “collecting, analysing, evaluating and presenting data”, and 11-14 year olds “undertake creative projects that involve selecting, using, and combining multiple applications, preferably across a range of devices, to achieve challenging goals, including collecting and analysing data.” Or at least they’re supposed to. CSTA’s standards go quite a bit further, with a whole strand given over to data and analysis, with a clear sense of progression and ambitious targets for high schoolers like “Create interactive data visualizations” and “use data analysis tools and techniques to identify patterns in data representing complex systems”.  I worry that we’ve put so much emphasis on coding that these crucial skills, and the consequent understanding gets overlooked in too many schools. It needn’t be this way. Indeed there’s plenty of scope for doing this data visualisation and analysis with code. 

I’ve been thinking recently about how we can take the foundations / application / implications (that’s roughly computer science, IT and critical digital literacy) model that underpins the English computing curriculum and apply it to related (and some unrelated) subjects, to help promote a broader and more balanced approach to curriculum design. We can use this model for thinking about data science in schools. 

If we’re serious about pupils’ learning data science, then I think we need to lay the foundations with some old school probability and statistics: typically these are already part of the math curriculum, but there’s so much more we can do here when we let our pupils use computers for this, from simulating dice rolls, through plotting graphs to calculating summary statistics for some big datasets. All these things can be done by hand (‘unplugged’?), but once pupils have an idea of the techniques, they can concentrate on selecting and using the right tools, and making sense of the results if they use technology to automate the automatable parts of the process – it’s far more interesting and useful to be able to make sense of a scatterplot (for example) than to be able to draw one by hand.

I’d also want pupils to apply this knowledge to some interesting problems. In elementary school, I’d look at opinion polls or other surveys as a way in to this, perhaps getting pupils to work collaboratively at coming up with good questions – agree / disagree Likert scales are a good starting point, and then exploring what they can learn by slicing the data they collect: is there any difference between boys’ and girls’ enjoyment of school subjects in elementary school (and is there any difference in high school…)? Later on, I’d start looking at time series: weather data is great for this. In the UK we’ve open access month on month meteorological data going back over 100 years, and a comparison of temperatures for the last 30 with the previous 70+ makes a persuasive case. Later still, I’d get pupils looking for patterns and relationships in big (or biggish) datasets: sports fans might like to play with accelerometer or GPS data from micro:bits, wearables or phones: can they work out what sport someone was playing from the datafiles (or a visualisation of them)? Could a machine do this? Big, public, anonymised datasets could be linked very powerfully to some social studies topics: what are the links between gender, ethnicity, education and income? Or pupils could learn about text mining techniques and apply these to their study of English: are there quantifiable differences between the vocabulary and grammar of Hemingway and Morrison? Or between Obama and Trump?

Even more importantly, I’d like pupils to think through some of the implications of collecting and using data as freely as we do. Coming back to my elementary school survey idea: what questions shouldn’t we ask one another? What questions shouldn’t we answer? Does it matter if your name is attached to the answers? In one day at school, how much data does a pupil generate (attendance, grades, cafeteria, accessing the internet, CCTV, online learning, behaviour management, etc…)? What happens to all this data? What could you discover about a pupil if this was all linked together? Does anyone mind? How much do internet service providers, search engines and email services know about a user? What do they use this for? Again, does anyone mind? If big tech firms provide the wonderful services they do for free, how have they got to be some of the most valuable companies in the world? The English computing curriculum includes teaching pupils ‘new ways to protect their online identity and privacy’ – what should we include here?

Some of this certainly should be part of what our pupils learn in their school computing lessons, but lots of it provides ample opportunity for cross curricular links, with math, social studies, civics and even sports! I think we as CS teachers gain so much through showing how relevant coding can be to the other things our pupils study.

Miles Berry
International Representative