SlideShare una empresa de Scribd logo
1 de 29
Descargar para leer sin conexión
Why measure anything?
We want to continually improve, to further the
              MoFo mission.

Humans, and also organizations, can't know if
 they can or should do something differently
unless they get feedback or data to prompt the
                   question:

      "How can we/I do better at this?"
Absent of any data, everything looks fine
First Requirement of Improvement




Realize there is something that needs
            improvement
       __________________
Knowing the truth is often scary and uncomfortable,
       but at least you know when to run!
Fast, Confident, and Awesome

If an org, team, or individual:

-Knows, definitively, how they are doing now

-Knows, definitively, how they are doing after a change

-Knows, definitively, what variables changed when
Then that org, team, or individual:

-will be much faster to determine success vs. failure, making it possible to
resolve faster.

-will inevitably grow and learn, further and faster

-generates more trust...with users, contributors, org, team

              and maybe most importantly...

-We'll be more confident to try more things, knowing we can quickly detect and
resolve.

-Thus, as we will try more things, it will lead more often to success.
Had Good Metrics Indicating Dogs Were Tame...
                  Confident.
What kind of stats are we talking?

  Not just CPU and App Performance!

       metrics << app / product
      metrics << projects / teams
     metrics << users / customers
       metrics << contributors
        metrics << operations
       metrics << performance
        metrics << developers
          metrics << support
Proposed Layers of Metrics

1. Organization Layer - "How is Mozilla Foundation doing
   at its mission?"

2. Team Layer - "How well is this team working together
   and accomplishing goals? "

3. Application/Service Layer - "How are things with X
   application or service?"

4. Operations Layer - "How are we doing, logistically?"
Organizational Metrics Examples
How many visits to all of our sites this year vs. last year?

How many people have donated to MoFo, and how much?

How many times were we or any of our sites mentioned on
social media and the news?

How many new "webmakers" did we bring into our
ecosystem across all applications and teams?
Team Metrics Examples

How many hours were worked/PTO'd on the
team?

How many projects is that team involved in this
week?

How many collaborator / volunteer / staff lines
of code / features were added?

How many milestones did the team meet this
month?
Application Metrics Examples
What was the average response time for popcorn.
webmaker.org this week?

How many videos were edited this week?

How many new videos were created this week?

What was the # of page visits for popcorn on average by
hour?

What was the ratio of errors to successes for popcorn's key
transactions this week?
Operations Metrics Examples
How much disk is currently being used?

How much memory and CPU utilization do we have in
production?

How many gigabytes of logs were generated this week?

What was the slowest loading page per application this
week?

How much did our infrastructure cost?
What tools will we be using?
Primary Tools
● Newrelic
● StatsD/Graphite
● Google Analytics
● Geckoboard

Secondary Tools (Not covering today)
● AWS, Pingdom, Opsview
New Relic (Server Monitoring)
New Relic



Real time data on your server and app
performance
Examples:
● what code is running slowly or erroring?
● how long are end users waiting before they
   can interact with our content?
● How many database writes per minute?
● End user performance monitoring
● Which deploy caused a problem?
Google Analytics
Google Analytics

Numbers on who is using your app, how and
when they are using it

● what content is popular with who?
● which parts of the site are causing people to
  leave?
● where are our users coming from?
● what things have they done while on our
  sites?
● Can track campaigns, goals (ie, made a
  popcorn video), conversion rates
statsd/graphite

Multiple stats, one stream
statsd/graphite

statsd - "Collects data by increment counters and timers,
but does not show, sort, or average(etc....)"

graphite - Shows the data in a presentable way, allowing
you to line up multiple metrics and perform calculations,
such as sort, avg, std deviation

(Examples of a few things we might count/time)
● someone made a project, remixed a project
● someone has been issued a badge
● someone has decided to delete their profile
StatsD examples (counting new vids in popcorn)
(note the data structure, env.app.what)

Time something (PHP example)
   $start = microtime(true);
   postvideo();
   StatsD::timing("production.butter.postvideo.response.200", (microtime
   (true) - $start) * 1000);


Count something (PHP)
   StatsD::increment("production.butter.postvideo.response.200");
Geckoboard
Geckoboard



A friendly view into all of our high level stats.

● this is where Mark/Ryan will come in
● this is where we highlight the individual
  metrics we get judges against
● one stop-shop over all MoFo/webmaker
  properties
● encouraged to make public
Metrics Flow
Things to Beware Of
● Presenting data out of context for audience
● Instrumentation of anything to New Relic,
  Google Analytics, Geckoboard should go
  over ssl
● Do not use New Relic auto instrumentation
  to capture any params in the database
● Gameable Metrics
Go fourth and metric!
See what you can do with these client libs:

● statsd:
   ○ https://django-statsd.readthedocs.org/en/latest/
   ○ https://github.com/sivy/node-statsd
● geckoboard:
   ○ http://pypi.python.org/pypi/django-geckoboard
   ○ https://github.com/danjenkins/node-geckoboard-
     push
   ○ https://github.com/Hebo/node-geckoboard
● newrelic custom instrumentation:
   ○ https://newrelic.com/docs/instrumentation/custom-
     metric-collection
Links/References
Good read with a further intro for statsd/graphite
How we will setup Opsview to watch StatsD/Graphite
Google Analytics: Setting up goals and tracking conversions

Easy setup instructions for statd/graphite server(if you want to test locally)

Más contenido relacionado

La actualidad más candente

La actualidad más candente (20)

Test Strategy-The real silver bullet in testing by Matthew Eakin
Test Strategy-The real silver bullet in testing by Matthew EakinTest Strategy-The real silver bullet in testing by Matthew Eakin
Test Strategy-The real silver bullet in testing by Matthew Eakin
 
The Raw Material for Exceptional Products with Edmunds' former Senior Direct...
 The Raw Material for Exceptional Products with Edmunds' former Senior Direct... The Raw Material for Exceptional Products with Edmunds' former Senior Direct...
The Raw Material for Exceptional Products with Edmunds' former Senior Direct...
 
The anatomy of an A/B Test - JSConf Colombia Workshop
The anatomy of an A/B Test - JSConf Colombia WorkshopThe anatomy of an A/B Test - JSConf Colombia Workshop
The anatomy of an A/B Test - JSConf Colombia Workshop
 
How We Do It: Proven Website Personalization Strategies
How We Do It: Proven Website Personalization StrategiesHow We Do It: Proven Website Personalization Strategies
How We Do It: Proven Website Personalization Strategies
 
Go or No-Go: Operability and Contingency Planning at Etsy.com
Go or No-Go: Operability and Contingency Planning at Etsy.comGo or No-Go: Operability and Contingency Planning at Etsy.com
Go or No-Go: Operability and Contingency Planning at Etsy.com
 
Why Big and Small Data Is Important by Google's Product Manager
Why Big and Small Data Is Important by Google's Product ManagerWhy Big and Small Data Is Important by Google's Product Manager
Why Big and Small Data Is Important by Google's Product Manager
 
Open Source Product Management with KEMP Tech's PM
Open Source Product Management with KEMP Tech's PMOpen Source Product Management with KEMP Tech's PM
Open Source Product Management with KEMP Tech's PM
 
Hiring Professional Testers - QASymphony Webinar
Hiring Professional Testers - QASymphony WebinarHiring Professional Testers - QASymphony Webinar
Hiring Professional Testers - QASymphony Webinar
 
What Are the Basics of Product Manager Interviews by Google PM
What Are the Basics of Product Manager Interviews by Google PMWhat Are the Basics of Product Manager Interviews by Google PM
What Are the Basics of Product Manager Interviews by Google PM
 
Ad Monetization Products with SoundCloud's Product Manager
 Ad Monetization Products with SoundCloud's Product Manager Ad Monetization Products with SoundCloud's Product Manager
Ad Monetization Products with SoundCloud's Product Manager
 
No estimates - 10 new principles for testing
No estimates  - 10 new principles for testingNo estimates  - 10 new principles for testing
No estimates - 10 new principles for testing
 
Data Driven Growth Hacks with ListenFirst Media's Senior PM
 Data Driven Growth Hacks with ListenFirst Media's Senior PM Data Driven Growth Hacks with ListenFirst Media's Senior PM
Data Driven Growth Hacks with ListenFirst Media's Senior PM
 
10 Tactics for Building an Optimization Culture
10 Tactics for Building an Optimization Culture10 Tactics for Building an Optimization Culture
10 Tactics for Building an Optimization Culture
 
How to be a (Kick Ass) PM w/ LoopNet's former VP of Product
How to be a (Kick Ass) PM w/ LoopNet's former VP of ProductHow to be a (Kick Ass) PM w/ LoopNet's former VP of Product
How to be a (Kick Ass) PM w/ LoopNet's former VP of Product
 
Hypothesis-Driven Development & How to Fail-Fast Hacking Growth
Hypothesis-Driven Development & How to Fail-Fast Hacking GrowthHypothesis-Driven Development & How to Fail-Fast Hacking Growth
Hypothesis-Driven Development & How to Fail-Fast Hacking Growth
 
[Elite Camp 2016] Peep Laja - Fresh Out Of the Oven
[Elite Camp 2016] Peep Laja - Fresh Out Of the Oven[Elite Camp 2016] Peep Laja - Fresh Out Of the Oven
[Elite Camp 2016] Peep Laja - Fresh Out Of the Oven
 
Chicago Code Camp 2014 - Agile Testing in a waterfall world
Chicago Code Camp 2014 - Agile Testing in a waterfall worldChicago Code Camp 2014 - Agile Testing in a waterfall world
Chicago Code Camp 2014 - Agile Testing in a waterfall world
 
Intro to Artificial Intelligence w/ Target's Director of PM
 Intro to Artificial Intelligence w/ Target's Director of PM Intro to Artificial Intelligence w/ Target's Director of PM
Intro to Artificial Intelligence w/ Target's Director of PM
 
Test Estimation Hacks: Tips, Tricks and Tools Webinar
Test Estimation Hacks: Tips, Tricks and Tools WebinarTest Estimation Hacks: Tips, Tricks and Tools Webinar
Test Estimation Hacks: Tips, Tricks and Tools Webinar
 
IDX Broker Research & Development by Derek Rose
IDX Broker Research & Development by Derek RoseIDX Broker Research & Development by Derek Rose
IDX Broker Research & Development by Derek Rose
 

Destacado

งานนำเสนอ2
งานนำเสนอ2งานนำเสนอ2
งานนำเสนอ2
fza00789
 
Chap 4 fractures
Chap 4 fracturesChap 4 fractures
Chap 4 fractures
clignoski
 
งานนำเสนอ2
งานนำเสนอ2งานนำเสนอ2
งานนำเสนอ2
fza00789
 
Chapter 12 suffixes
Chapter 12 suffixesChapter 12 suffixes
Chapter 12 suffixes
clignoski
 
Chapter 13_ Abbreviations
Chapter 13_ AbbreviationsChapter 13_ Abbreviations
Chapter 13_ Abbreviations
clignoski
 
Sentencia absolutoria por grabar a policia
Sentencia absolutoria por grabar a policiaSentencia absolutoria por grabar a policia
Sentencia absolutoria por grabar a policia
Comuna Jurídica
 
36978398 teks-pengacara-majlis-sambutan-hari-kemerdekaan
36978398 teks-pengacara-majlis-sambutan-hari-kemerdekaan36978398 teks-pengacara-majlis-sambutan-hari-kemerdekaan
36978398 teks-pengacara-majlis-sambutan-hari-kemerdekaan
MEA2088
 

Destacado (18)

DevOps at Obama for America(2012) and the DNC (DevOps Days NYC Jan 2013)
DevOps at Obama for America(2012) and the DNC (DevOps Days NYC Jan 2013)DevOps at Obama for America(2012) and the DNC (DevOps Days NYC Jan 2013)
DevOps at Obama for America(2012) and the DNC (DevOps Days NYC Jan 2013)
 
Supremo EEUU declara inconstitucional restriccion matrimonio homosexual
Supremo EEUU declara inconstitucional restriccion matrimonio homosexualSupremo EEUU declara inconstitucional restriccion matrimonio homosexual
Supremo EEUU declara inconstitucional restriccion matrimonio homosexual
 
งานนำเสนอ2
งานนำเสนอ2งานนำเสนอ2
งานนำเสนอ2
 
งานนำเสนอ2
งานนำเสนอ2งานนำเสนอ2
งานนำเสนอ2
 
Chap 4 fractures
Chap 4 fracturesChap 4 fractures
Chap 4 fractures
 
GMJF Social media 2011
GMJF Social media 2011GMJF Social media 2011
GMJF Social media 2011
 
งานนำเสนอ2
งานนำเสนอ2งานนำเสนอ2
งานนำเสนอ2
 
Sentencia Estrasburgo doctrina Parot [EN]
Sentencia Estrasburgo doctrina Parot [EN]Sentencia Estrasburgo doctrina Parot [EN]
Sentencia Estrasburgo doctrina Parot [EN]
 
AWS Intro for Knight News Fellows
AWS Intro for Knight News FellowsAWS Intro for Knight News Fellows
AWS Intro for Knight News Fellows
 
งานนำเสนอ2
งานนำเสนอ2งานนำเสนอ2
งานนำเสนอ2
 
BCA_updated_on_28_06_13
BCA_updated_on_28_06_13BCA_updated_on_28_06_13
BCA_updated_on_28_06_13
 
Continuous Deployment @ AWS Re:Invent
Continuous Deployment @ AWS Re:InventContinuous Deployment @ AWS Re:Invent
Continuous Deployment @ AWS Re:Invent
 
Chapter 12 suffixes
Chapter 12 suffixesChapter 12 suffixes
Chapter 12 suffixes
 
Chapter 13_ Abbreviations
Chapter 13_ AbbreviationsChapter 13_ Abbreviations
Chapter 13_ Abbreviations
 
σημειώσεις 1.1 1.7
σημειώσεις 1.1   1.7σημειώσεις 1.1   1.7
σημειώσεις 1.1 1.7
 
DevOps and Continuous Deployment @ WWPS Government, Education, and Non-profit...
DevOps and Continuous Deployment @ WWPS Government, Education, and Non-profit...DevOps and Continuous Deployment @ WWPS Government, Education, and Non-profit...
DevOps and Continuous Deployment @ WWPS Government, Education, and Non-profit...
 
Sentencia absolutoria por grabar a policia
Sentencia absolutoria por grabar a policiaSentencia absolutoria por grabar a policia
Sentencia absolutoria por grabar a policia
 
36978398 teks-pengacara-majlis-sambutan-hari-kemerdekaan
36978398 teks-pengacara-majlis-sambutan-hari-kemerdekaan36978398 teks-pengacara-majlis-sambutan-hari-kemerdekaan
36978398 teks-pengacara-majlis-sambutan-hari-kemerdekaan
 

Similar a Mozilla Foundation Metrics - presentation to engineers

Similar a Mozilla Foundation Metrics - presentation to engineers (20)

Intro to Data Analytics with Oscar's Director of Product
 Intro to Data Analytics with Oscar's Director of Product Intro to Data Analytics with Oscar's Director of Product
Intro to Data Analytics with Oscar's Director of Product
 
Improving software quality for the future of connected vehicles
Improving software quality for the future of connected vehiclesImproving software quality for the future of connected vehicles
Improving software quality for the future of connected vehicles
 
How to Plan for an xAPI Pilot at xAPI Camp DevLearn 2018 - Yet Analytics
How to Plan for an xAPI Pilot at xAPI Camp DevLearn 2018 - Yet AnalyticsHow to Plan for an xAPI Pilot at xAPI Camp DevLearn 2018 - Yet Analytics
How to Plan for an xAPI Pilot at xAPI Camp DevLearn 2018 - Yet Analytics
 
How to Plan for Your xAPI Pilot - xAPI Camp at DevLearn 2018 - Yet Analytics
How to Plan for Your xAPI Pilot - xAPI Camp at DevLearn 2018 - Yet Analytics How to Plan for Your xAPI Pilot - xAPI Camp at DevLearn 2018 - Yet Analytics
How to Plan for Your xAPI Pilot - xAPI Camp at DevLearn 2018 - Yet Analytics
 
MVP (Minimum Viable Product) Readiness | Boost Labs
MVP (Minimum Viable Product) Readiness | Boost LabsMVP (Minimum Viable Product) Readiness | Boost Labs
MVP (Minimum Viable Product) Readiness | Boost Labs
 
Citrix Labs Rapid Prototyping Workshop
Citrix Labs Rapid Prototyping WorkshopCitrix Labs Rapid Prototyping Workshop
Citrix Labs Rapid Prototyping Workshop
 
Feature Prioritization Techniques for an Agile PMs by Microsoft PM
Feature Prioritization Techniques for an Agile PMs by Microsoft PMFeature Prioritization Techniques for an Agile PMs by Microsoft PM
Feature Prioritization Techniques for an Agile PMs by Microsoft PM
 
Rocket jones 4 stage process
Rocket jones 4 stage processRocket jones 4 stage process
Rocket jones 4 stage process
 
Build a Foundation for Data Integrity with Analytics Auditing
Build a Foundation for Data Integrity with Analytics AuditingBuild a Foundation for Data Integrity with Analytics Auditing
Build a Foundation for Data Integrity with Analytics Auditing
 
Growth Hacking Conference '17 - Antwerp
Growth Hacking Conference '17 - AntwerpGrowth Hacking Conference '17 - Antwerp
Growth Hacking Conference '17 - Antwerp
 
User Research Fast & Cheap
User Research Fast & Cheap User Research Fast & Cheap
User Research Fast & Cheap
 
Creating a Data Driven L&D Team - an xAPI Case Study - DevLearn 2018
Creating a Data Driven L&D Team - an xAPI Case Study - DevLearn 2018Creating a Data Driven L&D Team - an xAPI Case Study - DevLearn 2018
Creating a Data Driven L&D Team - an xAPI Case Study - DevLearn 2018
 
Tenants for Going at DevSecOps Speed - LASCON 2023
Tenants for Going at DevSecOps Speed - LASCON 2023Tenants for Going at DevSecOps Speed - LASCON 2023
Tenants for Going at DevSecOps Speed - LASCON 2023
 
How and Why: Embedded Analytics Interfaces For Your SaaS Product
How and Why: Embedded Analytics Interfaces For Your SaaS ProductHow and Why: Embedded Analytics Interfaces For Your SaaS Product
How and Why: Embedded Analytics Interfaces For Your SaaS Product
 
Modern Product Data Workflows: How and Why: Embedded Analytics Interfaces For...
Modern Product Data Workflows: How and Why: Embedded Analytics Interfaces For...Modern Product Data Workflows: How and Why: Embedded Analytics Interfaces For...
Modern Product Data Workflows: How and Why: Embedded Analytics Interfaces For...
 
Putting Customers First: How To Build Data-Driven Strategies To Ensure Custom...
Putting Customers First: How To Build Data-Driven Strategies To Ensure Custom...Putting Customers First: How To Build Data-Driven Strategies To Ensure Custom...
Putting Customers First: How To Build Data-Driven Strategies To Ensure Custom...
 
Enhancing Software Engineering Practices at Our Startup.pptx
Enhancing Software Engineering Practices at Our Startup.pptxEnhancing Software Engineering Practices at Our Startup.pptx
Enhancing Software Engineering Practices at Our Startup.pptx
 
Vorian Agency - Google Analytics Seminar
Vorian Agency - Google Analytics SeminarVorian Agency - Google Analytics Seminar
Vorian Agency - Google Analytics Seminar
 
People Metrics: How to Use Team Data to Produce Positive Change
People Metrics: How to Use Team Data to Produce Positive ChangePeople Metrics: How to Use Team Data to Produce Positive Change
People Metrics: How to Use Team Data to Produce Positive Change
 
Fabrizio Ballarini — Scaling Organic Growth by Building Products (Turing Fest...
Fabrizio Ballarini — Scaling Organic Growth by Building Products (Turing Fest...Fabrizio Ballarini — Scaling Organic Growth by Building Products (Turing Fest...
Fabrizio Ballarini — Scaling Organic Growth by Building Products (Turing Fest...
 

Último

+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 

Último (20)

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
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
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
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
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
 
[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
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
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...
 
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
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 

Mozilla Foundation Metrics - presentation to engineers

  • 1.
  • 2. Why measure anything? We want to continually improve, to further the MoFo mission. Humans, and also organizations, can't know if they can or should do something differently unless they get feedback or data to prompt the question: "How can we/I do better at this?"
  • 3. Absent of any data, everything looks fine
  • 4. First Requirement of Improvement Realize there is something that needs improvement __________________
  • 5. Knowing the truth is often scary and uncomfortable, but at least you know when to run!
  • 6. Fast, Confident, and Awesome If an org, team, or individual: -Knows, definitively, how they are doing now -Knows, definitively, how they are doing after a change -Knows, definitively, what variables changed when
  • 7. Then that org, team, or individual: -will be much faster to determine success vs. failure, making it possible to resolve faster. -will inevitably grow and learn, further and faster -generates more trust...with users, contributors, org, team and maybe most importantly... -We'll be more confident to try more things, knowing we can quickly detect and resolve. -Thus, as we will try more things, it will lead more often to success.
  • 8. Had Good Metrics Indicating Dogs Were Tame... Confident.
  • 9. What kind of stats are we talking? Not just CPU and App Performance! metrics << app / product metrics << projects / teams metrics << users / customers metrics << contributors metrics << operations metrics << performance metrics << developers metrics << support
  • 10.
  • 11. Proposed Layers of Metrics 1. Organization Layer - "How is Mozilla Foundation doing at its mission?" 2. Team Layer - "How well is this team working together and accomplishing goals? " 3. Application/Service Layer - "How are things with X application or service?" 4. Operations Layer - "How are we doing, logistically?"
  • 12. Organizational Metrics Examples How many visits to all of our sites this year vs. last year? How many people have donated to MoFo, and how much? How many times were we or any of our sites mentioned on social media and the news? How many new "webmakers" did we bring into our ecosystem across all applications and teams?
  • 13. Team Metrics Examples How many hours were worked/PTO'd on the team? How many projects is that team involved in this week? How many collaborator / volunteer / staff lines of code / features were added? How many milestones did the team meet this month?
  • 14. Application Metrics Examples What was the average response time for popcorn. webmaker.org this week? How many videos were edited this week? How many new videos were created this week? What was the # of page visits for popcorn on average by hour? What was the ratio of errors to successes for popcorn's key transactions this week?
  • 15. Operations Metrics Examples How much disk is currently being used? How much memory and CPU utilization do we have in production? How many gigabytes of logs were generated this week? What was the slowest loading page per application this week? How much did our infrastructure cost?
  • 16. What tools will we be using? Primary Tools ● Newrelic ● StatsD/Graphite ● Google Analytics ● Geckoboard Secondary Tools (Not covering today) ● AWS, Pingdom, Opsview
  • 17. New Relic (Server Monitoring)
  • 18. New Relic Real time data on your server and app performance Examples: ● what code is running slowly or erroring? ● how long are end users waiting before they can interact with our content? ● How many database writes per minute? ● End user performance monitoring ● Which deploy caused a problem?
  • 20. Google Analytics Numbers on who is using your app, how and when they are using it ● what content is popular with who? ● which parts of the site are causing people to leave? ● where are our users coming from? ● what things have they done while on our sites? ● Can track campaigns, goals (ie, made a popcorn video), conversion rates
  • 22. statsd/graphite statsd - "Collects data by increment counters and timers, but does not show, sort, or average(etc....)" graphite - Shows the data in a presentable way, allowing you to line up multiple metrics and perform calculations, such as sort, avg, std deviation (Examples of a few things we might count/time) ● someone made a project, remixed a project ● someone has been issued a badge ● someone has decided to delete their profile
  • 23. StatsD examples (counting new vids in popcorn) (note the data structure, env.app.what) Time something (PHP example) $start = microtime(true); postvideo(); StatsD::timing("production.butter.postvideo.response.200", (microtime (true) - $start) * 1000); Count something (PHP) StatsD::increment("production.butter.postvideo.response.200");
  • 25. Geckoboard A friendly view into all of our high level stats. ● this is where Mark/Ryan will come in ● this is where we highlight the individual metrics we get judges against ● one stop-shop over all MoFo/webmaker properties ● encouraged to make public
  • 27. Things to Beware Of ● Presenting data out of context for audience ● Instrumentation of anything to New Relic, Google Analytics, Geckoboard should go over ssl ● Do not use New Relic auto instrumentation to capture any params in the database ● Gameable Metrics
  • 28. Go fourth and metric! See what you can do with these client libs: ● statsd: ○ https://django-statsd.readthedocs.org/en/latest/ ○ https://github.com/sivy/node-statsd ● geckoboard: ○ http://pypi.python.org/pypi/django-geckoboard ○ https://github.com/danjenkins/node-geckoboard- push ○ https://github.com/Hebo/node-geckoboard ● newrelic custom instrumentation: ○ https://newrelic.com/docs/instrumentation/custom- metric-collection
  • 29. Links/References Good read with a further intro for statsd/graphite How we will setup Opsview to watch StatsD/Graphite Google Analytics: Setting up goals and tracking conversions Easy setup instructions for statd/graphite server(if you want to test locally)