Tag Archives: #CSforAll

Computational Thinking from a Dispositions Perspective



(Cross-posted on the Google Research Blog.)

In K–12 computer science (CS) education, much of the discussion about what students need to learn and do to has centered around computational thinking (CT). While much of the current work in CT education is focused on core concepts and their application, the one area of CT that has not been well explored is the relationship between CT as a problem solving model, and the dispositions or habits of mind that it can build in students of all ages.

Exploring the mindset that CT education can engender depends, in part, on the definition of CT itself. While there are a number of definitions of CT in circulation, Valerie Barr and I defined it in the following way:
CT is an approach to solving problems in a way that can be implemented with a computer. Students become not merely tool users but tool builders. They use a set of concepts, such as abstraction, recursion, and iteration, to process and analyze data, and to create real and virtual artifacts. CT is a problem solving methodology that can be automated and transferred and applied across subjects.
Like many others, our view of CT also included the core CT concepts: abstraction, algorithms and procedures, automation, data collection and analysis, data representation, modeling and simulation, parallelization and problem decomposition.
The idea of dispositions, however, comes from the field of vocational education and research on career development which focuses on the personal qualities or soft skills needed for employment (see full report from Economist Intelligence Unit here). These skills traditionally include being responsible, adaptable, flexible, self-directed, and self-motivated; being able to solve simple and complex problems, having integrity, self-confidence, and self-control. They can also include the ability to work with people of different ages and cultures, collaboration, complex communication and expert thinking.

Cuoco, Goldenberg, and Mark’s research also provided examples of what students should learn to develop the habits of mind used by scientists across numerous disciplines. These are: recognizing patterns, experimenting, describing, tinkering, inventing, visualizing, and conjecturing. Potter and Vickers also found that in the burgeoning field of cyber security “there is significant overlap between the roles for many soft skills, including analysis, consulting and process skills, leadership, and relationship management. Both communication and presentation skills were valued.”
CT, because of its emphasis on problem solving, provides a natural environment for embedding the idea of dispositions into K-12. According to the International Society for Technology in Education and the Computer Science Teachers Association, the set of dispositions that student practice and internalize while learning about CT can include:
  • confidence in dealing with complexity,
  • persistence in working with difficult problems,
  • the ability to handle ambiguity,
  • the ability to deal with open-ended problems,
  • setting aside differences to work with others to achieve a common goal or solution, and
  • knowing one's strengths and weaknesses when working with others.
Any teacher in any discipline is likely to tell you that persistence, problem solving, collaboration and awareness of one’s strengths and limitations are critical to successful learning for all students. So how do we make these dispositions a more explicit part of the CT curriculum? One of the ways to do so is to to call them out directly to students and explain why they are important in all areas of their study, career, and lives. In addition educators can:
  • Post in the classroom­­ a list of the Dispositions Leading to Success,
  • Help familiarize students with these dispositions by using the terms when talking with students and referring to the work they are doing. “Today we are going to be solving an open-ended problem. What do you think that means?”
  • Help students understand that they are developing these dispositions by congratulating them when these dispositions lead to success: “Great problem-solving skills!”; “Great job! Your persistence helped solve the problem”; “You dealt with ambiguity really well!”.
  • Engage students in discussions about the dispositions: “Today we are going to work in teams. What does it mean to be on a team? What types of people would you want on your team and why?”
  • Help students articulate their dispositions when developing their resumes or preparing for job interviews.
Guest speakers from industry might also:
  • Integrate the importance of dispositions into their talks with students: examples of the problems they have solved, how the different skills of team members led to different solutions, the role persistence played in solving a problem/developing a product or service…
  • Talk about the importance of dispositions to employers and how they contribute to their own organizational culture, the ways employers ask interviewees about their dispositions or how interviewees might respond (e.g. use the terms and give examples).
As Google’s Director of Education and University Relations, Maggie Johnson noted in a recent blog post, CT represents a core set of skills that are necessary for all students:
If we can make these explicit connections for students, they will see how the devices and apps that they use everyday are powered by algorithms and programs. They will learn the importance of data in making decisions. They will learn skills that will prepare them for a workforce that will be doing vastly different tasks than the workforce of today.
In addition to these concepts, we can now add developing critical dispositions for success in computing and in life to the list of benefits for teaching CT to all students.

Computational Thinking for All Students



(Cross-posted on The Huffington Post and the Google Research blog.)

Last year, I wrote about the importance of teaching computational thinking to all K-12 students. Given the growing use of computing, algorithms and data in all fields from the humanities to medicine to business, it’s becoming increasingly important for students to understand the basics of computer science (CS). One lesson we have learned through Google’s CS education outreach efforts is that these skills can be accessible to all students, if we introduce them early in K-5. These are truly 21st century skills which can, over time, produce a workforce ready for a technology-enabled and driven economy.

How can teachers start introducing computational thinking in early school curriculum? It is already present in many topic areas - algorithms for solving math problems, for example. However, what is often missing in current examples of computational thinking is the explicit connection between what students are learning and its application in computing. For example, once a student has mastered adding multi-digit numbers, the following algorithm could be presented:
  1. Add together the digits in the ones place. If the result is < 10, it becomes the ones digit of the answer. If it's >= 10 or greater, the ones digit of the result becomes the ones digit of the answer, and you add 1 to the next column.
  2. Add together the digits in the tens place, plus the 1 carried over from the ones place, if necessary. If the answer < than 10, it becomes the tens digit of the answer; if it's >= 10, the ones digit becomes the tens digit of the answer and 1 is added to the next column.
  3. Repeat this process for any additional columns until they are all added.

This allows a teacher to present the concept of an algorithm and its use in computing, as well as the most important elements of any computer program: conditional branching (“if the result is less than 10…”) and iteration (“repeat this process…”). Going a step farther, a teacher translating the algorithm into a running program can have a compelling effect. When something that students have used to solve an instance of a problem can automatically solve all instances of the that problem, it’s quite a powerful moment for them even if they don’t do the coding themselves.

Google has created an online course for K-12 teachers to learn about computational thinking and how to make these explicit connections for their students. We also have a large repository of lessons, explorations and programs to support teachers and students. Our videos illustrate real-world examples of the application of computational thinking in Google’s products and services, and we have compiled a set of great resources showing how to integrate computational thinking into existing curriculum. We also recently announced Project Bloks to engage younger children in computational thinking. Finally, code.org, for whom Google is a primary sponsor, has curriculum and materials for K-5 teachers and students.

We feel that computational thinking is a core skill for all students. If we can make these explicit connections for students, they will see how the devices and apps that they use everyday are powered by algorithms and programs. They will learn the importance of data in making decisions. They will learn skills that will prepare them for a workforce that will be doing vastly different tasks than the workforce of today. We owe it to all students to give them every possible opportunity to be productive and successful members of society.

Project Bloks: Making code physical for kids



When we were kids, physical things like toys and blocks helped us learn—inspiring curiosity and imagination in a fun, playful way. We think there’s no reason that shouldn’t also be possible when it comes to Computer Science.

When kids learn to code, they’re not just learning how to program computers, they’re learning a new language for creative expression and developing computational thinking: a skillset that will help prepare them to solve all kinds of problems. Making code physical — known as tangible programming — offers a unique way to combine the way children innately play and learn with computational thinking.

Earlier this week we announced a new research initiative called Project Bloks. The project is a collaboration between Google, IDEO and Stanford’s Paulo Blikstein, inspired by — and building upon — a long history of educational theory and research in the field of tangible programming.

The ultimate goal of Project Bloks is to create an open hardware platform for physical programming experiences to help kids develop computational thinking through play. By creating an open platform, Project Bloks will allow designers, developers and researchers to focus on innovating, experimenting and creating new ways to help kids develop computational thinking. Our vision is that, one day, the Project Bloks platform could become for tangible programming what Blockly is for on-screen programming.

As a first step, we’ve created a system for physical programming and built a working prototype with it. We’re sharing our progress before conducting more research over the summer to inform what comes next.

Want to get involved?
We are currently looking for participants (educators, developers, parents and researchers) from across the globe who are interested in helping shape the future of Computer Science education by remotely taking part in our research studies later in the year. If you would like to be part of our research study or simply receive updates on the project, please sign up here.

For more detailed information about the technology behind Project Bloks, check out our recent post on the Google Research Blog and our position paper. And to learn more about our other initiatives aimed at driving CS education forward and helping kids develop computational thinking skills, check out programs like CS First and Made with Code; and tools like Coding with ChromeBlockly and Pencil Code.

Accelerating CS Education in Local Communities: The Stats by State



Nationally, 9 in 10 parents want their children to learn computer science (CS) but only a quarter of principals report offering CS with programming in their schools. Ever wonder what the stats look like in your state? Today, we're excited to release new reports that take a closer look for 11 states. These reports are part of our comprehensive multi-year research study with Gallup Inc. and cover the most populous U.S. states (CA, FL, GA, IL, MI, NC, NY, OH, PA, TX, and WI). For each state, we highlight insights about CS perceptions as well as challenges to providing CS education for all students, and we show how the state compares to the national average.
New reports on CS education for the most populous states as part of our comprehensive multi-year research study with Gallup Inc.
There's no silver bullet to increasing students' access and exposure to CS, but from our research, we identified four areas that we must focus on in order to move the needle. We found:

  1. The greatest challenges to offering CS included lack of qualified teachers for the subject matter and budget for teachers. 
  2.  Other school system barriers are a focus on testing requirements and low perceived institutional support, even with high support among parents and educators found in our previous report. 
  3. CS offerings at schools are limited and often serve select students. 
  4. Perceptions of what CS involves are unclear, with many principals confusing CS as basic computer literacy.

The reports provide more detail on each state’s unique challenges. Below, we share some local initiatives tackling the four key areas identified by the research.

Empowering CS teaching
Nationally, we found the #1 barrier to offering CS classes is lack of budget to hire or train teachers. At Google, we are committed to closing this gap by empowering teachers in local communities through CS4HS, a program that has funded CS teacher professional development worldwide and in over 37 states. Support from CS4HS and the National Science Foundation enabled Marquette University in Wisconsin to provide programming to double the number of CS teachers in the state. We also partner with Code.org and local leaders to expand the number of CS teachers across the U.S. In Georgia, they partnered with CEISMC at Georgia Tech as well as the Department of Education and Governor’s office to open teacher professional learning programs to the entire state. In Riverside Unified School District, the 15th largest district in California, CS First, our free program that helps anyone—a teacher, parent or volunteer—teach kids the basics of CS, began in just a couple schools and spread to the whole district, with the city embracing the program to reach its community of predominantly minority students.
Students in Riverside Unified School District in California learning CS First.
Photo credit: Marc Lyon Galang, RUSD Office of Communications
Collaboratively building support with schools
Unfortunately, teacher preparation isn’t the only challenge school systems face in implementing CS programs. Infrastructure and varied local implementation pose difficulties for schools. We support organizations like ACCESS in California, which addresses these systemic issues in CS education at a state-wide level while ensuring equity is interwoven. TASA’s Future-Ready Superintendent Network is also doing incredible work on the ground in Texas; we recently hosted them to share and brainstorm innovative ways to transform education and bring CS to their districts. And on the city level there’s been exciting engagement coming out of the Chicago Public Schools in Illinois through awareness building events with teachers, administrators and mayoral staff, and in New York City, Mayor de Blasio’s roll out of Computer Science for All has ignited support for CS education across the city.

Reaching diverse students beyond school
While these initiatives in formal education are exciting developments, none happen overnight. In order to broaden access for all students now, it’s equally important to engage in informal education. One such initiative we supported in Michigan is Hello World, a camp for middle school girls founded by high schooler Christina Li. Christina was recognized with the White House Champion of Change in Computer Science Education award and on Nickelodeon’s The HALO Effect. Our Computer Science Summer Institute (CSSI) provides opportunities for diverse students like KaMar Galloway to strengthen their CS skills and prepare them for a technical career. CSSI was instrumental in KaMar’s pursuit of CS at North Carolina State University and eventually his role on our CS First team, which aims to engage 1 million students in CS, particularly those from underrepresented groups.

Broadening perceptions and stereotypes
Lastly, we need to broaden perceptions and stereotypes of CS, which our research found are discouraging for many, especially girls and minorities. Google’s CS in Media team works with writers, producers and studios to help create more accurate and varied storylines about CS and to diversify media portrayals of computer scientists. Recently, we partnered with the Miami International Film Festival on a 4-day seminar series on gender and racial gaps in film and tech to increase awareness and brainstorm solutions. Googlers in our Pittsburgh, Pennsylvania office annually provide 60 teachers and 650 students with a real-world look into CS. In Ohio, HER Ideas in Motion aims to change stereotypes by providing female tech role models and project-based learning for girls across the state. In New York, ScriptEd brings software engineers (including Googlers!) into the classroom to teach CS and connect underserved students to internships. These volunteer engineers serve as mentors to build students’ confidence and perception of the field. Both organizations received Google’s RISE Awards for their high impact outreach.

We hope that these numerous initiatives and nonprofits will continue to drive change in communities and that the research we released today will support them by identifying potential challenges and opportunities. Stay tuned for more—we’ll be continuing our research with Gallup and this summer, we’ll be releasing two new reports focusing on demographic disparities and unconscious biases in U.S. K-12 CS education.

#CS4All starts with our teachers



President Obama's Computer Science for All (#CSforAll) announcement in early 2016 emphasized that “we live in a time of extraordinary change.” Computer science (CS) education is being recognized at the federal level as a catalyst for future success. Last month, we joined an open letter to Congress, a request for national funding that would give every student across the U.S the opportunity to learn computer science. The movement to provide quality CS programs is gaining momentum, and Google is proud to be part of the community working toward that goal.

We believe that it’s not only important for our students to be creators of new technology, but for our teachers to also have the opportunity to be innovators and out-of-the-box thinkers. A global study conducted by McKinsey found that one of the main drivers of excellence in the best performing schools worldwide are tools and programs provided for teacher professional development. These opportunities give educators access to share best practices and create improved resources for the curriculum and pedagogy of any particular subject. At Google, we are committed to supporting the professional development of teachers though CS4HS, an annual funding program for global CS teacher professional development opportunities at the high school level.

CS4HS awards bring professional development opportunities to high school teachers who often lack the support and resources to teach computational thinking and computer science in their classrooms. Research institutions or professional development organizations partner with communities of local high school teachers to help them build knowledge, skills, and confidence in teaching computer science and computational thinking through ongoing professional development opportunities.
2015 CS4HS Buffalo State University workshop
Almost every state in the U.S. is grappling with a need for more CS courses and professional development opportunities for teachers. In Nebraska, for example, only nine out of 144 schools (63 high schools and 81 middle schools) offer an IT-related course. Through CS4HS funding and a PD program created by the University of Nebraska at Kearney, teachers will be able to participate in workshops, near-peer mentoring, and a community of practice that helps them integrate CS/IT teaching methodologies into their classrooms, and inspire a new generation of young people in rural Nebraska to become creators of technology.

Programs like the one at the University of Nebraska at Kearney are growing on a global scale. Since the launch of CS4HS in 2009, over 20,000 teachers have been trained through CS4HS professional development opportunities, and over one million students have benefited from these trainings. Funding is awarded to applicants that demonstrate a sound pedagogical approach to CS and a foundation of an ongoing community of practice around CS professional development. This coming school year, Google is increasing its investment in professional development by funding 34 institutions in the US and many others programs worldwide. Check out the CS4HS site for more information, or to learn about the 2017 funding cycle.

Perhaps the most significant emphasis of the McKinsey study is that the “the quality of an education system cannot exceed the quality of its teachers.” The solution lies in a community of advocates that extends beyond our teachers, and builds a culture of dialogue through administrators, parents, policy makers, and companies. By providing funding for CS professional development programs, Google is working to ensure that our teachers are best prepared to serve the next generation of creators, embracing this time of innovation and extraordinary change.

Inspiring tomorrow’s coders at I/O Youth and beyond



Google I/O is all about bringing creative coders together to imagine what’s next. And who better to build for the future than kids, the developers of tomorrow. That’s why we launched I/O Youth - inspiring kids to imagine, invent, and explore through the power of technology.

Today, we’ll celebrate the third anniversary of I/O Youth by hosting 120 students from Bay Area schools at Google I/O. Over the course of the day, kids and their teachers will be inspired by hands-on activities like designing a custom robotic monster and 3D car, bringing them to life using the power of code, directing a digital cartoon, and creating a personalized water bottle design through Made with Code.

Over the course of the day, kids will hear from speakers who use technology to do amazing things every day - like Ryan Germick, head of the Google Doodles team, who’ll talk about the beauty of art and technology coming together; Brent Bushnell, CEO of Two Bit Circus, who’ll take them on a virtual field trip to his workshop, and Anika Cheerla, 13-year old Google Science Fair finalist who built a way to accurately diagnose Alzheimer's disease, who’ll share how she discovered her love for science. They’ll also get to hear about how technology helps to bring some of their favorite things to life from a producer of Design Squad Global by PBS Kids and WGBH, a Nickelodeon creator, and a Pokémon game designer.

We’re also excited to announce our collaboration with Scratch, enabling developers to design creative coding and learning experiences for kids. Today we take the first step in this collaboration with the release of an early developer preview of Scratch Blocks code. We hope that developers will use Scratch Blocks to create consistent, high-quality programming experiences for kids everywhere.
At I/O Youth, students will get early access to a prototype built with Scratch Blocks
I/O Youth is just one of many ways we’re focused on helping young people to imagine, invent, and explore through the power of technology. Beyond today’s event, we also have year-round programs to help inspire and train our engineers of the future, including:



Google Science Fair - an international competition inspiring teenagers from all over the globe to ask questions about their world and solve them with science. The deadline to submit projects for this year’s competition is today, so stay tuned to see who will win!






Made with Code - our initiative to inspire millions of girls to learn code, and see coding as a means to pursue their dream careers.


CS First - increasing elementary and middle school students’ access and exposure to Computer Science with a focus on girls and underrepresented minorities.




If you’re not joining us at Shoreline Amphitheater for I/O Youth today, follow along on Twitter at #io16 and #ioyouth as we share updates along the way. Here's to celebrating and inspiring our future engineers today, and every day.

Change culture, not curriculum, to get more women into computer science



(Cross-posted on the re:Work blog)

Editor's note: Carol Frieze, PhD, is Director of Women@SCS and SCS4ALL, Carnegie Mellon School of Computer Science. Jeria Quesenberry, PhD, is an Associate Teaching Professor in the Information Systems program at Carnegie Mellon Dietrich College.They are the authors of a new book, Kicking Butt in Computer Science: Women in Computing at Carnegie Mellon University which tells the positive story of how one school developed a culture and environment in which both women and men could thrive and be successful in computer science.

For over ten years, Carnegie Mellon University has been successful at enrolling, sustaining, and graduating women in computer science at a much higher rate than national averages. Here are six ways we made it happen.

In 2014, the incoming computer science (CS) class at CMU comprised 40% women at a time when the national rate for female CS graduates was around 14%. We set out on a ten-year long research endeavor to understand the story of how CMU got here. We tell that positive story in our new book, Kicking Butt in Computer Science: Women in Computing at Carnegie Mellon University, and here we’ll share the six primary takeaways that contributed to this success, which we believe are applicable to other organizations and workplaces.

1. Women do not need a “female-friendly” curriculum. Curriculum should depend on what we are trying to teach and learn, not on prioritizing one gender over another. Changes to improve the curriculum should be for the benefit of all students. Basing coursework on what people think interests women can perpetuate stereotypes. This approach can also be applied to the workplace. Women do not need “soft” or “female-friendly” roles -- career opportunities should be based on organizational needs, not on what we think we know about women.

2. Cultural change is the key. If the culture of a computer science program is dominated by “geeky stereotypical” archetype research shows that women and minorities (and even other white males) may feel excluded from the field. Data show that, in the case of CS, it is usually women and minorities and people with disabilities who are poorly represented. Efforts should be directed at being more inclusive of a wide range of personalities enabling all to have opportunities including leadership, visibility, encouragement, networking, mentorship, and advocacy. For example, in 1999, the CMU School of Computer Science dropped the programming admission prerequisite, resulting in a more diverse set of incoming students.

3. Culture can be changed at the micro level. Evidence for culture as the key also comes from other countries where girls are well represented in CS. In the US, there is a strong cultural belief that men and women are very different, so different that they are suited to different fields of study and careers. We need to change these perceptions and show that women can be successful in CS. We’ve witnessed cultural change within the CS department at CMU. For example, our student organizations, such as SCS4ALL and Women@SCS, promote diversity, which continues to be part of the larger CMU strategic plan.

4. Cultural factors are more important than gender differences. Men and women may not be so different after all. Our studies with CS majors at CMU show that men and women relate to computer science through a spectrum of attitudes and with more similarities than differences. Indeed, at CMU we’ve not seen the familiar, simplistic gender divide in attitudes to CS. We’ve seen similar attitudes even extend to identifying with the image of a “geek--” a word once shunned. In our studies, the only real gender difference centered around confidence levels, with men showing much higher rates of confidence than women. This is a cultural issue that reaches many areas, not just CS.

5. Institutional support is critical. Institutional support, such as administrative help, funding, and an explicit leadership vision, can signal the authorization and influence to show that diversity is an essential part of an organization’s value system. Support for the creation of a women’s group (or a group of shared ethnicity), can be valuable for building community and for increasing and sustaining the pipeline.

6. Success stories are important. Lots of people have documented the problem of low female enrollment in CS and women leaving the technology industry. But there is less sharing of the success stories. We need to hear more inspirational stories of success like CMU, including our approaches and recommendations. By showing more women how they might succeed in CS, we will help more programs -- and ultimately the profession -- become more inclusive.

Computer Science Education for All Students



Computer science education is a pathway to innovation, to creativity, and to exciting career prospects. No longer considered an optional skill, CS is quickly becoming a “new basic”, foundational for learning. In order for our students to be equipped for the world of tomorrow, we need to provide them with access to computer science education today.

At Google, we believe that all students deserve these opportunities. Today we join some of America’s leading companies, governors, and educators to support an open letter to Congress, asking for funding to provide every student in every school the opportunity to learn computer science. Google has long been committed to developing programs, resources, tools and community partnerships that make computer science engaging and accessible for all students.

We are strengthening that commitment today by announcing an additional investment of $10 million towards computer science education for 2017, along with the $23.5 million that we have allocated for 2016. This funding will allow us to build more resources, scale our programs, and provide additional support to our partners, with a goal of reaching an additional 5 million students.

With Congress’ help, we can ensure that every child has access to computer science education. Please join us by signing our online petition at www.change.org/computerscience.