Loading in 5 sec....

A Puzzle to Entertain YouPowerPoint Presentation

A Puzzle to Entertain You

- 99 Views
- Uploaded on

Download Presentation
## PowerPoint Slideshow about ' A Puzzle to Entertain You' - terence-shirley

**An Image/Link below is provided (as is) to download presentation**

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript

A Puzzle to Entertain You

I have a bag that holds one marble, with equal probability that it is white or black.

I add a second marble to the bag, that is white. I then shake the bag, and take one marble out. It is white.

What is the probability that the remaining marble is black?

Talk Overview

- Background: What it means to teach PS
- How I teach PS, and variants
- Computational Thinking and the CS Principles initiative

NOT Problem-Based Learning

- PBL is about a way to present content
- Students learn content in the context of addressing “real-world” (or at least bigger) problems.

- By “Problem Solving” I mean fundamental skills/strategies that people apply to solve problems of any type.

Motivation: Why We Care

- Many students are not good at debugging
- Deduction vs. Random Walk

- Many students are not good at design
- Many students are not good at analysis
- Algorithm Analysis, systems analysis

- These deficiencies motivated the course, and overcoming them is therefore the goal.

How CAN we teach PS?

- An old problem for teachers.
- Polya: 1940s
- Heuristics

What Does It Mean to Teach Problem Solving?

- Fundamental Hypothesis:
- Problem Solving is a skill, not an ability.
- Otherwise, we cannot do anything.

- Secondary Hypothesis:
- Being good at problem solving correlates to being good at Computer Science.
- Skill(PS) ~ Skill(CS)
- Otherwise, why bother?

A Student Comment

- “We are already good at this.”
- Implied hypothesis:
- If you are good at Computer Science, you are good at PS.
- Skill(CS) => Skill(PS)
- There does appear to be a lot of truth to this.
- Correlated? PS is a prereq for CS capability?

Fundamental Challenge

- We want to improve the capability of the weaker students to do CS
- The hypothesis:
- We can do that by improving their PS skills
- Increased Skill(PS) => Increased Capability (CS)

Observation

- Many people enjoy doing puzzles.
- Maybe an interest in puzzles correlates to an interest in CS?
- Irony: When a student tunes out my lecture on PS because they are working on a Sodoku!

History of our PS Course

- ~2006, our Undergraduate Program Committee developed major changes in undergraduate curriculum
- Teaching PS: not my idea, but I ended up developing the course
- I found textbooks to make a course

Course Process

- Weekly homeworks
- Wide variety including self assessment tests, problem sets (individual or in pairs)

- Many classes involve students working problems (come to board and demonstrate)
- Goal is to “make visible” the problem-solving process

What I Actually Teach (1)

- PS diagnostic, self understanding tests
- MB
- Learning Styles Inventory
- Conflict resolution

- Thinking aloud, working in pairs, engaging a problem
- Verbal reasoning, Analogy problems

What I Actually Teach (2)

- Heuristics: (about 1/3 of the course)
- Externalize
- Visualize
- Special Features
- Look at Extremes
- Simplify
- Sleep on It
- Penultimate Step
- Symmetry
- Invariants

What I Actually Teach (3)

- Lateral Thinking
- Deductive and Hypothetical Reasoning
- Making an argument: proof styles
- Problem Solving and Programming
- Succeeding as a student

What I Actually Teach (4)

- Problem Solving in-the-large:
- Problem Definition
- Generating Potential Solutions
- Deciding Course of Action
- Implementing Solution
- Evaluation

- Computational Thinking
- Simulation, Optimization, and Statistics

- Interpersonal Problem Solving

Sources

- Effective Problem Solving, Second Edition, Marvin Levine – Heuristics
- Problem Solving & Comprehension, Sixth Edition, Whimbey and Lochhead – careful deductive reasoning
- The Art and Craft of Problem Solving, Paul Zeitz – Proofs, Math problems (sparingly)
- Strategies for Creative Problem Solving, Second Edition, Fogler and LeBlanc– PS in-the-large
- I also actively collect sample problems

Variant: Math Olympiad Approach

- Could make the class more math oriented
- I don't want to make my class too math heavy.
- Exactly the people that I want to reach (weaker CS students) have less capability at math (or are even math-phobic)

- I don’t need math to find hard problems!

Other Variants

- CS topics vs. CS relevant examples
- Finite state and other machines
- Algorithms
- Big project for group to work on (or PBL)

- Computational Thinking
- Puzzle-based Learning

Challenges

- Student reaction is not strong
- Our students tend to focus on programming and “obvious” CS content
- CS == Programming
- Can mitigate by tying more closely to CS content. Debugging?

- Need to maintain faculty support
- If viewed as “non-critical”, lower division courses get pushed out.

Major Positive (to Students)

- Gives students a framework and a terminology for discussing the process of problem solving.

The state of Computer Science Education in the US

- Boom and Bust cycle (~15-year cycle)
- We are coming out of a bust
- NSF reports 70% reduction in CS majors (80% drop among women)
- We are starting to recover numbers

- Predictions are for a huge deficit in CS-related workers
- Claims of “all the new jobs” related to CS

Computation Thinking

Proposed Solution: Teach CS in K12!

- NSF
- Jeanette Wing
- CE21 program

- CS Principles initiative
- Alice, Scratch, etc.

Harsh Realities in US K12 Education

- CS is not part of the core
- Few K12 teachers trained to teach CS
- Lowered interest taking high school CS
- Recently lost our advanced AP exam

NSF’s CE21 Program

- Goals:
- Train more teachers to teach CS (10,000?)
- Teach K12 students to “think computationally”
- We already teach “computer literacy” in primary school

- Includes a push to teach CS topics in middle schools (6-8)
- This is where most kids decide their career

CS Principles (csprinciples.org)

- NSF Funded Project; College Board
- PI: Owen Astrachan at Duke
- Goal: Define a new AP course
- Teach it at High School and College Intro
- Not a classic programming course
- Teach a broader introduction to the concepts of CS
- Computational Thinking!
- Pilot Sites

CS Principles Big Ideas

- Computing is a creative human activity that engenders innovation and promotes exploration
- Abstraction reduces information & detail to focus on concepts relevant to understanding and solving problems
- Data and information facilitate the creation of knowledge
- Algorithms are tools for developing and expressing solutions to computational problems
- Programming is a creative process that produces computational artifacts
- Digital devices, systems, & networks enable and foster computational approaches to solving problems
- Computing enables innovation in other fields

Computational Thinking Practices

- Analyzing effects of computation
- Creating computational artifacts
- Using abstractions and models
- Analyzing problems and artifacts
- Communicating processes and results
- Working effectively in teams

(Almost) The End

- Thank you for listening!
- What are your experiences with teaching
- Problem Solving?
- Computational Thinking?

A Closing Puzzle

A man is driving his car on a shopping trip around town. Shortly after he starts out, he notices that his odometer (which has six digits) is showing a palindrome. An hour or so later, as he is nearly finished with his shopping trip, he looks at his odometer again. He notices that it is showing a different palindrome.

How far did he drive?

Download Presentation

Connecting to Server..