Keywords

1 Introduction

1.1 Computational Thinking Perspectives

There are diverse perspectives of computational thinking (Papert, 1980; Wing, 2006; diSessa, 2000; Barr & Stephenson, 2011; Brennan & Resnick, 2012). The International Society for Technology in Education and Computer Science Teachers Association (ISTE & CSTA, 2011) provides an operational definition of computational thinking for K-12 education as

“Computational Thinking (CT) is a problem-solving process that includes (but is not limited to) the following characteristics:

  • Formulating problems in a way that enables us to use a computer and other tools to help solve them

  • Logically organizing and analyzing data

  • Representing data through abstractions such as models and simulations

  • Automating solutions through algorithmic thinking (a series of ordered steps)

  • Identifying, analyzing, and implementing possible solutions with the goal of achieving the most efficient and effective combination of steps and resources

  • Generalizing and transferring this problem-solving process to a wide variety of problems.”

An important goal of developing computational thinking is to use the above elements to solve problems in various disciplines and contexts, including but not limited to programming.

1.2 Computer Studies in K-12 in India

Schools in India are affiliated to one of many Boards (CBSE; ICSE; IB; IGCSE; State Board). Each Board prescribes curricula and conducts standardized examinations for grades 10 and 12. Schools have been offering computer studies as a subject to their students for the past two decades. However, there is wide variation in the choice of topics, as well as treatment of a given topic. Typically, the focus is on usage- and skill-based content for specific applications. There is very little emphasis on important thinking skills of broad applicability, such as computational thinking and twenty-first-century skills.

1.3 Computer Masti Project

To address the above issues, the Computer Masti project was initiated at IIT Bombay in 2007.

The project has three aspects: (i) Defining the curriculum, called CMC, (ii) Developing the textbooks, called Computer Masti, and (iii) Supporting schools to implement the curriculum. Developing thinking skills is a key focus across all these aspects.

CMC (Iyer et al., 2013) has explicit emphasis on thinking skills, i.e., the basic procedures and methods used in making sense of complex situations and solving problems. Thinking skills, such as algorithmic thinking, problem-solving, systematic information gathering, analysis and synthesis, and multiple representations, are mapped to various grades. Computer applications and usage skills are introduced only after motivating the need for developing the corresponding thinking skill.

Computer Masti textbooks (Iyer, Baru, Chitta, Khan, & Vishwanathan, 2012) have explicit chapters for developing thinking skills across a variety of real-life contexts. For example, students are introduced to computational thinking in grade 3 through activities such as planning a picnic, and then go on to programming in Scratch (Scratch). The teacher training support provided to schools has explicit emphasis on the need for thinking skills, their applicability across subjects and grades, and how they may be developed. Teachers are trained to go beyond teaching computer usage skills and focus on thinking skills. In 2018, Computer Masti is being implemented in 700+ schools, across India. Over the years, Computer Masti has been used by more than 1.5 million students in India. The next section in this chapter provides an overview of CMC curriculum. It is followed by examples of how thinking skills are addressed in Computer Masti textbooks. The subsequent sections provide a summary of its implementation in schools, and results of evaluation studies.

2 CMC Curriculum

2.1 Underlying Philosophy

The underlying philosophy of CMC (Iyer et al., 2013) is as follows:

  • Develop computer fluency, not just computer literacy.

While computer literacy is defined as the knowledge and ability to use computers and related technology efficiently, computer fluency means a robust understanding of what is needed to use information technology effectively across a range of applications (CITL, 1999). The goal of computer fluency is to enable students to adapt to the changes in digital world, rather than get them to be only users of specific computer applications. Hence CMC approaches the learning of computer usage skills in the context of learning about fundamental concepts and thinking process skills. CMC has emphasis on understanding of the concepts behind various computer-based activities, rather than usage of specific tools. The goal of such a concept-oriented approach is to equip students to be self-learners and enable them to cope with the inevitable advent of new versions, tools, and technologies of the future.

  • Develop thinking process skills, not just content mastery.

While content mastery is important, the need to develop thinking process skills is well established (Padilla, 1990; Big6). There exist recommendations from professional bodies and accreditation boards such as ACM and ABET (ACM; ABET) that thinking skills are required by college graduates. Students do not automatically acquire these skills, while learning content (Marzano et al., 1988). Hence, CMC has explicit emphasis on teaching-learning of thinking process skills, which are the basic procedures and methods used in making sense of complex situations, solving problems, conducting investigations and communicating ideas. CMC explicitly addresses the thinking skills of: Algorithmic thinking, problem-solving, systematic information gathering, brainstorming, analysis and synthesis of information, multiple representation and divergent thinking. Computer literacy skills are introduced only after motivating the need for developing the corresponding thinking skill.

  • Highlight the interconnectedness of knowledge, not just address a topic in isolation.

While mastery of a topic is important, recognizing the interconnectedness of various topics and ideas leads students to construct a more expert-like knowledge structure (Ellis & Stuen, 1998). Hence, CMC has emphasis on: (i) thematic integration, i.e., the integration of knowledge from various subjects into computer studies, and the use of computer-based activities to strengthen knowledge in other subjects, and (ii) spiral curriculum, i.e., the content of the curriculum is organized such that themes and topics are revisited with increasing depth in each successive grade.

2.2 Computational Thinking Skills in CMC Across the Grades

A subset of the thinking skills from CMC (Iyer et al., 2013), which correspond to items from the operational definition of computational thinking (ISTE & CSTA, 2011), is provided in Table 20.1. Each row shows how a particular thinking skill is gradually developed and advanced across grades 3–8.

Table 20.1 Thinking skills in CMC across grades

For example, students begin to learn algorithmic thinking in grade 3, where they identify and sequence the steps involved in carrying out simple activities at that grade, such as walking like a robot. In grade 4, they learn to identify constraints, use of branching and iteration, to design solutions that meet the constraints. In grades 5 and 6, they learn to gather requirements, synthesize information, use of representations, decision-making, and apply their learning to tasks such as digital story-telling. In grades 7 and 8, they apply their learning to more complex tasks such as designing an app for senior citizens.

Algorithmic thinking skills are strengthened through Scratch programming in grades 3–6, where students apply concepts of if-else, loops, event handling, input, variables and lists. In grades 6–8, they move to writing flowcharts and programming using a procedural language.

3 Computer Masti Books

Computer Masti books (Iyer et al., 2012), bridge the gap between prescriptive curriculum and the teacher’s need to transact it in the class. The books are labeled as Level I–VIII, which can be mapped onto grades 1–8. They are sequenced in such a way that students who have studied them from grades 1–8 would be able to meet the requirements of various education boards of the country (CBSE, ICSE, IB, State boards) for grade 9 onwards. These books are released under Creative Commons license (CC) and can be freely downloaded (Iyer et al., 2012).

3.1 Pedagogical Approach

The Computer Masti books provide learning activities to address the thinking skills in CMC. These books use real-world context, analogies and a narrative structure to show the broad applicability of thinking skills not just in other subjects but also in “real life”.

The books use pedagogical approaches that are established to be effective for learning of thinking skills. The approaches used are:

  • Inquiry-based learning: Inquiry-based learning (Barrett, Mac Labhrainn, & Fallon, 2005; Olson & Loucks, 2000) is an approach in which students are actively engaged in the learning process by asking questions, interacting with the real world, and devising multiple methods to address the questions. For example, the teacher may ask students to prepare a presentation on an unfamiliar topic, such as maintaining an aquarium or embedded applications of computers. Students first identify what they already know about the topic and what they need to find out. Then they gather the relevant information from various sources, and synthesize it to create the presentation. The teacher oversees the process, provides feedback and intervenes wherever necessary. Detailed examples are given in Sect. 20.3.3.

  • Learning via Real-world Context: Learning is effective when it is situated in a real-life context (Bransford, Sherwood, Hasselbring, Kinzer, & Williams, 1992). Making real-world connections to the content, teaching abstract principles by establishing the need for them in a real-life context, and using analogies from students’ everyday lives, are practical methods to situate learning. For example, the teacher may ask students to conduct a market survey, before introducing the concepts and skills in the use of Spreadsheets. Students learn data analysis, interpretation and multiple representations, using real data. More details are given in Sect. 20.3.3.

  • Collaborative learning: Students learn more of what is taught, retain knowledge longer, are able to solve more complex problems, and are more satisfied with the process when they learn in groups (Johnson & Johnson, 1998; Totten, Sills, Digby, & Russ, 1991). For example, the teacher may ask students to work in pairs for programming activities, or in larger groups to create multimedia reports on field trips.

  • Playfulness: Play has been found to be a developmentally appropriate way for children to learn since it facilitates problem-solving, perspective taking, social skills, and development of the mind (Bailey, 2002). The Computer Masti books use playfulness as an explicit basis for designing learning activities. For example, lessons are structured as conversations between two students and a facilitator, which a teacher may enact in class.

3.2 Structure

Each Computer Masti book contains lessons, worksheets and activities based on the themes in the CMC curriculum recommended for that particular grade. Each book has a “Concept before Skill” approach focusing on conceptual understanding before learning the usage skills associated with specific applications.

Each lesson has a narrative style, consisting of two children who learn about computers while they engage in their daily activities. A third character in the narrative, a mouse look-alike, plays the role of a facilitator for inquiry-based learning. Students make real-world connections and integrate knowledge via the context in the narrative. Worksheets, activities and projects in each lesson are geared towards exploration, collaborative learning, and reflection. Each lesson also has a ‘Teacher’s Corner’ that provides guidelines for transacting the lesson as per the pedagogy recommended.

There are explicit lessons on stepwise thinking in grade 3, on logical thinking in grade 4, gathering and synthesizing information in grade 5, and using multiple representations in grade 6. Students are introduced to computer applications only after they learn the corresponding thinking skills in a familiar context. For example, they are introduced to Internet search only after they learn the thinking skill of systematically gathering information and concepts related to organizing information. They are formally introduced to programming only after they apply algorithmic processes to daily life situations, such as planning a school play.

3.3 Example Learning Activities

This section provides some illustrative examples of learning activities in Computer Masti for addressing thinking skills. These correspond to the computational thinking aspects shown in Table 20.1, viz., problem-solving, logical data handling, and multiple representations of data.

3.3.1 Problem-Solving: Algorithmic Thinking

Figure 20.1 shows an example of algorithmic thinking from grades 3 and 4. The facilitator (Moz) poses a problem of planning a picnic. The students (Tejas and Jyoti) perform stepwise thinking to solve the problem by first listing the main sub-tasks, then working out the details in each sub-task, and the sequencing of the steps. The broad applicability of such thinking is reinforced by enclosing them in a “Concept box” as shown. The corresponding “Teacher’s Corner” makes recommendations such as “Ask them to give other examples where they follow steps to do the activity. For instance, ask them to plan a birthday party for their classmate. What steps are involved? Ask them to arrange all the steps they need to do, in proper sequence, so that the party turns out to be well-organized. Ask them to identify the main steps and list the detailed steps.” The students are given practice to apply the thinking through worksheets having real-life scenarios, as shown in Fig. 20.2. This is followed by stepwise thinking with conditions and branching, and connecting it to Scratch programming in grade 4, as shown in Fig. 20.3.

Fig. 20.1
figure 1

Introduction of stepwise thinking in grade 3

Fig. 20.2
figure 2

Worksheet for applying stepwise thinking

Fig. 20.3
figure 3

Activity for applying stepwise thinking and programming a scenario

In subsequent grades students apply their learning from programming activities to real-life problem-solving. For example, in grade 7, they learn to use flowcharts while programming, through activities such as “Draw a flowchart to find the tallest student in a group of 5 students”. Then, they are asked to apply their knowledge of flowcharts to solve a real-life problem such as “You have to design the control mechanism for the crossing of a railway track and a road. Draw a flowchart for the functioning of the crossing gate to ensure that there are no accidents.”

3.3.2 Logical Data Handling: Gathering and Synthesis

Figure 20.4 shows an example of gathering and synthesis of information from grade 5. The facilitator (Moz) poses a problem of setting up a home aquarium. The students (Tejas and Jyoti) apply thinking skills to solve the problem by analyzing the goal, identifying the requirements of sub-tasks, gathering the information, and categorizing it. This is followed by identifying constraints and decision-making, as shown in Fig. 20.5. Then, they create a Scratch program for a virtual aquarium, as shown in Fig. 20.6. The learning of the thinking skills is reinforced through worksheets and activities. The “Teacher’s Corner” makes recommendations such as “Ask them to plan an outdoor summer camp for the class using the thinking skills from this lesson. Ensure that they explicitly identify the goal and analyze the requirements, gather and consolidate information, and identify constraints and do decision-making.

Fig. 20.4
figure 4

Gathering information systematically for a problem-solving scenario

Fig. 20.5
figure 5

Synthesis of information and decision-making for a problem-solving scenario

Fig. 20.6
figure 6

Activity snippet for connecting problem-solving to programming a scenario

In subsequent grades, integration of multiple concepts is explicitly targeted. Students apply their learning to complex problem-solving. For example, in Grade 8, they do activities such as “Design a mobile app for senior citizens”. First, they create surveys for identifying needs. To do this, they may interview senior citizens in their neighborhood to identify events that need alerts, such as taking medicines on time. Then, they identify the features that are required by most of the participants. To do this, they may use spreadsheets for recording data, counting frequencies, drawing graphs and so on. Finally, they design their product. To do this, they may create mind-maps for categorizing features to be included, flowcharts to depict the functioning of their app, and a presentation to market their product.

3.3.3 Multiple Representations of Data

Figure 20.7 shows an example of handling multiple representations of data from grade 7. The students learn to use tables, charts and graphs, and convert data from one representation to another in order to aid problem-solving.

Fig. 20.7
figure 7

Worksheet for handling multiple representations of data

The activities and “Teacher’s Corner” emphasize the difference between the concepts in data handling versus the skill of using a spreadsheet application. Students learn to identify suitable representations for a given purpose, when to use which representation, and generate them.

The Computer Masti books develop the computational thinking skills of students by making them repeatedly apply the thinking skills, starting from familiar scenarios, to more and more complex scenarios across multiple grades.

4 Implementation

4.1 Reach

Over the years, Computer Masti has been used by more than 1.5 million students in India. In 2018, Computer Masti is being implemented in 700+ schools, across India; 26 out of 29 states and 3 of 7 union territories. Table 20.2 below shows year-wise data, in terms of number of schools implementing Computer Masti and the approximate number of students across all grades.

Table 20.2 Data of Computer Masti implementation

In addition, the Computer Masti books may be freely downloaded (Iyer et al. 2012). The website’s Google analytics data for 2009–2018, shows over 100,000 pageviews and 35,000 users, across 150 countries.

4.2 Teacher Training

In order to support schools to implement the Computer Masti curriculum, a company called InOpen Technologies was incubated at IIT Bombay in 2009. The company provided books, teacher training, assessment and other support to teachers, for effective implementation. In 2016, the Computer Masti work was transferred to Next Education India Pvt. Ltd. (Next).

The training program includes elements of technology (for example, programming), pedagogy (teaching for active learning, classroom management), as well content (for example, designing ephemera using Word processor). Some examples of the modules relevant to thinking skills

  • CMC philosophy—The teachers are introduced to the goals of Computer Masti. This enables them to become active partners in achieving these goals for their students.

  • Thinking skills—Teachers discuss why thinking skills need to be taught explicitly, which thinking skills, and methods of teaching them. Teachers discuss how thinking skills are connected to application usage skills, as well as to topics in other subjects.

  • Assessment—Teachers create assessment questions for thinking skills at higher cognitive levels, such as apply and evaluate (Anderson & Krathwohl, 2001). These are similar to worksheet questions, such as systematically listing the steps involved in creating a website, evaluating pros and cons of different solutions, and so on.

At the end of training, teachers are provided with detailed lesson plans, activities, assessments and reference materials, to enable them to effectively implement the curriculum.

In order to provide sustained support to teachers, field teams visit the schools periodically. Besides conducting refresher workshops, the team observes classroom teaching and provides constructive feedback to teachers. In addition, student workshops on specific topics, such as Scratch programming, are conducted.

4.3 MOOCs

In 2017, to scale up the teacher training, two MOOCs (Massive Open Online Courses) specific to teaching-learning of computer studies in schools were created. One MOOC dealt with computer fluency and thinking skills, while the other dealt with programming, as per the CMC curriculum. The MOOCs were offered through the IITBombayX platform (IITBx), in May–June 2017, and again Nov–Dec 2017. The first offering had 553 registered participants, of which 266 completed the course. The second offering had 1644 registered participants, of which 219 completed the course. The plan is to continue offering these MOOCs periodically, until the total number of participants reaches a significant fraction of K-12 teachers in India.

5 Evaluation

5.1 Student Perceptions

In order to identify student perceptions of learning with Computer Masti, a study was conducted in 2013–2014. Data was gathered through multiple focus group interviews of 24 students in grade 6, in two urban schools. The key findings were:

  • Students often mentioned the use of thinking skills in real-life contexts. They gave examples of how step wise thinking helped in drawing pictures, applying logical thinking while solving math problems, and gathering and synthesis of information while working on projects.

  • Students reported that they enjoyed Scratch programming and used it as a tool in everyday life. They gave examples of how they create animations and games.

  • Students enjoyed solving worksheets that required them to apply thinking skills in different contexts.

In addition, 49 (22 females, 27 males) students of grade 6 answered a survey to determine their perceptions of Computer Masti. 97.9% of them reported that they enjoyed doing the worksheets and activities, 93.8% perceived the learning of thinking skills as useful, and 77.1% perceived that Computer Masti helped them in learning of other subjects.

Although the number of respondents is small, the results indicate that students overall have a positive perception about learning with Computer Masti.

A preliminary study to determine the effectiveness of Computer Masti was carried out 2 two years. It showed an average of 18% improvement in student posttest scores. More rigorous studies are yet to be carried out.

5.2 Teacher Perceptions

There is anecdotal evidence that teachers perceive Computer Masti to be useful for teaching- learning of thinking skills, as seen from the quotes below

  • “Computer Masti promotes out of the box thinking. Very innovative.”

  • “CM can really help a student in improving all aspects of studies as well as life.”

  • “Excellent learning experience for students. Develops analytical abilities.”

  • “I have seen my son invoke his lessons in the general world. For example, when he is getting ready for the day, he might refer to it as ‘changing my costume’ (Scratch), or he might narrate as he moves to a room ‘move 10 steps and then turn right’. Similarly, I see students implement Computer Masti knowledge in other subjects also.”

  • “Students come up with lots of questions. As a result, the projects they carry out are better planned and mature.”

  • “Content such as Computer Masti will surely succeed in enhancing the core skills in students, not just computing but also creative, critical thinking and problem-solving.”

Teachers also perceive the training through MOOCs to be useful, as seen by these quotes from the end-of-course surveys:

  • “I liked the real-life examples involved at each step”

  • “The course is very useful. It gave me confidence to teach computers to my students”

  • “It helped me to rethink some strategy that I believed was correct”

  • “This course helps me to understand how teachers need to upgrade themselves and try to be creative, rather than teaching in traditional way of teaching, as this generation students need to go along with computer learning through which peer learning, critical thinking can develop and become a responsible citizen too”

  • “This course changed my way of teaching programming to my students. I started implementing the approaches learnt in the course. Feeling enriched after the completion of course. Please keep organizing courses like these for the development of teachers.”

More systematic studies with teachers are yet to be carried out.

6 Conclusion

Many schools in India offer some form of computer studies as a subject to their students. This subject is suitable for learning thinking skills of broad applicability, such as computational thinking and twenty-first-century skills, in addition to learning computer application usage skills. One effort in this direction was the Computer Masti project at IIT Bombay. The project defined the curriculum, developed the textbooks, and provided teacher training support to schools. The curriculum and textbooks have explicit emphasis on computational thinking skills, such as algorithmic thinking and applying this problem-solving process to a wide variety of contexts. A growing number of schools have adopted this curriculum over the past decade, and now the teacher training has been scaled up through MOOCs on teaching-learning of the curriculum. All these resources are released in Creative Commons, so they may benefit schools, teachers, and students across the world.