Engagement/Developer Engagement/FirefoxOS-porting-training: Difference between revisions

no edit summary
No edit summary
No edit summary
Line 2: Line 2:


This is a training outline for the invite-only events around porting apps for Firefox OS. The training could be one day or two, depending on what we want to do.
This is a training outline for the invite-only events around porting apps for Firefox OS. The training could be one day or two, depending on what we want to do.
== Before: Briefing e-mail to explain how to your environment set up, prerequisites, etc. ==


== Day 1: Setting the stage and sharing knowledge ==
== Day 1: Setting the stage and sharing knowledge ==
Line 11: Line 13:
* Introducing the agenda of the event
* Introducing the agenda of the event
* Explanation of facilities - getting people connected, ensuring power
* Explanation of facilities - getting people connected, ensuring power
* Who are you, optionally what app are you building


=== 10:15 - 10:40 Presentation: What makes a good HTML5 app ===
=== 10:15 - 10:40 Presentation: Firefox OS ===


* Explanation of differences to native and desktop apps
* Speaker: B2G Engineer
* Explanation of the must haves of a good HTML5 app:
* Quick introduction to the architecture of the Firefox OS, why we do it and where to find information and help.  
** Device specific handling (touch vs. mouse)
** Offline capability, atomic updates and quick first load experience
** Full screen
** Good UI patterns (lists, panels, visual feedback, fingers not covering important parts)
 
=== 10:45 - 11:10 Presentation: Firefox OS ===
 
* quick introduction to the architecture of the Firefox OS, why we do it and where to find information and help.  
* Introduction of the communication channels in case you need information after the event
* Introduction of the communication channels in case you need information after the event
* How to get your hands on Firefox OS
* How to get your hands on Firefox OS
Line 29: Line 24:
** Emulation / r2d2b2g
** Emulation / r2d2b2g
** Introduction of test devices and how to test on Firefox OS (keys, handling)
** Introduction of test devices and how to test on Firefox OS (keys, handling)
** How to get apps onto device
=== 13:00 - 14:40 Presentation: Web APIS ===
* Speaker: Tech Evan
* Overview of all the Web APIs supported in Firefox OS
* MozApps API overview
* Demo code, examples of how to get them to work.
* Where and how to file bugs
=== 10:45 - 11:10 Presentation: What makes a good Firefox OS app ===
* Speaker: Tech Evan/Gaia Engineer
* Explanation of the must haves of a good Firefox OS app:
** Device specific handling (touch vs. mouse)
** Offline capability, atomic updates and quick first load experience
** Full screen
** Good UI patterns (lists, panels, visual feedback, fingers not covering important parts)
** Performance Tips & Tricks
** Guided tour of built-in app
** Detailed information on the manifest format


=== 11:15 - 12:00 Presentation: Infrastructure ===
=== 11:15 - 12:00 Presentation: Infrastructure ===


* Speaker: Marketplace Eng or Product Lead
* Explanation of the Firefox marketplace and how to submit apps
* Explanation of the Firefox marketplace and how to submit apps
* Detailed explanation and demo of how an app submission works
* Detailed explanation and demo of how an app submission works
* Introduction to payment systems  
* Introduction to payment systems  
* Detailed information on the manifest format and the way to update your apps in the future
* Updating your apps in the future
* Introduction to the idea of findable apps on the web
* Introduction to the idea of findable apps on the web


=== 12:00 - 13:00 Lunch (either provided or getting people out to hunt squirrels) ===
=== 12:00 - 13:00 Lunch (either provided or getting people out to hunt squirrels) ===
=== 13:00 - 14:40 Presentation: Web APIS ===
* Overview of all the Web APIs supported in Firefox OS
* Demo code, examples of how to get them to work.
* Where and how to file bugs


=== 15:00 - 15:50 Presentation: Pitfalls and helpers ===
=== 15:00 - 15:50 Presentation: Pitfalls and helpers ===


* Speaker: Tech Evan
* Introducing gotchas of HTML5 app development (broken AppCache issues)
* Introducing gotchas of HTML5 app development (broken AppCache issues)
* Introducing helper libraries and tools to use (Lawnchair for local storage, three.js...)
* Introducing helper libraries and tools to use (Lawnchair for local storage, Gecko-friendly libraries (Modernizr))
* Explaing Firefox OS specific Gotchas - how to get peak performance out of the hardware
* Other helpers: AppCache generator, etc.


=== 15:50 - 16:00 break ===
=== 15:50 - 16:00 break ===


=== 16:00 - 17:00 Team presentations - who will build what? ===
=== 16:00 - 17:00 Problem Round Table ===


* Each invited group should do a quick presentation of the apps they already did or what they are trying to build
* Speaker: experts from earlier in the day
* Talk about what problems you've experienced or anticipate and discuss workarounds


=== 17:00- 18:30 Workshop: Installing development environments and getting to know Firefox OS ===
=== 17:00- 18:30 Workshop: Installing development environments and getting to know Firefox OS ===


* Helping all the people who came to install their dev environment, distribute phones and show how to test on them ===
* Helping all the people who came to install their dev environment, distribute phones and show how to test on them


=== 18:30 - 19:00 Group organisation - partnering Mozilla people with teams and planning the next day activities in groups ===
=== 18:30 - 19:00 Group organisation - partnering Mozilla people with teams and planning the next day activities in groups ===
Line 75: Line 88:
* Explanation of facilities - who is where, how to get what
* Explanation of facilities - who is where, how to get what


=== 10:15 - 13:00 Group work ===
=== 10:30 - 13:00 Group work ===


=== 13:00 Lunch ===
=== 13:00 Lunch ===
Line 83: Line 96:
=== 16:00 - 17:00 Results and findings presentations ===
=== 16:00 - 17:00 Results and findings presentations ===


* Speaker: Tech Evan
* Quick presentations by each team about what they achieved and where they got stuck
* Quick presentations by each team about what they achieved and where they got stuck
* Presentation of ways to work around issues encountered
* Presentation of ways to work around issues encountered
* Target date for submission; prize for meeting target


=== 17:00 - 17:30 Keep in contact presentation ===
=== 17:00 - 17:30 Keep in contact presentation ===


* Speaker: Tech Evan
* Explanation of the ongoing ways to contact the team and get help
* Explanation of the ongoing ways to contact the team and get help
* Explanation on how to contribute to B2G and Web APIs
* Explanation on how to contribute to B2G and Web APIs
* Introduction of other schemes planned for developers
* Introduction of other schemes planned for developers
* Go-to resources for issue resolution


=== 17:30 Off to the pub/food ===
=== 17:30 Off to the pub/food ===
Confirmed users
271

edits