Title: Learning to Program With Alice
1Increasing Student Interest in Computer Science
(CS) Careers
2Lower Enrollments in ITA
- Enrollment in our career centers Information
Technology I classes have been decreasing since
2001. - 2001 - forty five students with eight girls
- 2005 - twenty four students with two girls
- BUT DEMAND FOR IT MAJORS INCREASES!
3Negative Headlines
- With the news stories about huge layoffs, the dot
com bust, and the outsourcing of technical jobs,
students and their parents are less interested in
considering a career in computer science.
4The Shrinking CS Pool
- After peaking in 1999 and 2000, interest in CS as
a college major has fallen in each of the past
five years. All in all, interest has dropped 70
percent over this period. (Vegso, 2005) - CS enrollment plunges in bad economy. Offshoring
makes tech careers look risky. (Schoenberger,
2004) - UCLA survey shows a 60 decline in freshman
interest in CS from 2000-2004 (Vegso, 2006) - The Taulbee survey shows a 40 decline in
computing majors from 2000-2004 (Vegso, 2005)
5The Shrinking CS Pool (2)
- Enrollments in CS courses in Ivy League
Universities in the Eastern US have dropped
dramatically in the first years of this century.
If you wont take a course in CS, you wont major
in it. (Astrachan, 2006).
6(No Transcript)
7(No Transcript)
8(No Transcript)
9(No Transcript)
10Bureau of Labor Hecker, D. Occupational
employment projections to 2014. Monthly Labor
Review. November 2005.
11Gender Differences in CS
- Nationally in 1999-2000, there were 36,195
computer and information systems bachelors
degrees awarded. - 72 of those degrees went to males and only 28
went to females. - This approximate 70 to 30 split has been about
the same for more than a decade. (Hankins, et
al., 2003) - Alarmingly, the proportion of women who thought
that they might major in CS has fallen to levels
unseen since the early 1970s. (Vegso, 2005)
12Gender Differences in CS (2)
- Gender differences in several domains strongly
suggest that females process information and
solve problems in different ways than males do.
If a female's early experience with software that
is supposed to support her problem-solving
efforts is negative and discouraging, how likely
is she to eventually choose a career in
information technology (IT)? (Beckwith et al.,
2006)
13Alice Programming Language
- Object oriented language
- Animates 3D objects
- Enables storytelling
- Creates Movies or Games
14The Alice System (www.alice.org)
- Allows students to learn computer programming
more easily - Drag-and-Drop editor for creating programs
- Programs are 3D movies or games
- Alice has been formally shown to improve learning
and retention - Alice is highly motivating for students
- Provided free (open source) by Carnegie Mellon
- Runs on
15Alice Programming Environment
- 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)
- Not threatening Alice builds students
confidence (Pausch, 2006)
16(No Transcript)
17Alice Programming Language
- An objects-first strategy for teaching computer
science courses is receiving increased attention
from CS educators. (Cooper, et al., 2006) - In an NSF (National Science Foundation) study,
this exciting strategy proved effective with
introductory college students in helping to
maintain student enthusiasm for computer science
and has been shown to improve the retention of
computer science majors. (Cooper, 2006).
18Live Demo of Alice v2.0
19Alice has always been free.Alice will always
continue to be free.
20Pedagogically Why Alice Works
- No syntax-based frustration
- Data is visible changes are animated you can
see what is happening - Highly motivating
21Objects are suddenly obvious
- Makes objects something students can see and
relate to
22Support Help Online Forums at www.alice.org
23Support Help In-system Tutorials
24Instructional Materials
- www.aliceprogramming.net
- syllabi/calendars
- lectures
- labs
- assignments
- sample worlds (programs)
- sample exams
- sample projects
Steve Cooper
25www.aliceprogramming.net
- Web pages
- a live demo was done here of the resources
available at - www.aliceprogramming.net
Steve Cooper
26Sample Lesson Rolling a ball
- We want a realistic motion rather than a slide.
- The ball must simultaneously move and roll.
Design
realisticRoll Do together move ball forward 1
meter, as seen by the ground turn ball forward
? revolutions
Wanda Dann
27Number of revolutions
- The number of revolutions depends on the size of
the ball.
Wanda Dann
28A function
- The number of revolutions can be computed using
- distance/(P diameter)
- Two values are needed
- the balls diameter
- the ball object has a built-in width function
- the distance the ball is to travel
- can be sent to the function using a parameter
Wanda Dann
29Coding the function
Two values are needed.
Wanda Dann
30How Alice is being used
- In pre-CS1 or programming logic
- course for majors and students considering a
computing major - As conceptual introduction in CS1
- Introduction to programming course
- non-majors
- attract students to become majors
- Computer literacy
- problem-solving, algorithmic thinking component
- Pre-AP in high schools
Wanda Dann
31Other texts based on Alice are appearing
32A lot of colleges are using Alice
- How many is a lot?
- Lower bound 243 are teaching with PH texts
- There are roughly 3,000 U.S. colleges
- 8 of US colleges are teaching with Alice/PH
books - Many others are teaching with other or no texts
- Many High Schools are using for pre-AP or AP
- http//www.utexas.edu/world/univ/ says 3,176
33Alice helps at-risk CS majors
34Alice helps at-risk CS majors
M. Moskal, D. Lurie, and S. Cooper, Evaluating
the Effectiveness of a New Instructional
Approach. In Proceedings of 2004 SIGCSE
Conference, (Norfolk, VA).
35Alice is real coding
36The Future Alice v3.0
- Been in development for almost a year will
release in 2008. - Goal Alice as the system to teach introductory
programming. - Driven by Caitlin Kellehers findings about
storytelling - Students are motivated to make movies (or
videogames) - Real Java
- Alice v3.0 is a Java IDE, based on eclipse
- Your students will see real Java (if you choose)
- Drag Drop or type -gt its up to you!
- Insanely high production values as good as real
video games - We are developing a textbook along with the
system - Just as we did with Alice v2.0
- Wanda Dann, Steve Cooper, Randy Pausch and Don
Slater
37Electronic Arts (EA)
- Worlds largest video game company
- EA has given us 300,000 and permission to use
the characters and animations from The SimsTM 2
in Alice v3.0 - We graciously thank them.
- EA is doing this because they care about getting
more students, especially girls/women, interested
in computing.
From the EA foundation
38Best Selling PC Games of all time
- The Sims (16 million)
- Myst (9 million)
- Starcraft (9 million)
- Half-Life (8 million)
- Age of Empires II (7 million)
- World of Warcraft (5 million)
- The Sims 2 (4.5 million)
- Diablo II (4 million)
- Doom (3 million)
- Half-Life 2 (3 million)
- StarCraft Brood War (3 million)
- Warcraft II (3 million)
- Warcraft III (3 million)
- Age of Empires (3 million)
- Diablo (2.5 million)
- Civilization III (2.5 million)
- Quake (1.8 million)
- Battlefield 1942 (1.5 million)
- Civilization IV (1.2 million)
And the Sims has more female than male players!
39Setting expectations
- Our first demo this is an early proof of
concept. - Alice v3.0 is still in early phase development,
and will not be publicly available until 2008 - Our goals for this demo
- Prove that this is not vaporware
- Show you Alice v3.0 is really Java code
- Prove that we are using the SimsTM assets
40Many (fun!) challenges
- The objected-oriented model and semantics
- classes, inheritance, overriding, polymorphism,
etc. - semantically, Alice v3.0 is Java
- how we express via UI and textbook is a wonderful
challenge - 3D objects (people) as objects is still the huge
win of Alice - Transition from Drag-and-Drop to Typing
- Training wheels that slowly fade away
- Visibility of Data
- variable is a term for invisible data
- Developing Custom Curricula
- from the user/teaching community
- we expect more of this, since its Java at the
bottom - DoTogether
- Still there, but a little ugly when you see the
Java code
41Summary
- Lowered enrollment in CS courses since 2001 is a
national phenomena. - Several colleges and universities have found
success in increasing the numbers of students
(especially females) enrolled in CS courses with
the use of the Alice Programming Language.
42Delaware Area Career Center Students Joi
Doug Roy Bobby Instructor Suzanne
Maclean
Questions?
www.alice.org
www.aliceprogramming.net