Computational Thinking Across Curriculum Two papers on teaching computational thinking to non-CS students Pejman Khadivi CS Department, Virginia Tech.

Slides:



Advertisements
Similar presentations
Fashion Design Program
Advertisements

A Digital Age Skill for All Joe Kmoch Milwaukee Washington HS of IT For WI Math Council, May 2012 was: CT: An Important Idea for All Students:
General Studies Areas Core Areas –Literacy & Critical Inquiry (L) –Mathematical Studies (MA/CS) –Humanities & Fine Arts (HU) –Social & Behavioral Sciences.
Standards Alignment A study of alignment between state standards and the ACM K-12 Curriculum.
Engineering Education in Saudi Arabia: Problems and Solutions
© 2005 Prentice Hall6-1 Stumpf and Teague Object-Oriented Systems Analysis and Design with UML.
Introductory Lecture. What is Discrete Mathematics? Discrete mathematics is the part of mathematics devoted to the study of discrete (as opposed to continuous)
MS DB Proposal Scott Canaan B. Thomas Golisano College of Computing & Information Sciences.
Computer Science Department Program Improvement Plan December 3, 2004.
Living In the KnowlEdge Society VT, NCA&T, SCU, Villanova Living In the KnowlEdge Society (LIKES) North Carolina A & T Santa Clara University Villanova.
Living In the KnowlEdge Society VT, NCA&T, SCU, Villanova Living In the KnowlEdge Society (LIKES) North Carolina A & T Santa Clara University Villanova.
Chapter 12: Simulation and Modeling Invitation to Computer Science, Java Version, Third Edition.
CS 1 with Robots CS1301 – Where it Fits Institute for Personal Robots in Education (IPRE)‏
The Computer Science Course at Omar Al-Mukhtar University, Libya The Computer Science Course at Omar Al-Mukhtar University, Libya User-Centered Design.
©2007 Prentice Hall Organizational Behavior: An Introduction to Your Life in Organizations Chapter 19 OB is for Life.
Bioinformatics Curriculum Guidelines: Toward a Definition of Core Competencies Lonnie Welch School of Electrical Engineering & Computer Science Biomedical.
Computational Thinking Related Efforts. CS Principles – Big Ideas  Computing is a creative human activity that engenders innovation and promotes exploration.
The Influence of the University/College/Department Mission How your university and department’s missions influence your engineering degree requirements.
Computational Thinking Computational Thinking for Computer Science (CT4CS) Students.
Leslie Dacosta M.S., G.E. Program Math Faculty, Kathleen Lodge, M.S., G.E. Program Math Faculty, Elizabeth Sieminski, M.S., M.A. Ed., G. E. Math Program.
Ryann Kramer EDU Prof. R. Moroney Summer 2010.
JIC ABET WORKSHOP No.4 Guidelines on: II Faculty Survey Questionnaire.
CS 1010 Introduction to Computer Science 1. Department of Computer Science and Software Engineering Two Majors Computer Science Software Engineering 2.
 A set of objectives or student learning outcomes for a course or a set of courses.  Specifies the set of concepts and skills that the student must.
1 Lecture 1: Course Introduction Professor Victoria Meng.
Introduction to Computer and Programming CS-101 Lecture 6 By : Lecturer : Omer Salih Dawood Department of Computer Science College of Arts and Science.
Ch. 12 Technology in Social Studies Rudi Roberson Allison Jones Ke Shanda Golden Tonia Collier-Ross.
CS 21a: Intro to Computing I Department of Information Systems and Computer Science Ateneo de Manila University.
Unit 2: Engineering Design Process
Computational Thinking The VT Community web site:
1 Programming Thinking and Method (0) Zhao Hai 赵海 Department of Computer Science and Engineering Shanghai Jiao Tong University
ENGLISH LANGUAGE ARTS AND READING K-5 Curriculum Overview.
Core Curriculum and Transfer Students Summer 2015.
An innovative learning model for computation in first year mathematics Birgit Loch Department of Mathematics and Computing, USQ Elliot Tonkes CS Energy,
Learning Unit Documents and Examples. Learning Units - basic building block of a course For iGETT a Learning Unit consists of –Three parts Instructor.
Introduction to Bioinformatics Prologue. Bioinformatics Living things have the ability to store, utilize, and pass on information Bioinformatics strives.
Suzanne Westbrook, PhD School of Information: Science, Technology, & Arts Computer Science Dept, UA.
BUSINESS INFORMATICS descriptors presentation Vladimir Radevski, PhD Associated Professor Faculty of Contemporary Sciences and Technologies (CST) Linkoping.
Learning outcomes for BUSINESS INFORMATCIS Vladimir Radevski, PhD Associated Professor Faculty of Contemporary Sciences and Technologies (CST)
Chapter 11 – Teaching and Learning with Technology in Mathematics and Science Instruction Cullen Byrne and Abby Harnack.
Early Adopter: Integrating Concepts from Parallel and Distributed Computing into the Undergraduate Curriculum Eileen Kraemer Computer Science Department.
REVISIONS TO GENERAL EDUCATION STUDENT LEARNING OUTCOMES Auburn University Senate Information Item, August 2014.
Computational Thinking in K-12 and Scalable Game Design Michael Shuffett.
Discrete Structures for Computing
The Balance Between Theoretical and Practical Work Within Electrical and Computer Engineering Courses Dr. Bahawodin Baha March Development Partnerships.
ScWk 242 Course Overview and Review of ScWk 240 Concepts ScWk 242 Session 1 Slides.
PRINCIPAL SESSION 2012 EEA Day 1. Agenda Session TimesEvents 1:00 – 4:00 (1- 45 min. Session or as often as needed) Elementary STEM Power Point Presentation.
Engineering Degree Requirements Both four-year and five-year curricula of a College of Engineering Bachelor of Science program are founded on a common.
The Next Generation Science Standards: 4. Science and Engineering Practices Professor Michael Wysession Department of Earth and Planetary Sciences Washington.
Lecture 11 Data Structures, Algorithms & Complexity Introduction Dr Kevin Casey BSc, MSc, PhD GRIFFITH COLLEGE DUBLIN.
Using Alice in an introductory programming course for non-CS majors Adelaida A. Medlock Department of Computer Science Drexel University
1 CSC 221: Computer Programming I Spring 2008 course overview  What did we set out to learn?  What did you actually learn?  Where do you go from here?
Next Generation Science Standards “Taking the Steps to Implement NGSS” March 29, 2013 TEEAM Conference.
“…the ability to think and act flexibly with what one knows.” David Perkins in Teaching for Understanding, Wiske et al (1998)
WHAT IS RESEARCH? According to Redman and Morry,
New Computer Science Programme at the Department of Informatics Pedro Guerreiro University of Nis, March 24, 2006.
Introductory Lecture. What is Discrete Mathematics? Discrete mathematics is the part of mathematics devoted to the study of discrete (as opposed to continuous)
Informatics for Scientific Data Bio-informatics and Medical Informatics Week 9 Lecture notes INF 380E: Perspectives on Information.
Modelling & Simulation of Semiconductor Devices Lecture 1 & 2 Introduction to Modelling & Simulation.
Standards for Mathematical Practice and the
Computational Reasoning in High School Science and Math
Object-Oriented Software Engineering Using UML, Patterns, and Java,
AP computer science PRINCIPLES
Accepted Students Program
Teaching Climate Science to Elementary School Students using the NGSS
CS 1104 INTRODUCTION TO COMPUTER SCIENCE
Amber Settle, DePaul University Co-PI: Ljubomir Perkovic
化工学院第七届国际交流月系列讲座 邀请人:王文俊 化学工程与生物工程学院 化学工程联合国家重点实验室(浙江大学)
Educational Technology Lab, National Kapodistrian
NextGen STEM Teacher Preparation in WA State
Presentation transcript:

Computational Thinking Across Curriculum Two papers on teaching computational thinking to non-CS students Pejman Khadivi CS Department, Virginia Tech

Who am I? B.Sc. Computer Engineering, Isfahan University of Technology, M.Sc. Computer Engineering, Isfahan University of Technology, Ph.D. Electrical Engineering, Isfahan University of Technology, Visiting researcher, McMaster University, 2003 Lecturer, Isfahan University of Technology, Assistant Professor, Isfahan University of Technology, Pejman Khadivi Ph.D. Student, Computer Science Working with Prof. Ramakrishnan

Papers 1. S. Hambrusch, et al. “A Multidisciplinary Approach Towards Computational Thinking for Science Majors”, SIGCSE’09, March 3–7, L. Perkovi ḉ, et al. “A Framework for Computational Thinking across the Curriculum”, ITiCSE’10, June 26–30, 2010.

First Paper S. Hambrusch, et al. “A Multidisciplinary Approach Towards Computational Thinking for Science Majors”, SIGCSE’09, March 3–7, Summary: This paper is about a course which has been designed to teach CT to students from Physics, Chemistry, and Bioinformatics majors. During the course students learn how to program in Python. Domain-specific examples (from each field) are presented in class and students have to do term-projects.

Main Principles ●Lay the groundwork for computational thinking ●Formulating problem, abstraction, algorithms, visualization ●Present examples in a language familiar to the students ●Science majors, conversant in the basics of the classical disciplines, will comprehend computational concepts more easily if those concepts can be motivated by examples from their scientific subdisciplines ●Teach in a problem-driven way ●Start description from a real world problem ●Thermodynamic system → computational perspective → randomized models and Monte Carlo techniques

Main Principles ●The programming language should right away allow a focus on computational principles ●Write meaningful problems in a short time ●Libraries used by scientific community ●Make effective use of visualization ●Better understand scientific questions ●Better understand computational principles and processes

Disciplines Physics Better understanding of computation New computational opportunities for learning and research New perspective on physics and applied mathematics Chemistry Computational methods relevant in chemical research (Monte Carlo, Simulated Annealing and Molecular Dynamics) Use and integrate existing Fortran programs Visualizing techniques Bioinformatics Use of R for statistical computing and visualization Program in a language for which bioinformatics software packages exist or can easily be integrated.

Course Syllabus

Course Projects Two parts: Programming part Experimental part Students can use their own program or another program Most of them decided to use their own All projects asked students to produce visualizations of computational results and provide a write-up on their observations

Course Projects Manipulating Digital Audio Computational Experiments on Percolation in Grids Simulating Physical Systems Analyzing Protein-Protein Interactions

Evaluation Spring 2008 with only 13 students 10 Physics, 3 Chemistry Q1: Taking another computer science course? Q2: Pursuing a career that requires programming skills? Answers: 0 to 4 0) not interested 4) very interested

Evaluation Students interest in taking other CS courses increased Previous programming experience had no effect Responses indicate that 60% of the students plan to take another CS course In other introductory programming courses for majors a decrease in interest in computer science is observed This is not a fair comparison Example: Different instructors

Discussion  This course seems to be a special “Programming Course” with a flavor of applications in science fields, not a CT course.  “If all you have is a hammer, everything looks like a nail”  People do not know how to teach CT, so they teach Programming

Second Paper L. Perkovi ḉ, et al. “A Framework for Computational Thinking across the Curriculum”, ITiCSE’10, June 26– 30, Summary: This paper is about a framework that helps to integrate CT into different curriculums based on Denning’s great principles of computing. Different domains are considered in arts, sciences, humanities, and social sciences. Authors ultimate goal was to augment people productivity in their fields.

Principles Computation: execution of an algorithm Communication: transmission of information from one process or object to another Coordination: control of the timing of computation at participating processes Recollection: encoding and organization of data in ways to make it efficient to search and perform other operations Automation: mapping of computation to physical systems Evaluation: statistical, numerical, or experimental analysis, and visualization of data Design: organization (using abstraction, modularization, aggregation, decomposition) of a system, process, object, etc.

Framework Common Core First-year, two-course sequence in Math and Technology Literacy Apply quantitative reasoning and information Evaluate real-world problems using modern IT Spreadsheets, databases, programming algorithms, … Authors think that this is necessary to teach CT in other courses Domain-specific courses Courses in various learning domains Students are required to take 2-3 courses

Re-worked Courses

Covered concepts

What discussed for each course (A) catalog course description (B) high-level description of the course and computational thinking concepts covered (C) computational thinking learning goal (D) a case discussion and several guiding questions (E) assessment for the specified learning goal

Geographic Information Systems I An introduction to the fundamentals of geospatial information processing Introduces basic concepts and methods that underlie information systems designed to deal with geographically referenced data. Design (data modeling, …) Comparing two different data representations

Introduction to Game Design Computer Games from Three Perspectives: Media: elements, structure, interactive appreciation Complex software artifact Cultural artifact Game rules: Constituative, operational, and implicit Design (Abstracting game rules, …) Relationship between different abstractions of rules, the modeling of game behavior, and the underlying structure of a game

3D Modeling Introductory modeling and texturing techniques required to construct 3D objects and scenes to be used for animation and gaming Modularization in 3D modeling Design, Automation, Computation

Discussion Proposed method: Talk about a domain specific problem with existing computational solutions to teach a CS/CT skill Alternative method: which concept is relevant to our problems? Some simple familiar examples help students to absorb CS concepts not as an “only CS” concept but as a multi-domain concept. Then, domain specific examples can show up and do their magic.

Discussion Example: Teaching Object Oriented Design

Discussion Example of alternative method: Foundation Concepts and methods: Abstraction, simulation, … Simple familiar examples Issues What is the performance of that physical system? What agricultural process results in more crops? What will happen when a Mars rover wants to land on Mars? Relevancy Is there any CS concept useful here? e.g. Can we use simulation to answer those questions?

Discussion Which approach do you like more: attacking a domain- specific problem (e.g. in Physics) or building a fundation first? Should we explicitly tell to students that the goal is to learn computational thinking or not? Should we tell the students that "now you are familiar wit abstraction" or any other concept in CT/CS, or not?