Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Introduction to Firefox OS

Introduction to Firefox OS

This is an updated version of previous slide - "all about Firefox OS".

I gave this talk in NCKU on 2014/05/14 and focused on introduction to Firefox OS. In this slide, you can learn the rough idea of Firefox OS and our working flow.

EragonJ

May 21, 2014
Tweet

More Decks by EragonJ

Other Decks in Technology

Transcript

  1. • Mozilla Taiwan Gaia Team - Front-end developer • I

    love Javascript / Node.js and focus more on Web • Embrace open source community and contributed
 a lot on Github - Gaia,Trip.js, Stepper.js ... etc • My blog : http://eragonj.me • My twitter : https://twitter.com/EragonJ • My email : [email protected][email protected]
 EragonJ
  2. • Javascript - Focus on programming logics • HTML -

    Focus on views • CSS - Focus on styles • With these three blades, the only limitation is your imagination. Focus
  3. Responsive Web Design Desktop platform WebApp for tablet WebApp for

    mobile Image Credit : http://goo.gl/y6OJME
  4. History http://en.wikipedia.org/wiki/Firefox_OS The project proposal was to "pursue the goal

    of building a complete, standalone operating system for the open web" in order to "find the gaps that keep web developers from being able to build apps that are – in every way – the equals of native apps built for the iPhone [iOS], Android, and WP7 [Windows Phone 7]." - Andreas Gal Our CTO !
  5. Gaia Gecko Gonk WebApps, User Interface ... WebAPI, Permission manager

    ... Linux kernel, device drivers ... a.k.a. Boot to Gecko - B2G
  6. We have few options for contributors / developers to test

    their own code. Testing environments
  7. 1. Firefox OS Simulator 2. Firefox OS Emulator 3. Firefox

    OS Desktop Client 4. Firefox Nightly with custom profile 5. Firefox OS Devices Test environments
  8. • Pros 1. Easy to use. 2. Easy to setup

    working environment. 
 
 Pros & Cons • Cons 1. You can’t do too much. 2. No hardware support.
 
 

  9. • Pros 1. You can control many things. 2. You

    would know more details behind FxOS. 3. You can fake hardware related informations. Pros & Cons • Cons 1. Hard to setup the environment. 2. You need more knowledge about c / c++. 3. It changes quickly.

  10. • Pros 1. Easy to use. 2. Easy to setup

    working environment.
 
 Pros & Cons • Cons 1. You can’t do too much. 2. No hardware support.
 
 

  11. • Pros 1. For Gaia developers, you can quickly verify

    your code. 2. With developer tools. 
 Pros & Cons • Cons 1. No hardware support but you can easily fake it. 2. Have to setup environment for Gaia. 

  12. • Pros 1. You can do whatever you want and

    hack your own phone ! 
 
 
 Pros & Cons • Cons 1. You have to root your phone first. 2. You need enough knowledge of Firefox OS. 

  13. • What you see is what you get ! •

    You can write an app without knowing how to program ! • Drag & drop is your good friend ! • Install your app to see your change directly ! Appmaker
  14. 1. Write an app with Javascript / CSS / HTML

    (Don’t use Appmaker) 2. This app has to show current time with hh:mm:ss YYYY/MM/DD 3. [Bonus] 1. If you still have time, try to show more information at the same time like weather / temperature / timezone … etc. 2. Try to publish your app onto our marketplace. Homework
  15. • Check Time Bound • Plan → Develop → Fix

    bugs → Release (3 months per release) • Plan : PM will create user stories and mark them must/nice-to-have • Develop : Developers will commit features on schedule • Fix bugs : Fix issues, late features • Release : Push this version to market Development cycle
  16. • Clone Gaia from Github • Follow Firefox OS build

    prerequisites to set up your environment • Make sure all unit tests passed under Gaia folder (Because when developing Gaia, we have to follow the rule to make sure Travis get green light before committing changes.) • Use Nightly Firefox to access our profile-debug and make sure we can invoke Gaia successfully. Step by step https://developer.mozilla.org/en-US/docs/Mozilla/Firefox_OS/Firefox_OS_build_prerequisites
  17. • Mozilla is an international company composed of Mozillians in

    different timezone, so we need a platform to chat discuss and track our comments and bug status. • Bugzilla is very powerful and you can do anything on it like : • add attachments, set milestones • set bug dependencies, review bugs • ... etc • Eat your own dog food :) Why Bugzilla
  18. Terms on Bugzilla Each verb will be accompanied by three

    states. ! 1. question mark ( ? ) means asking for something 2. minus mark ( - ) means something is rejected 3. plus mark ( + ) means something is granted ! Common used verbs would be review, feedback, ui-review
  19. It seems that we are on the right direction !

    Let’s start hacking ! Good
  20. Squash finished ! Ok , right now you just finished

    the process of squashing commits. ! The reason why we have to do this is to make sure we can easily track bug all in one commit.
  21. I am afraid to send empty PR because all Gaia

    developers will see it and be tracked on IRC... xD ...