No edit summary
 
(32 intermediate revisions by 3 users not shown)
Line 1: Line 1:
== MIT IAP, January 10-14, 2011 ==
= Mozilla Community Workshops =
[[Community Workshops|Overview of the Community Workshops]]


=<b>MIT IAP, January 10-14, 2011</b>=


==Overview==
* Name of the class: IAP HTML5 Game Programming Course and Competition
* Name of the class: IAP HTML5 Game Programming Course and Competition
* Coursework Component: 5 sessions, 2 hours each (total instruction time 10 hours)
* Coursework Component: 5 sessions, 2 hours each (total instruction time 10 hours)
*Schedule: everyday 11.30-1.30pm EST in room 32-141 ((http://whereis.mit.edu/)
*Schedule, everyday 11.30-1.30pm EST
*External support on [http://irc.mozilla.org/ IRC] #mitiap2011
*Room is 32-141 (32 Vassar St, room #141 (first floor) (http://whereis.mit.edu/)
<br>
*Onsite support:
*<b>Layout of the week</b>
**mitcho (Michael Erlewine), mitcho@mit.edu
**<b>January 10, 2011</b>
**office: 32-D866, Mondays during IAP or by appointment
***Lecturer: Dave Herman
*Online support:
***Contact info:
**[http://irc.mozilla.org/ IRC] #mitiap2011
****Email: dherman@mozilla.com
**Feel free to email anyone from the group of the lecturers in case you have any specific question related to the course
****IRC: dherman -- available on irc.mozilla.org at #jslang and #jsapi  
**Julie Deroche: jgoulie(IRC) or julie@mozilla.com
****Twitter: @littlecalculist
*Here's a list of some [http://en.wikipedia.org/wiki/IRC#Client_software IRC clients] depending on your OS.<br>
***Topics covered: Foundations of JavaScript programming in the browser. Language syntax and concepts. Browser environment, events. (primitives, objects and prototypes, scope and global object, closures, events and callbacks)
*<b>Emergency line for the Stata Center</b>: 617-253-7669 || Please call on Wednesday to make sure the center is open!<br><br>
***Resources:
 
****https://developer.mozilla.org/en/JavaScript/Guide
==Layout of the week==
****ECMAScript language standard (hard-core, but Ch. 15 is a useful reference for the standard JS library)
===January 10, 2011===
*****Official PDF: http://www.ecma-international.org/publications/files/ECMA-ST/ECMA-262.pdf
*Lecturer: Dave Herman
*****HTML copy: http://ecma262-5.com/ELS5_HTML.htm
*<b>Lecture notes</b>: http://www.ccs.neu.edu/home/dherman/mit-iap-2011/
****http://www.squarefree.com/shell/shell.html //Students can use it to test out JS commands in any browser. But the more recommended way would be to use the built-in developer tools of their browser (FF4 console or Firebug, Chrome console, Safari console).<br>
*Contact info:
**<b>January 11, 2011</b>
**Email: dherman@mozilla.com
***Lecturer: Boris Zbarsky
**IRC: dherman -- available on irc.mozilla.org at #jslang and #jsapi  
***Contact info
**Twitter: @littlecalculist
****Email: bzbarsky@mozilla.com
*Topics covered: Foundations of JavaScript programming in the browser. Language syntax and concepts. Browser environment, events. (object and prototype, scope and global object, closures, events and call backs, numbers, XHR)
****IRC: bz -- available on irc.mozilla.org at #developers
*Resources:
***Topics covered: The Document Object Model (DOM), the canvas element, resource loading (graphics)<br>
**https://developer.mozilla.org/en/JavaScript/Guide
**<b>January 12, 2011</b>
**https://developer.mozilla.org/En/XMLHttpRequest/Using_XMLHttpRequest //documentation on XHR, which Dave will be talking a bit during his lecture (Students may or may not need it for their games, but it's a good way to learn about using callbacks for event handling without having to learn all the complications of DOM events.)
***Lecturers: Benoit Jacob and Andor Salga
**http://www.squarefree.com/shell/shell.html //Students can use it to test out JS commands in any browser. But the more recommended way would be to use the built-in developer tools of their browser (FF4 console or Firebug, Chrome console, Safari console).
***Contact info (Benoit)
 
****Email: bjacob@mozilla.com
===January 11, 2011===
****IRC: bjacob -- available on irc.mozilla.org at #developers #gfx #audio
*Lecturer: Boris Zbarsky
***Contact info (Andor)
*Contact info
****Email: andor.salga@senecac.on.ca
**Email: bzbarsky@mit.edu
****IRC: nick:asalga  -- available on irc.mozilla.org on #Seneca #Processing.js and #C3DL Also avaiable on irc.freenode.net on #WebGL
**IRC: bz -- available on irc.mozilla.org at #developers
****Twitter: @asalga
*Topics covered: The Document Object Model (DOM), the canvas element, resource loading (graphics)<br>
****Wordpress: http://asalga.wordpress.com
*Resources:
***Topics covered: Introduction to 3D graphics with OpenGL/WebGL. Basics of shader programming
**Presentation: http://web.mit.edu/bzbarsky/www/IAP-2011-DOM-talk/intro.html
***Useful links
**HTML5 (draft): http://www.whatwg.org/specs/web-apps/current-work/multipage/
****WebGL specification: https://cvs.khronos.org/svn/repos/registry/trunk/public/webgl/doc/spec/WebGL-spec.html
**XMLHttpRequest (close to final): http://www.w3.org/TR/XMLHttpRequest/
****WebGL tutorials: http://www.learningWebGL.com
**XMLHttpRequest extensions (draft): http://dev.w3.org/2006/webapi/XMLHttpRequest-2/
****WebGL point cloud renderer: http://zenit.senecac.on.ca/wiki/index.php/XB_PointStream
**CORS (for cross-site XMLHttpRequest, draft): http://www.w3.org/TR/cors/
****Data visualizer library which uses WebGL: www.processingjs.org
**CSS 2.1 (close to final): http://www.w3.org/TR/CSS21/
****WebGL library: www.c3dl.org
**Canvas (mix of close to final and draft): http://www.whatwg.org/specs/web-apps/current-work/multipage/the-canvas-element.html
****http://www.doesmybrowsersupportwebgl.com/
**DOM Core: http://www.w3.org/TR/DOM-Level-3-Core/core.html
****http://learningwebgl.com/lessons/
**DOM Events: http://www.w3.org/TR/DOM-Level-2-Events/events.html
**<b>January 13, 2011</b>
 
***Lecturer: Chris Heilmann
===January 12, 2011===
***Topics covered: Audio tag and foundations of audio programming/mixing. Chris to spend time on video too?
*Lecturers: Benoit Jacob and Andor Salga
**<b>January 14, 2011</b>
*Lecture notes: http://people.mozilla.org/~bjacob/iap2011/slides
***Lecturer: Pascal Rettig from [http://cykod.com/ Cykod]
*Contact info (Benoit)
***Topics covered: Offline web applications, local storage, debugging and optimizing JS performance. Also to be discussed: server side Javascript (node.js) and Web sockets.
**Email: bjacob@mozilla.com
<br>
**IRC: bjacob -- available on irc.mozilla.org at #developers #gfx #audio
*<b>Competition</b>
*Contact info (Andor)
**After the course work component, students will compete in a HTML5 game programming competition. The competition will run for 4 weeks. Mozilla will host a discussion forum for students to communicate and collaborate and ask and answer questions amongst each other. The goal is for students to implement an interesting HTML5 game or visual demonstration. Whether its a create re-implementation of existing games (HTML5 pong?), or a full fledge 3D game, anything goes.  
**Email: andor.salga@senecac.on.ca
**Swag: The winning team (up to 4 team members max) will come to Mountain View, spend a w/e in SF. During their time at Mozila, the team will present its demo/game and spend some time with Brendan Eich.
**IRC: nick:asalga  -- available on irc.mozilla.org on #Seneca #Processing.js and #C3DL Also avaiable on irc.freenode.net on #WebGL
**Twitter: @asalga
**Wordpress: http://asalga.wordpress.com<br>
*Topics covered: Introduction to 3D graphics with OpenGL/WebGL. Basics of shader programming
*Notes from the lecture: https://github.com/bjacob/webgl-lessons/tree/master/iap2011<br>
*Useful links
**WebGL specification: https://cvs.khronos.org/svn/repos/registry/trunk/public/webgl/doc/spec/WebGL-spec.html
**WebGL tutorials: http://www.learningWebGL.com
**http://www.doesmybrowsersupportwebgl.com/
**http://learningwebgl.com/lessons/
*Further links
**WebGL point cloud renderer: http://zenit.senecac.on.ca/wiki/index.php/XB_PointStream
**Data visualizer library which uses WebGL: www.processingjs.org
**WebGL library: www.c3dl.org<br><br>
 
===January 13, 2011===
*Lecturer: Chris Heilmann
*Topics covered: Multimedia on the web - audio and video
*Notes from the lecture:http://www.wait-till-i.com/2011/01/16/lecturing-at-mit-about-html5-video-slides-and-lots-of-notes/
 
===January 14, 2011===
*Lecturer: Pascal Rettig from [http://cykod.com/ Cykod]
*Topics covered: Offline web applications, local storage, debugging and optimizing JS performance. Also to be discussed: server side Javascript (node.js) and Web sockets.
*Resources:
**Offline storage - http://diveintohtml5.org/offline.html
**Local storage -  http://diveintohtml5.org/storage.html
**JS Debugging /w Firebug - http://getfirebug.com/javascript
**Node.js - http://nodejs.org/
**Node Package Manager - http://npmjs.org/
**Node Realtime Sockets Module -  http://socket.io/
*Notes from the lecture: http://www.slideshare.net/cykod/javascript-everywhere
*Further notes from the class: http://www.slideshare.net/cykod/vector-graphics-on-the-web-svg-canvas-css3
 
==Competition==
===Summary===
After the course work component, students will compete in a HTML5 game programming competition. Mozilla will host a discussion forum for students to communicate and collaborate and ask and answer questions amongst each other (irc.mozilla.org, #mitiap2010). The goal is for students to implement an interesting HTML5 game or visual demonstration. Whether its a create re-implementation of existing games (HTML5 pong?), or a full fledge 3D game, anything goes. <br>
===Prize===
The winning team (up to 4 team members max) will come to Mountain View and spend a w/e in SF. During their time at Mozila, the team will present its demo/game and spend some time with Brendan Eich. We will also offer a 1K stipend to the winning team to make sure you enjoy your time in sunny California. One last piece of swag will be a signed copy of John Resig's latest book: [http://jsninja.com/ Secrets of the JavaScript Ninja]
===Criteria for the competition===
*Deadline is February 20, 2011
*Teams composition: up to 4 students
*Use of existing libraries allowed, but you may not copy existing games
=== Games Gallery ===
 
[[Dots - Team Blobby]] <br> [[HTML5 Demo - Team Tom]]<br> [[QRticullis - Team Viral Ecology]]

Latest revision as of 20:21, 29 November 2011

Mozilla Community Workshops

Overview of the Community Workshops

MIT IAP, January 10-14, 2011

Overview

  • Name of the class: IAP HTML5 Game Programming Course and Competition
  • Coursework Component: 5 sessions, 2 hours each (total instruction time 10 hours)
  • Schedule, everyday 11.30-1.30pm EST
  • Room is 32-141 (32 Vassar St, room #141 (first floor) (http://whereis.mit.edu/)
  • Onsite support:
    • mitcho (Michael Erlewine), mitcho@mit.edu
    • office: 32-D866, Mondays during IAP or by appointment
  • Online support:
    • IRC #mitiap2011
    • Feel free to email anyone from the group of the lecturers in case you have any specific question related to the course
    • Julie Deroche: jgoulie(IRC) or julie@mozilla.com
  • Here's a list of some IRC clients depending on your OS.
  • Emergency line for the Stata Center: 617-253-7669 || Please call on Wednesday to make sure the center is open!

Layout of the week

January 10, 2011

  • Lecturer: Dave Herman
  • Lecture notes: http://www.ccs.neu.edu/home/dherman/mit-iap-2011/
  • Contact info:
    • Email: dherman@mozilla.com
    • IRC: dherman -- available on irc.mozilla.org at #jslang and #jsapi
    • Twitter: @littlecalculist
  • Topics covered: Foundations of JavaScript programming in the browser. Language syntax and concepts. Browser environment, events. (object and prototype, scope and global object, closures, events and call backs, numbers, XHR)
  • Resources:

January 11, 2011

January 12, 2011

January 13, 2011

January 14, 2011

Competition

Summary

After the course work component, students will compete in a HTML5 game programming competition. Mozilla will host a discussion forum for students to communicate and collaborate and ask and answer questions amongst each other (irc.mozilla.org, #mitiap2010). The goal is for students to implement an interesting HTML5 game or visual demonstration. Whether its a create re-implementation of existing games (HTML5 pong?), or a full fledge 3D game, anything goes.

Prize

The winning team (up to 4 team members max) will come to Mountain View and spend a w/e in SF. During their time at Mozila, the team will present its demo/game and spend some time with Brendan Eich. We will also offer a 1K stipend to the winning team to make sure you enjoy your time in sunny California. One last piece of swag will be a signed copy of John Resig's latest book: Secrets of the JavaScript Ninja

Criteria for the competition

  • Deadline is February 20, 2011
  • Teams composition: up to 4 students
  • Use of existing libraries allowed, but you may not copy existing games

Games Gallery

Dots - Team Blobby
HTML5 Demo - Team Tom
QRticullis - Team Viral Ecology