Camps, Classes, & More


Spring Schedule




Join our mailing list to get news and announcements such as registration and discount deadlines and special events.


Introduction to Programming Advanced

This course is intended for students in 4-6 grades. Students will learn fundamentals of programming while they are working on projects and having fun using Scratch programming language. The focus of the course is problem solving skills.

Scratch is a programming language and an online community where children can program and share interactive media such as stories, games, and animation with people from all over the world. As children create with Scratch, they learn to think creatively, work collaboratively, and reason systematically. Scratch is designed and maintained by the Lifelong Kindergarten group at the MIT Media Lab.

The course is composed of 24 sessions, 2 hours per session. Programming background is not required whereas grade level Math background is required.

The course is divided in two semesters; fall and spring, 12 sessions each. Each semester requires separate registration.


  • learn to deal with harder algorithmic problems
  • comfortably implements solutions
  • get ready for USACO Bronze course


  • for grades 4-6
  • finish Intro to Programming Basic course successfully or strong programming background on Scratch
  • robust math background is strongly recommended


Following topics will be covered with extensive exercises:

Fall semester:

  • Variables
  • Conditions
  • Loops
  • Lists (Arrays)
  • String processing

Spring semester:

  • String processing review
  • Nested conditions
  • Nested loops
  • Multi-threading
  • Matrices
  • Functions

* Although this course has the same topics with Introduction to Pogramming Basic course, it has very brief lectures when necessary and much harder problem sets / projects as opposed to the other one.

Sample Project:

The following project requires problem solving skills using matrices (2D arrays).


Click to see the project details

Fall Term

Bay Area

  • Introduction to Programming Advanced (Santa Clara)