John Nordlinger Microsoft Research Andrew Phelps Rochester Institute of Technology Trends in Computer Science and Computer Gaming What is being done and what is available? Deep.
Download ReportTranscript John Nordlinger Microsoft Research Andrew Phelps Rochester Institute of Technology Trends in Computer Science and Computer Gaming What is being done and what is available? Deep.
John Nordlinger Microsoft Research Andrew Phelps Rochester Institute of Technology Trends in Computer Science and Computer Gaming What is being done and what is available? Deep dive into RIT DirectX 3 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 people in low population country smartest people in high population country Increasing Native Intelligence Natural Sci & Eng PhDss 35,000 all 30,000 25,000 20,000 U.S. Citizen 15,000 10,000 National Science Board. 2006. Science and Engineering Indicators 2006. Arlington, VA: National Science Foundation. Appendix Table 2-32. 5,000 0 1980 1985 1990 1995 2000 2005 Year 2004-5 Data from NSF Survey of Earned Doctorates. Number Graduated 1200 Unknown Citizenship 1000 800 Temporary Resident 600 Permanent Resident 400 U.S. Citizen 200 0 2005 2003 2001 1999 1995 1991 1987 1983 Year 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. Natural Science & Engineering PhD's 8000 China 7000 National Science Board. 2006. Science and Engineering Indicators 2006. Appendix Table 2-43. 6000 India 5000 4000 South Korea 3000 2000 Taiwan 1000 0 1980 1985 1990 Year 1995 2000 2005 7,000,000 Total Current Subscriptions 6,500,000 6,000,000 World of Warcraft 5,500,000 5,000,000 4,500,000 4,000,000 3,500,000 3,000,000 2,500,000 2,000,000 390,000 Lineage U.S. B.S. S&E’s/year 1,500,000 1,000,000 Lineage II 500,000 0 Jul-06 Jan-06 Jul-05 Jan-05 Jul-04 Jan-04 Jul-03 Jan-03 Jul-02 Jan-02 Jul-01 Jan-01 Jul-00 Jan-00 Jul-99 Jan-99 Jul-98 Jan-98 Jul-97 Jan-97 Woodcock, Bruce Sterling (2005). An Analysis of MMOG Subscription Growth. MMOGCHART.COM 21.0. 17 Feb 2007. http://www.mmogchart.com Total Current Subscriptions 700,000 650,000 600,000 550,000 500,000 450,000 400,000 350,000 300,000 250,000 200,000 150,000 100,000 50,000 0 Final Fantasy XI 390,000 Everquest U.S. B.S. S&E’s/year Ultima Online 60,000 U.S. B.S. Engineers/year Jul-06 Jan-06 Jul-05 Jan-05 Jul-04 Jan-04 Jul-03 Jan-03 Jul-02 Jan-02 Jul-01 Jan-01 Jul-00 Jan-00 Jul-99 Jan-99 Jul-98 Jan-98 Jul-97 Jan-97 Woodcock, Bruce Sterling (2005). An Analysis of MMOG Subscription Growth. MMOGCHART.COM 21.0. 17 Feb 2007. http://www.mmogchart.com WW retail revenues for Windows games tripled in a decade Windows Retail Revenue Windows Online Revenue Projections put total WW Windows games revenue over $9B in 2009 XBOX Live reaches 6M $6.86B $2.0B $695M $2.35B $2.3B 1995 2004 2009 Sources: NPD Data, DFC Intelligence and Themis Group 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 2010 gamedaily 9/29/2006 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 Students get EXCITED! Hands on/practical approach to using computer science theories and practices An 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) technical requirements SNES ‘94 PS1 ‘98 PS2/XBOX ‘02 PS3/XBox360 ‘06 Multi-core and specialized cards: audio, graphics, physics AI & Procedural designs – Emergent scenarios New storage - more content – more art Very large team effort (3 to 350) Personalization: mods, micro-transactions VOIP: Skype, Ventrillo, Tspeak etc. Mo’ Money, More public scrutiny, More security Serious Games Piracy subscriptions more art. Demand for larger worlds Demand for more detail Floppies vs CDs vs DVDs → HALO2 4.2GB HD-DVD/Blueray → 20GB Rising development cost Content creation is the bottleneck $10M content budget Art Pipeline is not scaling Amortize cost over multiple platforms Bad Guys care about money Organized 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 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 Age USC’s Darfur is dying… 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 University Project CMU 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. University Project Rochester 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) Building a bicycle interface to Flight Sim X Bruce & Amy Gooch Univ of Victoria USC, School of Cinematic Arts. Univ of Washington Building a head-mounted display for Flight SIm X Marc Bolas Game to cure Aids – combining human game play and computer interpretation to do Protein Folding. Zoran Popovich University Project University of North Texas SAGE Ian Parberry DXframework John Laird and Jon Voight. GoblinX Steve Feiner et all An engine for Augmented Reality Game Play. M.U.P.P.E.T.S. Andy Phelps, Chris Eggert, Kevin Bierre A Multi-user Pervasive Programming Enhancing Traditional Study Univ of Michigan Columbia 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 higherlevel CS courses. CS1 Grade Take CS2? No Alice Class Prior to CS1 C 47% Alice Class Prior to CS1 B 88% Design and construction of an instructional 3D game engine Serves as the core of a game programming curriculum for CS Pedagogically 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/ Built on C#, DirectX, and existing infrastructure for tracking, physics,… Used for student projects in Spring 2007 3DUI course Students 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) Used to create mod of XNA Racing Game Car must pass waypoints and avoid obstacles Game 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) Dr. Bruce Gooch University of Victoria Using flight sim and bicycles to make exercise and programming more compelling. Flight sim is less sedentary. Programming is less abstract. 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 North Carolina State Univ R. Michael Young Game Design & Development in Computing Education “Fragging the Ivory Tower” Andrew Phelps Associate Professor & Director, Game Design & Development Game Design & Development Rochester Institute of Technology College of Computing & Information Sciences Rochester Institute of Technology GAMES.RIT.EDU Game Design & Development College of Computing & Information Sciences Rochester Institute of Technology GAMES.RIT.EDU Theory vs. Practice Divide Declining Enrollments vs. Expanding Opportunity Perception of the field (by students and parents) Effective Collaborations Across Disciplines First Year Experiences Age and Cultural Why am I doing this? Differences with Competition vs. Coop. Entering Student Body “Pass On The Pain” Mentality Game Design & Development College of Computing & Information Sciences Rochester Institute of Technology GAMES.RIT.EDU Problems with an objects-first approach (Computing Curricula 2001): Problems with materials Lack of experience OO thinking not natural for the introductory course Libraries & GUI’s overwhelm the student May not be reinforced in upper level courses [33][34][35][36][37][38][39][40][41] 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! Game Design & Development College of Computing & Information Sciences Rochester Institute of Technology GAMES.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] Game Design & Development College of Computing & Information Sciences Rochester Institute of Technology GAMES.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. Game Design & Development College of Computing & Information Sciences Rochester Institute of Technology GAMES.RIT.EDU Zero Meaningful Interaction Using gaming ideas as a basis for teaching. Teaching design before coding syntax Immediate feedback for actions Teaching OO concepts early Showing the relationships between classes Carrying OO concepts into later courses No “toy problems” – tie programming to real-world problem solving [42][43][44][45][46][47][48][49][50][51][52][38][53][54][55] Game Design & Development College of Computing & Information Sciences Rochester Institute of Technology GAMES.RIT.EDU Create a virtual environment that allows students to realize game-worldlike achievement / artifacts, and allows for socialization across the capability gap. Game Design & Development College of Computing & Information Sciences Rochester Institute of Technology GAMES.RIT.EDU RIT wanted something that felt more gameworld like in terms of graphics, interactions, and social constructs, but that also preserved the compilation / authorship process common to first-year computing curricula. Game Design & Development College of Computing & Information Sciences Rochester Institute of Technology GAMES.RIT.EDU 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.EDU Game Design & Development College of Computing & Information Sciences Rochester Institute of Technology GAMES.RIT.EDU User Created Objects Shared 3D Environment Assignment Type Traditional Robocode TankBrain 30 25 20 Count 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 15 10 5 0 Practically nothing Little Moderate A lot amount Amount Learned Exceptional amount Assignment Type N Table 1: Mean Ranks for Perceived Amount Learned by Assignment Type Amount Learned Traditional Robocode TankBrain Total Game Design & Development College of Computing & Information Sciences Rochester Institute of Technology GAMES.RIT.EDU 55 21 42 Mean Rank 57.41 38.90 72.54 118 Work previously presented by A. Phelps, C Egert, K Bierre and P Ventura at SIGCSE 2006 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 gateway CS 80K: intro to game design Over 170 students, broad set of majors, many freshman Add programming project to get students interested in CS Act as “gateway” to CS Take 80K, then go into new BS Computer Science: Computer Game Design degree program Associate Professor Jim Whitehead Professor Charlie McDowell Strong Assessment • Combination of qualitative and quantitative approaches • Deeply understand impacts of interventions 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! Another approach at RIT Uses a mix of C# and Java with games as exemplars Also pair / group oriented We don’t know what will ultimately be successful – assessment is key! Much better comprehension! … 20% greater A quality students. (Anecdotally less failure downstream…) Game Design & Development College of Computing & Information Sciences Rochester Institute of Technology GAMES.RIT.EDU Published at SIGCSE 2006 & 2007, Journal of Game Development 2007, MS Academic Days for Gaming 07 - Jessica Bayliss RIT 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”. Game Design & Development College of Computing & Information Sciences Rochester Institute of Technology GAMES.RIT.EDU Classroom exercises based on constructivist principles, using games & technology as a scaffold as knowledge is gained. [5][16][17][18][19][20] Game Design & Development College of Computing & Information Sciences Rochester Institute of Technology GAMES.RIT.EDU 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 “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) Game Design & Development College of Computing & Information Sciences Rochester Institute of Technology GAMES.RIT.EDU Collaborative projects are encouraged to break the cultural mode. [21][22][23][24] New Game Design & Development Program Builds off our existing, traditional coursework Expands “domain courses” in concrete areas Balances Design Theory and Tech. Concepts every quarter Even with the “decline” in computing, we have a program that exceeded double its projected enrollment with no advertising and a late-tomarket application process! Academic Trust: Not a watered-down “CS Lite” or a mis-labeled art program. SIGGRAPH / Sandbox FuturePlay Microsoft Academic Days for Gaming Game Developer’s Conference IGDA Educator’s Forum SIGCSE / OOPSLA / FIE (etc.) Game Design & Development College of Computing & Information Sciences Rochester Institute of Technology GAMES.RIT.EDU MSR Game Developer Kit (July 07) Assets in MSDN Faculty Connection Participate in the Community! SIGCSE, GDC, SIGGRAPH OOPSLA, 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) © 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. References Game Design & Development College of Computing & Information Sciences Rochester Institute of Technology GAMES.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 Game Design & Development College of Computing & Information Sciences Rochester Institute of Technology GAMES.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. 171174. [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/ Game Design & Development College of Computing & Information Sciences Rochester Institute of Technology GAMES.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. Game Design & Development College of Computing & Information Sciences Rochester Institute of Technology GAMES.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. Game Design & Development College of Computing & Information Sciences Rochester Institute of Technology GAMES.RIT.EDU Microsoft Research Faculty Summit 2007