Innovative Tools for Collaboration & Game Programming: JavaWIDE & the FANG Engine

From JavaWIDE

Jump to: navigation, search

Innovative Tools for Collaboration & Game Programming:

JavaWIDE & the FANG Engine

High School Teacher Workshop

April 8, 2010
8:15-4:30pm
Georgia Gwinnett College
Building B Room 1600

Image:FANGEngine.png

Contents

Innovative Tools for Collaboration & Game Programming: JavaWIDE & the FANG Engine is a workshop for Advanced Placement Computer Science teachers and student teachers who deliver introductory programming courses online and in the traditional classroom.

Drs. Jam Jenkins, Evelyn Brannock, Sonal Dekhane, Adrian Heinz and Jim Rowan present this workshop on April 8, 2010 with the assistance of student interns Brian Wetzel and Alan Davis.

Overview

The first part of the workshop covers the Java Wiki Integrated Development Environment (JavaWIDE), a zero-install web-based development environment that supports concurrent editing (multiple people editing the same source code at the same time). Through hands-on activities we will demonstrate strategies for using the concurrent editing system, how to safely sharing a common code base, using the integrated version control system, accessing integrated tutorials and Javadoc, handling file input/output, how to write GridWorld applications, and other commonly used features.

After becoming familiar with JavaWIDE, the workshop will demonstrate how to use the Freely Available Networked Game Engine (FANG). This will include how to make and add sprites to the screen, animating sprites, getting user input, writing multi-player networked games, scheduling and responding to game events, and other commonly used features.

Throughout the workshop participants will learn about the technology behind these tools and will learn about additional resources that can be used after the workshop ends such as video tutorials, discussion boards, and developer blogs. All attendees will be given the opportunity to have a JavaWIDE site set up for use by their local school.

Schedule, Registration & PLU Credits

Up to 30 teachers are welcome to attend both the morning and afternoon sessions for 1 PLU or just the morning session for 0.5 PLU (but not just the afternoon session since we'll be using JavaWIDE in it). Teachers who would like to earn PLU credits should register here and register through the through Career, Technical, and Agricultural Education Resource Network (under the Workshop Catalog select 'Business & Computer Science') and complete 4 additional hours of a special performance assignment by May 8, 2010.

Click here to register. You should receive an email confirmation within 3 days of registering. All registered teachers will be listed in the table below. This workshop includes complimentary breakfast, lunch and coffee breaks.

This workshop contains a significant amount of hands-on activities - all teachers should bring their laptop (laptops will be provided if needed).

Workshop Schedule
Morning Session
Java Wiki Integrated Development Environment (JavaWIDE)
Time Type    Description
8:15-9:00 Registration/Breakfast (B Building Atrium)
9:00-9:15 L Introductions/Overview
9:15-9:30 HL Hello World/GridWorld in JavaWIDE
9:30-10:00 PL Demonstration of Major JavaWIDE Features
10:00-10:30 HP Using the Concurrent Editing Features
10:30-10:45 Coffee Break (B Building Atrium)
10:45-11:15 E How Concurrent Editing Works – Operational Transformation
11:15-11:30 LP Safe File I/O in JavaWIDE
11:30-11:45 E Regular Expressions and XML in JavaWIDE
11:45-12:00 PL Questions/Discussion
12:00-1:00 Lunch (B Building Atrium)
Afternoon Session
Freely Available Networked Game Engine (FANG)
Time Type    Description
1:00-1:15 PL FANG Engine Overview
1:15-1:30 L Sprites Overview
1:30-1:45 L Transformers Overview
1:45-2:15 HL Make an Animation
2:15-2:30 L User Input
2:30-3:00 HL Whack-a-Sprite
3:00-3:15 Coffee Break (B Building Atrium)
3:15-3:30 EL Multiplayer Demo/How FANG Engine Networks Games
3:30-4:00 HL Individual Practice/Sign up for JavaWIDE Site
4:00-4:15 L Video Resources for the FANG Engine/JavaWIDE
4:15-4:30 PL Questions/Discussion from Morning Session
H – Hands on Activities, E – Explaining the Algorithms Behind the Tools, L – Learning to Use the Tools, P – Pedagogical Ideas/Focused Teaching Tips

Directions to the Workshop

The workshop will be in the B Building Room 1600 of Georgia Gwinnett College at 1000 University Center Lane, Lawrenceville, GA 30043.

You can park in the Faculty/Staff parking area. We will have temporary parking permit that you can use for the day. I'm working on trying to email these out to you so that you can just print them, but otherwise the permits will be available in Building B Room 1600.

Goals

Teachers who complete the workshop will

  1. Learn about the basic features of JavaWIDE.
  2. Learn about the basic features of the FANG Engine.
  3. Program two or more applications/applets using JavaWIDE and the FANG Engine
  4. Learn about the technology behind JavaWIDE & the FANG Engine.

Competencies

Upon completing the workshop, teachers will be able to

  1. Use JavaWIDE to create and post an application to a web site.
  2. Use the concurrent editing feature of JavaWIDE.
  3. Create a simple game with the FANG Engine that includes animation and user input.
  4. Give a high level description of how operational transforms support concurrent editing.
  5. Give a high level overview of the FANG Engine networks user input.

Assignment

Teachers who plan to earn PLU credits must complete 4 additional hours of activities using JavaWIDE and the FANG Engine after the conclusion of the workshop. These should be completed no later than May 8, 2010.

  1. Wacky Wackadot - teachers should complete the Wackadot assignment.
    1. Teachers must work in pairs or trios.
    2. Groups must arrange to work at the same time using the concurrent editor, either working remotely or co-located.
      Due to firewall restrictions, this may require the teachers to work from home (instead of school).
    3. After completing the basic Wackadot, the teachers should customize the stationary dots by animating them with their choice of transformers (which should include a WrapTransformer).
  2. In a comment at the bottom of the Wackadot assignment, teachers should answer two questions in short paragraphs in their own words:
    1. What is an operational transform as related to concurrent editing?
    2. How does user input get transmitted in the FANG Engine?
  3. Teachers must submit their assignment using the instructions given during the workshop.

Resources

Registered Teachers

After the workshop all attendees will be invited to get a JavaWIDE site set up for their school. When these have been made, they will be linked below. If you attended the workshop and would like a site setup for your school, send an email to Dr. Jam Jenkins (cjenkins@ggc.edu).

Teacher County High School JavaWIDE Site
Dan Stehr Gwinnett Grayson High School http://ghs.javawide.org
Bruce Nicol Cobb Osborne High School http://ohs.javawide.org
Thomas Butler Conyers Rockdale County HS http://rhs.javawide.org or http://rockdalehighskool.javawide.org
Steven Thedford Georgia Georgia Virtual School http://gavs.javawide.org
Stephanie Arrington Gwinnett Parkview High School
Gail Chapman Henry Luella High School http://luellahs.javawide.org

JavaWIDE sites have been set up for schools from coast to coast and around the world.

Meet the Presenters

Dr. Jam Jenkins
Dr. Jenkins is the co-author of the textbook Introductory Programming with Simple Games: Using Java and the Freely Available Networked Game Engine, creator and developer of the Freely Available Networked Game (FANG) Engine, and the creator of the Java Wiki Integrated Development Environment (JavaWIDE). His research interests include developing collaborative software, user interface design, innovation in educational technologies, server administration, security in Web 2.0 applications, and developing engaging tools and techniques for teaching programming. He has taught at public and private colleges and universities, taught high school students both online and in the traditional classroom, developed training workshops for high school teachers locally and nationally, and instructed gifted middle and high school students in summer enrichment programs across the nation and in India.

Visit Dr. Jam Jenkins' Website

Dr. Evelyn Brannock
Dr. Brannock is an Assistant Professor of Information Technology at Georgia Gwinnett College. Brannock's primary interests include digital signal processing, with an emphasis on the discrete wavelet transform, data security, especially in the area of watermarking, bioinformatics, software engineering and model driven architecture (MDA). Before obtaining her Ph.D. in computer science at Georgia State University, Brannock worked in the field of information technology for over two decades. Her career started with training and consulting for an object oriented COBOL application development toolset. Her last position was as an integration architect with expertise in Service Oriented Architecture (SOA) and Business Process Management (BPM). The bulk of her experience has been with the Fortune 500. She was also a founder, owner and president of MouseKids. Brannock has published several papers and journal articles in the fields of digital image processing, watermarking, and bioinformatics. She has been invited to give presentations about model driven architectures (MDA). Brannock's teaching philosophy is best summarized by Plutarch; "The mind is not a vessel to be filled, but a fire to be ignited."

Visit Dr. Evelyn Brannock's Website

Dr. Sonal Dekhane
Dr. Dekhane is an Assistant Professor of Information Technology at Georgia Gwinnett College. She received her Ph.D. in computer science from Tulane University, New Orleans. At GGC, Dekhane teaches courses in the IT Software Development track. Her teaching style is inspired by the following quote: "Tell me and I'll forget; show me and I may remember; involve me and I'll understand."

Visit Dr. Sonal Dekhane's Website

Dr. Adrian Heinz
Dr. Heinz is an Assistant Professor of Information Technology at Georgia Gwinnett College. He holds a systems engineering degree from Catholic University of Cordoba, Argentina and masters of science and doctor of education (Ed. D.) degrees with a major in computer science from Ball State University. Heinz's primary interests include programming in C#, Visual Basic .Net, Java and Web Development using HTML, JavaScript, ASP and Adobe Flash. Other interests are E-learning, software engineering, social networking, computer graphics and graph theory. His teaching philosophy places students at the center of the learning process by creating a pleasant environment, where everyone is encouraged to participate, discuss ideas and work with peers. In this way, students learn to solve problems, express their views and acquire critical thinking skills. He is also a strong supporter of the use of technology in education and always strives to incorporate the latest technological trends into the classroom. During his academic career, Heinz has worked on a variety of research projects in the areas of graph theory, model checking and E-learning. Part of his research work in the first two areas has led to the publication of several papers and presentations in national and international conferences including Boca Raton (Florida); Vienna (Austria); Hanoi and Ho Chi Minh City (Vietnam) as well as Tamil Nadu (India). In addition, he has over five years of experience working in the receivables management industry writing custom database applications for financial institutions. Heinz is also an avid learner of languages. He is fluent in English and Spanish, possesses an intermediary level of French, and is currently learning Japanese.


Visit Dr. Adrian Heinz's Website

Dr. Jim Rowan
Dr. Rowan's work at GGC centers around teaching. To make this interesting and challenging, Rowan tends to push students out of their comfort zones by incorporating more unconventional input devices like touch-sensitive screens. He will also have them design applications for unfamiliar user populations like pre-literate children or the elder population.


Visit Dr. Jim Rowan's Website





Views
Personal tools
Add to 
del.icio.usAdd to 
diggAdd to 
FacebookAdd to 
favoritesAdd to 
GoogleAdd to 
MySpaceAdd to 
PrintAdd to 
SlashdotAdd to 
StumbleUponAdd to 
Twitter