Leen-Kiat Soh Department of Computer Science and Engineering University of Nebraska, Lincoln, NE E-mail: lksoh@cse.unl.edu Computational Thinking Computer Science (… and other matters ... ) Nebraska Summit on Math and Science Education December 8, 2014 http://img2.wikia.nocookie.net/__cb20130510160248/despicableme/images/e/e9/Despicable-Me-Minions_thumb10.jpg
Hmm …. What is computational thinking? http://www.picturescraze.com/movies/1528/despicable+me+minion.html
What is Computational Thinking? • CSTA K-12 standards: – An approach to solving problems in a way that can be implemented with a computer . – A problem-solving methodology that can be automated and transferred and applied across subjects. – Students become not merely tool users but tool builders • Use concepts such as abstraction, recursion, and iteration, to process and analyze data, and to create real and virtual artifacts. – The power of computational thinking is that it applies to every other type of reasoning Based on http://csta.acm.org/Curriculum/sub/CurrFiles/CSTA_K-12_CSS.pdf
What is Computational Thinking? • Google’s Exploring Computational Thinking: – Decomposition – Pattern Recognition – Pattern Abstraction and Generalization – Algorithm Design Based on http://www.google.com/edu/computational-thinking
What is Computational Thinking? • Decomposition The ability to break down a task into minute details so that we can clearly explain a process to another person or to a computer, or even to just write notes for ourselves • When we taste an unfamiliar dish and identify several ingredients based on the flavor, we are decomposing that dish into its individual ingredients • Pattern Recognition The ability to notice similarities or common differences that will help us make predictions or lead us to shortcuts. • People look for patterns in stock prices to decide when to buy and sell Based on http://www.google.com/edu/computational-thinking
What is Computational Thinking? • Pattern Abstraction and Generalization The ability to filter out information that is not necessary to solve a certain type of problem and generalize the information that is necessary • A daily planner uses abstraction to represent a week in terms of days and hours, helping us to organize our time • Algorithm Design The ability to develop a step-by- step strategy for solving a problem • A chef writes a recipe for a dish, creating an algorithm that others can follow to replicate the dish Based on http://www.google.com/edu/computational-thinking
What is Computational Thinking? Problem Pattern Recognition Problem Pattern Decomposition Abstraction & Generalization Decomposed Patterns Problem Algorithm Design Algorithms Based on http://www.google.com/edu/computational-thinking
So, Computational Thinking is … Wait a minute … These are things • Decomposition that we are already • Pattern capable of doing!!! Recognition • Pattern Abstraction and Generalization • Algorithm Design http://www.wallpapersax.com/wallpaper/cartoons-despicable-me-minion.html
What is Computer Science? • There are many definitions. Computer Science helps us practice our computational thinking better, faster, with larger and more complex problems … …
What is Computer Programming? • A process that leads from an original formulation of a computing problem to executable programs CODE … CODE … CODE … http://www.beyondhollywood.com/despicable-me-2-teaser-trailer-now-with-more-minion-abuse/ http://en.wikipedia.org/wiki/Computer_programming
Resources • Many CS & Computational Thinking education/outreach resources available online • National Center for Women & Information Technology (NCWIT) “in -a- box” kits http://ncwit.org • Ensemble, a Portal for Computing Educators http://www.computingportal.org • CS Education Week http://www.csedweek.org • Google’s Computer Science for High School (CS4HS) http://cs4hs.com • Code.org http://code.org • …
Google’s Exploring Computational Thinking (https://www.google.com/edu/computational-thinking/) • Lesson modules – In particular, the computational creativity exercises: Lesson Description Grades Describing an Using language to describe an object to someone else without the 1-10 Everyday Object object's name. It's harder than you think. Writing a Story Collaborate with others to build a story. Afterwards, find the "bugs" in 5-8 the story and fix them to give the overall story a more logical flow. Ciphering a Develop a cipher and encode a sentence and develop an algorithm for 3-6 Sentence encoding and decoding. Exploring Your Gather data about a place or environment, organize the data in a table 1-6 Environment and look for patterns. Machine Testing Develop a strategy for testing a mysterious new machine. 3-6 Guessing Game Play a guessing game with your friends and develop a process for 1-6 efficient guessing. 12
Code.org http://code.org Go to Video From code.org
CS Unplugged http://csunplugged.org • “The activities “CS Unplugged is “CS Unplugged is introduce students a collection of suitable for people to underlying free learning of all ages, from concepts such as activities that elementary school binary numbers, teach Computer to seniors, and from algorithms and data Science through many countries and compression, engaging games backgrounds. separated from the and puzzles that Unplugged has been distractions and use cards, string, used around the technical details we crayons and lots world for over usually see with of running fifteen years, in computers.” around .” classrooms, science centers, homes, and even for holiday events in a park! ” 14
CS Unplugged http://csunplugged.org Created by Tim Bell, Ian H. Witten, and Mike Fellows, and illustrated by Matt Powell go 15
CS Unplugged In-A-Box As NCWIT’s Computer Science-in-a-Box: Unplug Your Curriculum (http://www.ncwit.org/resources/computer-science-box-unplug-your-curriculum) • Examples: Magic card show – error detection; Treasure island – finite state machines; Sorting game – sorting networks 16
Pathways: K-12 courses • AP CS Principles Computational Thinking Practices, Big Ideas, Key Concepts, Supporting Concepts Connecting computing; Creating computational – To be launched AY 2016- artifacts; Abstracting; Analyzing problems and artifacts; Communicating; Collaborating 2017 Big Ideas Creativity; Abstraction; Data and Information; – http://csprinciples.org Algorithms; Programming; The Internet; Global Impact • Exploring CS Draw on the curricular framework listed in Levels II – http://www.exploringcs.org and III of the ACM’s A Model Curriculum for K -12 Computer Science (2003) • AP CS (existing) Human computer interaction; Problem solving; Web design; Programming; Computing and data analysis; Robotics; integrated topics on ethical and social issues – There used to be AP CS A and AP CS B 17
Pathways: @ UNL • CSE Day – March/April annually • Site visits to our Holland Computing Center, UAV Nimbus Lab, etc., @ UNL • Local school visits to do CS unplugged activities • AP CS Principles course under development 18
CSTA Local Chapters • Computer Science Teachers Association – 1 st Local Chapter in NE: Nebraska Huskers – 2 nd Local Chapter in NE: NE Omaha Metro • Resources available online http://cstanebraska.org • Monthly meetings to discuss and share curricula, course designs, activities, pedagogy, resources • Current NE Huskers members: Steve Carr (President), Scott Burns (Vice President), Leen-Kiat Soh (Secretary), Chuck Riedesel (Treasurer), Lloyd Summerer (Communications Officer), Deb Bulin, Scott Handelman, Michael Hanus, Alan Holdorf, Brent Jarosz, Kent Steen, … 19
And Circling B ack … • Computer science is the study of computation — what can be computed and how to compute it. • Computational thinking thus has the following characteristics: • Conceptualizing, not programming • Fundamental, not rote skill • A way that humans, not computers, think • Complements and combines mathematical and engineering thinking • Ideas, not artifacts • For everyone, everywhere Based on Wing, J. (2006). Computational Thinking, Communications of the ACM , 49(3):33-35. 20
Finally … “ Computational thinking is a fundamental skill for everyone, not just for computer scientists. To reading, writing, and arithmetic, we should add computational thinking to every child’s analytical ability. ” – Jeannette Wing, CACM 2006 “I’m proud to join the students, teachers, businesses, and non-profit organizations taking big new steps to support computer science in America’s schools. Learning these skills isn’t just important for your future – it’s important for our country’s future. If we want America to stay on the cutting edge, we need young Americans like you to master the tools and technology that will change the way we do just about everything. ” – President Obama, December 2013, on Computer Science Education Week
Recommend
More recommend