SlideShare une entreprise Scribd logo
1  sur  82
Télécharger pour lire hors ligne
v1.2

Develop FirefoxOS
gasolin@mozilla.com
Why I’m here?
About Me:

http://www.gasolin.idv.tw

•
•
•
•

Mozilla Firefox OS front-end developer
GTUG Taipei Organizer (Open)
Android developer and book author (Mobile)
Python Web developer (Web)
Mozilla can help YOU

and YOU can help us, too
Mozilla, Firefox &
Firefox OS
Gecko
Core Browser Engine
Netscape
90’ Browser

Gecko
Netscape

Firefox
(windows)

Gecko

Firefox
(mac)
Desktop Firefox

Firefox
(linux)
Firefox for Mobile

Firefox
(android)

Netscape

Firefox
(windows)

Gecko

Firefox
(mac)

Firefox
(linux)
Firefox
(android)

Netscape

Firefox
(windows)

Firefox OS

Gecko

Firefox
(mac)

Firefox
(linux)
Firefox OS Architecture
Existing
Platforms

Firefox
OS

Web Browser/ Platform

!

!
@

Native API-based UX

!
APIs

•

•
Significantly
small stack

Web-based User
Experience/Web Content
Web Engine / Standard
Device APIs

Kernel

Kernel

Device

Device

HW and kernel/
drivers from
Android or other
embedded stacks

Architecture differs
from others:
• Scales from
feature phones to
high-end
smartphones
• Enables Lower
RAM footprint
distributions
WHAT IS Firefox OS?
B2G = GAIA + GECKO + GONK
WHAT IS Firefox OS?
B2G = GAIA + GECKO + GONK

Web Application
Browser Engine
Linux/HAL/RIL
WHAT IS Firefox OS?
B2G = GAIA + GECKO + GONK

Web Application

Gaia

Browser Engine

Gecko

Linux/HAL/RIL

Gonk
Unleash Web APIs for Mobile devices
Firefox OS plans to define & standardize
(W3C) all Web APIs required for advanced
functionalities in Mobile devices

Cameras
Speaker

NFC

Microphone
Vibration

Multitouch

USB Access

SMS

Accelerometer

Telephon
y

Gyro
Bluetooth

Hardware
Keys

Light

Proximity
Sensor

http://arewemobileyet.com
Think about the web
Facebook
Twitter
Prove of Concept

Web sites are capable
And can act as Mobile App
FirefoxOS Screenshots: Homescreen
Calendar
Contact
Clock
MarketPlace

https://marketplace.firefox.com/
WebApp is useful, but can I ...
•
•
•
•
•

Write Native/Performance ?
Gaming ?
Video/Auido conferencing ?
Flash ?
Develop Tools?
Re-Think about the web
What happens In 2 years
Reference

Gaming without plugin (ASM.js)

http://bit.ly/YfF6gz
Reference

VideoChat without plugin (webRTC)

http://bit.ly/12f7MY2
Reference

Flash without plugin (Shumway)

http://mozilla.github.io/shumway/
Prototyping App on website (jsFiddle)
add /fxos.html to have webapp install page
https://appmaker.mozillalabs.com/

Develop just on the web
http://mzl.la/1auuWOi

Develop in the Browser
• Firefox addon to simulate and debug web apps
http://mzl.la/1aDz1Ma
WebApp acts as native Apps
(Web Runtime)

Web Runtime
http://mzl.la/1aDz1Ma
WebApp acts as native Apps
(Web Runtime)

Web Runtime

Firefox
(windows)

Firefox
(mac)

Firefox
(linux)
http://mzl.la/1aDz1Ma
WebApp acts as native Apps
(Web Runtime)

Firefox
(android)
Web Runtime

Firefox
(windows)

Firefox
(mac)

Firefox
(linux)
http://mzl.la/1aDz1Ma
WebApp acts as native Apps
(Web Runtime)

Firefox
(android)

Firefox OS
Web Runtime

Firefox
(windows)

Firefox
(mac)

Firefox
(linux)
Reference

Web App Developer Hub
https://marketplace.firefox.com/developers/
Reference

HTML5 Support APIs
https://developer.mozilla.org/docs/HTML/HTML5
Reference

Web Runtime API
https://developer.mozilla.org/en-US/docs/WebAPI
FirefoxOS Development Process
Train Model

http://bit.ly/1caPWs
Train Model: Release every 3 month
•
•
•

Time bound: Development + Release
Agile for change
Plan -> Feature complete -> Bug Fixing -> Release Engineering

1.2 Plan
PM/ePM/
eM

1.2 Dev
ePM/eM/
Engineer

1.2 Fix
QA/
Engineer

1.2 Release
QA/
L10n/Cariier
Test

http://mozilla.github.io/process-releases/draft/development_specifics/
Train Model: Release every 3 month
•
•
•

Time bound: Development + Release
Agile for change
Plan -> Feature complete -> Bug Fixing -> Release Engineering

1.2 Plan

1.3 Plan

PM/ePM/
eM

1.2 Dev

1.3 Dev

ePM/eM/
Engineer

1.2 Fix
QA/
Engineer

1.3 Fix
1.2 Release

1.3 Release

QA/
L10n/Cariier
Test

http://mozilla.github.io/process-releases/draft/development_specifics/
Train Model: Release every 3 month
•
•
•

Time bound: Development + Release
Agile for change
Plan -> Feature complete -> Bug Fixing -> Release Engineering

1.2 Plan

1.3 Plan

1.1 Release

PM/ePM/
eM

1.2 Dev

1.3 Dev

ePM/eM/
Engineer

1.2 Fix
QA/
Engineer

1.3 Fix
1.2 Release

1.3 Release

QA/
L10n/Cariier
Test

http://mozilla.github.io/process-releases/draft/development_specifics/
Reference

Fundamentals to make it happen...
•
•
•

Issue Tracking
o
Bugzilla
o
Code Review per commit
Version Control
o
Mercurial
o
Git - github
Continue Integration
o
Per commit test - Travis

lint, unittest, integration test
o
Daily Build - TPBL, Jenkins
Let’s play with Gaia
• Up-and-running
• Discover
• My first patch

credit by http://bit.ly/1cnczgr
Dev-process:Setup and runing
Get gaia

https://github.com/mozilla-b2g/gaia
Get Aurora or Nightly
Get Firefox Alpha version to emulate gaia in browser
http://aurora.mozilla.org/ or http://nightly.mozilla.org/
Build Gaia
# make steps
$ DEBUG=1 make
more options and detail

•
•

Make Options https://developer.mozilla.org/en-US/
docs/Mozilla/Firefox_OS/Platform/Gaia/
Hacking#Make_options
Hacking Gaia https://hacks.mozilla.org/2013/01/
hacking-gaia-for-firefox-os-part-1/
Run gaia

# open browser
$ /[AppPath]/firefox -profile /
User/me/gaia/profile-debug
Dev-process: Discover
Bugzilla Find Issues

http://bit.ly/YwASU7
Bugzilla Fire a bug

http://bit.ly/YwASU7
good first bug

Reference

http://mzl.la/14IUpTh

photo credit by http://www.wallpaperdev.com/wallpaper/2560x1600/cute-baby-printable-version-65303.html
Take bug
Reference

Follow bug
Reference

Discussion
IRC: #b2g, #gaia (english)
#mozilla-taiwan (chinese)

https://lists.mozilla.org/listinfo/devgaia
Maillist:
Dev-process: My First Patch
Another reference: http://mzl.la/15EJpS9
I have an idea...

(for demo purpose)

[feature]
Talking Dialer:
play voice with Dialing
Fire a bug
Bug 877972 - able to play a short sound clip when keypad is pressed
Need information or help
Use ‘Need more information from’ field
Coding
Count Number voice clip found...
Coding
Count Number voice clip found...

credit by Bumbler to Speech http://zhusee2.github.io/
bumbler-to-speech/
Prototype and communicate idea

http://youtu.be/EgxpzbgS_cY
Pull Request (submit patch)

http://bugzil.la/877972
Reference

Automatic Coding Style (lint) check
rely on lint tools, not humans
forced code style check before each
commit

credit gjslint https://developers.google.com/closure/utilities/docs/
linter_howto
Ask Review
attach github url to bugzilla

photo credit by http://weheartit.com/entry/9380358/via/abz
send PR for review
Assign proper reviewer from Module owner list

https://wiki.mozilla.org/Modules/FirefoxOS
Wait for review
Wait for review

got ‘review granted’ (r+), or not (r-)
Warning

get feedback
Warning

get feedback
Warning

or get granted with criteria

fix it, then...
So WHY contribute OSS?
you know you can coding, but...
How good are you?

…...

(It’s all about how good you want to be)
Make you a better
programmer
practice, cowork, feedback
Can you use your code to

heal the world?

(make it a better place)
photo credit by http://www.flickr.com/photos/noelzialee/267129769/sizes/l/
web
wide
Make the world a better place
https://github.com/mozilla-b2g/B2G
https://github.com/mozilla-b2g/gaia
I always did something I was a little not ready to do. I think that’s how you grow.

去做⼀一些你還沒準備好能做的事
那是讓⼈人成⻑⾧長的⽅方式
-- Marissa Mayer
Action

Earn your first commit
http://codefirefox.com/videos
Thanks

Contenu connexe

Tendances

Ie9 и ie10. алекс могилевский. зал 2
Ie9 и ie10. алекс могилевский. зал 2Ie9 и ie10. алекс могилевский. зал 2
Ie9 и ie10. алекс могилевский. зал 2
rit2011
 
JavaScript Tools Overview
JavaScript Tools OverviewJavaScript Tools Overview
JavaScript Tools Overview
Scott Povlot
 
Koubei banquet 26
Koubei banquet 26Koubei banquet 26
Koubei banquet 26
Koubei UED
 

Tendances (19)

Getting Your Hooks into Cordova
Getting Your Hooks into CordovaGetting Your Hooks into Cordova
Getting Your Hooks into Cordova
 
Creating a Smooth Development Workflow for High-Quality Modular Open-Source P...
Creating a Smooth Development Workflow for High-Quality Modular Open-Source P...Creating a Smooth Development Workflow for High-Quality Modular Open-Source P...
Creating a Smooth Development Workflow for High-Quality Modular Open-Source P...
 
Desktop Apps with PHP and Titanium
Desktop Apps with PHP and TitaniumDesktop Apps with PHP and Titanium
Desktop Apps with PHP and Titanium
 
Ie9 и ie10. алекс могилевский. зал 2
Ie9 и ie10. алекс могилевский. зал 2Ie9 и ie10. алекс могилевский. зал 2
Ie9 и ie10. алекс могилевский. зал 2
 
VersionPress - WordPress + Git
VersionPress - WordPress + GitVersionPress - WordPress + Git
VersionPress - WordPress + Git
 
Web to App:作業系統革命 Firefox OS
Web to App:作業系統革命  Firefox OSWeb to App:作業系統革命  Firefox OS
Web to App:作業系統革命 Firefox OS
 
Plugin Development for Beginners v.2019
Plugin Development for Beginners v.2019Plugin Development for Beginners v.2019
Plugin Development for Beginners v.2019
 
Banquet 08
Banquet 08Banquet 08
Banquet 08
 
Titanium Desktop Intro
Titanium Desktop IntroTitanium Desktop Intro
Titanium Desktop Intro
 
Phing
PhingPhing
Phing
 
Creating mobile apps with Cordova for iOS, Android and BlackBerry 10
Creating mobile apps with Cordova for iOS, Android and BlackBerry 10Creating mobile apps with Cordova for iOS, Android and BlackBerry 10
Creating mobile apps with Cordova for iOS, Android and BlackBerry 10
 
Firefox OS
Firefox OSFirefox OS
Firefox OS
 
Webplatform And Php
Webplatform And PhpWebplatform And Php
Webplatform And Php
 
JavaScript Tools Overview
JavaScript Tools OverviewJavaScript Tools Overview
JavaScript Tools Overview
 
Koubei banquet 26
Koubei banquet 26Koubei banquet 26
Koubei banquet 26
 
Browser Performance Tests - Internet Explorer 11 vs Firefox 25 vs Google Chro...
Browser Performance Tests - Internet Explorer 11 vs Firefox 25 vs Google Chro...Browser Performance Tests - Internet Explorer 11 vs Firefox 25 vs Google Chro...
Browser Performance Tests - Internet Explorer 11 vs Firefox 25 vs Google Chro...
 
Efficient development workflows with composer
Efficient development workflows with composerEfficient development workflows with composer
Efficient development workflows with composer
 
Efficient development workflows with composer
Efficient development workflows with composerEfficient development workflows with composer
Efficient development workflows with composer
 
Drupal + composer = new love !?
Drupal + composer = new love !?Drupal + composer = new love !?
Drupal + composer = new love !?
 

En vedette (8)

Ksdg customize-your-firefoxos
Ksdg customize-your-firefoxosKsdg customize-your-firefoxos
Ksdg customize-your-firefoxos
 
GNOME3 延伸套件教學
GNOME3 延伸套件教學GNOME3 延伸套件教學
GNOME3 延伸套件教學
 
Contribute to mozilla
Contribute to mozillaContribute to mozilla
Contribute to mozilla
 
How to start developing apps for Firefox OS
How to start developing apps for Firefox OSHow to start developing apps for Firefox OS
How to start developing apps for Firefox OS
 
Firefox OS Graphics inside
Firefox OS Graphics insideFirefox OS Graphics inside
Firefox OS Graphics inside
 
Tizen, Firefox OS and the Future of Android
Tizen, Firefox OS and the Future of AndroidTizen, Firefox OS and the Future of Android
Tizen, Firefox OS and the Future of Android
 
FirefoxOS and its use of Linux (a deep dive into Gonk architecture)
FirefoxOS and its use of Linux (a deep dive into Gonk architecture)FirefoxOS and its use of Linux (a deep dive into Gonk architecture)
FirefoxOS and its use of Linux (a deep dive into Gonk architecture)
 
Firefox operating system
Firefox operating systemFirefox operating system
Firefox operating system
 

Similaire à Developing FirefoxOS

MozTW YZU CSE Lecture
MozTW YZU CSE LectureMozTW YZU CSE Lecture
MozTW YZU CSE Lecture
littlebtc
 
HTML5 is the Future of Mobile, PhoneGap Takes You There Today
HTML5 is the Future of Mobile, PhoneGap Takes You There TodayHTML5 is the Future of Mobile, PhoneGap Takes You There Today
HTML5 is the Future of Mobile, PhoneGap Takes You There Today
davyjones
 
Os Henrikson
Os HenriksonOs Henrikson
Os Henrikson
oscon2007
 

Similaire à Developing FirefoxOS (20)

Firefox OS - Hive Pilani 2015
Firefox OS - Hive Pilani 2015Firefox OS - Hive Pilani 2015
Firefox OS - Hive Pilani 2015
 
Cape Cod Web Technology Meetup - 3
Cape Cod Web Technology Meetup - 3Cape Cod Web Technology Meetup - 3
Cape Cod Web Technology Meetup - 3
 
Contributing To The Mozilla Codebase
Contributing To The Mozilla CodebaseContributing To The Mozilla Codebase
Contributing To The Mozilla Codebase
 
soft-shake.ch - Introduction to HTML5
soft-shake.ch - Introduction to HTML5soft-shake.ch - Introduction to HTML5
soft-shake.ch - Introduction to HTML5
 
Php On Windows
Php On WindowsPhp On Windows
Php On Windows
 
Browsers
BrowsersBrowsers
Browsers
 
Browsers
BrowsersBrowsers
Browsers
 
Browsers
BrowsersBrowsers
Browsers
 
Browsers
BrowsersBrowsers
Browsers
 
Browsers
BrowsersBrowsers
Browsers
 
Iz Pack
Iz PackIz Pack
Iz Pack
 
MozTW YZU CSE Lecture
MozTW YZU CSE LectureMozTW YZU CSE Lecture
MozTW YZU CSE Lecture
 
HTML5 is the Future of Mobile, PhoneGap Takes You There Today
HTML5 is the Future of Mobile, PhoneGap Takes You There TodayHTML5 is the Future of Mobile, PhoneGap Takes You There Today
HTML5 is the Future of Mobile, PhoneGap Takes You There Today
 
PhoneGap/Cordova
PhoneGap/CordovaPhoneGap/Cordova
PhoneGap/Cordova
 
State ofappdevelopment
State ofappdevelopmentState ofappdevelopment
State ofappdevelopment
 
Desktop apps with node webkit
Desktop apps with node webkitDesktop apps with node webkit
Desktop apps with node webkit
 
Os Henrikson
Os HenriksonOs Henrikson
Os Henrikson
 
HTML5 Intoduction for Web Developers
HTML5 Intoduction for Web DevelopersHTML5 Intoduction for Web Developers
HTML5 Intoduction for Web Developers
 
Deep Dive Azure Functions - Global Azure Bootcamp 2019
Deep Dive Azure Functions - Global Azure Bootcamp 2019Deep Dive Azure Functions - Global Azure Bootcamp 2019
Deep Dive Azure Functions - Global Azure Bootcamp 2019
 
Useful Freeware
Useful FreewareUseful Freeware
Useful Freeware
 

Plus de Fred Lin

Introduction of Distributed version control system (mainly Mercurial)
Introduction of Distributed version control system (mainly Mercurial)Introduction of Distributed version control system (mainly Mercurial)
Introduction of Distributed version control system (mainly Mercurial)
Fred Lin
 
Developer也可以做出漂亮網站 - Twitter Bootstrap/JQuery Mobile簡介
Developer也可以做出漂亮網站 - Twitter Bootstrap/JQuery Mobile簡介Developer也可以做出漂亮網站 - Twitter Bootstrap/JQuery Mobile簡介
Developer也可以做出漂亮網站 - Twitter Bootstrap/JQuery Mobile簡介
Fred Lin
 
Taipei gtug opening
Taipei gtug openingTaipei gtug opening
Taipei gtug opening
Fred Lin
 

Plus de Fred Lin (15)

How to create 360 Image/panorama & share with WebVR?
How to create  360 Image/panorama & share with WebVR?How to create  360 Image/panorama & share with WebVR?
How to create 360 Image/panorama & share with WebVR?
 
Blocklyduino Poster
Blocklyduino PosterBlocklyduino Poster
Blocklyduino Poster
 
Javascript征服世界是可能的嗎?
Javascript征服世界是可能的嗎?Javascript征服世界是可能的嗎?
Javascript征服世界是可能的嗎?
 
Capable Web: Chrome Apps and Firefox Webapp
Capable Web: Chrome Apps and Firefox WebappCapable Web: Chrome Apps and Firefox Webapp
Capable Web: Chrome Apps and Firefox Webapp
 
Introduction of Distributed version control system (mainly Mercurial)
Introduction of Distributed version control system (mainly Mercurial)Introduction of Distributed version control system (mainly Mercurial)
Introduction of Distributed version control system (mainly Mercurial)
 
第一次程式設計就上手 - 使用Python 與周蟒(zhpy)
第一次程式設計就上手  - 使用Python 與周蟒(zhpy)第一次程式設計就上手  - 使用Python 與周蟒(zhpy)
第一次程式設計就上手 - 使用Python 與周蟒(zhpy)
 
Maintain and share your python project (維護和分享 Python 程式專案)
Maintain and share your python project (維護和分享 Python 程式專案)Maintain and share your python project (維護和分享 Python 程式專案)
Maintain and share your python project (維護和分享 Python 程式專案)
 
人人能編程是可能的嗎?
人人能編程是可能的嗎?人人能編程是可能的嗎?
人人能編程是可能的嗎?
 
Developer也可以做出漂亮網站 - Twitter Bootstrap/JQuery Mobile簡介
Developer也可以做出漂亮網站 - Twitter Bootstrap/JQuery Mobile簡介Developer也可以做出漂亮網站 - Twitter Bootstrap/JQuery Mobile簡介
Developer也可以做出漂亮網站 - Twitter Bootstrap/JQuery Mobile簡介
 
Android + jenkins
Android + jenkinsAndroid + jenkins
Android + jenkins
 
Play Framework on Google App Engine
Play Framework on Google App EnginePlay Framework on Google App Engine
Play Framework on Google App Engine
 
Taipei gtug opening
Taipei gtug openingTaipei gtug opening
Taipei gtug opening
 
Google IO 2011 recap
Google IO 2011 recapGoogle IO 2011 recap
Google IO 2011 recap
 
Introduction of Google Code and Mercurial
Introduction of Google Code and MercurialIntroduction of Google Code and Mercurial
Introduction of Google Code and Mercurial
 
Introduction Of Android Scripting Environment
Introduction Of Android Scripting EnvironmentIntroduction Of Android Scripting Environment
Introduction Of Android Scripting Environment
 

Dernier

Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 

Dernier (20)

presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of Brazil
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 

Developing FirefoxOS