The objective of the course is to teach basic programming concepts and algorithm development to elementary students using a standard programming language. The material will be based on simple mathematics. Due to the limited time available for the courses, the goal of the instructors is to enable students self-develop their skills using openly available materials on the Internet.

In the school year of 2012/13 the course was focusing on building up horizontal layers of programming knowledge. There was first Primary Programming I launched in the Winter Session and Primary Programming I and Primary Programming II in the Spring Session. The problem with this approach was that a 4th Grade student is able to take 9 courses till graduation and keeping up that many levels of courses with materials and students would be a real challenge

In the school year of 2013/14 the strategy is to build up a curriculum based on vertical knowledge. Each course will have a unique project and it will introduce only a portion of a layer that is necessary to complete the project goal. There will be basic projects for the Essential courses and complex projects for the Advanced courses. There will be 9 basics projects and 9 complex projects in the curriculum, so that a student will able to join as many courses as they like and will not do the same project again, hence always learning something new.