Is Computational Thinking a 21st Century Skill? Joe Kmoch Milwaukee Public Schools [email protected]...
-
Upload
derrick-philip -
Category
Documents
-
view
217 -
download
1
Transcript of Is Computational Thinking a 21st Century Skill? Joe Kmoch Milwaukee Public Schools [email protected]...
Is Computational Thinkinga 21st Century Skill?
Joe Kmoch
Milwaukee Public Schools
5/3/2011 1
Roadmap
• What is computational thinking• What does it look like?• Some essential concepts (Computing and
the 3 “A”s)• Why CT and K-12 students• CT is everywhere• Time for you to get involved• Next steps
2
My Goals
Make the case that– The principles of CT are applicable to
many subjects areas. – CT is very much ingrained in critical 21st
Century Skills– CT is a mechanism to handle larger, more
complex problems that are by their nature cross-curricular (ie real world)
3
What is Computational Thinking (CT)?
• Application of Computer Science (CS) concepts to problems in virtually all disciplines
• Use of computational resources such as tools, techniques along with data to solve complex problems
• Strong supports for the 4 essential 21st Century Skills (communication, collaboration, critical
thinking and ps, creativity and innovation)• Encourages broad-based thinking about cross-
curricular problems
4
What does it Look Like?Some Examples of Computational Thinking
(Jeannette Wing, CMU)• CT is reformulating a seemingly difficult problem into one
which we know how to solve (reduction, embedding, transformation, simulation)
• CT is using abstraction and decomposition in tackling a large complex task
• CT is judging a system’s design for its simplicity and elegance
• CT is judging a problem solution for its simplicity and elegance
• CT is prevention, detection and recovery from worst case scenarios through redundancy, damage containment and error correction
• CT is modularizing something in anticipation of multiple users
5
Simple Daily Examples(Jeannette Wing, CMU)
• Looking up a name in an alphabetically sorted list– Linear – start at the top– Binary – start in the middle
• Standing in line at a bank– Performance analysis of task scheduling
• Putting things in your child’s knapsack for the day– Pre-fetching and caching
6
...and more
• Taking your kids to their various activities– Traveling salesperson problems – graph theory
• Cooking a gourmet meal (actually most any meal)– Parallel processing
• Storing away your child’s Lego pieces scattered in the floor– Using hashing (eg, by shape, by color)
• Doing laundry, getting food at a buffet– Pipelining the wash, dry and iron stages; plates, salad,
entrée, dessert stations
7
...and one more
• Even in grade school we learn algorithms (long division, factoring, GCD, ...) and abstract data types (sets, tables, ...)
8
Some Essential Concepts:The Computing part of CT
• Computing is fundamentally concerned with two phenomena: data and processes – these are everywhere
9
Data
• Anything that can be observed or imagined in the physical or logical worlds: numbers, images, songs, positions of planets, subway maps, medical records
10
Process
• A sequence of actions: setting up a coffee maker starts with getting out the filter, placing it in the basket, putting grounds in the basket, filling the reservoir with water
11
Abstraction – the first “A” of CT
• Technique of generalizing from specific instances (process and data)
• Capture essential common characteristics while discarding unessential characteristics
• Operate simultaneously at multiple layers and define relationships between layers
12
Abstractions example
Cooking a meal• At the highest level we might have the list of courses
that make up the meal– Appetizer(s)– Soup/salad– Entree– Dessert
• And probably an order in which to work on them (project timeline)
13
Cooking a Meal Abstraction• At the next level, we might have the details
of the individual parts– The recipes, for example
• At the next level, we might have the details of how to do certain cooking actions – doing a reduction or – pureeing, or – rolling dough
(All process abstractions)
14
Example of data abstraction
This Chicago transit map is a data abstraction; contains essential info like stations and transfer points, avoids details like exact street locations of stations or distances
15
Process Abstractions of the mind
• Techniques• For example: Divide
and Conquer• Abstraction of how
to solve a problem, not actually a solution to any particular problem.
• Take a problem and divide it into several piece
• Solve or complete each piece
• Re-combine the pieces to solve original problem
16
Automation – the 2nd leg of CT
• Mechanizing our abstractions, abstraction layers and their relationships
• Agents– Can be a person or a computer– Can be a group of people or computers– Any combination of these
17
Automation Agents
• Use each for what the agent can do well
• People– Interpret– Speed (in certain areas, eg understanding)
• Computers– Vast memory– Speed (in certain areas, eg searching)
18
Analysis – 3rd leg of CT
• Ensuring that abstractions (algorithms, programs, databases, systems of all sorts) are efficient and are correct
• Analysis includes– Algorithmic and performance analysis– Specification– Verification, debugging, testing,
experimentation19
Academic definition of CT
• Computational Thinking involves solving problems, designing systems, and understanding human behavior, by drawing on the concepts fundamental to computer science (J. Wing, 2006)
20
K-12 Operational Definition
• Created over several months by groups of educators and business professionals
• Supported by an NSF project proposed by and provided to ISTE and CSTA.
• On the ISTE and CSTA sites (handout)• http://www.iste.org/standards/
computational-thinking.aspx
21
Why CT for K-12 students?
• Students need to acquire thinking habits of computer scientists, because – they are widely applicable in the
information society in which these students live and
– work regardless of their eventual profession
22
CT and K-12
• K-12th graders should be introduced to computational thinking in order to set these fundamental thinking habits firmly in the minds of the next generation
• Recall the 3 As of CT– Abstraction, Automation, Analysis
23
Implications for K-12
CT would likely
• Encourage further inclusion of high order thinking skills
• Encourage students to develop tools and techniques that will become more important for success
24
More Implications for K-12
• Is in step with the increased emphasis of technology in careers and in life
• Can help move more digital natives from being a consumer of technology to a creator of technology – Marc Prensky coined the terms digital
natives and digital immigrants (nearly all are the latter)
25
CT Concepts, Capabilities
• Data collection, analysis, representation
• Abstraction
• Analysis and model validation
• Automation
• Testing and verification
• Algorithms and procedures
• Problem Decomposition
• Control Structures
• Parallelization
• Simulation26
21st Century Skills (Dispositions and Predispositions)
• Collaboration– Working with others toward common goal
• Communication (CT capabilities above)
• Critical Thinking & Problem Solving (CT capabilities above)
• Creativity and Innovation– Confidence with complexity, ambiguity– Persistence with difficult problems– Deal with open-ended problems
27
What CT is not
• Does it mean we should all think like a computer? (NO)
• Does it mean that everyone should be a programmer? (NO)
28
Characteristics of CT
• Thinking abstractly• Thinking at multiple levels of abstraction• Abstracting to manage complexity• Abstracting to deal with scale• Logical reasoning• Emphasis on a holistic approach rather
than on specific topics• It involves data and processes
29
CT is EverywhereFor example, CT has…
• Been instrumental in many new discoveries such as DNA mapping, development of new materials, new formulations, new techniques
30
Think…• Computational Biology• Computational Chemistry• Computational Physics• Computational Linguistics• Computational Finance• Computational Economics• Computational … almost anything you can
name.
31
...more CT is everywhere
• Biology– DNA sequences are strings in a language– Protein structures modeled as knots
• Brain Science– Modeling the brain as a computer– Vision as a feedback loop– Analyzing MRI data with machine learning
32
... And here
• Astronomy– KD-trees help astronomers analyze very
large multi-dimensional datasets
• Mathematics– Four-color theorem proof
• Engineering– Boeing 777 tested via computer simulation
alone33
... And here
• Economics– Automated mechanism design underlies
electronic commerce (eg, ad placement)
• Social Sciences– Statistical machine learning used for
recommendation and reputation services
34
... Here, too• Medicine
– Robotic surgery– Scientific visualization (virtual colonoscopy)
• Entertainment– Games, movies– Huge computing farms to render movies
• Sports– Record and analyzing performance– Analyzing digital video of NBA games
35
Audience Involvement
• Review the Computational Thinking within Disciplines Chart (pg 52 of article Bringing CT to K-12)
• Talk in 2-3 person groups about at least one lesson that you could modify in your class which would involve one or more of the CT Concepts or Capabilities on the left column of the chart
• ?? minutes then we’ll share36
ISTE/CSTA NSF Grant
• Develop K-12 definition of CT
• CS concepts highlighted
• Next step involves development of sample materials (lessons, units) which demonstrate CT in student lessons
• See Language Arts Gr 5 example
37
Thank you
• Jeannette Wing, CMU and NSF• Pat Phillips, Janesville Craig HS and
Microsoft• Carolyn Sykora, ISTE• Many friends at the CT Thought Leaders
workshop in May, 2010 and the curriculum workshop in November, 2010
38
Resources
• My CT wiki:
http://computationalthinking.pbworks.com/
Lots of stuff collected, more to come
...email me about the WI CS and IT mailing list...
Joe Kmoch
39