Gaming in the Classroom: Essential Elements Pitfalls Bad/Successes Good

Post on 11-Jan-2016

20 views 0 download

Tags:

description

Richard Liston Ursinus College. Gaming in the Classroom: Essential Elements Pitfalls Bad/Successes Good. $ whoami. $ whoami. Currently: CS Professor/Networking Researcher. $ whoami. Currently: CS Professor/Networking Researcher Formerly: Musician. $ whoami. - PowerPoint PPT Presentation

Transcript of Gaming in the Classroom: Essential Elements Pitfalls Bad/Successes Good

Richard ListonUrsinus College

Currently: CS Professor/Networking Researcher

Currently: CS Professor/Networking Researcher

Formerly: Musician

Currently: CS Professor/Networking Researcher

Formerly: Musician• IF (“Adventure”)

Currently: CS Professor/Networking Researcher

Formerly: Musician• IF (“Adventure”)• Hofstadter: “Gödel, Escher, Bach”

Currently: CS Professor/Networking Researcher

Formerly: Musician• IF (“Adventure”)• Hofstadter: “Gödel, Escher, Bach”• Math/CS…and still love learning…

NITLE Seminar, Summer 2005Incorporated into my courses (various sources)

▪ Intro to CS: quiz game (User I/O, designing for generality: reading from file)

▪ Data Structures: artificial life (arrays, simple image file formats), minesweeper (recursion, 2D arrays)

▪ Computer Networks: networked QuadraPong (protocol design/implementation, protocol interoperability)

▪ CIE: Interactive Fiction (explore moral dilemmas w/Inform 7)

▪ Students play games

▪ Students play games▪ Professors play games

▪ Students play games▪ Professors play games▪ Designing/implementing games is fun

for all

▪ Students play games▪ Professors play games▪ Designing/implementing games is fun

for all▪ Advantages (disadvantages?) of peer

reviews▪ Learning value

ImmersionActive thoughtRequires broad knowledge

Game domain Interdisciplinary skills

Learn good process: complete design

• Experience: successes and challenges

• Possible projects in other disciplines (non-CS)

• Some recommendations• Discussion

Assignment:• Choose a topic about which you have a

great deal of knowledge• Create a series of questions with

multiple choice answers• Devise a scoring system• Administer the quiz• Print scores and some associated

comment about the score

All working games

All working games Topics

Math Music Television Shows Sports: baseball, hockey Geography Food “The Godfather”

Time to grade: plan this!

Time to grade: plan this! Scoring system too open-ended

AKA “Artificial life”Assignment:

Use arrays (low-level data structure) Read file describing initial conditions and

rules Write out image representing

“generations”

Beautiful picturesExperience with emergent propertiesWork with image file formatsWork with low-level data structures

Time to grade: plan this!Scoring system too open-endedShort time, many new detailsComplex: risky!

Assignment:Design network protocolUse real IETF processModify game code with protocolTest against other implementations

Game Engine Credit: Scott Kulp

Game Engine Credit: Scott Kulp

Mostly properly working gamesLearn about design in the real worldWork with real-time protocolsSolid software development processPlay during exam time!

Time to grade: plan this!Scoring system too open-endedShort time, many new detailsVery complex: risky!Managing group dynamics

Time to grade: plan this!Scoring system too open-endedShort time, many new detailsVery complex: risky!Managing group dynamicsQuiet during exam period!

Languages: To create: must know vocabulary, structure Can reinforce, steadily increase difficulty

Sciences Solve math/physics/chemistry puzzles Anthropomorphize photosynthesis

History: create historically accurate virtual world Fixed in time Historical events unfold over time

Clear goal Realistic time frame Access to information

Domain of topic Facility with development environment

Process Schedule Revision control: SubVersion Shipping Product? Maintenance?

Employ solid software engineering practice (optimal)

Employ solid software engineering practice (optimal) Choose teams well

▪ Different skills (may not be able to)

Employ solid software engineering practice (optimal) Choose teams well

▪ Different skills (may not be able to) Good idea (aye, there’s the rub)

Employ solid software engineering practice (optimal) Choose teams well

▪ Different skills (may not be able to) Good idea (aye, there’s the rub) Design/design review

▪ User studies using prototype (HCI techniques)▪ Thinkaloud: user talks while using the product▪ Task Completion: user completes specific tasks

according to script

Employ solid software engineering practice (optimal) Choose teams well

▪ Different skills (may not be able to) Good idea (aye, there’s the rub) Design/design review

▪ User studies using prototype (HCI techniques)▪ Thinkaloud: user talks while using the product▪ Task Completion: user completes specific tasks

according to script Implement/review/debug

Employ solid software engineering practice (optimal) Choose teams well

▪ Different skills (may not be able to) Good idea (aye, there’s the rub) Design/design review

▪ User studies using prototype (HCI techniques)▪ Thinkaloud: user talks while using the product▪ Task Completion: user completes specific tasks

according to script Implement/review/debug Testing: user studies with real system

Know your system Use Features Capabilities (don’t exceed)

Don’t Panic! They’re learning: Group skills (not all students enter

college with the skills that would make them a good team members)

Development process (not just for CS) Use of a game development

environment; knowing something about what software can do won’t hurt anyone

• Plan a reasonable, complete schedule (How??)• Keep eyes open for red flags of schedule slip• Watch for group “issues”• Make the group think through the tasks in detail

▪ Too easy to say “we’ll get it done in time”▪ Because we can imagine it, we can do it?

• Implement when the design is complete• But is delay of gratification still fun? Yes, with support.

• Keep everyone focused on a common end result