Melvin's digital garden

PyConSG Education summit 2019

25th June 2019 9 - 5pm

** Opening address speaker: Dr Liew time for CdEd APAC? how young should we introduce computational thinking how to introduce AI in curriculum

** Introduction to Vivita speaker: Lee Hoi Leong

for P3 and above

“No curriculum, no teacher”

  • student lead activities

“The world is programmable. No Limit,”

  • you can be the change maker

“Education is a right, not a privilege”

  • courses are free to attend

Unlearning learning community meetup

  • updating education in SIngapore and beyond

** Professional software development, can it be taught? speaker: Ivan Zimine

hard to grow and maintain software

spec/design first

professional = responsible for outcome

software borrows terms from construction construction is limited by gravity

complexity = “software gravity”

how to handle complexity

  • invest in communication and social skills
  • invest in simple tools and pragmatic development practices

Programs are written for people to read, SICP

  • proper naming
    • use intention revealing names
    • avoid disinformation
    • use pronouceable names

Example: refactored fizzbuzz

  • is_divisible_by
  • early return

Linguistics is more important for programming than math

  • how to get feedback on code readability?


  • executable specification
    • cucumber
  • specification by example
  • communication with the stake holders to build the right product

Pair programming


  • plain text
  • command line
  • text editor

Test driven development

  • test, code, refactor
  • a design tool
  • tests as specification
  • keep code tight, just to solve the test

Can it be taught?

  • The pragmatic programmer
  • sofware craftsmanship singapore

** Transferring python skills for game-based learning environments to real-world environment speaker: Chris Boesch

Journey of a Sec 2 student Yan

  • low barrier for participation
    • solve 1 level
  • choice of different activities

Game based via Code combat

  • clear goals
  • hints
  • feedback

Real world problems via Jupter notebook

  • provides scaffolding
  • not too much text
  • dealing with Python errors
  • Google colab
    • create your own activity
    • share with other students

Towards real-world problems

  • NLP to analyze feedback questions
  • identify drawn numbers
  • play pictionary
    • draw something until the AI recognizes it

Multiplayer levels in code combat

  • finals is done in pair-programming in 2 hours

** Solving operational challenges while teaching speaker: Lawrence Putra

Mentoring a group of 3 from Techladies

Challenge is to make the sorting process for IAmTalented and CollaborateSG more efficient

Breaking down the challenge into steps

  • learing how to manipulate excel in code
  • read execl in code
  • various data types in excel
  • how to find the answer yourself

** Developing students’ computational thinking through interest driven activities speaker:

Integrate mathematics and computing

  • Poly’s four steps

** Google colab and Kaggle for data science/AI education speaker: Chen Weiqiang

colab = hosted Jupter notebook share with others

use it to create tutorials

modelling market share of taxi using recurrence relations

  • part of further mathematics

use sliders to change the parameters dynamically and update the plot

AI for students by AI Singapore

Links to this note