58
John Nordlinger Microsoft Research Andrew Phelps Rochester Institute of Technology

John Nordlinger Microsoft Research Andrew Phelps Rochester Institute of Technology

  • View
    214

  • Download
    0

Embed Size (px)

Citation preview

Page 1: John Nordlinger Microsoft Research Andrew Phelps Rochester Institute of Technology

John NordlingerMicrosoft ResearchAndrew PhelpsRochester Institute of Technology

Page 2: John Nordlinger Microsoft Research Andrew Phelps Rochester Institute of Technology

Trends in Computer Science and Computer GamingWhat is being done and what is available?

Deep dive into RIT

Page 3: John Nordlinger Microsoft Research Andrew Phelps Rochester Institute of Technology

DirectX 3DirectX 3

Page 4: John Nordlinger Microsoft Research Andrew Phelps Rochester Institute of Technology

Emergence of Asia as major locus of technical expertise concerns U.S. policymakers.For instance, China produces 4x as many engineers as the U.S.

Merrilea Mayo, National Academy of Science

smartest peoplein high popula-

tion country

Increasing Native Intelligence

smartest peoplein low population

country

Page 5: John Nordlinger Microsoft Research Andrew Phelps Rochester Institute of Technology

National Science Board. 2006. Science and Engineering Indicators 2006. Arlington, VA: National Science Foundation.

Appendix Table 2-32.

2004-5 Data from NSF Survey of Earned Doctorates.

0

5,000

10,000

15,000

20,000

25,000

30,000

35,000

1980 1985 1990 1995 2000 2005

Year

Na

tura

l Sci

& E

ng

Ph

Dss all

U.S. Citizen

Page 6: John Nordlinger Microsoft Research Andrew Phelps Rochester Institute of Technology

0

200

400

600

800

1000

1200

1983

1987

1991

1995

1999

2001

2003

2005

Year

Num

ber

Gra

duat

ed

Permanent Resident

Unknown Citizenship

U.S. Citizen

Temporary Resident

National Science Board. 2006. Science and Engineering Indicators 2006. Arlington, VA: National Science Foundation. Appendix Table 2-32. Data for 2004-5 from NSF Survey of Earned Doctorates.

Page 7: John Nordlinger Microsoft Research Andrew Phelps Rochester Institute of Technology

National Science Board. 2006. Science and Engineering Indicators 2006. Appendix Table 2-43.

Year

South Korea

0

1000

2000

3000

4000

5000

6000

7000

8000

1980 1985 1990 1995 2000 2005

Natu

ral S

cien

ce &

En

gin

eeri

ng

Ph

D's

China

India

Taiwan

Page 8: John Nordlinger Microsoft Research Andrew Phelps Rochester Institute of Technology

Woodcock, Bruce Sterling (2005). An Analysis of MMOG Subscription Growth. MMOGCHART.COM 21.0. 17 Feb 2007. http://www.mmogchart.com

0

500,000

1,000,000

1,500,000

2,000,000

2,500,000

3,000,000

3,500,000

4,000,000

4,500,000

5,000,000

5,500,000

6,000,000

6,500,000

7,000,000

Jan-97

Jul-97

Jan-98

Jul-98

Jan-99

Jul-99

Jan-00

Jul-00

Jan-01

Jul-01

Jan-02

Jul-02

Jan-03

Jul-03

Jan-04

Jul-04

Jan-05

Jul-05

Jan-06

Jul-06

To

tal

Cu

rren

t S

ub

scri

pti

on

s

World of Warcraft

LineageLineage II

390,000

U.S. B.S. S&E’s/year

Page 9: John Nordlinger Microsoft Research Andrew Phelps Rochester Institute of Technology

Woodcock, Bruce Sterling (2005). An Analysis of MMOG Subscription Growth. MMOGCHART.COM 21.0. 17 Feb 2007. http://www.mmogchart.com

050,000

100,000150,000200,000250,000300,000350,000400,000450,000500,000550,000600,000650,000700,000

Jan

-97

Jul-9

7

Jan

-98

Jul-9

8

Jan

-99

Jul-9

9

Jan

-00

Jul-0

0

Jan

-01

Jul-0

1

Jan

-02

Jul-0

2

Jan

-03

Jul-0

3

Jan

-04

Jul-0

4

Jan

-05

Jul-0

5

Jan

-06

Jul-0

6

To

tal C

urr

en

t S

ub

scri

ptio

ns

60,000

U.S. B.S. Engineers/year

Final Fantasy XI

390,000

U.S. B.S. S&E’s/year

Everquest

Ultima Online

Page 10: John Nordlinger Microsoft Research Andrew Phelps Rochester Institute of Technology

$695M

WW retail revenues for Windows games tripled in a decade

Projections put total WW Windows games revenue over $9B in 2009

XBOX Live reaches 6M

WOW reaches 9M

The online Windows gaming market remains strong and online gaming transactions have increased Chinese gaming market by 68%!China game market:$2.1billion in 2010gamedaily 9/29/2006 1995

$2.0B

$2.35B

2004

Sources: NPD Data, DFC Intelligence and Themis Group

$6.86B

2009

$2.3B

Windows Retail Revenue

Windows Online Revenue

Page 11: John Nordlinger Microsoft Research Andrew Phelps Rochester Institute of Technology

US grew by 2%(69% of population)

China and Russia grew by 20%(10% of C population) (17 % of R population)

China to overtake US within the year.

S. Korea (70% of population)

Africa gets left behind

Page 12: John Nordlinger Microsoft Research Andrew Phelps Rochester Institute of Technology

Students get EXCITED!Hands on/practical approach to using computer science theories and practicesAn ability to scale degree of difficulty over time Potential Diversity of enrollment A chance to involve the broader social & academic community (games nights, games to teach, etc)

Page 13: John Nordlinger Microsoft Research Andrew Phelps Rochester Institute of Technology
Page 14: John Nordlinger Microsoft Research Andrew Phelps Rochester Institute of Technology
Page 15: John Nordlinger Microsoft Research Andrew Phelps Rochester Institute of Technology

PS2/XBOX ‘02PS1 ‘98 PS3/XBox360 ‘06

SNES ‘94

technical requirements

Page 16: John Nordlinger Microsoft Research Andrew Phelps Rochester Institute of Technology

Multi-core and specialized cards: audio, graphics, physicsAI & Procedural designs – Emergent scenariosNew storage - more content – more art Very large team effort (3 to 350) Personalization: mods, micro-transactionsVOIP: Skype, Ventrillo, Tspeak etc. Mo’ Money, More public scrutiny, More security Serious Games

Page 17: John Nordlinger Microsoft Research Andrew Phelps Rochester Institute of Technology

Piracy subscriptions more art. Demand for larger worldsDemand for more detail

Floppies vs CDs vs DVDs → HALO2 4.2GBHD-DVD/Blueray → 20GB

Rising development costContent creation is the bottleneck

$10M content budgetArt Pipeline is not scaling

Amortize cost over multiple platforms

Page 18: John Nordlinger Microsoft Research Andrew Phelps Rochester Institute of Technology

Bad Guys care about moneyOrganized crime is already using …

… Identity Theft to open accounts on MMOs for Gold Farming… custom Malware in Internet Cafés to steal MMO accounts… spam bots that push players to websites… act as bad trolls requiring tolls to proceed

Compromised accounts are already being sold and traded in the same black market channels that sell identity documents, credit cards, and bank accounts

Page 19: John Nordlinger Microsoft Research Andrew Phelps Rochester Institute of Technology

Language: SOE EQ2, USC’s Tactical Iraqi, Stanford’s

Language Proof and Logic (LPL), Sonica Spanish Training: HAZMAT Hotzone, Full Spectrum Warrior,

America’s Army, Close Combat, Navy Submariner, Flight Sim

Health/Fitness: DDR, Yourself!Fitness, Sony Eye-Toy, Second Life,

Nintendo Wii Sports. Gray Matters: Nintendo DS Lite Brain AgeUSC’s Darfur is dying…

Page 20: John Nordlinger Microsoft Research Andrew Phelps Rochester Institute of Technology

DirectX, Games for Windows www.gamesforwindows.com Flight sim X www.fsinsider.com XNA Game Studio Express http://creators.xna.com/ MSDN Faculty Connection http://www.msdnaa.com

MSR Computer Gaming Kit

Papers and curriculum from

the academic community

Sample code & examples

Presentations from experts

in computer gaming and

computer science

MSR Computer Gaming Kit

Papers and curriculum from

the academic community

Sample code & examples

Presentations from experts

in computer gaming and

computer science

Page 21: John Nordlinger Microsoft Research Andrew Phelps Rochester Institute of Technology

University ProjectCMU Entertainment & Technology Center

Alice & Panda3D

Randy Pausch, Caitlen Kelleher & Jesse Schell

Rochester Institute of technology

MUPPETS & RAPT Andrew Phelps & Jessica Bayliss

University of North Texas SAGE Ian Parberry

University of Sao Paolo Laboratory for Computer Games Technology

Flavio Soares Correa Da Silva

Northwestern University Game Production and Development

Bruce & Amy Gooch

Univ of Michigan DXFramework, John Laird and Jon Voight

The College of New Jersey

Multidisciplinary approach to CS instruction

Ursula Wolz et al.

Page 22: John Nordlinger Microsoft Research Andrew Phelps Rochester Institute of Technology

University ProjectRochester Institute of Technology

MUPPETS & RAPT : focus on assessment

Andrew Phelps & Jessica Bayliss

Univ of Santa Cruz MUPPETS on the beach.

Jim Whitehead

Daniel Webster College XNA Thomas Goulding

Univ of Washington, Bothell XNA Kelvin Sung

Aspects of Game Programming in an intro CS Class)

Univ of Victoria Building a bicycle interface to Flight Sim X

Bruce & Amy Gooch

USC, School of Cinematic Arts.

Building a head-mounted display for Flight SIm X

Marc Bolas

Univ of Washington Game to cure Aids – combining human game play and computer interpretation to do Protein Folding.

Zoran Popovich

Page 23: John Nordlinger Microsoft Research Andrew Phelps Rochester Institute of Technology

University Project

University of North Texas SAGE

Ian Parberry

Univ of Michigan DXframework

John Laird and Jon Voight.

Columbia GoblinX

Steve Feiner et all

An engine for Augmented Reality Game Play.

Rochester Institute of Technology

M.U.P.P.E.T.S.

Andy Phelps, Chris Eggert, Kevin Bierre

A Multi-user Pervasive Programming Enhancing Traditional Study

Page 24: John Nordlinger Microsoft Research Andrew Phelps Rochester Institute of Technology

Randy Pausch, Caitlen Kelleher, Jessie Schell & Josh Yelon (CMU ETC)

At Carnegie Mellon’s Entertainment Technology Center (etc.cmu.edu), there are two tools for broad distribution:

Alice (www.alice.org) is intended for introductory computer programming courses, providing a revolutionary video-game authoring approach. V2 will include EA SIMS assets.

Panda3D (www.panda3d.org) is a high-end, commercial-grade game engine originally developed by Walt Disney Imagineering and now under joint development with Carnegie Mellon. It is suitable for use in higher-level CS courses.

Page 25: John Nordlinger Microsoft Research Andrew Phelps Rochester Institute of Technology

CS1 Grade Take CS2?

No Alice Class Prior to CS1 C 47%

Alice Class Prior to CS1 B 88%

Page 26: John Nordlinger Microsoft Research Andrew Phelps Rochester Institute of Technology

Design and construction of an instructional 3D game engine Serves as the core of a game programming curriculum for CSPedagogically sound

“Proceed from the known into the unknown”Engine developed as a sequence of demos, each built on its predecessor

Written using Visual C++ / DirectX

Design and construction of an instructional 3D game engine Serves as the core of a game programming curriculum for CSPedagogically sound

“Proceed from the known into the unknown”Engine developed as a sequence of demos, each built on its predecessor

Written using Visual C++ / DirectX

http://larc.csci.unt.edu/sage/

Page 27: John Nordlinger Microsoft Research Andrew Phelps Rochester Institute of Technology

Built on C#, DirectX, and existing infrastructure for tracking, physics,…Used for student projects in Spring 2007 3DUI courseStudents created augmented reality situated visualizations that overlay campus with information

Student project uses hand-held controller to select buildings overlaid on urban site (Levi Lister, Tarandeep Singh, Michael Sorvillo, and Aleksandra Stoeva)

Page 28: John Nordlinger Microsoft Research Andrew Phelps Rochester Institute of Technology

Used to create mod of XNA Racing GameCar must pass waypoints and avoid obstaclesGame board, controller, and tokens optically tracked with ARTag

Waypoints and obstacles can be attached to tokens and moved during gameplay (Ohan Oda, Levi Lister, and Wei Teng)

Page 29: John Nordlinger Microsoft Research Andrew Phelps Rochester Institute of Technology

Dr. Bruce GoochDr. Bruce Gooch University of University of VictoriaVictoria

Using flight sim and bicycles Using flight sim and bicycles to make exercise and to make exercise and programming more programming more compelling. compelling.

Flight sim is less sedentary. Flight sim is less sedentary.

Programming is less abstract. Programming is less abstract.

Page 30: John Nordlinger Microsoft Research Andrew Phelps Rochester Institute of Technology

Tablet PC interface integrates storyboard sketching with scripts, cast lists and sets for stories, using a game engine to create 3D video from user sketches

extracts camera and action annotations from user-drawn storyboard sketches

translates annotations into constraints on shot type selection, camera dynamics, timing and blocking information

sends constraints to web service for camera planning and 3D constraint soliving, which uses knowledge about cinematic idioms to create directives for action within a game engine

game engine used to render cinematic video based on storyboard segments

R. Michael YoungR. Michael YoungNorth Carolina State UnivNorth Carolina State Univ

Page 31: John Nordlinger Microsoft Research Andrew Phelps Rochester Institute of Technology

Game Design & DevelopmentCollege of Computing & Information SciencesRochester Institute of TechnologyGAMES.RIT.EDU

Andrew PhelpsAssociate Professor & Director, Game Design & DevelopmentRochester Institute of Technology

Page 32: John Nordlinger Microsoft Research Andrew Phelps Rochester Institute of Technology

Game Design & DevelopmentCollege of Computing & Information SciencesRochester Institute of TechnologyGAMES.RIT.EDU

Page 33: John Nordlinger Microsoft Research Andrew Phelps Rochester Institute of Technology

Game Design & DevelopmentCollege of Computing & Information SciencesRochester Institute of TechnologyGAMES.RIT.EDU

Theory vs. Practice Divide

Perception of the field (by students and parents)

First Year ExperiencesWhy am I doing this?Competition vs. Coop.

Declining Enrollments vs. Expanding Opportunity

Effective Collaborations Across Disciplines

Age and Cultural Differences with Entering Student Body

“Pass On The Pain” Mentality

Page 34: John Nordlinger Microsoft Research Andrew Phelps Rochester Institute of Technology

Problems with an objects-first approach (Computing Curricula 2001):

Problems with materialsLack of experienceOO thinking not natural for the introductory courseLibraries & GUI’s overwhelm the studentMay not be reinforced in upper level courses[33][34][35][36][37][38][39][40][41]

Page 35: John Nordlinger Microsoft Research Andrew Phelps Rochester Institute of Technology

Game Design & DevelopmentCollege of Computing & Information SciencesRochester Institute of TechnologyGAMES.RIT.EDU

Students don’t have the conceptual framework to understand OOP – toy problems without reference to current understanding

Too hard to go to applications made up of objects and relationships from individual classes

Need to teach control structures, etc along with OO techniques

All of this leads to a decline in student enrollment and self-efficacy in computing as a profession!

Page 36: John Nordlinger Microsoft Research Andrew Phelps Rochester Institute of Technology

Game Design & DevelopmentCollege of Computing & Information SciencesRochester Institute of TechnologyGAMES.RIT.EDU

Gulf of Expectation: Today’s student is motivated by games,

modding, music-lists, and social and collaborative computing. [1][2][3]

In contrast, today’s programming classroom is (still) isolationist, focused on syntax rather than intellectual content [4], and revolves around toy problems that can often be solved with a calculator, which sidesteps real learning. [5][6][7]

Page 37: John Nordlinger Microsoft Research Andrew Phelps Rochester Institute of Technology

Game Design & DevelopmentCollege of Computing & Information SciencesRochester Institute of TechnologyGAMES.RIT.EDU

Divisional Groups (Gulf of Capability):

Upper Division Groups: Have learned the introductory material and have “suffered through” to get to the “good stuff” (i.e. the game engine courses)

Lower Division Groups: Are just arriving on campus eager to change the world, but don’t know how to get started.

Zero Meaningful Interaction

Page 38: John Nordlinger Microsoft Research Andrew Phelps Rochester Institute of Technology

Game Design & DevelopmentCollege of Computing & Information SciencesRochester Institute of TechnologyGAMES.RIT.EDU

Using gaming ideas as a basis for teaching.Teaching design before coding syntaxImmediate feedback for actionsTeaching OO concepts earlyShowing the relationships between classesCarrying OO concepts into later coursesNo “toy problems” – tie programming to real-world problem solving [42][43][44][45][46][47][48][49][50][51][52][38][53][54][55]

Page 39: John Nordlinger Microsoft Research Andrew Phelps Rochester Institute of Technology

Game Design & DevelopmentCollege of Computing & Information SciencesRochester Institute of TechnologyGAMES.RIT.EDU

Create a virtual environment that allows students to realize game-world-like achievement / artifacts, and allows for socialization across the capability gap.

Page 40: John Nordlinger Microsoft Research Andrew Phelps Rochester Institute of Technology

Game Design & DevelopmentCollege of Computing & Information SciencesRochester Institute of TechnologyGAMES.RIT.EDU

RIT wanted something that felt more game-world

like in terms of graphics,

interactions, and social constructs,

but that also preserved the compilation /

authorship process common to first-year computing

curricula.

Page 41: John Nordlinger Microsoft Research Andrew Phelps Rochester Institute of Technology

Game Design & DevelopmentCollege of Computing & Information SciencesRochester Institute of TechnologyGAMES.RIT.EDU

User Created Objects

Shared 3DEnvironment

The Multi-User Programming Pedagogy for Enhancing Traditional Study: [8][9][10][11][12][13][14][15]

Will not dictate curriculum

Will not dictate collaboration level (although more is better)

C# & Java IDE

MUPPETS.RIT.EDUMUPPETS.RIT.EDU

Page 42: John Nordlinger Microsoft Research Andrew Phelps Rochester Institute of Technology

Game Design & DevelopmentCollege of Computing & Information SciencesRochester Institute of TechnologyGAMES.RIT.EDU

Students think they learned more (not clear that they actually did…yet)

Closer to their goals and expectations?

More relevant to their peers?

Published at SIGCSE 06

Students think they learned more (not clear that they actually did…yet)

Closer to their goals and expectations?

More relevant to their peers?

Published at SIGCSE 06

Practically nothing

Little Moderate amount

A lot Exceptional amount

Amount Learned

0

5

10

15

20

25

30

Co

un

t

Assignment Type

Traditional

Robocode

TankBrain

Table 1: Mean Ranks for Perceived Amount Learned by Assignment Type

Assignment Type N Mean Rank

Amount Learned Traditional55 57.41

Robocode21 38.90

TankBrain42 72.54

Total 118

Work previously presented by A. Phelps, C Egert, K Bierre and P

Ventura at SIGCSE 2006

Page 43: John Nordlinger Microsoft Research Andrew Phelps Rochester Institute of Technology

Enhancing CS1 and a CS Gateway Course with Computer Game Projects using MUPPETS

Virtual pet project in CS1– Create engaging pet behavior– Appealing to men and women– Increase interest in cs

Game programming in CS gatewayCS 80K: intro to game designOver 170 students, broad set of majors, many freshmanAdd programming project to get students interested in CSAct as “gateway” to CS

Take 80K, then go into new BS Computer Science: Computer Game Design degree program

Associate Professor Jim Whitehead

Strong Assessment

• Combination of qualitative and quantitative approaches

• Deeply understand impacts of interventions

Professor Charlie McDowell

Page 44: John Nordlinger Microsoft Research Andrew Phelps Rochester Institute of Technology

Enrollment numbers for Fall 07's Computer Game Design

class: 95 students - sent in their deposit, 90 students – expected.

For computer science overall at UCSC, 127 students indicated they will be coming to UCSC in the fall (32 BS:CS + 95 BS:GD). Over the past few years computer science has had about 50 incoming students per year.

The new computer game design major has more than doubled the number of CS interested students at UCSC!

Page 45: John Nordlinger Microsoft Research Andrew Phelps Rochester Institute of Technology

Game Design & DevelopmentCollege of Computing & Information SciencesRochester Institute of TechnologyGAMES.RIT.EDU

Another approach at RITUses a mix of C# and Java with games as exemplarsAlso pair / group orientedWe don’t know what will ultimately be successful – assessment is key!

Much better comprehension! … 20% greater A quality

students. (Anecdotally less failure downstream…)

Published at SIGCSE 2006 & 2007, Journal of Game Development 2007, MS Academic Days for Gaming 07 - Jessica Bayliss RIT

Page 46: John Nordlinger Microsoft Research Andrew Phelps Rochester Institute of Technology

Game Design & DevelopmentCollege of Computing & Information SciencesRochester Institute of TechnologyGAMES.RIT.EDU

In addition to vast popularity, games are understood by the public as a set of hard computing problems that require human ingenuity and creativity rather than software that simply “exists”.

Page 47: John Nordlinger Microsoft Research Andrew Phelps Rochester Institute of Technology

Game Design & DevelopmentCollege of Computing & Information SciencesRochester Institute of TechnologyGAMES.RIT.EDU

Classroom exercises based on constructivist principles, using games & technology as a scaffold as knowledge is gained. [5][16][17][18][19][20]

Classroom exercises based on constructivist principles, using games & technology as a scaffold as knowledge is gained. [5][16][17][18][19][20]

1. There is no sense of universal truth. Instead, the learner constructs knowledge, and therefore a concept of truth, through interactions with the real world combined with past experiences.

2. The formation of new knowledge must be built upon knowledge already constructed by the learner.

3. Learning is framed through social interaction with others including peers and experts.

4. Meaningful learning can only occur when the learner is engaged in complex, authentic tasks

Page 48: John Nordlinger Microsoft Research Andrew Phelps Rochester Institute of Technology

Game Design & DevelopmentCollege of Computing & Information SciencesRochester Institute of TechnologyGAMES.RIT.EDU

“the instructional use of small groups so that students work together to maximize their own and each other’s learning”

(with an emphasis on interdependence)

“the instructional use of small groups so that students work together to maximize their own and each other’s learning”

(with an emphasis on interdependence)

Collaborative projects are encouraged to break the cultural mode.

[21][22][23][24]

Page 49: John Nordlinger Microsoft Research Andrew Phelps Rochester Institute of Technology

New Game Design & Development Program

Builds off our existing, traditional courseworkExpands “domain courses” in concrete areasBalances Design Theory and Tech. Concepts every quarterEven with the “decline” in computing, we have a program that exceeded double its projected enrollment with no advertising and a late-to-market application process!

Academic Trust: Not a watered-down “CS Lite” or a mis-labeled art program.

Page 50: John Nordlinger Microsoft Research Andrew Phelps Rochester Institute of Technology

Game Design & DevelopmentCollege of Computing & Information SciencesRochester Institute of TechnologyGAMES.RIT.EDU

SIGGRAPH / SandboxFuturePlayMicrosoft Academic Days for GamingGame Developer’s ConferenceIGDA Educator’s ForumSIGCSE / OOPSLA / FIE (etc.)

Page 51: John Nordlinger Microsoft Research Andrew Phelps Rochester Institute of Technology

MSR Game Developer Kit (July 07)Assets in MSDN Faculty Connection Participate in the Community!

SIGCSE, GDC, SIGGRAPHOOPSLA, AAAI, FuturePlay

SIGSCE 08 papers due Sep7th. 3rd Annual Academic Days Gaming in CS

Feb 28th to March 3rd, 2008 Call for papers! (summer 07)

Page 52: John Nordlinger Microsoft Research Andrew Phelps Rochester Institute of Technology

© 2007 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.

The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after

the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

Page 53: John Nordlinger Microsoft Research Andrew Phelps Rochester Institute of Technology

Game Design & DevelopmentCollege of Computing & Information SciencesRochester Institute of TechnologyGAMES.RIT.EDU

ReferencesReferences

Page 54: John Nordlinger Microsoft Research Andrew Phelps Rochester Institute of Technology

Game Design & DevelopmentCollege of Computing & Information SciencesRochester Institute of TechnologyGAMES.RIT.EDU

[1] M. Guzdial and E. Soloway, "Log on Education: Teaching the Nintendo generation to program," Communications of the ACM, vol. 45, no. 4, pp. 17-21, 2002

[2] E. Soloway, "How the Nintendo Generation Learns," Communications of the ACM, vol. 34, no. 9, pp. 23-26, 1991

[3] M. Prensky, Digital Game-Based Learning. New York, NY: McGraw-Hill, 2001[4] K. Becker, "Teaching with Games: The Minesweeper and Asteroids Experience," Journal of Computing

Sciences in Colleges, vol. 17, no. 2, pp. 23-33, 2001 [5] J. G. Brooks and M. G. Brooks, In Search of Understanding: The Case for Constructivist Classrooms.

Alexandria, VA: Association for Supervision and Curriculum Development, 1999 [6] D. P. Kauchak and P. D. Eggen, Learning and Teaching: Research-based Methods, 4th ed. Boston, MA:

Pearson, 2003[7] K. Powers and D. T. Powers, "Making Sense of Teaching Methods in Computing Education," in

Proceedings of the 29th ASEE/IEEE Frontiers in Education Conference, San Juan, Puerto Rico, pp. 11B3/30-22B3/35, 1996

[8] K. Bierre and A. Phelps, "The Use of MUPPETS in an Introductory Java Programming Course," in Proceedings of the 5th Conference on Information Technology Education, pp. 122-127, 2004

[9] K. Bierre, P. Ventura, A. Phelps, and C. Egert, "Motivating OOP by Blowing Things Up: An Exercise in Cooperation and Competition in an Introductory Java Programming Course," in Proceedings of the 37th SIGCSE Technical Symposium on Computer Science Education, pp. In Press, 2006

[10] A. Phelps, K. Bierre, and D. Parks, "MUPPETS: Multi-User Programming Pedagogy for Enhancing Traditional Study," in Proceedings of the 4th Conference on Information Technology Education. Lafayette, IN, 2003, pp. 100-105.

[11] A. Phelps, C. Egert, and K. Bierre, "MUPPETS: Multi-User Programming Pedagogy for Enhancing Traditional Study: An Environment for both Upper and Lower Division Students," in Frontiers in Education, 2005

[12] A. Phelps, C. Egert, K. Bierre, and D. Parks, "An Open-Source CVE for Programming Education: A Case Study," in The 32nd International Conference on Computer Graphics and Interactive Techniques (SIGGRAPH) Supplemental Notes - Educators Half Day Session, 2005

[1] M. Guzdial and E. Soloway, "Log on Education: Teaching the Nintendo generation to program," Communications of the ACM, vol. 45, no. 4, pp. 17-21, 2002

[2] E. Soloway, "How the Nintendo Generation Learns," Communications of the ACM, vol. 34, no. 9, pp. 23-26, 1991

[3] M. Prensky, Digital Game-Based Learning. New York, NY: McGraw-Hill, 2001[4] K. Becker, "Teaching with Games: The Minesweeper and Asteroids Experience," Journal of Computing

Sciences in Colleges, vol. 17, no. 2, pp. 23-33, 2001 [5] J. G. Brooks and M. G. Brooks, In Search of Understanding: The Case for Constructivist Classrooms.

Alexandria, VA: Association for Supervision and Curriculum Development, 1999 [6] D. P. Kauchak and P. D. Eggen, Learning and Teaching: Research-based Methods, 4th ed. Boston, MA:

Pearson, 2003[7] K. Powers and D. T. Powers, "Making Sense of Teaching Methods in Computing Education," in

Proceedings of the 29th ASEE/IEEE Frontiers in Education Conference, San Juan, Puerto Rico, pp. 11B3/30-22B3/35, 1996

[8] K. Bierre and A. Phelps, "The Use of MUPPETS in an Introductory Java Programming Course," in Proceedings of the 5th Conference on Information Technology Education, pp. 122-127, 2004

[9] K. Bierre, P. Ventura, A. Phelps, and C. Egert, "Motivating OOP by Blowing Things Up: An Exercise in Cooperation and Competition in an Introductory Java Programming Course," in Proceedings of the 37th SIGCSE Technical Symposium on Computer Science Education, pp. In Press, 2006

[10] A. Phelps, K. Bierre, and D. Parks, "MUPPETS: Multi-User Programming Pedagogy for Enhancing Traditional Study," in Proceedings of the 4th Conference on Information Technology Education. Lafayette, IN, 2003, pp. 100-105.

[11] A. Phelps, C. Egert, and K. Bierre, "MUPPETS: Multi-User Programming Pedagogy for Enhancing Traditional Study: An Environment for both Upper and Lower Division Students," in Frontiers in Education, 2005

[12] A. Phelps, C. Egert, K. Bierre, and D. Parks, "An Open-Source CVE for Programming Education: A Case Study," in The 32nd International Conference on Computer Graphics and Interactive Techniques (SIGGRAPH) Supplemental Notes - Educators Half Day Session, 2005

Page 55: John Nordlinger Microsoft Research Andrew Phelps Rochester Institute of Technology

Game Design & DevelopmentCollege of Computing & Information SciencesRochester Institute of TechnologyGAMES.RIT.EDU

[13] A. Phelps and D. Parks, "Fun and games with multi-language development," QUEUE, vol. 1, no. 10, pp. 2-12, 2004

[14] A. Phelps, C Egert and K. Bierre. “Games First Pedagogy, Using Virtual Worlds to Enhance Programming Education,” in The Journal of Games Development, vol. 1, no. 4. forthcoming.

[15] C Egert, K Bierre, P Ventura and A. Phelps. “M.U.P.P.E.T.S.: Using a 3D Collaborative Virtual Environment to Motivate Fundamental Object-Oriented Learning,” in Proceedings of the ACM SIGPLAN Object Oriented Programming, Systems, Languages and Applications (OOPSLA) Conference 2006. forthcoming.

[16] J. S. Bruner, Towards a Theory of Instruction. Cambridge, MA: Harvard University Press, 1966 [17] S. Haderjerrrouit, "A Constructivist Approach to Object-Oriented Design and Programming," in

Proceedings of the ACM Conference on Innovation and Technology in Computer Science Education. Cracow, Poland, 1999, pp. 171-174.

[18] D. P. Kauchak and P. D. Eggen, Learning and Teaching: Research-based Methods, 4th ed. Boston, MA: Pearson, 2003

[19] K. Powers and D. T. Powers, "Making Sense of Teaching Methods in Computing Education," in Proceedings of the 29th ASEE/IEEE Frontiers in Education Conference, San Juan, Puerto Rico, pp. 11B3/30-22B3/35, 1996

[20] T. C. Reeves and J. R. Okey, "Alternative Assessment for Constructivist Learning Environments," in Constructivist Learning Environments: Case studies in Instructional Design, B. G. Wilson, Ed. Englewood Cliffs, NJ: Educational Technology Publications, pp. 191-220, 1996

[21] D. W. Johnson and R. T. Johnson, "Cooperative Learning and Achievement," in Cooperative Learning: Theory and Research, S. Sharan, Ed. New York, NY: Praeger, pp. 23-37, 1990

[22] D. W. Johnson and R. T. Johnson, Working Together and Alone: Cooperation, competition, and individualization, 4th ed. Needham Heights, MA: Allyn and Bacon, 1994

[23] D. W. Johnson, R. T. Johnson, and K. A. Smith, "Cooperative Learning: Increasing College Faculty Instructional Productivity (ASHE-ERIC Higher Education 4)," The George Washington University, School of Education and Human Development, Washington, DC 1991

[24] R. Slavin, Cooperative Learning, 2nd ed. Needham Heights, MA: Allyn and Bacon, 1995[25] http://www.joystiq.com/2006/05/03/seattle-named-top-video-game-city-in-the-nation/

[13] A. Phelps and D. Parks, "Fun and games with multi-language development," QUEUE, vol. 1, no. 10, pp. 2-12, 2004

[14] A. Phelps, C Egert and K. Bierre. “Games First Pedagogy, Using Virtual Worlds to Enhance Programming Education,” in The Journal of Games Development, vol. 1, no. 4. forthcoming.

[15] C Egert, K Bierre, P Ventura and A. Phelps. “M.U.P.P.E.T.S.: Using a 3D Collaborative Virtual Environment to Motivate Fundamental Object-Oriented Learning,” in Proceedings of the ACM SIGPLAN Object Oriented Programming, Systems, Languages and Applications (OOPSLA) Conference 2006. forthcoming.

[16] J. S. Bruner, Towards a Theory of Instruction. Cambridge, MA: Harvard University Press, 1966 [17] S. Haderjerrrouit, "A Constructivist Approach to Object-Oriented Design and Programming," in

Proceedings of the ACM Conference on Innovation and Technology in Computer Science Education. Cracow, Poland, 1999, pp. 171-174.

[18] D. P. Kauchak and P. D. Eggen, Learning and Teaching: Research-based Methods, 4th ed. Boston, MA: Pearson, 2003

[19] K. Powers and D. T. Powers, "Making Sense of Teaching Methods in Computing Education," in Proceedings of the 29th ASEE/IEEE Frontiers in Education Conference, San Juan, Puerto Rico, pp. 11B3/30-22B3/35, 1996

[20] T. C. Reeves and J. R. Okey, "Alternative Assessment for Constructivist Learning Environments," in Constructivist Learning Environments: Case studies in Instructional Design, B. G. Wilson, Ed. Englewood Cliffs, NJ: Educational Technology Publications, pp. 191-220, 1996

[21] D. W. Johnson and R. T. Johnson, "Cooperative Learning and Achievement," in Cooperative Learning: Theory and Research, S. Sharan, Ed. New York, NY: Praeger, pp. 23-37, 1990

[22] D. W. Johnson and R. T. Johnson, Working Together and Alone: Cooperation, competition, and individualization, 4th ed. Needham Heights, MA: Allyn and Bacon, 1994

[23] D. W. Johnson, R. T. Johnson, and K. A. Smith, "Cooperative Learning: Increasing College Faculty Instructional Productivity (ASHE-ERIC Higher Education 4)," The George Washington University, School of Education and Human Development, Washington, DC 1991

[24] R. Slavin, Cooperative Learning, 2nd ed. Needham Heights, MA: Allyn and Bacon, 1995[25] http://www.joystiq.com/2006/05/03/seattle-named-top-video-game-city-in-the-nation/

Page 56: John Nordlinger Microsoft Research Andrew Phelps Rochester Institute of Technology

Game Design & DevelopmentCollege of Computing & Information SciencesRochester Institute of TechnologyGAMES.RIT.EDU

[37] E. Wallingford, "Towards a First Course Based on Object-Oriented Patterns," in Proceedings of the 27th SIGCSE Technical Symposium on Computer Science Education. Philadelphia, PA, 1996, pp. 27-31.

[38] P. Ventura, "On the Origins of Programmers: Identifying Predictors of Success for an Objects-First CS1," in Computer Science and Engineering, vol. Doctor of Philosophy. Buffalo, NY: University at Buffalo, SUNY, 2004.

[39] W. Mitchell, "A Paradigm Shift to OOP has Occurred... Implementation to Follow," Journal of Computing Sciences in Colleges, vol. 16, no. 2, pp. 95-106, 2001

[40] B. J. Neubauer and D. D. Strong, "The Object-Oriented Paradigm: More Natural or Less Familiar," Journal of Computing Sciences in Colleges, vol. 18, no. 1, pp. 280-289, 2002

[41] P. Ventura, "On the Origins of Programmers: Identifying Predictors of Success for an Objects-First CS1," in Computer Science and Engineering, vol. Doctor of Philosophy. Buffalo, NY: University at Buffalo, SUNY, 2004.

[42] C. Nevison and B. Wells, "Teaching Objects Early and Design Patterns in Java Using Case Studies," in Proceedings of the 8th Annual Conference on Innovation and Technology in Computer Science Education. Thessaloniki, Greece, 2003, pp. 94-98.

[43] C. Nevison and B. Wells, "Using a Maze Case Study to Teach Object-Oriented Programming and Design Patterns," in Proceedings of the 6th Australasian Computing Education Conference. Dunedin, New Zealand, 2004, pp. 207-215.

[44] N. Parlante, "Astrachan's Law," SIGCSE Bulletin, vol. 35, no. 4, pp. 26-27, 2003[45] K. B. Bruce, "Controversy on How to Teach CS 1: A discussion on the SIGCSE-members Mailing List,"

SIGCSE Bulletin, vol. 36, no. 4, pp. 29-34, 2004[46] K. B. Bruce, A. Danyluk, and T. Murtagh, "A Library to Support a Graphics-based Object-First Approach

to CS 1," in Proceedings of the 32nd SIGCSE Technical Symposium on Computer Science Education. Charlotte, NC, 2001, pp. 6-10.

[47] R. Rasala, "Toolkits in First Year Computer Science: A Pedagogical Imperative," in Proceedings of the 31st SIGCSE Technical Symposium on Computer Science Education. Austin, TX, 2000, pp. 185-192.

[48] R. Lister, "Teaching Java First: Experiments with a Pigs-Early Pedagogy," in Proceedings of the 6th Australasian Computing Education Conference. Dunedin, New Zealand, 2004, pp. 177-183.

[37] E. Wallingford, "Towards a First Course Based on Object-Oriented Patterns," in Proceedings of the 27th SIGCSE Technical Symposium on Computer Science Education. Philadelphia, PA, 1996, pp. 27-31.

[38] P. Ventura, "On the Origins of Programmers: Identifying Predictors of Success for an Objects-First CS1," in Computer Science and Engineering, vol. Doctor of Philosophy. Buffalo, NY: University at Buffalo, SUNY, 2004.

[39] W. Mitchell, "A Paradigm Shift to OOP has Occurred... Implementation to Follow," Journal of Computing Sciences in Colleges, vol. 16, no. 2, pp. 95-106, 2001

[40] B. J. Neubauer and D. D. Strong, "The Object-Oriented Paradigm: More Natural or Less Familiar," Journal of Computing Sciences in Colleges, vol. 18, no. 1, pp. 280-289, 2002

[41] P. Ventura, "On the Origins of Programmers: Identifying Predictors of Success for an Objects-First CS1," in Computer Science and Engineering, vol. Doctor of Philosophy. Buffalo, NY: University at Buffalo, SUNY, 2004.

[42] C. Nevison and B. Wells, "Teaching Objects Early and Design Patterns in Java Using Case Studies," in Proceedings of the 8th Annual Conference on Innovation and Technology in Computer Science Education. Thessaloniki, Greece, 2003, pp. 94-98.

[43] C. Nevison and B. Wells, "Using a Maze Case Study to Teach Object-Oriented Programming and Design Patterns," in Proceedings of the 6th Australasian Computing Education Conference. Dunedin, New Zealand, 2004, pp. 207-215.

[44] N. Parlante, "Astrachan's Law," SIGCSE Bulletin, vol. 35, no. 4, pp. 26-27, 2003[45] K. B. Bruce, "Controversy on How to Teach CS 1: A discussion on the SIGCSE-members Mailing List,"

SIGCSE Bulletin, vol. 36, no. 4, pp. 29-34, 2004[46] K. B. Bruce, A. Danyluk, and T. Murtagh, "A Library to Support a Graphics-based Object-First Approach

to CS 1," in Proceedings of the 32nd SIGCSE Technical Symposium on Computer Science Education. Charlotte, NC, 2001, pp. 6-10.

[47] R. Rasala, "Toolkits in First Year Computer Science: A Pedagogical Imperative," in Proceedings of the 31st SIGCSE Technical Symposium on Computer Science Education. Austin, TX, 2000, pp. 185-192.

[48] R. Lister, "Teaching Java First: Experiments with a Pigs-Early Pedagogy," in Proceedings of the 6th Australasian Computing Education Conference. Dunedin, New Zealand, 2004, pp. 177-183.

Page 57: John Nordlinger Microsoft Research Andrew Phelps Rochester Institute of Technology

Game Design & DevelopmentCollege of Computing & Information SciencesRochester Institute of TechnologyGAMES.RIT.EDU

[49] O. Astrachan, G. Berry, L. Cox, and G. Mitchener, "Design Patterns: An Essential Component of the CS Curricula," in Proceedings of the 29th SIGCSE Technical Symposium on Computer Science Education. Atlanta, GA, 1998, pp. 153-160.

[50] C. Alphonce and P. Ventura, "Object Orientation in CS1-CS2 by Design," in Proceedings of the 7th Annual Conference on Innovation and Technology in Computer Science Education. Aarhus, Denmark, 2002, pp. 70-74.

[51] C. Alphonce and P. Ventura, "Using Graphics to Support the Teaching of Fundamental Object-Oriented Principles in CS1," in Proceedings of the 18th Annual ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA). Anaheim, CA, 2003, pp. 156-161.

[52] K. B. Bruce, A. Danyluk, and T. Murtagh, "A Library to Support a Graphics-based Object-First Approach to CS 1," in Proceedings of the 32nd SIGCSE Technical Symposium on Computer Science Education. Charlotte, NC, 2001, pp. 6-10.

[53] P. Ventura and B. Ramamurthy, "Wanted: CS1 Students. No Experience Required," in Proceedings of the 35th SIGCSE Technical Symposium on Computer Science Education. Norfolk, VA, 2004, pp. 240-244.

[54] D. Mutchler and C. Laxer, "Using Multimedia and GUI programming in CS 1," in Proceedings of the 1st Conference on Integrating Technology into Computer Science Education. Barcelona, Spain, 1996, pp. 63-65.

[55] P. Ventura, C. Egert, and A. Decker, "Ancestor Worship in CS1: On the primacy of arrays," in Companion to the 19th Annual ACM SIGPLAN Conference on Object-Oriented Programming Systems, Languages, and Applications (OOPSLA). Vancouver, British Columbia, Canada, 2004, pp. 68-72.

[49] O. Astrachan, G. Berry, L. Cox, and G. Mitchener, "Design Patterns: An Essential Component of the CS Curricula," in Proceedings of the 29th SIGCSE Technical Symposium on Computer Science Education. Atlanta, GA, 1998, pp. 153-160.

[50] C. Alphonce and P. Ventura, "Object Orientation in CS1-CS2 by Design," in Proceedings of the 7th Annual Conference on Innovation and Technology in Computer Science Education. Aarhus, Denmark, 2002, pp. 70-74.

[51] C. Alphonce and P. Ventura, "Using Graphics to Support the Teaching of Fundamental Object-Oriented Principles in CS1," in Proceedings of the 18th Annual ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA). Anaheim, CA, 2003, pp. 156-161.

[52] K. B. Bruce, A. Danyluk, and T. Murtagh, "A Library to Support a Graphics-based Object-First Approach to CS 1," in Proceedings of the 32nd SIGCSE Technical Symposium on Computer Science Education. Charlotte, NC, 2001, pp. 6-10.

[53] P. Ventura and B. Ramamurthy, "Wanted: CS1 Students. No Experience Required," in Proceedings of the 35th SIGCSE Technical Symposium on Computer Science Education. Norfolk, VA, 2004, pp. 240-244.

[54] D. Mutchler and C. Laxer, "Using Multimedia and GUI programming in CS 1," in Proceedings of the 1st Conference on Integrating Technology into Computer Science Education. Barcelona, Spain, 1996, pp. 63-65.

[55] P. Ventura, C. Egert, and A. Decker, "Ancestor Worship in CS1: On the primacy of arrays," in Companion to the 19th Annual ACM SIGPLAN Conference on Object-Oriented Programming Systems, Languages, and Applications (OOPSLA). Vancouver, British Columbia, Canada, 2004, pp. 68-72.

Page 58: John Nordlinger Microsoft Research Andrew Phelps Rochester Institute of Technology

Microsoft Research Faculty Summit 2007