Your SlideShare is downloading.
×

- 1. 1 Teaching and Learning Computational Thinking at Scale T.C. Pong Senior Advisor to the Executive Vice-President & Provost Director of Center for Engineering Education Innovation Professor of Computer Science & Engineering Hong Kong University of Science & Technology 9 June 2018
- 2. Outline • What is computational thinking and why is it important? • How to broaden access to computational thinking education? • Using HKUST’s MOOCs for delivering computational thinking at scale • Concluding remarks
- 3. My Lesson Learned as a Computer Science Student Think very carefully before doing any actual coding!
- 4. My Lesson Learned as a Computer Science Student Fortran – My 1st programming language Basic Algol Scheme Prolog Pascal C / C++ Java A programming language doesn’t solve problems, it is the thought process behind programming that formulates solution to problems!
- 5. What is Computational Thinking? • Computational thinking is the thought processes involved in formulating a problem and expressing its solution(s) in such a way that a computer—human or machine—can effectively carry out. [Wikipedia, Wing 2014]
- 6. Four stages of Computational Thinking The four main stages of computational thinking include: • Problem formulation and decomposition • Pattern recognition and data representation • Problem abstraction • Algorithm design
- 7. Changing Way of Life Why is Computational Thinking Important?
- 8. Changing Way of Life
- 9. Computational X
- 10. 21st Century Competencies & Skills 4 + 1 C’s 21st century skills: • Critical thinking • Creativity • Communication • Collaboration • Computational thinking
- 11. Computational Thinking in National Curriculum in England
- 12. Computer Science For All Policy in the USA
- 13. CT becomes Compulsory in China’s High School Curriculum
- 14. Australian’s Digital Technologies Curriculum
- 15. Computational Thinking in Singapore’s Smart Nation Initiative
- 16. National Singapore University makes CT Compulsory
- 17. CoolThink@JC in Hong Kong
- 18. How to broaden access to computational thinking education? Need to deliver computational thinking education to different groups of learners: • Students at different levels: – K-12 – College students, including UG and PG – Adult learners • Teachers and educators • Parents and others
- 19. Using MOOCs for Delivering Computational Thinking at Scale HKUST offers the following MOOCs for delivering computational thinking at scale: - Introduction to Java Programming - Developing Android Apps with App Inventor - Cornerstone Engineering Design Project
- 20. Massive Open Online Courses A massive open online course (MOOC) is a type of online course aimed at large-scale participation and open access via the Internet. • In addition to online video lectures, learners are involved actively in the learning process • MOOCs go beyond just offering courses and content. Learning analytics allow us to understand how students learn and how teachers can improve their teaching.
- 21. MOOC Platforms Major MOOC platforms: – Coursera and edX in the US – FutureLearn in the UK – France Université Numérique (France Digital University) in France – Iversity in Germany – Open2Study in Australia – XuetangX & CNMOOC in China – Ewant 磨課師 in Taiwan – JMOOC in Japan – KMOOC in Korea – HKMOOC in Hong Kong
- 22. MOOC completion rates HKUST’s MOOC Experience Over 1,000,000 learners have registered for 40 MOOCs offered by HKUST
- 23. MOOC on edX: Introduction to Java Programming
- 24. edX: 10 Most Popular Courses in 2016
- 25. Top edX Courses in 2017
- 26. 27 Introduction to Java Programming: Demographic Distribution
- 27. Top Students from COMP102x Top Students with almost perfect scores
- 28. Four stages of Computational Thinking The four main stages of computational thinking include: • Problem formulation and decomposition • Pattern recognition and data representation • Problem abstraction • Algorithm design
- 29. Formulate a well-defined Problem: • A well-defined problem means that – a solution exists for the problem – an unambiguous solution can be found in a finite number of steps • Examples: – 1 x 2 + 3 – 1 + 2 x 3 Is the problem statement “Finding the best way to travel from Hong Kong to London” a well-defined problem? Problem Formulation and Decomposition 1 + (2 x 3) = 7 (1 + 2) x 3 = 9
- 30. Formulate a well-defined Problem: Is the problem statement “Finding the best way to travel from Hong Kong to London” a well-defined problem? • How do you define best? (Fastest, Cheapest) • Any limitations? (Preferred mode of transportation) • Any ambiguous definitions? (London) Problem Formulation and Decomposition
- 31. 2D Square Apple Problem Starting from the middle cell, would it be possible for the worm to finish eating all the apples? Rules: The worm can only move into another cell that shares a common wall; and a cell that has not been previously visited. Problem Representation and Pattern Recognition
- 32. Start state Problem Representation and Pattern Recognition
- 33. Goal state Start state Problem Representation and Pattern Recognition
- 34. 3D Square Apple Problem Problem Representation and Pattern Recognition
- 35. Problem Representation and Pattern Recognition
- 36. Would it be possible for the worm to finish eating through all the 27 apples? 1) Yes 2) No 3) Not sure Question
- 37. Problem Representation and Pattern Recognition
- 38. Problem Representation and Pattern Recognition
- 39. Problem Representation and Pattern Recognition
- 40. Use the new representation and discuss with your classmate to come up with a solution again to the following question: Would it be possible for the worm to finish eating through all the 27 apples? 1) Yes 2) No 3) Not Sure Question
- 41. Importance of Problem Representation 2D square apple: • There are 5 red apples and 4 green apples • Every move will be restricted to going between apples of different colors • If one starts from a green apple, there would be no more green apple after consuming the 4th red apple
- 42. 3D square apple: • There are 14 red apples and 13 green apples The problem shows the importance of finding the right representation before solving a problem! Using the same argument as in the 2D case, if one starts from a green apple, there would be no more green apple after finishing the 13th red apple. Importance of Problem Representation
- 43. Can the dominos cover all the cells on the 8x8 board? You may assume that there are enough dominos. Pattern Recognition: Transfer Learning
- 44. With two of the corners cutoff from the 8x8 board, can the dominos still cover all the cells on the board? Pattern Recognition: Transfer Learning
- 45. There are 32 black cells and 30 white cells. Each domino always covers one black and one white cell. After 15 dominos are placed on the board, there would be no more white cell! Pattern Recognition: Transfer Learning
- 46. Problem Abstraction
- 47. Problem Abstraction
- 48. 51
- 49. Algorithm Design: Selection Sort • Selection sort performs sorting by repeatedly finding the largest element in the unsorted portion of the array and then placing it to the end of this unsorted portion until the whole array is sorted. • Algorithm – Define the entire array as unsorted at the beginning – While the unsorted portion of the array has more than one element: • Find its largest element • Swap with last element • Reduce the unsorted portion of the array by 1
- 50. Algorithm Design: Selection Sort
- 51. Algorithm Design: Selection Sort
- 52. HKUST’s App Inventor MOOC
- 53. MIT App Inventor • MIT App Inventor: a very easy-to-use Android application development tool – Homepage: http://appinventor.mit.edu • It is completely started and used within a browser. No software installation is needed • Supported browsers: Chrome, Firefox and Safari. Internet Explorer is not supported! • System requirement details: http://appinventor.mit.edu/explore/ai2/setup.html 56
- 54. MIT App Inventor 57
- 55. An Hour-of-Code Event for Students and Parents
- 56. An Android App Game • We will create the Super-dolphin game, where a special dolphin is moving super fast undersea. She only appears still in your sight for a short time (when she is tired). She is so lovely that you want to touch her. If you manage to touch her, she will be scared and hide herself, and your game score will be increased by 10 points. 59
- 57. Android App Demo
- 58. To contextualize activities that allow the application of computational thinking, a cornerstone engineering design project course was developed for 1st year engineering students: • To provide students exposure to knowledge and skills from different engineering disciplines • To engage students in team projects that connect engineering design with real-world problems using computational thinking • using a blended and experiential learning approach A Cornerstone Engineering Design Project Course
- 59. A Blended Experiential Learning Course on Cornerstone Design Project
- 60. Learning Analytics on Student Progress
- 61. Cornerstone Engineering Design Project Course
- 62. Cornerstone Engineering Design Project Course
- 63. Cornerstone Engineering Design Project Course
- 64. Cornerstone Engineering Design Project – Design Thinking Prototyping
- 65. Cornerstone Engineering Design Project - Competition
- 66. Cornerstone Engineering Design Project Course
- 67. Learning Analytics on MOOCs Prof. Huamin Qu’s VisMOOC: A visual analytics tool for MOOC
- 68. Learning Analytics on MOOCs
- 69. Learning Analytics on MOOCs
- 70. Learning Analytics on MOOCs
- 71. Social Network Analysis on MOOCs
- 72. Massive Open Online Degree (MOOD) 76
- 73. Intelligent Tutor at Georgia Tech 77
- 74. Creativity Critical Thinking 21st Century Competencies & Skills Communication Computational Thinking Collaboration
- 75. 79 Thank you!