Table of Contents
Mozilla Emerging Technologies
The following slides are available in this presentation:
Mozilla Emerging Technologies
New Technologies for the Open Web
Robert Kaiser,
"KaiRo" <kairo@kairo.at>
Mozilla Tech Speaker
Mozilla Tech Speaker
Slides: https://slides.kairo.at/linuxwochen2018/
- Created for a presentation at Linuxwochen 2018 in Wien/Vienna.
- Written in HTML 5 with CSS 3 and JavaScript.
- Navigation via links on all slides, via access keys (e.g. "n"/Alt+Shift+N for "next") or back/forward arrow keys
- Contents
04/2018 Robert Kaiser - "Mozilla", "Firefox" and their logos are trademarks of Mozilla Foundation.
Emerging Technologies Group
- R&D organization @ Mozilla, a.k.a. Mozilla Research
- research.mozilla.org
- mozilla.org/technology
- Multiple teams for different technologies
Mixed Reality (XR)

- WebXR - Virtual & Augmented Reality (WebVR & AR)
- research.mozilla.org/mixed-reality
- webvr.info, webxr.io - WebXR Device API, Open Standard (proposal)
- In concert with WebGL, WebAudio and Gamepad APIs
- Windows: Firefox release, Mac: Nightly, Linux: in development
A-Frame - XR Made Simple

<a-scene> <a-sphere position="0 1.25 -1" radius="1.25" color="#EF2D5E"></a-sphere> <a-cube position="-1 0.5 1" rotation="0 0 0" …> <a-animation attribute="rotation" … to="0 360 0"></a-animation> </a-cube> <a-cylinder position="1 0.75 1" …></a-cylinder> <a-plane …></a-plane> <a-sky color="#ECECEC"></a-sky> </a-scene>
Open Media Codecs

- Opus: royalty-free, open, universal audio codec
- Next target: do the same with video
- Mozilla/Xiph: Daala + Google: VP9 + Cisco: Thor
- Alliance for Open Media (AOMedia) for collaboration
- Released: AV1 bitstream frozen since March/April 2018
- Next: Opimized de-/encoders, hardware support, ...
Speech & Machine Learning

- Common Voice: Open repository for voice recordings
- Machine learning to train speech-to-text (STT) systems
- DeepSpeech / Pipsqueak: Mozilla STT, open source
- Offline speech recognition engine, for security + privacy, can run on RPi3
- Only 6.5% error rate on first released model
- research.mozilla.org/machine-learning
Rust Language
- Systems programming language
- Focus on speed, memory safety and parallelism
- Low-level language but prevents segmentation faults and guarantees thread safety
- Mozilla as founder and sponsor, active volunteer community
- Used at Mozilla e.g. in Servo and Firefox Quantum
- rust-lang.org
Servo Web Engine

- Experimental web engine, written in Rust
- Modular architecture, embeddable
- Memory safe: more stability & security
- Fast: parallelism + newer algorithms
- Mature modules can be integrated into Gecko (Firefox Quantum)
- Possible base for a WebVR/XR runtime, etc.
- servo.org, research.mozilla.org/servo-engines
WebAssembly (wasm)
- New, low-level, assembly-like language to run in browsers
- Backward-compatible with asm.js
- Good target to compile C/C++ or Rust (via Emscripten) for the browser
- Enables fast compute-intensive applications (games et al.) on the web
- Already supported in Firefox, Chrome, Edge, Safari
- webassembly.org
IoT - Project Things

- Experimental framework for connecting "things" to the web
- Target: decentralized Internet of Things that is safe, open and interoperable
- Web Thing API: Proposed W3C standard
- Things Gateway connects existing things/protocols to the web
- Cloud services are optional and configurable
- Giving control back to the user
- iot.mozilla.org