Week 2.3. Computational Thinking

Computational Thinking

  • Decomposition: breaking down data, processes, or problems into manageable parts
  • Identify inputs and outputs
  • Pattern recognition: observing patterns, trends, and regularities in the data
  • Abstraction: identifying the general principles behind the patterns
  • Algorithm design: developing the step-by-step instructions for solving this and similar problems
  • Organisation of data: how to store intermediate calculations
  • Testing: challenge your algorithm – where does it go wrong?

Programs are HUGE

Even small apps have 000s of lines.
Most apps developed by teams.
Identify manageable features:

  • Find in webpage browser feature
  • Emoji keyboard on phone
  • Recommend music given listening history
    Exercise: identify features of Twitter

Find the Token

Game:

  • Volunteer student spokesperson
  • You turn your back
  • Spokesperson hands a token to an audience member
  • Goal: locate the token with yes/no questions
    You have to find the token – what is your strategy?