publication . Preprint . 2012

CS Circles: An In-Browser Python Course for Beginners

Pritchard, David; Vasiga, Troy;
Open Access English
  • Published: 10 Sep 2012
Computer Science Circles is a free programming website for beginners that is designed to be fun, easy to use, and accessible to the broadest possible audience. We teach Python since it is simple yet powerful, and the course content is well-structured but written in plain language. The website has over one hundred exercises in thirty lesson pages, plus special features to help teachers support their students. It is available in both English and French. We discuss the philosophy behind the course and its design, we describe how it was implemented, and we give statistics on its use.
ACM Computing Classification System: ComputingMilieux_COMPUTERSANDEDUCATION
free text keywords: Computer Science - Computers and Society, Computer Science - Human-Computer Interaction, K.3.1, K.3.2
Download from

[1] P. Denny, A. Luxton-Reilly, and B. Simon. Evaluating a new exam question: Parsons problems. In Proc. 4th ICER (Int. Workshop Comp. Ed. Research), pages 113{124, 2008.

[2] A. B. Downey. Think Python. O'Reilly Media, 2012. Earlier version: How to Think Like a Computer Scientist: Learning with Python, Green Tea Press, 2008.

[3] C. Fidge and D. Teague. Losing their marbles: syntax-free programming for assessing problem-solving skills. In Proc. 11th ACE (Australasian Conf. Comp. Ed.), pages 75{82, 2009.

[4] M. Forisek. Security of Programming Contest Systems. In V. Dagiene and R. Mittermeir, editors, Information Technologies at School, pages 553{563, 2006.

[5] P. Guo. Online Python Tutor, 2011{.

[6] M. Haverbeke. CodeMirror (Version 2.x), 2011{.

[7] D. M. Ho man, M. Lu, and T. Pelton. A web-based generation and delivery system for active code reading. In Proc. 42nd SIGCSE (ACM Tech. Symp. Comp. Sci. Ed.), pages 483{488, 2011.

[8] J. P. Leal and F. Silva. Mooshak: a web-based multi-site programming contest system. Software: Practice and Experience, 33(6):567{581, 2003.

[9] M. Lopez, J. Whalley, P. Robbins, and R. Lister. Relationships between reading, tracing and writing skills in introductory programming. In Proc. 4th ICER (Int. Workshop Comp. Ed. Research), pages 101{112, 2008.

[10] M. Mares and B. Blackham. A new contest sandbox. Olympiads in Informatics, 6:100{109, 2012.

[11] B. Miller and D. Ranum. How to Think Like a Computer Scientist/Learning with Python: Interactive Edition (Using Python 3.x). Runestone Interactive, 2011. courselib/static/thinkcspy/index.html.

[15] T. Roughgarden. \Algorithms: Design and Analysis, Part 1", June{August 2012. Coursera. http: //

[16] A. Sweigart. Invent Your Own Computer Games with Python. Self-published, 2008. http://

[17] B. Victor. Inventing on principle. In 4th CUSEC (Canadian University Software Eng. Conf.), 2012. (Keynote talk)

Any information missing or wrong?Report an Issue