1 of 6

Learning to Code on the Cloud

Topic 0: Introduction

Ninghui Li

Purdue University

2 of 6

Design Goal and Target Audience

Course Objective: Provide a gentle introduction to coding and computational thinking for students with zero prior programming experiences.

Primary audience: Middle or high school students (6th graders and up), possibly 5th graders with prior exposure to extra curricular math

Prerequisite knowledge: Pre-algebra math

3 of 6

Approach

  • Using the Cloud:
    • Require a computer with web browser and text editor
      • Any text editors that save plaintext will do, e.g., notepad++ for Windows, atom for Mac
    • Writing code and debugging can be done using online IDE (integrated development environment)
      • https://www.onlinegdb.com/
    • Programming assignments are from codeforces.com and codingbat

  • Gentle: Use a large number of accessible and interesting programming assignments. Ramping up difficulty slowly.

4 of 6

Approach

  • Problem-driven: Everything is taught in the context of solving some programming problems, and there are extensive programming exercises for practice.
  • Language choice: Python 3
    • Focus is on language features that are common to procedural programming languages such as Java, C/C++
    • Goal is not to teach Python, but to teach programming

5 of 6

How to Use the Course Materials?

  • For each topic
    • Read descriptions of example problems, and think about how to solve them.
    • Watch the video and study the slides.
    • Solve the example problems independently. Refer to slides and videos when stuck.
    • Solve the homework problems.
    • If there is extra time, read the challenge problems and try to solve some.

6 of 6

End of Topic 0