Computational Thinking in Virtual Learning ... - LearnTechLib

5 downloads 12036 Views 130KB Size Report
CT can be integrated in a virtual higher education curriculum and discuss some of the ... do not provide any CS courses in their K-12curriculum, even as part of their .... The following chart illustrates an example using a graduate level online ...
E-Learn 2015 - Kona, Hawaii, United States, October 19-22, 2015

Computational Thinking in Virtual Learning Environments Betul C. Czerkawski University of Arizona United States [email protected]

There is a growing interest in examining how computer scientists think and the way these thinking methods could be used by the students whose major is not computer science. The reason for this focus on computer science is in direct response to the much needed skill of effectively solving problems using computing devices. In 2006, Jeanette Wing, in her seminal paper on computational thinking, suggested that computational thinking, which involves the ways computer scientists formulate problems with the use of computers, is a thinking skill for all students in the digital age, not only for computer scientists. After this call, there were many initiatives (e.g. ISTE, CSTA) which proposed substantial suggestions to integrate computational thinking skills across K-12 schools. The purpose of the paper is to illustrate how CT can be integrated in a virtual higher education curriculum and discuss some of the pedagogical considerations for teaching.

Introduction As technology becomes a crucial part of our daily lives, understanding basic computing structures and practices turns into basic knowledge that is required in the 21st century. Some argue that programming and teaching foundations of computer science (CS) are not necessary for students who will not become engineers or programmers, but a growing number of scholars think otherwise. For instance, the founder of code.org, Partovi (2015) argues that there is no profession that will not be impacted by technology in the next decade; yet, many states do not provide any CS courses in their K-12curriculum, even as part of their Advance Placement programs. Partovi also posits that most teachers, administrators and even public polls support the idea of foundational CS courses for all students, but schools are not adapting to the change fast enough. At the higher education level, the situation is not much different than K-12 schools, as CS as a foundational course is not seen as part of the general-education curriculum. Moreover, despite of the strong emphasis on STEM education in recent years and CS’s central role to solve important problems, there is a decrease in computer science degrees attained by the college students (National Center for Educational Statistics, 2012). Nevertheless, CS provides a valuable contribution to the students’ skill set so they can be successful and competent in the digital age. An important starting point in this discussion is to understand the benefits of CS for all students, and design virtual learning experiences that will infuse thinking ways of computer scientists across various subject matters. In 2006, Jeanette Wing’s proposed incorporating computational thinking (CT) as a basic knowledge and skill set into the curriculum, so that all students are exposed to the “mental tools that reflect the breadth of the field of computer science” (p. 33). For Wing, “computational thinking involves solving problems, designing systems, and understanding human behavior, by drawing on the concepts fundamental to computer science” (p. 33). The question then becomes how to illustrate the classrooms where CT is used, describe new teaching and learning strategies associated with it and also provide examples for teachers so they can make sense of the new learning environment and use CT in content areas other than CS.

Think Like Computer Scientists When Jeanette Wing evangelized teaching of computational thinking skills across all disciplines, her idea was about expanding problem solving skills used by the computer scientists to the bigger scope of problems faced by the humanity. Lu and Fletcher (2009) support this broader view of CT and say that CT is about systematically and efficiently processing information and tasks. Some may consider CT as a skill that is only used with the help of computers and this may be true for most cases, however, the promise of CT lies in its profound effect on the way people think. In other words, the purpose of teaching computational thinking is not about making all students computer scientists. It may be argued that most students already know how to think and problem solve, but as Barr and Stephenson (2011) suggest, “computer scientists can help teachers understand these processes as algorithmic, and identify where actual computation and manipulation of data with a computer may fit in” (p. 49). Similarly, there is a common misconception about the relationship between computer science and programming. To practice the CS ideas, a computer scientist will use various programming languages but learning or teaching about

-1227-

E-Learn 2015 - Kona, Hawaii, United States, October 19-22, 2015 programming is not CS’s main goal or focus. Instead, computer scientists will study algorithmic processes that can be applied to other settings and also solve problems that could be transferred to similar situations. Thus, the societal impact of computer science is as important as algorithmic thinking and abstraction skills. Today’s students, while knowledgeable about the general steps of problem solving, may fall short in formulating problems mathematically and designing an algorithm for them. Although programming is a good vehicle to learn about algorithms and abstractions, it is also possible to develop algorithmic thinking independent from programming (Futschek, 2006) using proper visualization techniques. At this point, Lu and Fletcher (2009) warn that students should be properly prepared for CT and a solid foundation should be laid out for them long before they are introduced to programming. One of the major initiatives that support teaching computer science concepts without the use of programming or computers is Computer Science Unplugged (http://csunplugged.org/). This initiative supports “activities that are easy to present, require few materials, encourage collaborative work, and do not depend on hardware, compilers, browsers, and Internet connections” (Cortina, 2015, p. 25). Through CS Unplugged, students engage in collaborative computing activities physically. While the nature of activities is introductory, similar initiatives are emerging to attract young kids’ attention to computer science. In addition to the role of computational processes in solving today’s pressing problems, there is also the need to understand the multi-disciplinary nature of most pressing issues and problems. Barr and Stephenson (2011) suggest that for problems that lie at the intersection of various fields, CS can provide a method of thinking that requires use of CT. For instance, in the past decade computational processes were applied to many disciplines and fostered significant scientific advancements. As a result, we now have new fields such as computational biology, computational linguistics, computational physics and even computational economics. It can be expected that such multi-disciplinary areas will become even more nuanced in the future as computation becomes pervasive.

CT Implementation for Virtual Learning How does a virtual higher education classroom look like when implementing computational thinking? Lu and Fletcher (2009) make the following important point when answering this question: In the absence of programming, teaching CT should focus on establishing vocabularies and symbols that can be used to annotate and describe computation and abstraction, suggest information and execution, and provide notation around which mental models of processes can be built (p. 26). To help classroom teachers and for easier visualization of the CT tasks, ISTE (2011) broke down CT concepts into nine areas. The following chart illustrates an example using a graduate level online course in instructional design. In this course, students work in small groups to create an instructional design plan for an identified instructional need. Table 1: Computational thinking vocabulary and classroom activities CT Concepts Data Collection

Data Analysis

Data Representation

ISTE Definition (2011) The process of gathering appropriate information

Instructional Design Course Tasks Identifying Need for Instruction

Making sense of data, finding patterns, and drawing conclusions

Analyze Needs Assessment Data using appropriate statistical methods

Depicting and organizing data in

Analyze Learners and Learning Context (Find patterns and variations in qualitative learner and context data) Summarize Results of Needs Assessment/

Collecting Data for Needs Assessment

-1228-

Virtual Learning Conduct an internet search and identify examples of various needs assessments Create an online survey Use Excel, SPSS or appropriate statistical package to analyze data Analyze qualitative data using a word processing or qualitative data analysis software Create social concept maps to summarize findings

E-Learn 2015 - Kona, Hawaii, United States, October 19-22, 2015 appropriate graphs, charts, words, or images

Problem Decomposition

Abstraction

Breaking down tasks into smaller, manageable parts

Reducing complexity to define main idea

Write a Report of analyses conducted using Graphs, Lists, Concept maps Write Instructional Objectives Determine assessment procedures Create Task and Content Analysis Blueprints Create case studies and vignettes for classroom implementation

Use social software to work in small groups (each group has predefined roles that represent various ID roles, such as SME, evaluator, visual designer, etc) Create the first blueprint of instructional design plan as a group using an online collaboration tool (e.g. Asana, RedBooth, Flow, Zoho, etc) Using the social project management software mentioned in the previous stage, create vignettes and case studies for instructors Create multimedia cases that represent the main characteristics of instructional design plan Participate in online group discussions about identifying metaphors for each ID project

Algorithms & Procedures

Automation

Series of ordered steps taken to solve a problem or achieve some end Having computers of machines do repetitive and tedious tasks

Create a Teacher Guide complete with instructions Create a FAQ for classroom management Gather data for applicability of the ID plan in other settings

As a group, work online to create a teacher guide and FAQ

Conduct online interviews with various stakeholders to determine applicability of the ID Plan in various settings with similar instructional need Participate in online big group discussions on 1. What parts of the ID plan could be replicated for other instructional needs and 2. What parts need re-writing

Parallelization

Simulation

Representation or a model of a process. Simulation also involves running experiments using models Organize resources to simultaneously carry out tasks to reach a

Create sample instructional materials

Evaluate ID Team roles Evaluate timeline for completing

-1229-

Identify quantifiable aspects of the projects and enter that data in Excel as an ID team. Using various multimedia packages create web-based instructional materials for a selected learning objectives Participate in online discussions about project management As a group, create an action plan

E-Learn 2015 - Kona, Hawaii, United States, October 19-22, 2015 common goal

tasks

by organizing all the ID documents and materials

Identify simultaneous tasks that will be completed by different team member In this example, students do not engage in any programming but as Lu and Fletcher (2009) suggest, are introduced to the vocabulary and mental tasks of computation. While this may be an appropriate teaching approach for education students, some will find use of more traditional approaches that includes programming more appropriate for technical majors. For instance, Rubinstein and Chor (2014) used the Python programming language for undergraduate and graduate life science students and required them to code in order to solve real life biology problems. After two semesters of implementation they suggested that students should be introduced to basic programming before they use it in their content areas since many struggled with complex problem solving tasks. In another research study (Grover, Pea & Cooper, 2015) a high correlation was found between students’ previous programming experience, mathematical skills and computational thinking learning. It is clear that programming could bring more success when teaching CT to science students but for students who have little or no experience in programming a more conceptual approach that was presented in Table 1 could work better. It may be argued that all these learning tasks could be accomplished in the traditional classrooms and don’t require any online experience. While this is true, online learning offers learning experiences for the students by allowing them to use social collaboration and communication software. As they become more comfortable and experienced using various technologies, it is expected that their move to the more traditional CT teaching (i.e. programming) as suggested by Lu and Fletcher (2009) would be easier. Online group discussions also encourage group negotiations and consensus building by further solidifying group spirit and problem solving.

Conclusions Computational thinking is closely associated with the ways computer scientist think. Algorithmic thinking, abstraction, creating constructs, testing and automation are some of the processes computer scientists use to solve problems. Lu and Fletcher (2009) suggest that “teaching of computational thinking is a noble goal but it also has pedagogical challenges” (p. 261). Students need to have proper preparation before assuming more complex computational tasks and virtual learning provides such ground work for students to become more comfortable solving complex problems with the computers. As students move from merely ‘using’ technologies to actually utilizing them to ‘create’ information and ‘solve problems’ the real benefits of CT will be realized. When preparing students for CT, the computation vocabulary should be introduced first to familiarize the students with the computational processes. Grover, Pea and Cooper (2015) go further and say that children need to be introduced to computational problem solving at an early age for a stronger foundation in computing. In order to achieve this goal, basic algorithmic notions of flow of control should guide the learning experiences in the curriculum. In a study conducted by Caballero, Kohlmyer and Schatz (2011), the computational thinking was integrated into an online physics course. The findings showed that majority of the students were successful at completing computational modeling tasks. However, the researchers found out that the most challenging task was about students’ qualitative habits of mind –i.e. debugging using qualitative analytical thinking processes. This study is a good example of common misconceptions about computing. While mathematical thinking is important, students still need to use a series of qualitative skills to solve complex problems which are usually open-ended in real life. Most teachers and university faculty use most of the computational processes already. However, their pedagogical content knowledge should be reinforced for the success of CT. Guided discovery could be used as the main teaching method rather than pure discovery (Grover, Pea and Cooper, 2015). Lye and Koh (2014) suggest that “a constructionism-based problem-solving learning environment, with authentic problem, information processing, scaffolding and reflection activities” (p.60) should be used for effective teaching of CT. As more research focuses on computational thinking, it is expected that clear guidelines and empirical research findings will be available to the teachers at all levels.

-1230-

E-Learn 2015 - Kona, Hawaii, United States, October 19-22, 2015 As with teaching of any thinking skill computational thinking requires an effort that encompasses an entire curriculum, not just one course. K-12 teachers or higher education faculty need to see more examples of how this is done so they can be successful in their efforts. Many CT concepts overlap and many misunderstandings exist when defining various computing terminology. This paper provides an example from an online graduate educational technology program. The important point to remember is that “computational thinking is a problem solving methodology that can be automated and transferred and applied across subjects” (Barr & Stephenson, 2011, p. 51) and this is what its teaching should entail.

References Barr, V. & Stephenson, C. (2011, March). Bringing computational thinking to K-12: What is involved and what is the role of the computer science education community? ACM Inroads. 2 (1). 48-54. Caballero, M. D., Kohlmyer, M. A., & Schatz, M. F. (2011, August). Fostering computational thinking in introductory mechanics. Proceedings of the Physics Education Research Conference. August 3-4, 2011. Omaha, Nebraska. 1413. 15-18. Cortina, T. J. (2015, March). Broadening participation: Reaching a boarder group of students through “Unplugged” activities. Communications of the ACM. 58 (3). 25-27. Futschek, G. (2006). Algorithmic thinking: The key for understanding computer science. Informatics Education: The Bridge between Using and Understanding Computers. Lecture Notes in Computer Science. 4226. 159168. Grover, S., Pea, R., & Cooper, S. (2015, June). Designing for deeper learning in a blended computer science course for middle school students. Computer Science Education. 25 (2). 199-237. International Society for Technology in Education (ISTE). (2011). Computational thinking teacher resources. Second Edition. Retrieved from http://www.iste.org/. Lu, J. J. & Fletcher, G. H.L. (2009). Thinking about computational thinking. In the Proceedings of SIGCSE’09, March 3–7, 2009, Chattanooga, Tennessee. 260-264. Lye, S. Y., & Koh, J. H. L. (2014). Review on teaching and learning of computational thinking through programming: What is next for K-12?. Computers in Human Behavior. 41. 51-61. National Center for Educational Statistics (2013, December). Digest of Education Statistics 2012. U.S. Department of Education. Partovi, H. (2015, March 4). Why doesn’t every school offer computer science classes? The Seattle Times. Retrieved from http://www.seattletimes.com/opinion/why-we-need-to-teach-all-students-computer-science-skills/. Rubinstein, A. & Chor, B. (2014). Computational thinking in life science education. PLOS Computational Biology. 10 (11). 1-5. doi: 10. 1371. Wing, J. (2006). Computational thinking. Communications of the ACM, 49(3), 33-35.

-1231-