SlideShare a Scribd company logo
All I Ever Needed to Know About Programming I Learned From Re-writing Classic Arcade Games Katrin Becker J. R. Parker
Overview The Challenge of reaching students. What we usually do in 1 st  year. Games and Students Effective Learning Games and Pedagogy Why Arcade Games What can we teach with games? Dialing Down & Ramping Up
The Challenge Enrollments in CS are down. Demand for CS professionals is changing. Need More breadth (applications, media). Outsourcing. How to fill demand for programmers? How to attract CS Majors?
The Usual Typical progression:  Uniform, incremental steps Mathematical sequencing of content Teach programming step-wise,  From little to  big ;  From simple (sorting lists)...to complex (sorting big lists) From boring to…. Still boring
Games and Students CS students are gamers Games got many students interested in CS Students  get  games Usually better than “widgets”
Effective learning happens when… Students care about the problems they need to solve Students understand the problems they need to solve We take prior learning into account (start from where the students are)
Are Games all this? Students care about games Students understand how the games are supposed to work Prior knowledge for students includes games literacy.
Games and Pedagogy Gameplay is tied to programming: Complex gameplay == complex (and more) algorithms Games are highly visual: On-screen behavior maps onto algorithms in-program We can watch the algorithms as they execute Program testing techniques are understood and accepted  Game cheats Try it and see….(game attitude)
But… Games are frivolous… Our goal is to implement the game, not just play it. Games are graphics intensive… This doesn’t need to be (enter, the arcade). Games are primarily event-driven, and that’s only one aspect of programming…. Most games can be modified to be turn-based.
What’s So Special About Arcade Games? 1. Familiarity Build something they have actually used (How many freshman have managed enough employees to require a program to keep track of them?) Go from experiencing the magic.. to being the magician.
What’s So Special About Arcade Games? 2. Age Built when computers were limited & effects were crude. Program complexity was low Graphics were simple Audio was insignificant (almost)
What’s So Special About Arcade Games? 3. Lots of implementations exist. Working examples are useful when writing a new program. Is this a liability? What about cheating? Pick a 1 st  year  programming problem for which no solution exists.  Anywhere.  Just try.
So Many Concepts So Many Games Action Shooters Collision detection Distance calculations Asteroids! Missile Command Defender
So Many Concepts So Many Games Maze Puzzles Path finding Chasing (tracking) 2D  Pac-Man Ms. Pac-Man Centipede
So Many Concepts So Many Games Puzzles 2D geometry Packing algorithms Win-state detection Condition checking Tetris Q*Bert
So Many Concepts So Many Games Bouncing Real-time in a simple environment Collision detection Simple physics Blocks Breakout! Pong
So Many Concepts So Many Games Side Scrollers / Level Games Physics Inventory & asset management AI  Mario Bros. Donkey Kong Pitfall Joust
So Many Concepts So Many Games Racing & Driving Physics AI Collision Detection Graphics User interfaces Audio …. Indy 500 Street Racer
So Many Concepts So Many Games Text Based Parsing AI Zork
Adding and Removing Complexity Dialing Down: Can simplify gameplay without loosing appeal  Can do ASCII games Provide plug-ins for tougher bits Staged (i.e. C-solution does  this ; B-solution does  this;  and A-solution does  that ) Ramping Up: Can add to even simple games (3D, real-time, full-color, sound,…) Concentrate on one aspect – increase quality / complexity for greater challenge (graphics for  Donkey Kong ; physics in driving game; parsing in  Zork )
Summary Classic Arcade Games are ideal: Complexity at a level novices can master. “ Special Effects” (graphics, sound, etc.) demands are modest without having to change the original game. They are examples of programs with which most students are familiar. Many working examples exist and are freely available. Complexity and challenge can be easily adjusted to meet requirements for novices and experienced programmers alike.
Thanks.
Image credits Attaxx:  http://www.pressibus.org/ataxx/gen/gbintro.html Breakout:  http://freespace.virgin.net/james.handlon/earlygamingmemoriespart2.htm Q*Bert:  http://www.gamespot.com Lunar Lander:  http://gnm5.tripod.com/Lunar_lander.htm Joust:  http://www.glitchnyc.com/cgi-bin/blosxom.cgi/technology/games/index.phblox Zork: Infocom, Inc.  Zork I: The Great Underground Empire.  Cambridge, MA: 1981. Street Racer:  http://www.vgmuseum.com/pics5/streetracer.html Pitfall:  http://www.geocities.com/xinet2004/segagenesis.htm VideoGameCritic.net (multiple images, especially  Atari 2600 Games, and Intellivision) GameSpot MobyGames

More Related Content

PPS
Games As Sims
PPTX
Game Design Patterns Workshop - FDG2012 - Opening Remarks
PPT
Icat2005
PDF
Artificial intelligence in gaming.
PPTX
Artificial intelligence and video games
PPTX
Week 4 Decisions & Flow
PDF
Game Balance 1: What is Game Balance
PPTX
Games As Sims
Game Design Patterns Workshop - FDG2012 - Opening Remarks
Icat2005
Artificial intelligence in gaming.
Artificial intelligence and video games
Week 4 Decisions & Flow
Game Balance 1: What is Game Balance

Viewers also liked (6)

PPS
Game Ethology 2
PPS
Serious Games + Computer Science = Serious CS
PPS
Cutting Edge Research By Undergraduates On A Shoe String
PPTX
Virtue of Failure
PPS
Games For Learning Are Schools Ready for What’s to Come? [DiGRA 2005]
PPTX
Signature pedagogy
Game Ethology 2
Serious Games + Computer Science = Serious CS
Cutting Edge Research By Undergraduates On A Shoe String
Virtue of Failure
Games For Learning Are Schools Ready for What’s to Come? [DiGRA 2005]
Signature pedagogy
Ad

Similar to All I Ever Needed To Know About Programming (20)

PPTX
Teaching AI through retro gaming
PPTX
Game Design as an Intro to Computer Science (Meaningful Play 2014)
KEY
Fundamentals of Game Design
PDF
A primer on game-based learning
PPTX
PPTX
U1 Lesson 06
PPT
Video game design
PPT
T-Danks Video Game Design
PDF
Showcase of My Research on Games & AI "till the end of Oct. 2014"
PDF
UI/UX: Building Player Experiences
PDF
Pac Man: Game Development using PDA and OOP
PPT
Video Game Making and Mind Reading Game Console
PDF
DevCon Summit 2014 #DevelopersUnitePH: International Game Developers Associat...
PPT
Gw01 introduction
PPTX
Fundamental of game design part 2
PPT
Case Studies in Mobile Board Game Conversion
PPT
Global Game Jam Overview
PDF
Sutd Game Lab's prototyping tips
PPTX
GAME 3400 Level Design - Introduction
PPT
20131105 concepts of game design
Teaching AI through retro gaming
Game Design as an Intro to Computer Science (Meaningful Play 2014)
Fundamentals of Game Design
A primer on game-based learning
U1 Lesson 06
Video game design
T-Danks Video Game Design
Showcase of My Research on Games & AI "till the end of Oct. 2014"
UI/UX: Building Player Experiences
Pac Man: Game Development using PDA and OOP
Video Game Making and Mind Reading Game Console
DevCon Summit 2014 #DevelopersUnitePH: International Game Developers Associat...
Gw01 introduction
Fundamental of game design part 2
Case Studies in Mobile Board Game Conversion
Global Game Jam Overview
Sutd Game Lab's prototyping tips
GAME 3400 Level Design - Introduction
20131105 concepts of game design
Ad

More from Katrin Becker (20)

PPTX
Cross breeding animation
PPT
Assignments that Meet the Needs of Exceptional Students without Disadvantagin...
PPTX
T.A.P. : The Teach Aloud Protocol
PPTX
Misguided illusions of understanding
PPTX
4 Pillars of DGBL: A Structured Rating System for Games for Learning
PPTX
Gamification paradigm
PPTX
The Calm and The Storm: Simulation and Games - Why All Games are Simulations ...
PPTX
Gamification how to gamify learning and instruction Part 1 (of 3)
PPTX
Gamification how to gamify learning and instruction, part 2 (of 3)
PPTX
Is gamification a game changer
PPT
CS Example: Parsing a Sentence
PPT
CS Lesson: Introduction to the Java virtual Machine
PPT
CS: Introduction to Record Manipulation & Indexing
PPT
CS Lesson: Creating Your First Class in Java
PPTX
Informing pedagogy through collaborative inquiry
PPTX
Informing SoTL using playtesting techniques
PPTX
Using cards games as learning objects to teach genetics
PPTX
Gamification how to gamify learning and instruction, Part 3 (of 3)
PPTX
The decorative media trap
PPT
When Games and Instructional Design Collide
Cross breeding animation
Assignments that Meet the Needs of Exceptional Students without Disadvantagin...
T.A.P. : The Teach Aloud Protocol
Misguided illusions of understanding
4 Pillars of DGBL: A Structured Rating System for Games for Learning
Gamification paradigm
The Calm and The Storm: Simulation and Games - Why All Games are Simulations ...
Gamification how to gamify learning and instruction Part 1 (of 3)
Gamification how to gamify learning and instruction, part 2 (of 3)
Is gamification a game changer
CS Example: Parsing a Sentence
CS Lesson: Introduction to the Java virtual Machine
CS: Introduction to Record Manipulation & Indexing
CS Lesson: Creating Your First Class in Java
Informing pedagogy through collaborative inquiry
Informing SoTL using playtesting techniques
Using cards games as learning objects to teach genetics
Gamification how to gamify learning and instruction, Part 3 (of 3)
The decorative media trap
When Games and Instructional Design Collide

Recently uploaded (20)

PDF
How to Get Funding for Your Trucking Business
DOCX
unit 1 COST ACCOUNTING AND COST SHEET
PDF
How to Get Business Funding for Small Business Fast
PPTX
5 Stages of group development guide.pptx
PDF
COST SHEET- Tender and Quotation unit 2.pdf
PDF
Laughter Yoga Basic Learning Workshop Manual
PDF
BsN 7th Sem Course GridNNNNNNNN CCN.pdf
PPTX
Belch_12e_PPT_Ch18_Accessible_university.pptx
PPTX
job Avenue by vinith.pptxvnbvnvnvbnvbnbmnbmbh
PDF
MSPs in 10 Words - Created by US MSP Network
PDF
Reconciliation AND MEMORANDUM RECONCILATION
PPT
340036916-American-Literature-Literary-Period-Overview.ppt
DOCX
Euro SEO Services 1st 3 General Updates.docx
PDF
WRN_Investor_Presentation_August 2025.pdf
PPTX
ICG2025_ICG 6th steering committee 30-8-24.pptx
PPTX
AI-assistance in Knowledge Collection and Curation supporting Safe and Sustai...
PDF
DOC-20250806-WA0002._20250806_112011_0000.pdf
PDF
Ôn tập tiếng anh trong kinh doanh nâng cao
PPTX
Amazon (Business Studies) management studies
PPTX
The Marketing Journey - Tracey Phillips - Marketing Matters 7-2025.pptx
How to Get Funding for Your Trucking Business
unit 1 COST ACCOUNTING AND COST SHEET
How to Get Business Funding for Small Business Fast
5 Stages of group development guide.pptx
COST SHEET- Tender and Quotation unit 2.pdf
Laughter Yoga Basic Learning Workshop Manual
BsN 7th Sem Course GridNNNNNNNN CCN.pdf
Belch_12e_PPT_Ch18_Accessible_university.pptx
job Avenue by vinith.pptxvnbvnvnvbnvbnbmnbmbh
MSPs in 10 Words - Created by US MSP Network
Reconciliation AND MEMORANDUM RECONCILATION
340036916-American-Literature-Literary-Period-Overview.ppt
Euro SEO Services 1st 3 General Updates.docx
WRN_Investor_Presentation_August 2025.pdf
ICG2025_ICG 6th steering committee 30-8-24.pptx
AI-assistance in Knowledge Collection and Curation supporting Safe and Sustai...
DOC-20250806-WA0002._20250806_112011_0000.pdf
Ôn tập tiếng anh trong kinh doanh nâng cao
Amazon (Business Studies) management studies
The Marketing Journey - Tracey Phillips - Marketing Matters 7-2025.pptx

All I Ever Needed To Know About Programming

  • 1. All I Ever Needed to Know About Programming I Learned From Re-writing Classic Arcade Games Katrin Becker J. R. Parker
  • 2. Overview The Challenge of reaching students. What we usually do in 1 st year. Games and Students Effective Learning Games and Pedagogy Why Arcade Games What can we teach with games? Dialing Down & Ramping Up
  • 3. The Challenge Enrollments in CS are down. Demand for CS professionals is changing. Need More breadth (applications, media). Outsourcing. How to fill demand for programmers? How to attract CS Majors?
  • 4. The Usual Typical progression: Uniform, incremental steps Mathematical sequencing of content Teach programming step-wise, From little to big ; From simple (sorting lists)...to complex (sorting big lists) From boring to…. Still boring
  • 5. Games and Students CS students are gamers Games got many students interested in CS Students get games Usually better than “widgets”
  • 6. Effective learning happens when… Students care about the problems they need to solve Students understand the problems they need to solve We take prior learning into account (start from where the students are)
  • 7. Are Games all this? Students care about games Students understand how the games are supposed to work Prior knowledge for students includes games literacy.
  • 8. Games and Pedagogy Gameplay is tied to programming: Complex gameplay == complex (and more) algorithms Games are highly visual: On-screen behavior maps onto algorithms in-program We can watch the algorithms as they execute Program testing techniques are understood and accepted Game cheats Try it and see….(game attitude)
  • 9. But… Games are frivolous… Our goal is to implement the game, not just play it. Games are graphics intensive… This doesn’t need to be (enter, the arcade). Games are primarily event-driven, and that’s only one aspect of programming…. Most games can be modified to be turn-based.
  • 10. What’s So Special About Arcade Games? 1. Familiarity Build something they have actually used (How many freshman have managed enough employees to require a program to keep track of them?) Go from experiencing the magic.. to being the magician.
  • 11. What’s So Special About Arcade Games? 2. Age Built when computers were limited & effects were crude. Program complexity was low Graphics were simple Audio was insignificant (almost)
  • 12. What’s So Special About Arcade Games? 3. Lots of implementations exist. Working examples are useful when writing a new program. Is this a liability? What about cheating? Pick a 1 st year programming problem for which no solution exists. Anywhere. Just try.
  • 13. So Many Concepts So Many Games Action Shooters Collision detection Distance calculations Asteroids! Missile Command Defender
  • 14. So Many Concepts So Many Games Maze Puzzles Path finding Chasing (tracking) 2D Pac-Man Ms. Pac-Man Centipede
  • 15. So Many Concepts So Many Games Puzzles 2D geometry Packing algorithms Win-state detection Condition checking Tetris Q*Bert
  • 16. So Many Concepts So Many Games Bouncing Real-time in a simple environment Collision detection Simple physics Blocks Breakout! Pong
  • 17. So Many Concepts So Many Games Side Scrollers / Level Games Physics Inventory & asset management AI Mario Bros. Donkey Kong Pitfall Joust
  • 18. So Many Concepts So Many Games Racing & Driving Physics AI Collision Detection Graphics User interfaces Audio …. Indy 500 Street Racer
  • 19. So Many Concepts So Many Games Text Based Parsing AI Zork
  • 20. Adding and Removing Complexity Dialing Down: Can simplify gameplay without loosing appeal Can do ASCII games Provide plug-ins for tougher bits Staged (i.e. C-solution does this ; B-solution does this; and A-solution does that ) Ramping Up: Can add to even simple games (3D, real-time, full-color, sound,…) Concentrate on one aspect – increase quality / complexity for greater challenge (graphics for Donkey Kong ; physics in driving game; parsing in Zork )
  • 21. Summary Classic Arcade Games are ideal: Complexity at a level novices can master. “ Special Effects” (graphics, sound, etc.) demands are modest without having to change the original game. They are examples of programs with which most students are familiar. Many working examples exist and are freely available. Complexity and challenge can be easily adjusted to meet requirements for novices and experienced programmers alike.
  • 23. Image credits Attaxx: http://www.pressibus.org/ataxx/gen/gbintro.html Breakout: http://freespace.virgin.net/james.handlon/earlygamingmemoriespart2.htm Q*Bert: http://www.gamespot.com Lunar Lander: http://gnm5.tripod.com/Lunar_lander.htm Joust: http://www.glitchnyc.com/cgi-bin/blosxom.cgi/technology/games/index.phblox Zork: Infocom, Inc. Zork I: The Great Underground Empire. Cambridge, MA: 1981. Street Racer: http://www.vgmuseum.com/pics5/streetracer.html Pitfall: http://www.geocities.com/xinet2004/segagenesis.htm VideoGameCritic.net (multiple images, especially Atari 2600 Games, and Intellivision) GameSpot MobyGames