by Georgina Wilcox and Katie M Bell
We present two outreach programmes run by Sydney University for high school students: the National Computer Science School (http://www.ncss.edu.au) and the Girls’ Programming Network (http://sydney.edu.au/it/gpn). For the past four years we have been teaching Python to students in grades 9-12, and based on this experience we will discuss why Python is a good first language and the parts of it which are still difficult for students to grasp. We will also cover the structure of the programmes and tools used, in particular the online marking system for Python programming tasks.
by Tim Dawborn
The NCSS Challenge (http://challenge.ncss.edu.au/) is an online programming competition for Australian high school students. There are four different courses being run during 2011: Introductory Python, Intermediate Python, Advanced Python, and Embedded Systems (using the Arduino). In 2010 we had over 1700 students participate in the Challenge.
There are a number of interesting technical challenges which had to be overcome in order to facilitate such a system. Executing arbitrary code on your servers which is supplied somebody on the internet is a scary situation for any system administrator. We have developed an elegant solution for this problem whereby we can securely execute arbitrary code not restricted to any particular subset of languages.
This presentation will be going through three aspects of the Challenge infrastructure. First, how the Challenge works from a competition point of view, and how we teach programming via automated testing. Second, we will cover the sandbox we developed to facilitate this arbitrary code execution. Last, we will cover the application stack powering the Challenge site itself.
20th–21st August 2011