Browserscope oscon 2011

  • 1,613 views
Uploaded on

 

More in: Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
1,613
On Slideshare
0
From Embeds
0
Number of Embeds
1

Actions

Shares
Downloads
11
Comments
0
Likes
0

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. Use 10,000 Browsers - or - How to Crowdsource, Archive and Share User Agent Data in the Open with BrowserscopeOSCON 2011
  • 2. about:meLindsey SimonGoogle Front-End Developerelsigh@gmail.com / @elsighmon ● AdWords ● App Engine ● i18n ● Closure library ● Search ● Google Translate ● Google+
  • 3. Your Development Test Environment
  • 4. Your Mobile Test Environment
  • 5. http://en.wikipedia.org/wiki/Usage_share_of_web_browsers
  • 6. understandingcapabilities and performance
  • 7. Multi-Prong Attack Strategy
  • 8. BrowserscopeOpen-source, community-driven project for profiling browsers.Explicit Goals: ● foster innovation by tracking functionality ● push browser innovation, uncover regressions ● historical resource for web developersBorn September 13th, 2009
  • 9. crowdsourcing the results
  • 10. crowdsourcing● no dedicated test resources
  • 11. crowdsourcing● no dedicated test resources● project runs in perpetuity
  • 12. crowdsourcing● no dedicated test resources● project runs in perpetuity● real world test conditions
  • 13. crowdsourcing● no dedicated test resources● project runs in perpetuity● real world test conditions● aggregating results reduces bias
  • 14. crowdsourcing● no dedicated test resources● project runs in perpetuity● real world test conditions● aggregating results reduces bias● new browsers show up immediately
  • 15. key characteristics ● more matrix than benchmark
  • 16. key characteristics ● more matrix than benchmark ● reproducible tests and results (no video or control setup)
  • 17. key characteristics ● more matrix than benchmark ● reproducible tests and results (no video or control setup) ● gather & display historical data, trends
  • 18. anatomy of a browserscope test1. create a web page that populates a JS object.2. login and "Add a test" on browserscope.3. add browserscope JS snippet(s) to your test page.4. get lots of users to hit your page
  • 19. DEMO!http://goo.gl/LGRqA
  • 20. Hosted Tests
  • 21. hosted test categoriesNetwork Performance ● Steve Souders original UA Profiler tests ● connections, caching, parallel downloads, etc...Rich Text Edit Mode ● Annie Sullivan, Roland Steiner, Ehsan Akhgari ● i.e. cut and paste in browsers, w/ bold, italic, formattingAcid3 ● Ian Hicksons tests, added by Jacob Moon ● javascript, css, renderingSelectors API Test Suite ● John Resigs tests, added by Lindsey Simon ● querySelectorAll DOM retrieval syntax
  • 22. hosted test categoriesSecurity ● Collin Jackson(CMU) & Adam Barth(Berkeley) & team ● JSON, x-origin, XSS, sandbox, etc..JSKB ● Mike Samuel (Google Caja) ● JavaScript compliance -> compilation ● similar to Joe Hewitts new hascan
  • 23. Network Results Timelinebrowserscope.org/timeline?category=summary
  • 24. Acid3 Results Timelinebrowserscope.org/timeline?category=acid3
  • 25. Summary Results Timelinebrowserscope.org/timeline?category=summary
  • 26. User Tests
  • 27. Modernizr 2.0.4 Results Timeline
  • 28. HTML5 Ready - current desktopmodernizr2 results - browserscope.org/evolution?v=top-d
  • 29. HTML5 Ready - edge desktopmodernizr2 results - browserscope.org/evolution?v=top-d-e
  • 30. HTML5 Ready - mobilemodernizr2 results - browserscope.org/evolution?v=top-m
  • 31. under the hood● App Engine● runtime median engine driven by task queues● memcache, lots of it● closure-library/compiler● gdata python lib + gviz table component● cross domain iframe posting● jQuery
  • 32. data points ● 2M tests run ● 100M discrete data points ● 1308 browsers (600K discrete user agent strings) ● 54K User tests ● 21GB of data ● ~ 10QPS ● High traffic integrations: ○ jsperf.com/popular ○ www.modernizr.comUser Test demo: browserscope-test.appspot.com/Google UI demo: groupmenuselect.appspot.com/results
  • 33. roadmap ● code linting based on DOM property support ● mobile / OS distinction ● more data vizlinks:browserscope.orgcode.google.com/p/browserscopegroups.google.com/group/browserscope
  • 34. Thank You Free Software!