This document provides an overview of the Boot to Gecko (B2G) project from Mozilla. B2G is an open source operating system based on HTML5 and JavaScript that aims to bring the power of the web to mobile devices. It describes key components of B2G like Gecko and Gaia, and highlights many upcoming web technologies like WebRTC, WebUSB and WebNFC that B2G will support through JavaScript APIs. The document discusses why B2G is important for the future of the open web, and provides a demonstration of its current capabilities.
Geek Meet - Boot to Gecko: The Future of Mobile?Robin Hawkes
In this talk I will outline Mozilla’s Boot to Gecko project that aims to revolutionise the way we develop for mobile devices. I’ll highlight the key technologies involved in its creation and explain why a mobile experience created with HTML and JavaScript is a good idea.
MDN Hackday London - Boot to Gecko: The Future of MobileRobin Hawkes
In this talk Rob will outline Mozilla’s Boot to Gecko project that aims to revolutionise the way we develop for mobile devices. I’ll highlight the key technologies involved in its creation and explain why a mobile experience created with HTML and JavaScript is a good idea.
Tomorrow's Web and Future Technologies - WDC2011Robin Hawkes
The future of the Web is awesome, it's as simple as that. Just think about it, we'll soon have the ability to construct an entire phone OS with HTML5 and JavaScript. Now that is seriously cool! But what are the technologies that are coming, and which ones should you be keeping an eye on? In this session, Rob will give you an insight into the future of the Web, highlighting some the key technologies that are moving it into a new era.
NY HTML5 - Game Development with HTML5 & JavaScriptRobin Hawkes
In this talk I will bring you up to speed with using HTML5 tools and techniques for game development. I will discuss some basic and advanced techniques and highlight the key lessons that I've learnt, as well as the technologies and game engines that you should be aware of.
Geek Meet - Boot to Gecko: The Future of Mobile?Robin Hawkes
In this talk I will outline Mozilla’s Boot to Gecko project that aims to revolutionise the way we develop for mobile devices. I’ll highlight the key technologies involved in its creation and explain why a mobile experience created with HTML and JavaScript is a good idea.
MDN Hackday London - Boot to Gecko: The Future of MobileRobin Hawkes
In this talk Rob will outline Mozilla’s Boot to Gecko project that aims to revolutionise the way we develop for mobile devices. I’ll highlight the key technologies involved in its creation and explain why a mobile experience created with HTML and JavaScript is a good idea.
Tomorrow's Web and Future Technologies - WDC2011Robin Hawkes
The future of the Web is awesome, it's as simple as that. Just think about it, we'll soon have the ability to construct an entire phone OS with HTML5 and JavaScript. Now that is seriously cool! But what are the technologies that are coming, and which ones should you be keeping an eye on? In this session, Rob will give you an insight into the future of the Web, highlighting some the key technologies that are moving it into a new era.
NY HTML5 - Game Development with HTML5 & JavaScriptRobin Hawkes
In this talk I will bring you up to speed with using HTML5 tools and techniques for game development. I will discuss some basic and advanced techniques and highlight the key lessons that I've learnt, as well as the technologies and game engines that you should be aware of.
Open Web Apps and the Mozilla Labs Apps projectRobin Hawkes
In this talk Rob will introduce the Mozilla Labs Apps project and the related technologies that are helping it happen. The aim of this project is to produce an apps eco-system on the Web that uses open technologies and gives developers and users the freedom to sell and use apps in the way they want.
Aside from the conceptual issues that this project tackles, Rob will also cover some of the JavaScript APIs that are being worked on to provide the necessary functionality for apps. It is these APIs that allow developers to create an immersive experience within their apps that they wouldn't have been able to achieve in the browser until now.
Digital Humanities in a Linked Data World - Semantic Annotations
Dov Winer
1st International Seminar on Digital Humanities
University of Sao Paulo - Brasiliana Mindlin Library
October 2013
Rawkets: An inside look at a multiplayer HTML5 gameRobin Hawkes
In this talk Rob will take you on a journey through the development of Rawkets, his HTML5 and JavaScript multiplayer space shooter. He will place particular focus on the issues that plagued the early progress, as well as the subsequent solutions that helped make it the ever-so-slightly addictive game that it is today. Expect theory, examples, and plenty of code in this light-hearted look at game development with the latest Web technologies.
HTML5 Technologies for Game Development - Web Directions CodeRobin Hawkes
With Angry Birds, Cut the Rope and other blockbuster games now working in modern web browsers, it’s fair to say native, browser based gaming has arrived for real. But how do they do it? In the session, Mozilla Technical Evangelist Rob Hawkes looks at the features now in your browsers to help develop games (and other interactive web based experiences) including canvas and WebGL, HTML5 Audio, Pointer Lock and the Gamepad API.
In this talk, I introduce D3.js as a powerful tool for beautiful data visualisation in the browser. I highlight some particularly impressive visualisations created using D3.js, and also look into some of the more obscure things it can be used for.
Open Web Apps and the Mozilla Labs Apps projectRobin Hawkes
In this talk Rob will introduce the Mozilla Labs Apps project and the related technologies that are helping it happen. The aim of this project is to produce an apps eco-system on the Web that uses open technologies and gives developers and users the freedom to sell and use apps in the way they want.
Aside from the conceptual issues that this project tackles, Rob will also cover some of the JavaScript APIs that are being worked on to provide the necessary functionality for apps. It is these APIs that allow developers to create an immersive experience within their apps that they wouldn't have been able to achieve in the browser until now.
Digital Humanities in a Linked Data World - Semantic Annotations
Dov Winer
1st International Seminar on Digital Humanities
University of Sao Paulo - Brasiliana Mindlin Library
October 2013
Rawkets: An inside look at a multiplayer HTML5 gameRobin Hawkes
In this talk Rob will take you on a journey through the development of Rawkets, his HTML5 and JavaScript multiplayer space shooter. He will place particular focus on the issues that plagued the early progress, as well as the subsequent solutions that helped make it the ever-so-slightly addictive game that it is today. Expect theory, examples, and plenty of code in this light-hearted look at game development with the latest Web technologies.
HTML5 Technologies for Game Development - Web Directions CodeRobin Hawkes
With Angry Birds, Cut the Rope and other blockbuster games now working in modern web browsers, it’s fair to say native, browser based gaming has arrived for real. But how do they do it? In the session, Mozilla Technical Evangelist Rob Hawkes looks at the features now in your browsers to help develop games (and other interactive web based experiences) including canvas and WebGL, HTML5 Audio, Pointer Lock and the Gamepad API.
In this talk, I introduce D3.js as a powerful tool for beautiful data visualisation in the browser. I highlight some particularly impressive visualisations created using D3.js, and also look into some of the more obscure things it can be used for.
Java based Cross-Platform Mobile DevelopmentPeter Friese
Studies report there are more than 100 tools and frameworks for cross-platform mobile development. Most of them are JavaScript/HTML5 based, but are there actually any options for "plain old Java developers" that allow you to write mobile apps for multiple platforms in Java?
After a brief overview of the general architectural patterns in cross platform mobile development, we will dig a little deeper and have a look at some Java-based frameworks that claim to make the "write once, run anywhere" promise a reality. In particular, I will demonstrate GWT mobile and Tabris (formerly known as RAP mobile).
The session will consist of a few introductory slides outlining the architectural differences between the various options and a lot of live demos of the tools.
MDN Hackday London - Open Web Games with HTML5 & JavaScriptRobin Hawkes
In this talk I will give you an overview of the new role that browsers are adopting to support games and the technologies and processes that are helping that happen. This includes areas like 2D graphics with canvas, console-like 3D games with WebGL, gamepad support, immersive full-screen experiences, multiplayer games with WebSockets, and much more.
Which are the possible business models for Open projects like Open Design and Open Hardware? And what about running a Fab Lab or a similar place? Which strategies can we adopt in order to have successful DIY
Craft projects? People that want to organize collaborative spaces or companies need to think about how to run their business in a sustainable way, but even single or groups of Open Designers could get more insights for their project if they discover the possible business models. Let's have a look at the existing markets, the common business models and the possible future scenarios.
Mark Daemen Corelio, Current status & strategy of newspaper company"Mobile Monday Brussels
Corelio: Current status & strategy of newspaper company"
by Mark Daemen Corelio Connect
Presented during
1/3 Mobile Publishing & Advertising. Are you ready for the breakthrough in 2010?
Joint networking event of Mobile Monday Brussels and IAB (Internet Advertising Bureau)
Brussels
AI and Design Vol. 2: Navigating the New Frontier - Morgenbooster1508 A/S
Join us for the eagerly anticipated Volume 2 of our Morgenbooster, where we delve deeper into the rapidly evolving landscape of AI in design. This session promises to be an exploratory journey through the latest advancements within AI.
ViziCities - Lessons Learnt Visualising Real-world Cities in 3DRobin Hawkes
ViziCities is an open-source 3D city visualisation platform powered by JavaScript, WebGL and many other cutting-edge Web technologies. Think SimCity meets the real world!
In this talk, Robin Hawkes, ViziCities’ creator will highlight the development issues experienced along the way and show you how he overcame them – ranging from how you tackle the realtime processing of thousands of 3D buildings without locking up the browser, to how you visualise the entire world without needing a server or your own geographic data source.
Understanding cities using ViziCities and 3D data visualisationRobin Hawkes
ViziCities is an open-source 3D city visualisation platform powered by open data, WebGL and many other cutting-edge Web technologies. ViziCities not only allows you to explore any city in the world in 3D in your browser, it also lets you overlay data like live transport, crime, pollution, live social data, and weather. Think SimCity meets the real world!
In this talk, Robin Hawkes, ViziCities’ founder will introduce you to the project and demonstrate its powerful methods for visualising the complex data locked within our cities.
WebVisions – ViziCities: Bringing Cities to Life Using Big DataRobin Hawkes
Imagine being able to explore any city in the world in 3D in your browser. Now imagine being able to overlay data onto your city - transport, crime, pollution, social data and weather - all live and in real time…and it was open source!
In this session Peter and Robin will talk about how they're creating ViziCities, an open-source, 3D visualisation platform, combining cutting-edge web technologies with open data to create beautiful visualisations. If you can’t imagine it…imagine SimCity for real life.
We’ll discuss the power that new types of visualisation present for all of us to better see, understand and make decisions in our worlds.
We’ll guide you through the technologies we're using, including D3 and WebGL, the design approach we’re using and share some important lessons learnt along the way.
By the end, we hope to have inspired you to start experimenting with these technologies to create beautiful visualisations of your own.
Understanding cities using ViziCities and 3D data visualisationRobin Hawkes
ViziCities is an open-source 3D city visualisation platform powered by OpenStreetMap, WebGL and many other cutting-edge Web technologies. ViziCities not only allows you to explore any city in the world in 3D in your browser, it also lets you overlay data like live transport, crime, pollution, live social data, and weather. Think SimCity meets the real world!
In this talk, Robin Hawkes, ViziCities' co-creator and Lead Developer will introduce you to the project and demonstrate its powerful methods for visualising the complex data locked within our cities.
ViziCities: Creating Real-World Cities in 3D using OpenStreetMap and WebGLRobin Hawkes
ViziCities is an open-source 3D city visualisation platform powered by OpenStreetMap, WebGL and many other cutting-edge Web technologies. Think SimCity meets the real world!
In this talk, Robin Hawkes, ViziCities' co-creator and Lead Developer will highlight the development issues experienced along the way and show you how he overcame them – ranging from how you tackle the realtime processing of thousands of 3D buildings without locking up the browser, to how you visualise the entire world without needing a server or your own geographic data source.
WebRTC brings peer-to-peer networking to the browser, and it's here to stay. So what is WebRTC? How does it work? How do you use it? And what are others doing with it? In this talk, Rob covers the current state of WebRTC, outlines how to use it, and shows off some of the amazing things that it can do beyond video chat.
Bringing Cities to Life Using Big Data & WebGLRobin Hawkes
We're creating ViziCities - a 3D city-visualisation platform using WebGL (Three.js) and a raft of other amazing technologies. We'll talk about how we're doing it all with open, big-data, the awesome possibilities that presents and how we've overcome the problems along the way. Think SimCity meets the real world!
Sign up for the beta at http://vizicities.com
Open Web Games with HTML5 & JavaScriptRobin Hawkes
In this talk Rob will highlight the key technologies and events that are going to affect open Web game development in the near future. He will also demo some of these new technologies and show how easy it is to share your game and make money from it using the open and distributed Mozilla Labs Apps project.
PHP Frameworks: I want to break free (IPC Berlin 2024)Ralf Eggert
In this presentation, we examine the challenges and limitations of relying too heavily on PHP frameworks in web development. We discuss the history of PHP and its frameworks to understand how this dependence has evolved. The focus will be on providing concrete tips and strategies to reduce reliance on these frameworks, based on real-world examples and practical considerations. The goal is to equip developers with the skills and knowledge to create more flexible and future-proof web applications. We'll explore the importance of maintaining autonomy in a rapidly changing tech landscape and how to make informed decisions in PHP development.
This talk is aimed at encouraging a more independent approach to using PHP frameworks, moving towards a more flexible and future-proof approach to PHP development.
Connector Corner: Automate dynamic content and events by pushing a buttonDianaGray10
Here is something new! In our next Connector Corner webinar, we will demonstrate how you can use a single workflow to:
Create a campaign using Mailchimp with merge tags/fields
Send an interactive Slack channel message (using buttons)
Have the message received by managers and peers along with a test email for review
But there’s more:
In a second workflow supporting the same use case, you’ll see:
Your campaign sent to target colleagues for approval
If the “Approve” button is clicked, a Jira/Zendesk ticket is created for the marketing design team
But—if the “Reject” button is pushed, colleagues will be alerted via Slack message
Join us to learn more about this new, human-in-the-loop capability, brought to you by Integration Service connectors.
And...
Speakers:
Akshay Agnihotri, Product Manager
Charlie Greenberg, Host
UiPath Test Automation using UiPath Test Suite series, part 4DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 4. In this session, we will cover Test Manager overview along with SAP heatmap.
The UiPath Test Manager overview with SAP heatmap webinar offers a concise yet comprehensive exploration of the role of a Test Manager within SAP environments, coupled with the utilization of heatmaps for effective testing strategies.
Participants will gain insights into the responsibilities, challenges, and best practices associated with test management in SAP projects. Additionally, the webinar delves into the significance of heatmaps as a visual aid for identifying testing priorities, areas of risk, and resource allocation within SAP landscapes. Through this session, attendees can expect to enhance their understanding of test management principles while learning practical approaches to optimize testing processes in SAP environments using heatmap visualization techniques
What will you get from this session?
1. Insights into SAP testing best practices
2. Heatmap utilization for testing
3. Optimization of testing processes
4. Demo
Topics covered:
Execution from the test manager
Orchestrator execution result
Defect reporting
SAP heatmap example with demo
Speaker:
Deepak Rai, Automation Practice Lead, Boundaryless Group and UiPath MVP
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Tobias Schneck
As AI technology is pushing into IT I was wondering myself, as an “infrastructure container kubernetes guy”, how get this fancy AI technology get managed from an infrastructure operational view? Is it possible to apply our lovely cloud native principals as well? What benefit’s both technologies could bring to each other?
Let me take this questions and provide you a short journey through existing deployment models and use cases for AI software. On practical examples, we discuss what cloud/on-premise strategy we may need for applying it to our own infrastructure to get it to work from an enterprise perspective. I want to give an overview about infrastructure requirements and technologies, what could be beneficial or limiting your AI use cases in an enterprise environment. An interactive Demo will give you some insides, what approaches I got already working for real.
JMeter webinar - integration with InfluxDB and GrafanaRTTS
Watch this recorded webinar about real-time monitoring of application performance. See how to integrate Apache JMeter, the open-source leader in performance testing, with InfluxDB, the open-source time-series database, and Grafana, the open-source analytics and visualization application.
In this webinar, we will review the benefits of leveraging InfluxDB and Grafana when executing load tests and demonstrate how these tools are used to visualize performance metrics.
Length: 30 minutes
Session Overview
-------------------------------------------
During this webinar, we will cover the following topics while demonstrating the integrations of JMeter, InfluxDB and Grafana:
- What out-of-the-box solutions are available for real-time monitoring JMeter tests?
- What are the benefits of integrating InfluxDB and Grafana into the load testing stack?
- Which features are provided by Grafana?
- Demonstration of InfluxDB and Grafana using a practice web application
To view the webinar recording, go to:
https://www.rttsweb.com/jmeter-integration-webinar
Key Trends Shaping the Future of Infrastructure.pdfCheryl Hung
Keynote at DIGIT West Expo, Glasgow on 29 May 2024.
Cheryl Hung, ochery.com
Sr Director, Infrastructure Ecosystem, Arm.
The key trends across hardware, cloud and open-source; exploring how these areas are likely to mature and develop over the short and long-term, and then considering how organisations can position themselves to adapt and thrive.
Neuro-symbolic is not enough, we need neuro-*semantic*Frank van Harmelen
Neuro-symbolic (NeSy) AI is on the rise. However, simply machine learning on just any symbolic structure is not sufficient to really harvest the gains of NeSy. These will only be gained when the symbolic structures have an actual semantics. I give an operational definition of semantics as “predictable inference”.
All of this illustrated with link prediction over knowledge graphs, but the argument is general.
Accelerate your Kubernetes clusters with Varnish CachingThijs Feryn
A presentation about the usage and availability of Varnish on Kubernetes. This talk explores the capabilities of Varnish caching and shows how to use the Varnish Helm chart to deploy it to Kubernetes.
This presentation was delivered at K8SUG Singapore. See https://feryn.eu/presentations/accelerate-your-kubernetes-clusters-with-varnish-caching-k8sug-singapore-28-2024 for more details.
Let's dive deeper into the world of ODC! Ricardo Alves (OutSystems) will join us to tell all about the new Data Fabric. After that, Sezen de Bruijn (OutSystems) will get into the details on how to best design a sturdy architecture within ODC.
DevOps and Testing slides at DASA ConnectKari Kakkonen
My and Rik Marselis slides at 30.5.2024 DASA Connect conference. We discuss about what is testing, then what is agile testing and finally what is Testing in DevOps. Finally we had lovely workshop with the participants trying to find out different ways to think about quality and testing in different parts of the DevOps infinity loop.
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
Melbourne Geek Night - Boot to Gecko – The Web as a Platform
1. K O
EC rm
O G a plat fo
T T as aw
kes
OO Web Ro
bH
B Th
e
Hi, I’m Rob Hawkes and I’m here today to talk about the Boot to Gecko project.
2. I work at Mozilla, a non-profit fighting for a better Web. The same guys who make Firefox.
I’m pretty fond of Mozilla. So much so that my girlfriend made me a chicken and leek pie with
extra Firefox goodness.
It was delicious.
3. I nearly didn’t make it tonight.
As of 1-hour ago I successfully attached myself to the table in my hotel room while super-
gluing something.
Fortunately I managed to get some nail varnish remover and free myself.
I definitely don’t advise that experience for anyone.
4. G )
(B m2
c ko or
G e pla
tf
t to Web a sa
oo he
B T
Boot to Gecko, referred to as B2G, is a full operating system and platform for mobile devices.
5. Gecko Gaia
B2G is mainly two separate things; Gecko and Gaia.
The Gecko side is the hardware-related stuff and JavaScript APIs that we need to make the
phone work.
The Gecko side is pretty much everything that you don’t see.
6. Gaia is the front-end operating system and application stack that hooks into the APIs that
B2G provides.
Gaia is basically everything that you can see and interact with.
7. At the basic level, B2G is powered by HTML5 and JavaScript – the same technologies that you
already use to create websites.
This makes it incredibly fast. I’m talking really fast, it boots and shuts down in a fraction of
the time that an iPhone does.
8. G?
B2
hy ou
t?
W uss ab
thef
is all
hat
W
But why is B2G important?
Well to put it simply, HTML5 & JavaScript are the underlying technologies behind everything
related to the future of the Web.
Pretty much every new technology that is coming out within the browser-space is connected
to HTML5 and JavaScript in some way.
And what’s great is that every major browser has invested in them, so they won’t be going
anywhere any time soon.
But there’s more to it than that.
9. ies
log
n o de
ch source
te he
co
en t
Op nv
iew
ca
yone
An
It is created with open technologies.
Anyone can get involved in their creation; through browser developers like Mozilla, or
through standards organisations like the W3C.
Also, these technologies are open in that anyone can view the resulting code that is used
within Web pages, which is a fantastic way of learning.
10. ie s
lo g
n o ith
e c h lop
w
e t de
ve
Fre ree
to
se.F
u
to
Free
It is created with free technologies.
Anyone can use these technologies without having to pay anything, both for using the
technology and developing with it.
This is unlike closed environments like iOS where you have to pay to use official code editors
and production environments.
11. B2G
Firefox Persona
Web Apps
B2G is also part of the Kilimanjaro event.
Kilimanjaro is a milestone across several of the Mozilla products; Firefox, B2G, Web Apps,
and Persona.
The Kilimanjaro Event is not a single release, it is an incremental effort that results in an
coherent experience across those products.
When we reach the Kilimanjaro milestone we will have an elegant and simple experience for
HTML5 Web apps in Firefox on multiple devices that puts the user in control of their apps and
identity.
‘Kilimanjaro’ is planned to be reached by September 2012.
https://wiki.mozilla.org/Kilimanjaro
12. Demo
I think the best way to explain B2G and to show it’s current state is to give you a quick demo.
13. 2 G
d B
hin ith
be ite
sw
g y we
bs
o lo bu
ild
chn ff y
ou
Te stu
ame
es
Th
B2G is created from a whole variety of technologies, from pre-existing ones to brand new
ones that have been created specifically.
14. Firefox Gecko
The Gecko engine lays at the core of B2G, the same engine that powers Firefox.
Needless to say, B2G isn’t just Firefox running on a phone. It’s much more than that.
15. WebNFC
WebVibration
Battery API
WebSMS Geolocation
WebContacts
Full Screen API
WebTelephony Settings API
WebUSB
Multitouch WebGL Camera
WebBluetooth
At Mozilla we’re working on the WebAPI effort which is our attempt at creating the APIs
needed to run a B2G device.
In other camps it might be referred to as DAP, which is the Device APIs Working Group who
are producing a W3C specification for accessing various parts of a device through JavaScript.
The illustration above shows just a few of the APIs for B2G that we’re working on right now.
16. tes
uri
avo for
y f ait
tw
M Ican
no
Is
AP
evice
D
There are so many WebAPIs and technologies in the pipeline that relate to B2G in some way.
The following are just a few of my favourites.
You can find the rest of the WebAPIs here: https://wiki.mozilla.org/WebAPI
17. n ts
Eve es
uch stur
ge
To ch and
ou
ultit
M
Touch Events
https://developer.mozilla.org/en/DOM/Touch_events
18. PI
A
era era
am e cam
C h
gt
essin
Acc
The Camera API lets you access the camera on a device.
Being able to do this with JavaScript will make a whole world of difference in so many areas.
For example, instead of requiring a user to upload a profile image you could take one using
the webcam and use that instead. Simple but effective.
https://wiki.mozilla.org/Platform/Features/Camera_API
19. P I
S A
SM f said
eb uf
W cript
. ‘N
avaS
ithJ
xtsw
te
ing
nd
Se
The WebSMS API isn’t the most glamorous, but the idea of sending text messages with
JavaScript is quite appealing.
https://bugzilla.mozilla.org/show_bug.cgi?id=674725
20. P I
y A
o n lls
p h ca
Tele receive
eb akea
nd
W M
The WebTelephony API allows you to make and receive phone calls using JavaScript.
I can just imagine something like this being used to hook into a Web-based version of Siri
that answers your calls for you if you’re busy.
https://bugzilla.mozilla.org/show_bug.cgi?id=674726
21. P I
n A
tio ogies
ibra hn
ol
bV nt
ec
We ho
pe
it
youw
ating
Vibr
WebVibration API, previously known as the WebVibrator API
https://bugzilla.mozilla.org/show_bug.cgi?id=679966
22. P I
C A
NF ion
eb un
icat
W m
om
sc
les
wire
-like
RFID
The WebNFC API is pretty cool.
It gives you the ability to transmit and receive data within distances no larger than a few
centimetres.
The idea is that it can be used in phones for things like payment (like the new Barclaycard),
travel (think Oyster Card), and file transfer.
https://bugzilla.mozilla.org/show_bug.cgi?id=674741
23. P I
A
o th are
e to dw
Blu ooth h ar
eb et
W o blu
esst
Acc
WebBluetooth API
https://bugzilla.mozilla.org/show_bug.cgi?id=674737
24. P I
A
tery ge
at sa
B we
ru
po
oring
onit
M
Battery API
https://bugzilla.mozilla.org/show_bug.cgi?id=678694
25. PI
n A
re e ul
Sc we
rf
ull et
po
F im
ple
,y
S
The Full Screen API allows you to expand any HTML element to fill the users screen, even if
the browser isn’t running full screen itself.
https://bugzilla.mozilla.org/show_bug.cgi?id=545812
https://wiki.mozilla.org/Platform/Features/Full_Screen_APIs
26. io n
t
ta ion
ie n
O r rie
ntat
en fo
Scre loc
kin
go
d
an
ing
ng
Cha
The Screen Orientation APIs allow you to do things like changing and locking, you guessed it,
the orientation of the screen.
Before now, it’s been incredibly difficult to lock orientation on a website or game using
nothing but JavaScript.
https://bugzilla.mozilla.org/show_bug.cgi?id=740188
http://dvcs.w3.org/hg/screen-orientation/raw-file/default/Overview.html
27. GL
eb
W phics
ra
tedg
ra
ccele
re-a
rdwa
Ha
WebGL brings the ability to provide advanced hardware-accelerated 2D and 3D graphics
directly within the browser.
https://developer.mozilla.org/en/WebGL
28. ps
A p
eb atform
W a pl
pen eb as
O heW t
on
up
ilding
Bu
Open Web Apps is an initiative that is core to B2G and one that is important to the Web as a
whole.
It’s a way of creating and distributing apps that puts the developers and users of apps back
in charge.
It’s a way that embraces open technology and is for the good of the Web.
29. ach
Re
rm
tfo
s-pla
cros
ed
us
be
an
sc
App
It allows you to create rich HTML5 app experiences that run across multiple devices and form
factors (desktop, mobile, tablet, etc.)
30. g y
o lo
ch n es
e sit
n t ew
eb
pe om
ak
O us
et
eady
alr
ou
ty
Wha
It allows you to use Web standards and open technologies such as HTML5, CSS and
JavaScript.
Anything you currently use to build a website with can be used to build an app.
31. oice
f ch ol
o on
tr
o m ers in c
ed
Fre d consum
an
vs
de
tting
Pu
It puts you in control of every aspect of the app experience; from easy development, to
distribution, to direct communication with your customers.
32. The Mozilla Marketplace is our own platform for selling and distributing Web apps.
It’s in development right now but we plan to open the doors later this year.
However, there’s nothing to stop you creating your own marketplace though. All the APIs to
do that are documented and built into Firefox today. In fact, we encourage it!
https://marketplace.mozilla.org
https://developer.mozilla.org/en/Apps
33. te d
r
ta app
g s
ttin te
an
Ge to
crea
How
Creating a Web app isn’t crazy hard, it’s just a case of understanding the new features in
browsers.
https://developer.mozilla.org/en/Apps
34. tes
bsi
we olo
gy
ar e tec
hn
ps me
Ap et
he
sa
us
ey
Th
Apps are websites and are built using the same technology and processes.
If you already know how to make a website then creating your first Web app is a breeze.
35. fe st
n i
a
m o an a pp
io n int
a t ite
plic we
bs
Ap rninga
Tu
The only thing that you need to do to turn a website into app is create an application
manifest.
36. {
"version": "1.0",
"name": "MozillaBall",
"description": "Exciting Open Web development action!",
"icons": {
"16": "/img/icon-16.png",
"48": "/img/icon-48.png",
"128": "/img/icon-128.png"
},
"developer": {
"name": "Mozilla Labs",
"url": "http://mozillalabs.com"
},
"installs_allowed_from": [
"https://appstore.mozillalabs.com"
],
"default_locale": "en"
}
This is a JSON file that effectively describes your application; it’s name, icons, and other
related data.
37. nts
e
irem ember
q u
t re ttor
em
fes tan
ni mp
or
Ma I
There are a couple of important things to remember when creating an application manifest.
38. a in
o m ty
e d curi
am nt of se
S me
ele
An
The first is that it needs to be hosted from the same domain as your Web app.
This is pretty straightforward and it adds an element of security in that it is unlikely that a
rouge manifest file will be able to be put on the same domain without your knowledge.
39. Content-type header
application/x-web-app-manifest+json
The second is that it needs to be served with a specific content type (application/x-web-app-
manifest+json).
This is probably the most tricky process in turning a website into an app as it involves
changing settings on your server or a bit of hackery in your manifest file.
If you don’t want to fiddle with your server then you can always set the content-type header
using something like PHP or Node.js.
40. to r
a
lid s ok
va
st hin
g i
nife everyt
Ma su
re
king
Ma
If you want to make sure your manifest is valid you can have it checked at http://
appmanifest.org
41. p s
a p
lin g ce
tal etp
la
Ins rM
ark
sero
brow
the
gh
hrou
T
You can install apps in B2G through the browser or the Mozilla Marketplace.
You can also install apps on the desktop and Android using Firefox.
42. Installing an app
navigator.mozApps.install(manifestUrl)
Behind the scenes, installing an app is achieved through the new mozApps JavaScript API.
By passing the ‘install’ method a string URL to the app’s manifest file you will trigger the
installation process.
An example of when you would call this method is after a user clicks on an “Install this app”
button on your own website.
It would be called automatically if your app was installed from the Mozilla Marketplace, or any
other external website.
43. The install method triggers an installation dialogue within the browser that allows the user to
decide what to do with the app.
On Windows, a desktop shortcut is created for the app you installed and it will also be in the
start menu.
On Mac, the app is added to your /Applications directory.
On B2G, the app is added to your homescreen.
44. nce
erie
exp eb
sit
es
ive ifie
dw
at lor
N er
jus
tg
long
no
are
ps
Ap
I think what is most interesting about the apps project is the ability to break away from the
concept of apps being nothing more than glorified websites.
Instead, the new functionality allows Web apps to look and act much like native applications
that you would find in an operating system, rather than a website running within a browser.
We call this WebRT (Web run-time) and it’s really cool.
45. It’s really easy to use and you don’t need to do anything special as a developer to enable it in
your app.
Whenever a user requests to install an app it be be installed natively by default.
46. ock
e d
th reen
m
ro or home sc
f
nch sktop,
Lau or
de
…
Apps installed using WebRT are no different to any other native application that you have on
your computer.
They’re installed in the standard native applications location and can be launched in the same
way that you launch any other application.
47. U I
ser
row alo
ne
o b rs
ou
N an
dy
rs
ou
isy
ation
lic
app
The
WebRT applications use a browser rendering engine behind the scenes but don’t display any
normal browser UI that would clutter your app.
Instead, WebRT apps look and feel like native applications while actually using HTML and
JavaScript behind the scenes.
48. This is an example of a Web app installed as a native application. Notice the lack of browser
UI.
Right now WebRT uses the version of Firefox you already have installed to grab the rendering
engine.
In the future you won’t necessarily need a browser installed and WebRT will handle grabbing
a relevant rendering engine behind the scenes.
49. a y
d
to ns
2 G tio
g B op
sin are a f ew
U he
re
T
There are a whole bunch of ways to start using and testing B2G today.
50. If you have some knowledge of git, you can clone the Gaia repository and launch Gaia using a
recent Firefox Nightly build.
Pros:
- No build system and very little setup required
- Can use the Firefox dev tools
Cons:
- The viewport is based on the size of the browser window
- Many device-like things won't work
- Apps are launched in separate, pinned tabs
- Firefox Nightly might be unstable
http://nightly.mozilla.org
https://github.com/andreasgal/gaia/
51. There is also gaia-devserver, a node-based tool for developing Gaia in Firefox Nightly.
https://github.com/jrburke/gaia-devserver
52. Gaia in Nightly
You’ll have to resize the browser to get it looking right but it’s a great way to quickly play
with Gaia and start developing for it.
53. B2G Simulator
It is also possible to build a Boot to Gecko 'simulator' and run Gaia using this application.
This software is based on Firefox but behaves similar to the on-device experience of Boot to
Gecko.
If you are familiar with building the Firefox code-base or C++ projects, you can build this
application yourself.
Pros:
- Mobile viewport, similar experience to a mobile device in most respects
- More device apis (not all)
Cons:
- Need to install a C/C++ build system and build gecko
- The Firefox dev tools are not available
https://wiki.mozilla.org/Gaia/Hacking#Building_B2G
54. B2G Device
The last option is to build B2G on your own device.
This is the most difficult option and is only recommended on a spare device by someone who
knows what they’re doing.
We’re constantly improving the method of getting B2G onto your own device so we hope that
it will be a lot more reliable and safer in the near future.
https://developer.mozilla.org/en/Mozilla/Boot_to_Gecko#Setting_up_.
26_building_Boot_to_Gecko
55. It should be pointed out that right now Windows is unsupported as a development platform.
However, there is nothing to stop you running Ubuntu in Windows through a VM.
http://www.howtogeek.com/howto/11287/how-to-run-ubuntu-in-windows-7-with-
vmware-player/
56. 2 G
B
g to ture
u t in he
fu
ib et
ntr cre
at
Co an
help
uc
Yo
There are plenty of ways to get involved with B2G, from development all the way to general
testing.
The best way to keep up to speed with things is to frequent the B2G mailing lists.
- https://lists.mozilla.org/listinfo/community-b2g
- https://groups.google.com/forum/#!forum/mozilla.dev.b2g
If you want to help with development then the best place to do that is on the B2G and Gaia
GitHub repositories.
- https://github.com/andreasgal/B2G/
- https://github.com/andreasgal/gaia/
57. u s
lk to C
Ta illa
IR
oz
M
on
elive
W
The general rule of thumb at Mozilla is to look for the relevant people on IRC if you want a
quick response, we tend to live on there.
The server you want is irc.mozilla.org
The channels you want are #b2g and #gaia for B2G-related stuff, #openwebapps for Open
Web Apps, and #webapi for anything about WebAPIs.
58. ol
g co
th begin inning
m e
f so jus
tthe
ld o is is
o Th
resh
Th
I think it’s amazing that we can now build an entire operating system for a phone using Web
technologies. It just blows my mind.
We really are on the threshold of something awesome here.
I definitely advise you to start checking out B2G and the related projects, developing for
them, and helping with their development.
I’d love to see a day where all sorts of devices are powered by the Web, like TVs and set-top
boxes.
Perhaps we’ll even get those Internet-enabled fridges that we desire so much!
59. Rob Hawkes
@robhawkes
Rawkes.com
Personal website and blog
RECENT PROJECTS MORE COOL STUFF
Twitter sentiment analysis Rawket Scientist
Delving into your soul Technical Evangelist at Mozilla
Rawkets.com Slides
HTML5 & WebSockets game slideshare.net/robhawkes
Get in touch with me on Twitter: @robhawkes
Follow my blog (Rawkes) to keep up to date with stuff that I’m working on: http://
rawkes.com
I’ve recently worked on a project that analyses sentiment on Twitter: http://rawkes.com/
blog/2011/05/05/people-love-a-good-smooch-on-a-balcony
Rawkets is my multiplayer HTML5 and JavaScript game. Play it, it’s fun: http://rawkets.com
These slides are online at http://slideshare.net/robhawkes