SlideShare a Scribd company logo
1 of 9
CS Circles: Learning
Python in a Browser
  Graeme Kemkes and
    David Pritchard

  Center for Education in Mathematics
          & Computing (CEMC),
        University of Waterloo
Computer Science Circles
                   Overview
• Website for learning programming
• Mixed text, examples, exercises
  – Auto-grading of exercises
  – Feedback in-place (ajax)
  – Procedural generation
• Math is a source of problems
  – In a good way
  – Geometry, arithmetic, primes
Goals
                 Everyone can program
                       / think algorithmically
Aid enrichment in high schools
Robust self-learning for university students/adults
Experience should be:
• fun, hassle-free
• Engaging/interactive
• Effective
An Empty Niche
Great existing services:
• TopCoder & contests, for strong programmers
• Khan Academy: videos, math exercises
Need better services for beginners, ideally with
• no software installation => happy admins
• no back-and-forth between textbook and IDE
• interactive engagement, exercises for mastery
Demo
• 25 lessons, each w/ text and exercises
    – Examples, hints, diagrams
• auto-grading (in a sandbox on our server)
    – 1 second time limit (not focusing on speed)
•   saves progress
•   “code scrambles:” drag lines to the right order
•   multiple choice, short answer
•   procedural generation of test cases
Under The Hood


   WordPress
    Lessons,
    Exercises
   in Markup

 Python Sandbox

Wordpress Plugins

    (php, C)         (javaScript, jQuery)
CS Circles: Do and Don’t
CS Circles becomes much more powerful used in
  conjunction with an expert mentor/teacher
• saves time grading, but can’t look at code and
  tell student when their code is badly written
• we don’t try to check for plagiarism
  – in fact some exercises can be answered if the
    student carefully reads the .html source
• person-on-person help is better for debugging
Future Directions
• “I’m stuck!” button
  – sends an email to their teacher
  – includes the current code
• Open-sourcing
  – smooth out the markup language
• Teach JavaScript
• Easier, harder versions; additional exercises
Thanks for Listening!

More Related Content

Viewers also liked

Jesus the Christ in ENGLISH
Jesus the Christ in ENGLISHJesus the Christ in ENGLISH
Jesus the Christ in ENGLISH
dearl1
 
5L Olivia Civilization
5L Olivia Civilization5L Olivia Civilization
5L Olivia Civilization
gsbSS
 
5M Max Civilization
5M Max Civilization5M Max Civilization
5M Max Civilization
gsbSS
 
Presentazione con office
Presentazione con officePresentazione con office
Presentazione con office
lucagipsy
 
203385325 o-net-52-ปีการศึกษา-2551
203385325 o-net-52-ปีการศึกษา-2551203385325 o-net-52-ปีการศึกษา-2551
203385325 o-net-52-ปีการศึกษา-2551
apichaya413
 
Claire5MCivilization
Claire5MCivilizationClaire5MCivilization
Claire5MCivilization
gsbSS
 
United states doc
United states docUnited states doc
United states doc
gsbSS
 
แบบสำรวจตัวเอง 32
แบบสำรวจตัวเอง 32แบบสำรวจตัวเอง 32
แบบสำรวจตัวเอง 32
apichaya413
 
Focus group summary of finished product
Focus group summary of finished productFocus group summary of finished product
Focus group summary of finished product
SaraMcgranaghan
 

Viewers also liked (14)

Jesus the Christ in ENGLISH
Jesus the Christ in ENGLISHJesus the Christ in ENGLISH
Jesus the Christ in ENGLISH
 
5L Olivia Civilization
5L Olivia Civilization5L Olivia Civilization
5L Olivia Civilization
 
5M Max Civilization
5M Max Civilization5M Max Civilization
5M Max Civilization
 
Curri
CurriCurri
Curri
 
Presentazione con office
Presentazione con officePresentazione con office
Presentazione con office
 
Ebook
EbookEbook
Ebook
 
203385325 o-net-52-ปีการศึกษา-2551
203385325 o-net-52-ปีการศึกษา-2551203385325 o-net-52-ปีการศึกษา-2551
203385325 o-net-52-ปีการศึกษา-2551
 
Ahmett
AhmettAhmett
Ahmett
 
Claire5MCivilization
Claire5MCivilizationClaire5MCivilization
Claire5MCivilization
 
United states doc
United states docUnited states doc
United states doc
 
день народного единства
день народного единствадень народного единства
день народного единства
 
แบบสำรวจตัวเอง 32
แบบสำรวจตัวเอง 32แบบสำรวจตัวเอง 32
แบบสำรวจตัวเอง 32
 
1 intro
1 intro1 intro
1 intro
 
Focus group summary of finished product
Focus group summary of finished productFocus group summary of finished product
Focus group summary of finished product
 

Recently uploaded

Gardella_PRCampaignConclusion Pitch Letter
Gardella_PRCampaignConclusion Pitch LetterGardella_PRCampaignConclusion Pitch Letter
Gardella_PRCampaignConclusion Pitch Letter
MateoGardella
 
Activity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfActivity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdf
ciinovamais
 
Gardella_Mateo_IntellectualProperty.pdf.
Gardella_Mateo_IntellectualProperty.pdf.Gardella_Mateo_IntellectualProperty.pdf.
Gardella_Mateo_IntellectualProperty.pdf.
MateoGardella
 
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in DelhiRussian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
kauryashika82
 
The basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxThe basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptx
heathfieldcps1
 

Recently uploaded (20)

Gardella_PRCampaignConclusion Pitch Letter
Gardella_PRCampaignConclusion Pitch LetterGardella_PRCampaignConclusion Pitch Letter
Gardella_PRCampaignConclusion Pitch Letter
 
Application orientated numerical on hev.ppt
Application orientated numerical on hev.pptApplication orientated numerical on hev.ppt
Application orientated numerical on hev.ppt
 
Activity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfActivity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdf
 
psychiatric nursing HISTORY COLLECTION .docx
psychiatric  nursing HISTORY  COLLECTION  .docxpsychiatric  nursing HISTORY  COLLECTION  .docx
psychiatric nursing HISTORY COLLECTION .docx
 
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptxINDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
 
Mehran University Newsletter Vol-X, Issue-I, 2024
Mehran University Newsletter Vol-X, Issue-I, 2024Mehran University Newsletter Vol-X, Issue-I, 2024
Mehran University Newsletter Vol-X, Issue-I, 2024
 
Paris 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activityParis 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activity
 
Ecological Succession. ( ECOSYSTEM, B. Pharmacy, 1st Year, Sem-II, Environmen...
Ecological Succession. ( ECOSYSTEM, B. Pharmacy, 1st Year, Sem-II, Environmen...Ecological Succession. ( ECOSYSTEM, B. Pharmacy, 1st Year, Sem-II, Environmen...
Ecological Succession. ( ECOSYSTEM, B. Pharmacy, 1st Year, Sem-II, Environmen...
 
Código Creativo y Arte de Software | Unidad 1
Código Creativo y Arte de Software | Unidad 1Código Creativo y Arte de Software | Unidad 1
Código Creativo y Arte de Software | Unidad 1
 
PROCESS RECORDING FORMAT.docx
PROCESS      RECORDING        FORMAT.docxPROCESS      RECORDING        FORMAT.docx
PROCESS RECORDING FORMAT.docx
 
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptxSOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
 
Measures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SDMeasures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SD
 
Gardella_Mateo_IntellectualProperty.pdf.
Gardella_Mateo_IntellectualProperty.pdf.Gardella_Mateo_IntellectualProperty.pdf.
Gardella_Mateo_IntellectualProperty.pdf.
 
Z Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot GraphZ Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot Graph
 
APM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across SectorsAPM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across Sectors
 
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in DelhiRussian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
 
The basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxThe basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptx
 
How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17
 
Measures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and ModeMeasures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and Mode
 
Mattingly "AI & Prompt Design: The Basics of Prompt Design"
Mattingly "AI & Prompt Design: The Basics of Prompt Design"Mattingly "AI & Prompt Design: The Basics of Prompt Design"
Mattingly "AI & Prompt Design: The Basics of Prompt Design"
 

CS Circles: Learning Python in One Browser Window

  • 1. CS Circles: Learning Python in a Browser Graeme Kemkes and David Pritchard Center for Education in Mathematics & Computing (CEMC), University of Waterloo
  • 2. Computer Science Circles Overview • Website for learning programming • Mixed text, examples, exercises – Auto-grading of exercises – Feedback in-place (ajax) – Procedural generation • Math is a source of problems – In a good way – Geometry, arithmetic, primes
  • 3. Goals Everyone can program / think algorithmically Aid enrichment in high schools Robust self-learning for university students/adults Experience should be: • fun, hassle-free • Engaging/interactive • Effective
  • 4. An Empty Niche Great existing services: • TopCoder & contests, for strong programmers • Khan Academy: videos, math exercises Need better services for beginners, ideally with • no software installation => happy admins • no back-and-forth between textbook and IDE • interactive engagement, exercises for mastery
  • 5. Demo • 25 lessons, each w/ text and exercises – Examples, hints, diagrams • auto-grading (in a sandbox on our server) – 1 second time limit (not focusing on speed) • saves progress • “code scrambles:” drag lines to the right order • multiple choice, short answer • procedural generation of test cases
  • 6. Under The Hood WordPress Lessons, Exercises in Markup Python Sandbox Wordpress Plugins (php, C) (javaScript, jQuery)
  • 7. CS Circles: Do and Don’t CS Circles becomes much more powerful used in conjunction with an expert mentor/teacher • saves time grading, but can’t look at code and tell student when their code is badly written • we don’t try to check for plagiarism – in fact some exercises can be answered if the student carefully reads the .html source • person-on-person help is better for debugging
  • 8. Future Directions • “I’m stuck!” button – sends an email to their teacher – includes the current code • Open-sourcing – smooth out the markup language • Teach JavaScript • Easier, harder versions; additional exercises