Document Sample
objects Powered By Docstoc
					‫סביבת אליס – שיקולי הפיתוח של‬
 ‫הסביבה, חומרי לימוד לתלמידי‬

            Stephen Cooper
            Stanford University

            2 July, 2012
• Background – declining CS enrollments
• Past and Present work with Alice
   –   Program Visualization
   –   Description of Alice
   –   Demo
   –   Results from NSF studies
   –   How Alice is being used
• Alice Support for teachers
• Future work with Alice
   – Alice 3.0
• Q&A
   US National Science
Foundation support for Alice
 •   NSF 0126833 – CCLI EMD Proof of Concept
 •   NSF 0302542 – ATE
 •   NSF 0339734 – CCLI Project
 •   NSF 0511940 – ASA
 •   NSF 0618461 – CCLI Level 2
 •   NSF 0624654 – ITEST
 •   NSF 0736697 – CCLI Phase 1
 •   NSF 0724890 – CISE special project
 •   NSF 1031351 – ITEST Scale-Up
 •   NSF 1021975 – CCLI Level 2
• Declining student enrollments
• High attrition in introductory computing
          The Shrinking CS pool
                                                            Women and
                                                            minorities are
                                                            making up an
                                                            percentage of

According to the Taulbee survey, the total number of students
dropped to 1% in 2005, and held steady at 1% for 2006-2009
 Attrition in introductory computing
• Dropout rate in first year
  – Informal surveys: 30 – 70%
  – Typically 35 – 50 %
  – Especially high for women and minorities
    (women receive fewer than 20% of the
    Bachelors degrees in computing)
     • In 2011, the number was 12% (see the Taulbee
       survey for more details)
      Why? Possible reasons
• Adding object-oriented concepts to first
  year courses has increased the number of
  topics to be covered.
  – increased teacher prep time
  – increased student frustration
• The way we teach programming has not
  really changed in the past 25 years
                  Game Plan

• Develop an innovative instructional approach to
  develop intuitive understanding of
  – Fundamental programming concepts
     •   Sequence
     •   Decisions
     •   Repetition
     •   Methods and parameters
  – OOP concepts
     •   objects and classes
     •   encapsulation
     •   methods and parameters
     •   inheritance
         Visualization in CS
• The use of graphics in teaching CS
  concepts has taken three major forms:
  – Algorithm Animation
  – Simulation
  – Program Visualization
       Program Visualization
• Program visualization allows a student to
  write a program and view a visual
  representation of execution
• Primary use has been for introducing math
  and programming concepts
• Examples: Logo, Karel the Robot
             The Alice Software
• A 3D interactive animation environment

• A program visualization tool
   – The program state is visible to the student
   – State changes are animated

• A tool for teaching fundamental programming
   – object oriented
                    Alice features
• Uses 3D graphics to engage students
• Has a “smart” drag-and-drop editor that prevents
  syntax errors

• Appeals to wide audience
   – Storytelling
      •   (young women, minority students)
   – Interactive computer games
      •   (young men)
           Alice Features
• Makes objects something students
  can see and relate to

• Has a java syntax mode to ease the
  transition to C++/Java/
     Our pedagogic approach
• Emphasize design using storyboards
• Program objects-early or objects-first
  – Agnostic with respect to the early introduction
    of classes
• Allow an (optional) early introduction to
Alice Demo
       Alice language features
• Objects are stateful, but manipulation of state
  is limited to a set of primitive functions
  – Challenges of teaching state transformations and functions

• Separation of the functional and imperative
  aspects of the language, like Algol
  – Algol "is a language so far ahead of its time, that it was not
    only an improvement on its predecessors, but also on nearly
    all its successors“ (Tony Hoare)
   NSF Proof of Concept study:
      High Risk Students
• We examined historical data at
  Ithaca College and Saint Joseph’s
  University for 5 years
• Found that
  – Percentage of women in CS classes
    is typically low
  – Students at high risk of DWF
    • Have little or no previous programming
    • Are not ready for calculus
 Results of Proof of Concept study
• As used towards retention of CS majors
  – GPA in CS1 improved
    • Grades went from C to B
    • at-risk students (students with little to no prior
      programming experience and/or weak
      mathematics background)
  – Increased retention into CS2
    from 47% to 88%
  – Improved attitudes towards computing
Completed NSF-sponsored Alice
     (education) projects
• Proof-of-concept
  – study of the use of 3D animated program
    visualization to introduce programming
    concepts to high risk students
• CCLI Project
  – Extend study to other colleges & universities
    with varying student backgrounds,
    demographics, courses
  – Modify approach for community college
    environment & students
  Current NSF-sponsored Alice
      (education) projects
• CCLI level 2
  – Combining Alice with Media
    Computation (developed by M. Guzdial
    at Ga. Tech) in CS1
  – Providing professional development and
    assistance to high school and middle
    school teachers in 6 regions with
    incorporating Alice into their curricula
• ITEST Scale-Up
  Current NSF-sponsored Alice
      (education) projects
  – Results from pilot in Va Beach
    • More than tripling of students taking intro to
      computing class
    • Tripling of students taking AP CS A
    • Interesting anecdotal results with students
      having high-functioning forms of autism
  – Current (ITEST Scale-Up)
    • 750 HS and MS teachers (in NC, SC, MS)
    • K-12/higher education partnerships
      How Alice is being used
• In pre-CS1
  – course for majors and students considering a CS
• As a conceptual introduction in CS1
• The Introduction to programming course
  – non-majors
  – attract students to become CS majors
• In computer literacy
  – problem-solving component
• In Pre-AP in high schools
• In various capacities at middle school
              Alice usage
• In any given term, ~200 colleges are using
• Alice has been likely used in > 1000 high
  schools (self-reporting)
• Increasing adoption in UK, Costa Rica,
  Brazil, Taiwan and other countries
    Alice support for teachers
• Websites with access to curricular
• Alice teacher professional development
  (generally in summer)
• Alice teacher communities (e-mail
 Where to go for curricular ideas


• There are several others:
  – etc.
• What you’ll find
  – Sample syllabi
  – Solutions to chapter exercises/projects
  – 3D Models
  – Sample student projects
  – Sample tests
• Strengths
  – Complete and organized courses/curricula
  – Materials are often used “as is”
  – Appropriate for college and HS
• Weaknesses
  – Not as usable for younger students
  – Not ready for informal education

• What you’ll find
  – Tutorials (but not stencils)
  – Videos of Alice worlds
  – Example worlds

• Strengths
  – Excellent start-up materials
  – Useful for middle and high school
  – Good for informal education
• Weaknesses
  – Many of the tutorials are not problem-
    based – they tend to focus more on the
    mechanics of how to do something
  – The teacher still must incorporate these
    materials into a course/unit/lesson
         Future Alice versions
• Alice 3.0
  – Includes (EA) SIMS 3D models
     • And their (the Sims’) existing
       primitive animations
     • As will include many useful
       primitives such as walk and touch
  – Has the ability to generate Java
  – Provide its own Java IDE (within
  – Available from
Demo Alice 3

Steve Cooper

Shared By: