I was honored to be allowed to present at last Saturdays Firefox OS App Day by Mozilla at ZĆ¼hlke's Office in Schlieren. The general program was a morning of presentations, and an afternoon of developers doing what they do best, creating cool stuff, in a Hackday(/afternoon).
The morning started with Henrik and Michael introducing Mozilla and explaining the general philosophy of Mozilla and what they want to achieve with Firefox OS. The most important point here, which was repeated throughout the day, was that it's not about pushing Firefox OS as a platform, but also about being able to install the same apps on Android, through the Firefox Marketplace, and to the desktop as browser windows that act like full apps.
Following that,Ā MarcĀ talked about the development environment for Firefox OS, which is for the most part the same as the dev environment for the web. Apps can be mostly tested in the browser, and Web APIs can be tested by running the Firefox OS Simulator or by pushing the app to an actual Firefox OS device. Surprisingly enough, we had over 7 Firefox OS devices around that day, so anyone playing around in the afternoon was able to test on an actual device!
After a short break,Ā Gion-AndriĀ talked about localization of apps, and what challenges come with that. In discussions later we agreed that while we, as Europeans, feel comfortable with different languages and localization, we still have quite a bit to learn about right-to-left and multibyte languages! Julian followed up with a talk about the history of the web, and how it evolved to the Web APIs we have today, and how the standardization process for these works.
Finally, I talked about the technical implementation of Web APIs, Web activities, what everything belongs in a manifest file for your web app, and how to distribute the app on the Firefox Marketplace. I tried to lay the focus on APIs that can enhance normal apps. Access to the ambient light sensor gives you the opportunity to change the stylesheet of your app to offer more contrast if you're in a bright environment, access to the battery level allows you to limit syncing action once the battery goes below a certain level. There's a lot of potential there, and I hope my talk inspired some people.
With the talks behind us we spent the afternoon hacking away on apps for Firefox OS. People split up into small teams to work on apps with a variety of different focuses. From apps that used Open Data to display public transport information or most direct way away from nearby radio towers, over games, to apps that used very basic WebAPIs to enhance the contact manager, or to replace the dialer with one that took a picture every time you picked up the phone.
Ideas were in abundance, the limiting factor for everyone was time. After only four hours of coding everyone was already asked to finish up their work so it could be presented to the group. And after a round of presentations, the jury decided on three winning projects. Liip's own Matteo De Micheli, together with Christian Suter were awarded first place (and I wasn't one of the judges ;)) for theirĀ Happy Fly Fan Edition Game, Oleg Lavrovsky received the second prize for hisĀ Tower TrackĀ app, and Jordi Boggiano, with Harry Fuecks handling marketing, were awarded third place for theirĀ What the FaceĀ app.
All in all, the whole event was a big success, with over 40 participants learning more about Firefox OS and Open Web Apps!
The slides to my talk can be foundĀ on Github, all the other information referenced throughout the day is available on theĀ event Etherpad.