{"id":4077,"date":"2015-12-09T11:30:16","date_gmt":"2015-12-09T19:30:16","guid":{"rendered":"https:\/\/blog.mozilla.org\/webdev\/?p=4077"},"modified":"2015-12-09T12:37:12","modified_gmt":"2015-12-09T20:37:12","slug":"extravaganza-december-2015","status":"publish","type":"post","link":"https:\/\/blog.mozilla.org\/webdev\/2015\/12\/09\/extravaganza-december-2015\/","title":{"rendered":"Extravaganza &#8211; December 2015"},"content":{"rendered":"<p>Once a month, web developers from across Mozilla get together to prepare free SSL tickets to hand out at the Let&#8217;s Encrypt SSL Kitchen. While we train volunteers to serve hot SSL tickets to needy websites, we find time to talk about the work that we&#8217;ve shipped, share the libraries we&#8217;re working on, meet new folks, and talk about whatever else is on our minds. It&#8217;s the Webdev Extravaganza! The meeting is open to the public; you should stop by!<\/p>\n<p>You can check out the <a href=\"https:\/\/wiki.mozilla.org\/Webdev\/Meetings\/2015\/December_1\">wiki page<\/a> that we use to organize the meeting, or view a <a href=\"https:\/\/air.mozilla.org\/webdev-extravaganza-december-2015\/\">recording of the meeting<\/a> in Air Mozilla. Or just read on for a summary!<\/p>\n<h2>Shipping Celebration<\/h2>\n<p>The shipping celebration is for anything we finished and deployed in the past month, whether it be a brand new site, an upgrade to an existing one, or even a release of a library.<\/p>\n<h3>donate.mozilla.org Shipped!<\/h3>\n<p>First off was <a href=\"https:\/\/mozillians.org\/en-US\/u\/jbuck\/\">jbuck<\/a> with the exciting news that the rebuilt <a href=\"https:\/\/donate.mozilla.org\/\">donate.mozilla.org<\/a> is live and processing donations! Previously hosted by vendor <a href=\"https:\/\/www.bluestatedigital.com\/\">Blue State Digital<\/a>, the new page uses <a href=\"https:\/\/www.paypal.com\/\">PayPal<\/a> and <a href=\"https:\/\/stripe.com\/\">Stripe<\/a> to handle payments. Since launching, the new page has already processed over $1 million in donations!<\/p>\n<h3>Pip 8 Hashing Support<\/h3>\n<p>Next was <a href=\"https:\/\/mozillians.org\/en-US\/u\/ErikRose\/\">ErikRose<\/a>, who shared the news that <a href=\"https:\/\/pip.pypa.io\/\">pip 8<\/a> will support hash verification, nearly obsoleting the need for <a href=\"https:\/\/github.com\/erikrose\/peep\/\">peep<\/a>! Exciting new features:<\/p>\n<ul>\n<li>New official syntax for specifying hashes<\/li>\n<li>Hexadecimal hashes for generating hashes with other programs like OpenSSL<\/li>\n<li>Hashes for wheels<\/li>\n<li>Better error messaging and unfulfilled dependency detection<\/li>\n<li>HTTP caching support<\/li>\n<\/ul>\n<p>Pip 8 is expected to be released sometime in January.<\/p>\n<h3>MDN Compatibility Tables<\/h3>\n<p><a href=\"https:\/\/mozillians.org\/en-US\/u\/stephaniehobson\/\">Shobson<\/a> stopped by to mention that a new design for compatibility tables on <a href=\"https:\/\/developer.mozilla.org\/\">MDN<\/a> has been enabled for beta users on select pages. The new design is inspired by <a href=\"http:\/\/caniuse.com\/\">CanIUse<\/a> and, in addition to being easier to read, are also mobile-friendly. The new design is the first public feature using MDN&#8217;s in-development compatibility API.<\/p>\n<h3>DXR Large File Performance Improvements<\/h3>\n<p>Back to ErikRose, with news of performance improvements on <a href=\"https:\/\/dxr.mozilla.org\/\">DXR<\/a> for pages that have many links on them. After profiling, Erik found that pages that generate many URLs spend a majority of their time building and escaping URLs due to <a href=\"http:\/\/werkzeug.pocoo.org\/\">Werkzeug<\/a>&#8216;s custom URL escaping. By switching to his own hard-coded URL generation functions, the load time on the affect pages improved 4x from 17 seconds down to 3 seconds. Hooray!<\/p>\n<h2>Roundtable<\/h2>\n<p>The Roundtable is the home for discussions that don&#8217;t fit anywhere else.<\/p>\n<h3>Starfield Charts<\/h3>\n<p>ErikRose shared an interesting story about trying to understand logs from <a href=\"https:\/\/www.mozilla.org\/en-US\/firefox\/hello\/\">Firefox Hello<\/a>. The logs available to him showed anonymous sessions with join and leave events, and dots to represent time segments where nothing happened. After sorting these logs by length and zooming out his text editor, Erik was able to notice patterns in the data thanks to his editor&#8217;s <a href=\"http:\/\/picpaste.com\/pics\/10_29_success_starfield_png-pexGtb7v.1449264182.png\">anti-aliasing of the zoomed-out text<\/a>. Hooray for poor-man&#8217;s data analysis!<\/p>\n<h3>Sched Colorblind User Style for Stylish<\/h3>\n<p>Next was shobson again, with a neat little fix for colorblind people using <a href=\"https:\/\/sched.org\/\">Sched<\/a>, the scheduling service Mozilla uses for its workweeks. She created a <a href=\"https:\/\/gist.github.com\/stephaniehobson\/f0604b866e47e596c49e\">Stylish userstyle<\/a> that adds colored stripes to the sides of event boxes on Sched using colors that are visually differentiable to the most common forms of colorblindness. If you&#8217;re colorblind and are having trouble using Sched, install <a href=\"https:\/\/addons.mozilla.org\/en-US\/firefox\/addon\/stylish\/\">Stylish<\/a> and try the stylesheet out!<\/p>\n<h3>Mozlando Recommended Sessions<\/h3>\n<p>For Mozillians planning to attend the <a href=\"https:\/\/wiki.mozilla.org\/Coincidental_work_weeks\/2015_Orlando\">Mozlando<\/a> workweek, several people brought up recommended sessions to attend:<\/p>\n<ul>\n<li><a href=\"http:\/\/mozlando2015.sched.org\/event\/4lNc\/webdev-hack-day\">Webdev Hack Day<\/a>: An open room for anyone to stop by and hang out with web developers from across the company.<\/li>\n<li><a href=\"http:\/\/mozlando2015.sched.org\/event\/4lRI\/sgt-roses-lonely-code-club-bof\">Sgt. Rose&#8217;s Lonely Coders Club BOF<\/a>: A session for developers who work on projects by themselves to discuss issues specific to single-developer projects. All are welcome!<\/li>\n<li><a href=\"http:\/\/mozlando2015.sched.org\/event\/4lNT\/career-planning-how-to-become-a-more-senior-engineer\">How to Become a More Senior Engineer<\/a>: A panel run by <a href=\"https:\/\/mozillians.org\/en-US\/u\/lthomson\/\">laura<\/a> for engineers who are interested promotion and how to take the next step in their career.<\/li>\n<\/ul>\n<hr \/>\n<p>Along with the SSL Kitchen, we also volunteer at the MDN job training school to help websites get the skills they need to follow web standards and break the cycle of -webkit-ness for good!<\/p>\n<p>If you&#8217;re interested in web development at Mozilla, or want to attend next month&#8217;s Extravaganza, subscribe to the <a href=\"https:\/\/lists.mozilla.org\/listinfo\/dev-webdev\">dev-webdev@lists.mozilla.org mailing list<\/a> to be notified of the next meeting, and maybe send a message introducing yourself. We&#8217;d love to meet you!<\/p>\n<p>See you next month!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Once a month, web developers from across Mozilla get together to prepare free SSL tickets to hand out at the Let&#8217;s Encrypt SSL Kitchen. While we train volunteers to serve hot SSL tickets to needy websites, we find time to &hellip; <a class=\"go\" href=\"https:\/\/blog.mozilla.org\/webdev\/2015\/12\/09\/extravaganza-december-2015\/\">Continue reading<\/a><\/p>\n","protected":false},"author":445,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[28307],"tags":[],"coauthors":[28315],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v22.5 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Extravaganza - December 2015 - Mozilla Web Development<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/blog.mozilla.org\/webdev\/2015\/12\/09\/extravaganza-december-2015\/\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Michael Kelly\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"4 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/blog.mozilla.org\/webdev\/2015\/12\/09\/extravaganza-december-2015\/\",\"url\":\"https:\/\/blog.mozilla.org\/webdev\/2015\/12\/09\/extravaganza-december-2015\/\",\"name\":\"Extravaganza - December 2015 - Mozilla Web Development\",\"isPartOf\":{\"@id\":\"https:\/\/blog.mozilla.org\/webdev\/#website\"},\"datePublished\":\"2015-12-09T19:30:16+00:00\",\"dateModified\":\"2015-12-09T20:37:12+00:00\",\"author\":{\"@id\":\"https:\/\/blog.mozilla.org\/webdev\/#\/schema\/person\/c5d68eef83c0e4e0ae60176f557c1941\"},\"breadcrumb\":{\"@id\":\"https:\/\/blog.mozilla.org\/webdev\/2015\/12\/09\/extravaganza-december-2015\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/blog.mozilla.org\/webdev\/2015\/12\/09\/extravaganza-december-2015\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/blog.mozilla.org\/webdev\/2015\/12\/09\/extravaganza-december-2015\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/blog.mozilla.org\/webdev\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Extravaganza &#8211; December 2015\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/blog.mozilla.org\/webdev\/#website\",\"url\":\"https:\/\/blog.mozilla.org\/webdev\/\",\"name\":\"Mozilla Web Development\",\"description\":\"For make benefit of glorious tubes\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/blog.mozilla.org\/webdev\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/blog.mozilla.org\/webdev\/#\/schema\/person\/c5d68eef83c0e4e0ae60176f557c1941\",\"name\":\"Michael Kelly\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/blog.mozilla.org\/webdev\/#\/schema\/person\/image\/835c2c0db4a21fa347206563231f3e71\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/a414aea4a5b11c6e2e00f760e96b85ab?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/a414aea4a5b11c6e2e00f760e96b85ab?s=96&d=mm&r=g\",\"caption\":\"Michael Kelly\"},\"description\":\"Michael Kelly is a developer on the Web Engineering team at Mozilla. He works on tools that help engineers get things done. He also helps run a lot of the Webdev group activities!\",\"sameAs\":[\"http:\/\/mkelly.me\",\"https:\/\/x.com\/Osmose\"],\"url\":\"https:\/\/blog.mozilla.org\/webdev\/author\/mkellymozilla-com\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Extravaganza - December 2015 - Mozilla Web Development","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/blog.mozilla.org\/webdev\/2015\/12\/09\/extravaganza-december-2015\/","twitter_misc":{"Written by":"Michael Kelly","Est. reading time":"4 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/blog.mozilla.org\/webdev\/2015\/12\/09\/extravaganza-december-2015\/","url":"https:\/\/blog.mozilla.org\/webdev\/2015\/12\/09\/extravaganza-december-2015\/","name":"Extravaganza - December 2015 - Mozilla Web Development","isPartOf":{"@id":"https:\/\/blog.mozilla.org\/webdev\/#website"},"datePublished":"2015-12-09T19:30:16+00:00","dateModified":"2015-12-09T20:37:12+00:00","author":{"@id":"https:\/\/blog.mozilla.org\/webdev\/#\/schema\/person\/c5d68eef83c0e4e0ae60176f557c1941"},"breadcrumb":{"@id":"https:\/\/blog.mozilla.org\/webdev\/2015\/12\/09\/extravaganza-december-2015\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/blog.mozilla.org\/webdev\/2015\/12\/09\/extravaganza-december-2015\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/blog.mozilla.org\/webdev\/2015\/12\/09\/extravaganza-december-2015\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/blog.mozilla.org\/webdev\/"},{"@type":"ListItem","position":2,"name":"Extravaganza &#8211; December 2015"}]},{"@type":"WebSite","@id":"https:\/\/blog.mozilla.org\/webdev\/#website","url":"https:\/\/blog.mozilla.org\/webdev\/","name":"Mozilla Web Development","description":"For make benefit of glorious tubes","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/blog.mozilla.org\/webdev\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/blog.mozilla.org\/webdev\/#\/schema\/person\/c5d68eef83c0e4e0ae60176f557c1941","name":"Michael Kelly","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/blog.mozilla.org\/webdev\/#\/schema\/person\/image\/835c2c0db4a21fa347206563231f3e71","url":"https:\/\/secure.gravatar.com\/avatar\/a414aea4a5b11c6e2e00f760e96b85ab?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/a414aea4a5b11c6e2e00f760e96b85ab?s=96&d=mm&r=g","caption":"Michael Kelly"},"description":"Michael Kelly is a developer on the Web Engineering team at Mozilla. He works on tools that help engineers get things done. He also helps run a lot of the Webdev group activities!","sameAs":["http:\/\/mkelly.me","https:\/\/x.com\/Osmose"],"url":"https:\/\/blog.mozilla.org\/webdev\/author\/mkellymozilla-com\/"}]}},"jetpack_featured_media_url":"","_links":{"self":[{"href":"https:\/\/blog.mozilla.org\/webdev\/wp-json\/wp\/v2\/posts\/4077"}],"collection":[{"href":"https:\/\/blog.mozilla.org\/webdev\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.mozilla.org\/webdev\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.mozilla.org\/webdev\/wp-json\/wp\/v2\/users\/445"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.mozilla.org\/webdev\/wp-json\/wp\/v2\/comments?post=4077"}],"version-history":[{"count":0,"href":"https:\/\/blog.mozilla.org\/webdev\/wp-json\/wp\/v2\/posts\/4077\/revisions"}],"wp:attachment":[{"href":"https:\/\/blog.mozilla.org\/webdev\/wp-json\/wp\/v2\/media?parent=4077"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.mozilla.org\/webdev\/wp-json\/wp\/v2\/categories?post=4077"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.mozilla.org\/webdev\/wp-json\/wp\/v2\/tags?post=4077"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/blog.mozilla.org\/webdev\/wp-json\/wp\/v2\/coauthors?post=4077"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}