Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Performance and Maintainability with Continuous...

Performance and Maintainability with Continuous Experimentation

Seth Walker

April 24, 2014
Tweet

More Decks by Seth Walker

Other Decks in Technology

Transcript

  1. @sethwalker Seth Walker Allison McKnight Jonathan Klein @sethwalker @aemcknig @jonathanklein

    Daniel Espeset @danielespeset @dxna Daniel Na Lara Swanson @laraswanson
  2. @sethwalker $cfg['save_everything'] = '1%'; // ... snip ... if (isEnabled('save_everything'))

    { writeToDB($everything); } else { throwAway($everything); }
  3. @sethwalker $cfg['save_everything'] = '5%'; // ... snip ... if (isEnabled('save_everything'))

    { writeToDB($everything); } else { throwAway($everything); }
  4. @sethwalker $cfg['save_everything'] = '1%'; // ... snip ... if (isEnabled('save_everything'))

    { writeToDB($everything); } else { throwAway($everything); }
  5. @sethwalker $cfg['save_everything'] = '5%'; // ... snip ... if (isEnabled('save_everything'))

    { writeToDB($everything); } else { throwAway($everything); }
  6. @sethwalker $cfg['save_everything'] = '10%'; // ... snip ... if (isEnabled('save_everything'))

    { writeToDB($everything); } else { throwAway($everything); }
  7. @sethwalker $cfg['jquery_1_11'] = 'staff'; // ... snip ... if (isEnabled("jquery_1_11"))

    { <script src="/js/lib/jquery-1.11.0.js"></script> } else { <script src="/js/lib/jquery-1.8.2.js"></script> }
  8. @sethwalker $cfg['jquery_1_11'] = '5%'; // ... snip ... if (isEnabled("jquery_1_11"))

    { <script src="/js/lib/jquery-1.11.0.js"></script> } else { <script src="/js/lib/jquery-1.8.2.js"></script> }
  9. @sethwalker $cfg['jquery_1_11'] = '50%'; // ... snip ... if (isEnabled("jquery_1_11"))

    { <script src="/js/lib/jquery-1.11.0.js"></script> } else { <script src="/js/lib/jquery-1.8.2.js"></script> }
  10. @sethwalker $cfg['jquery_1_11'] = '5%'; // ... snip ... if (isEnabled("jquery_1_11"))

    { <script src="/js/lib/jquery-1.11.0.js"></script> } else { <script src="/js/lib/jquery-1.8.2.js"></script> }
  11. @sethwalker $cfg['jquery_1_11'] = '50%'; // ... snip ... if (isEnabled("jquery_1_11"))

    { <script src="/js/lib/jquery-1.11.0.js"></script> } else { <script src="/js/lib/jquery-1.8.2.js"></script> }
  12. @sethwalker $cfg['jquery_1_11'] = '100%'; // ... snip ... if (isEnabled("jquery_1_11"))

    { <script src="/js/lib/jquery-1.11.0.js"></script> } else { <script src="/js/lib/jquery-1.8.2.js"></script> }
  13. @sethwalker window.Etsy.Context = { // ... snip ... "feature":{ "conversations.rejuvination":true,

    "activity.dynamic_load_on_scroll":true, "overlays.buttery_smooth":true, "collections.perf_render_fix":true, } };
  14. @sethwalker $cfg['js_debug_build'] = 'staff'; // ... snip ... if (isEnabled("js_debug_build"))

    { <script src="/js-debug/main.js"></script> } else { <script src="/js/main.js"></script> }
  15. :(

  16. @sethwalker if (isEnabled("new_listing_page")) { <script src="/js/listing/new-listing.js"></script> } if (isEnabled("new_favorite_button")) {

    <script src="/js/new-favorites.js"></script> } if (isEnabled("cart2")) { <script src="/js/add-to-cart2.js"></script> }
  17. @sethwalker <link rel="stylesheet" href="/css/base.css" /> <link rel="stylesheet" href="/css/listing.css" /> if

    (isEnabled("new_listing_page")) { <link rel="stylesheet" href="/css/new-listing.css" /> } if (isEnabled("new_favorite_button")) { <link rel="stylesheet" href="/css/new-favorites.css" /> } if (isEnabled("cart2")) { <link rel="stylesheet" href="/css/add-to-cart2.css" /> }