<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>meandering wildly</title>
	<atom:link href="http://blog.johnath.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.johnath.com</link>
	<description>johnath in blog form</description>
	<lastBuildDate>Tue, 08 May 2012 18:39:37 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>A Compendium of Awesome</title>
		<link>http://blog.johnath.com/2012/05/08/awesome-a-compendium/</link>
		<comments>http://blog.johnath.com/2012/05/08/awesome-a-compendium/#comments</comments>
		<pubDate>Tue, 08 May 2012 17:59:02 +0000</pubDate>
		<dc:creator>Johnath</dc:creator>
				<category><![CDATA[Mozilla]]></category>
		<category><![CDATA[Work]]></category>

		<guid isPermaLink="false">http://blog.johnath.com/?p=754</guid>
		<description><![CDATA[Two weeks ago, the Firefox team got together for a work week in Toronto. It was amazing. Walking through a room with that many excellent people doing excellent things was inspiringhumblingunbelievable and the hits kept on rolling. The combined mobile and graphics teams cut the beta blocker list for Fennec Native in half. The desktop [...]]]></description>
			<content:encoded><![CDATA[<p><a title="Team Firefox 2012 by robceemoz, on Flickr" href="http://www.flickr.com/photos/robceemoz/7113855919/"><img class="alignright" src="http://farm8.staticflickr.com/7110/7113855919_19c678433b_m.jpg" alt="Team Firefox 2012" width="240" height="180" /></a>Two weeks ago, the Firefox team got together for a work week in Toronto. It was amazing. Walking through a room with that many excellent people doing excellent things was inspiringhumblingunbelievable and the hits kept on rolling.</p>
<p>The combined mobile and graphics teams <strong>cut the beta blocker list for Fennec Native in half</strong>. The desktop team banged together <strong><a href="https://hg.mozilla.org/users/poshannessy_mozilla.com/signin/">a working prototype of sign in to the browser</a></strong>. The firefox tech leads worked with product and project management to <strong>nail down the kilimanjaro bug list</strong> for desktop. Madhava gave a great talk about <a href="http://madhava.com/egotism/archive/005060.html"><strong>the future of Firefox UX</strong></a>. I would have scored it as a strong success based on those outcomes alone.</p>
<p>And then <em>this</em> happened:</p>
<p><span id="more-754"></span></p>
<h3>Hacking</h3>
<ul>
<li><a href="https://github.com/campd/scratchpad-gist/">Scratchpad backending to github gists</a></li>
<li><a href="https://github.com/Gozala/scratch-kit/">Jetpacks in scratchpad</a></li>
<li><a href="http://msujaws.wordpress.com/2012/05/01/task-specific-icons-for-windows-7-jumplists/">Task-specific icons</a> in Windows 7 jumplists</li>
<li>Finalized <a href="https://etherpad.mozilla.org/panel-based-download-manager">interactions and designs for the new downloads manager</a></li>
<li><a href="https://etherpad.mozilla.org/signIntoBrowserServices">Sync meet-up and discussion</a> to evaluate how to move forward with a smaller core, by moving data handling to components and allowing the Sync team to concentrate on the real Sync functionality</li>
<li>Session Store meet-up and discussion on how to move forward with &#8220;Speedy Session Restore&#8221; as well as SS2 (rewriting SS).</li>
<li>Initial <a href="https://wiki.mozilla.org/Fennec/NativeUI/UserExperience/ReaderMode">explorations of a Fennec reading mode</a> (post-1.0)</li>
<li>Implemented <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=747784">Windows 8 appbar</a></li>
<li><a href="https://twitter.com/#!/jorendorff/status/199888130965381120">Roll your own one-off, bespoke debuggers in the scratchpad</a>.</li>
<li><a href="http://www.youtube.com/watch?v=oz9tdV6WH2s&amp;list=UUbd7RPnAunIVDjGtpuod0Qw&amp;index=1&amp;feature=plcp">Responsive Design tool for web developers</a></li>
</ul>
<h3>Lightning Talks</h3>
<ul>
<li>Honza made Firebug&#8217;s HTTP Monitor <a href="http://www.softwareishard.com/blog/planet-mozilla/http-monitor/">a standalone component, and it can now remote-monitor fennec, too</a></li>
<li>Gavin gave a <a href="http://www.gavinsharp.com/blog/2012/05/03/code-review-lightning-talk/">great talk about code review</a></li>
<li>Tim Abraldes demoed the <a href="https://blog.mozilla.org/tabraldes/2012/05/04/mozilla-appswebapprt-lightning-talk-at-firefox-work-week/">Web App runtime</a></li>
<li>Margaret walked us through <a href="http://blog.margaretleibovic.com/post/22055279828/fennec-native-ui">Hacking Fennec</a></li>
<li>Brian Bondy updated the status of our <a href="http://www.brianbondy.com/blog/id/137/">Windows 8</a> work</li>
<li>Felipe <a href="http://felipe.wordpress.com/2012/04/30/using-aboutcc/">found and fixed memory leaks with about:cc</a></li>
<li>Dietrich walked through the <a href="http://people.mozilla.com/~dietrich/fxbc">state of the browser components team</a></li>
<li>David Dahl went meta, and talked about <a href="https://twitter.com/#!/deezthugs/status/197350580568596480">giving Firefox talks in our community</a></li>
</ul>
<p>I know I&#8217;ve missed things. I know some of it is still being written up. In fact, I&#8217;m not even the first to write a round up post. Here&#8217;s <a href="http://starkravingfinkle.org/blog/2012/04/firefox-for-android-fx-mobile-work-week/">Finkle</a> doing the same, and <a href="http://campd.wordpress.com/2012/05/03/developer-tools-at-the-firefox-work-week/">dcamp</a>, and <a href="http://chrislord.net/blog/Software/Mozilla/mobile-platform-at-fxto2012.enlighten">cwiiis</a>.</p>
<p>FX-Team is big enough these days that it&#8217;s quite an undertaking to get us all together in one place. But man, it&#8217;s phenomenal when we do.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.johnath.com/2012/05/08/awesome-a-compendium/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>The Cognitive Science of SHUT UP</title>
		<link>http://blog.johnath.com/2012/04/16/the-cognitive-science-of-shut-up/</link>
		<comments>http://blog.johnath.com/2012/04/16/the-cognitive-science-of-shut-up/#comments</comments>
		<pubDate>Mon, 16 Apr 2012 16:57:27 +0000</pubDate>
		<dc:creator>Johnath</dc:creator>
				<category><![CDATA[Cognitive Science]]></category>
		<category><![CDATA[Life]]></category>
		<category><![CDATA[Management]]></category>
		<category><![CDATA[Mozilla]]></category>

		<guid isPermaLink="false">http://blog.johnath.com/?p=738</guid>
		<description><![CDATA[&#8220;I&#8217;m going to be a shrill and rigid idiot. &#8220;I&#8217;m going to blindly refuse to listen to contrary opinions. I&#8217;ve already made up my mind, and will invent reasons why alternatives won&#8217;t work. Most importantly, I&#8217;m going to get this done my way, regardless of whether it&#8217;s actually the best decision, or even a good [...]]]></description>
			<content:encoded><![CDATA[<p><em>&#8220;I&#8217;m going to be a shrill and rigid idiot.</em></p>
<p><em>&#8220;I&#8217;m going to blindly refuse to listen to contrary opinions. I&#8217;ve already made up my mind, and will invent reasons why alternatives won&#8217;t work. Most importantly, I&#8217;m going to get this done my way, regardless of whether it&#8217;s actually the best decision, or even a good idea.&#8221;</em></p>
<p>You&#8217;ve never approached a problem that way. No one has.</p>
<p>But you&#8217;ve probably told yourself that story about someone else. You&#8217;ve been on the receiving end of one of these mindless and petty tyrants, in a bug or a mailing list or a standards body, and you&#8217;ve decided that you were seeing a rigid idiot in action. I know I have.</p>
<p>My philosophy of science prof used to talk about how the two important tests of a scientific model are whether it allows you to make accurate predictions, and how well it helps you discover new things. This matters more than its elegance or its intuitive appeal, though a really nice model has those, too.</p>
<p>The Rigid Idiot model does, for better or for worse, predict. It predicts more rigid idiocy, and people using that model to inform their interactions are likely to get precisely that. But it&#8217;s a pretty hollow model for generativity; it doesn&#8217;t help you make progress.</p>
<p>Here&#8217;s an alternate model:</p>
<p style="text-align: center;"><a href="http://en.wikipedia.org/wiki/Hpa_axis"><img class="aligncenter" title="Cortisol molecule" src="/images/cortisol.png" alt="" width="448" height="267" /></a></p>
<p><a title="Stress Response on wikipedia" href="http://en.wikipedia.org/wiki/Stress_response">Stress response</a> pre-dates our neocortex, and outranks it. It is wired more deeply into us than language, much less rational discussion. And it has predictable effects. A person under stress (personal, professional, social, physical) will lose patience more quickly, anger easily, resist change, and consider fewer alternatives before making decisions. It&#8217;s an ancient, optimized cognitive path: less waffling when there are lions nearby. That it impairs our ability to function in this 10,000 year old thing called &#8216;civilization&#8217; is evolutionary postscript.</p>
<p>You get to choose which model you bring to a conversation. When you assume that the person you&#8217;re dealing with is acting atypically, from point-in-time stress instead of born-in idiocy, you give yourself follow-up questions to ask about timelines, or conflicting pressures, or hidden assumptions. You give yourself ways to understand motivations, and implicit guidance about tone.</p>
<p><strong>Not every asshole is a stress response waiting to be defused, but I swear to you that the single greatest improvement you can make to your success rate with these conversations is to switch models</strong>. I have seen people turn on a dime once their stressors are addressed. Suddenly there are lots of solutions, and <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=690287">confrontation turns to collaboration</a>. It&#8217;s like a god damned secret decoder ring, to be honest.</p>
<p>With practice, you may even start to recognize the descent into idiocy in your own interactions, though it won&#8217;t make you immune. This is old, lizard-brain stuff. Like drunkenness, you can get better at detecting it, but you can&#8217;t think your way out of it. And, as with drink, my hope is that if you see someone a little worse for wear, you remember that it&#8217;s fleeting. Give them some time to sober up before assuming that&#8217;s who they really are.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.johnath.com/2012/04/16/the-cognitive-science-of-shut-up/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>42 Days</title>
		<link>http://blog.johnath.com/2012/03/28/42-days/</link>
		<comments>http://blog.johnath.com/2012/03/28/42-days/#comments</comments>
		<pubDate>Wed, 28 Mar 2012 21:04:42 +0000</pubDate>
		<dc:creator>Johnath</dc:creator>
				<category><![CDATA[Mozilla]]></category>
		<category><![CDATA[Work]]></category>

		<guid isPermaLink="false">http://blog.johnath.com/?p=731</guid>
		<description><![CDATA[In a recent thread on dev.apps.firefox, someone suggested we shift our 6 week release schedule to avoid Microsoft Patch Tuesdays, or other unfortunate timing coincidences. I&#8217;m not announcing any changes to our release schedule, but I did make a point there that I want to repeat a little more broadly (and with emphasis added): Let&#8217;s [...]]]></description>
			<content:encoded><![CDATA[<p>In a recent thread on dev.apps.firefox, someone suggested we shift our 6 week release schedule to avoid Microsoft Patch Tuesdays, or other unfortunate timing coincidences. I&#8217;m not announcing any changes to our release schedule, but I did <a href="http://groups.google.com/group/mozilla.dev.apps.firefox/browse_thread/thread/67417e124eb2915e/2cb05fa929bf0087#2cb05fa929bf0087">make a point there</a> that I want to repeat a little more broadly (and with <strong>emphasis</strong> added):</p>
<blockquote><p>Let&#8217;s go back to first principles for a minute. Releasing every 6 weeks is a cadence we set for ourselves to satisfy several constraints. Constraints like:</p>
<ul>
<li>Delivering security and stability fixes on a regular basis.</li>
<li>Getting new features out to our users promptly, and being able to iterate on the feedback we receive.</li>
<li>Containing the amount of code change and change-interaction that happens per release.</li>
<li>Giving ourselves time to react to problems discovered before release (on Nightly, Aurora, or Beta)</li>
</ul>
<p>Releasing daily wouldn&#8217;t work very well; it runs afoul of the last constraint. Releasing yearly would hurt us on the first 3. But the constraints are just about as well satisfied by 40 days or 44 days as they are by 42 days.</p>
<p>We derive great benefit from our current schedule. It satisfies these constraints much better than the old, monolithic release model did. <strong>But that is not to say that we should treat 42-day cycles as inviolate. We will adjust.</strong> We will add or drop days, or add or drop weeks when we need to. We&#8217;ll be respectful of the fact that other people build plans around our plans, and try not to alter schedules without notice, but at the end of the day we&#8217;ll do right by our users first and foremost.</p>
<p>Right now we&#8217;re not looking at moving the release to another day of the week (Tuesdays do have some nice properties), or adding a skip week somewhere to take us off-cycle for the next patch Tuesday, but those discussions are absolutely on the table when they make sense.</p></blockquote>
<p>No religion here. 6 weeks is a nice spot in the constraint space, not a law. The first time we miss it, people will talk about us &#8220;slipping,&#8221; but the tail doesn&#8217;t wag the dog here. Firefox still ships when it&#8217;s ready.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.johnath.com/2012/03/28/42-days/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>2 years old</title>
		<link>http://blog.johnath.com/2012/02/13/2-years-old/</link>
		<comments>http://blog.johnath.com/2012/02/13/2-years-old/#comments</comments>
		<pubDate>Mon, 13 Feb 2012 15:10:36 +0000</pubDate>
		<dc:creator>Johnath</dc:creator>
				<category><![CDATA[Life]]></category>
		<category><![CDATA[Parenthood]]></category>

		<guid isPermaLink="false">http://blog.johnath.com/?p=721</guid>
		<description><![CDATA[Dada happy! Yes, Lily, I&#8217;m very happy. I&#8217;m always happy when I&#8217;m with you. Dada kiss! hug! Every time you kiss someone, you hug them, and then eskimo kiss. You kiss, hug, and eskimo kiss nana. You kiss, hug, and eskimo kiss mommy. You kiss, hug, and eskimo kiss teddy, and your tea cups, and [...]]]></description>
			<content:encoded><![CDATA[<p><a title="Hands by Johnath, on Flickr" href="http://www.flickr.com/photos/johnath/6867226103/"><img class="alignright" style="padding: 10px;" src="http://farm8.staticflickr.com/7042/6867226103_4258674a61_m.jpg" alt="Hands" width="159" height="240" /></a><em>Dada happy!</em></p>
<p>Yes, Lily, I&#8217;m very happy. I&#8217;m always happy when I&#8217;m with you.</p>
<p><em>Dada kiss! hug!<br />
</em></p>
<p>Every time you kiss someone, you hug them, and then eskimo kiss. You kiss, hug, and eskimo kiss nana. You kiss, hug, and eskimo kiss mommy. You kiss, hug, and eskimo kiss teddy, and your tea cups, and my RC helicopter.</p>
<p>You smile a lot. You know that you&#8217;re supposed to smile for pictures, but you don&#8217;t really know how to make that happen on command, so smiling for pictures is sort of a <a href="http://www.flickr.com/photos/johnath/6820404349/in/photostream">grimace</a>. I think it&#8217;s beautiful, but I suspect in a few years you&#8217;ll think it&#8217;s silly.</p>
<p>I watch you count toys and name the letters of the alphabet and I start to understand why parents all get this far off look in their eye when they talk about how quickly the time goes. I bet that part gets worse with time. The parents of 7-year olds in my life seem to feel it more deeply, and the parents of 15-year olds even moreso.</p>
<p>I wonder, as <a href="http://blog.johnath.com/2011/08/13/18-months/">I have before</a>, and <a href="http://blog.johnath.com/2011/02/13/1-year-old/">even before that</a>, which of your current fascinations will persist. You love bugs bunny cartoons. You can recite <a href="http://www.youtube.com/watch?v=2PeeO8ltmE8">Sahara Hare</a> verbatim. So can we. You put HP sauce on your scrambled eggs. You sit on the potty with an android tablet on your lap and watch <a href="http://www.youtube.com/watch?v=3TQbDz6-4eM">nyan cat reaction videos</a> and <a href="http://www.youtube.com/watch?v=MtN1YnoL46Q">the duck song</a>. Your childhood will be very, <em>very</em> different from mine.</p>
<p>At night, you can&#8217;t go to sleep without one verse each of Rainbow Connection, Climb Up Sunshine Mountain, and Twinkle Twinkle, Little Star. In the last month, you&#8217;ve started to sing along.</p>
<p>And then I tell you it&#8217;s time for sleep. And you say,</p>
<p><em>Okay. Goodnight daddy, I love you.</em></p>
<p>And it gets me. every. time.</p>
<p>I love you too, Lily. Happy birthday.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.johnath.com/2012/02/13/2-years-old/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Bringing Android Native Firefox to Beta</title>
		<link>http://blog.johnath.com/2012/01/25/bringing-android-native-firefox-to-beta/</link>
		<comments>http://blog.johnath.com/2012/01/25/bringing-android-native-firefox-to-beta/#comments</comments>
		<pubDate>Wed, 25 Jan 2012 20:40:40 +0000</pubDate>
		<dc:creator>Johnath</dc:creator>
				<category><![CDATA[Mozilla]]></category>
		<category><![CDATA[Work]]></category>

		<guid isPermaLink="false">http://blog.johnath.com/?p=707</guid>
		<description><![CDATA[I like trains. Last year, we put Firefox on a train-based release model: every six weeks, another train leaves the station. When a feature catches the train it moves through iterative testing on our Nightly, Aurora and Beta channels and, if that testing confirms its stability and general excellence, it goes out to hundreds of [...]]]></description>
			<content:encoded><![CDATA[<p>I like trains. Last year, we put Firefox on a <a href="http://mozilla.github.com/process-releases/draft/development_specifics/">train-based release model</a>: every six weeks, another train leaves the station. When a feature catches the train it moves through iterative testing on our Nightly, Aurora and Beta <a href="www.mozilla.org/firefox/channel/">channels</a> and, if that testing confirms its stability and general excellence, it goes out to hundreds of millions of Firefox users. If testing reveals an issue, we pull the feature out for another round of review, and let it catch a later train. The trains have run on time ever since, and the results have been incredible. Firefox improvements reach our users regularly, <a href="http://blog.mozilla.com/blog/2011/12/21/firefox-2011/">faster than ever before</a>.</p>
<p>However, when we decided to rebuild Firefox for Android using Native UI, we recognized that the first release couldn&#8217;t ride the trains. The iterative release model that serves us so well with Firefox works best when most changes are incremental and independent. Building a new high-performance front end for Firefox on Android, by contrast, involves many interconnected pieces being rebuilt in tandem.</p>
<p>Right now, the engineering team is focused on building an amazing browser for Android phones, and we&#8217;ll have a beta to show you in the coming weeks. It might coincide with one of our regular 6 week trains, but it&#8217;s quite possible it won&#8217;t. <em>If it doesn&#8217;t, don&#8217;t worry. It&#8217;s cool.</em> Firefox for Android will get back on the trains once the native UI rebuild is finished, but for a change this major we have extra work we want to do before we send it out the door. We&#8217;ll only ship it once we&#8217;re happy with its quality and performance. If you can&#8217;t wait that long, check us out on tablets or try our <a href="http://www.mozilla.org/en-US/firefox/channel/">early release Aurora builds</a>. I think you&#8217;ll be pleased.</p>
<p><small>[This post originally appeared on the <a href="http://blog.mozilla.com/futurereleases/?p=713">Future of Firefox blog</a>]</small></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.johnath.com/2012/01/25/bringing-android-native-firefox-to-beta/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Know Thyself &#8211; NSID 2011</title>
		<link>http://blog.johnath.com/2011/11/30/know-thyself-nsid-2011/</link>
		<comments>http://blog.johnath.com/2011/11/30/know-thyself-nsid-2011/#comments</comments>
		<pubDate>Wed, 30 Nov 2011 14:55:50 +0000</pubDate>
		<dc:creator>Johnath</dc:creator>
				<category><![CDATA[Life]]></category>
		<category><![CDATA[Mozilla]]></category>
		<category><![CDATA[NSID]]></category>

		<guid isPermaLink="false">http://blog.johnath.com/?p=688</guid>
		<description><![CDATA[The unexamined life is not worth living &#8212; Socrates Socrates didn&#8217;t have a smartphone. If he had, he might have been less cavalier about the mortal consequence of an unexamined life. The distractions of life interrupt introspection, and we have built a world around us to collect and channel and amplify those distractions. We are [...]]]></description>
			<content:encoded><![CDATA[<blockquote style="padding-left: 3em;"><p><em>The unexamined life is not worth living</em> &#8212; Socrates</p></blockquote>
<p>Socrates didn&#8217;t have a smartphone. If he had, he might have been less cavalier about the mortal consequence of an unexamined life. The distractions of life interrupt introspection, and we have built a world around us to collect and channel and amplify those distractions. We are no longer oaks putting down roots, we are leaves in a river; we float and bob in the current. It is beautiful, in its way, but it lacks depth.</p>
<blockquote style="padding-left: 3em;"><p><em>Wake up and take control of your own cipher</em> &#8212; Chuck D</p></blockquote>
<p>The modern psyche aches for self-possession as much as Socrates ever did. We flock to the authentic. We eat local; we shop indie; we grasp for things with permanence and we try to hold on. Each new soothsayer peddling some ancient tradition as a restorative balm for the soul gets our enthusiastic, if divided, attention.</p>
<p>Self-knowledge doesn&#8217;t come from a farmer&#8217;s market or a flea market, though, and it doesn&#8217;t come in a brilliant flash of insight purchased from the self-help list at amazon. Self knowledge comes from looking in the mirror each morning and, from the moment you wake up, making your decisions in manual mode, not automatic.<a title="NSID 2010 Mosaic by Johnath, on Flickr" href="http://www.flickr.com/photos/johnath/6419066321/"><img class="alignright" src="http://farm7.staticflickr.com/6060/6419066321_876540cb18_m.jpg" alt="NSID 2010 Mosaic" width="192" height="192" /></a></p>
<p>Look in the mirror. Get past the human reflex to make eye contact with your reflection, and look at your face. Is it shaven? Groomed? Why? Because it&#8217;s what you did yesterday, and last week, and the week before that? Maybe it&#8217;s because you made a choice at some point to shave it. Is that choice still right? How do you know?</p>
<p>When I started <a href="http://noshavingindecember.org/">NSID</a> 5 years ago, I did it because I&#8217;d never seen my face with a beard. 1 month to see my own face in a new light. Have you seen yours? Have you seen it recently?</p>
<p>In the month of December, we support each other in this most basic piece of self-examination. We let it grow, let our faces express their base nature. We don&#8217;t shave. And we see what happens. Join us. Post your photos to the <a title="NSID flickr pool" href="http://www.flickr.com/groups/555244@N25/">NSID flickr pool</a>, tweet with the <a href="http://search.twitter.com/search?q=%23nsid">#nsid hashtag</a>, track your colleagues in the <a href="http://noshavingindecember.org/">aggregator</a>. It&#8217;s good for your soul.</p>
<p>Socrates and Chuck D would want you to.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.johnath.com/2011/11/30/know-thyself-nsid-2011/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Rapidity</title>
		<link>http://blog.johnath.com/2011/08/26/rapidity/</link>
		<comments>http://blog.johnath.com/2011/08/26/rapidity/#comments</comments>
		<pubDate>Fri, 26 Aug 2011 20:30:37 +0000</pubDate>
		<dc:creator>Johnath</dc:creator>
				<category><![CDATA[Commentary]]></category>
		<category><![CDATA[Mozilla]]></category>
		<category><![CDATA[Work]]></category>

		<guid isPermaLink="false">http://blog.johnath.com/?p=657</guid>
		<description><![CDATA[[This is a re-post of a post that originally appeared on the Future of Firefox blog] Last week we released a new version of Firefox. We shipped on time, 6 weeks after the last update, making it our first true rapid release milestone. There was cake. Now that we know that we’re capable of this [...]]]></description>
			<content:encoded><![CDATA[<p style="font-size: small; color: gray;"><em>[This is a re-post of a <a href="http://blog.mozilla.com/futurereleases/2011/08/26/rapidity/">post that originally appeared on the Future of Firefox blog</a>]</em></p>
<p>Last week we released a new version of Firefox. We shipped on time, 6 weeks after the last update, making it our first true rapid release milestone. <a href="http://www.flickr.com/photos/johnath/6049526005/">There was cake</a>. Now that we know that we’re capable of this velocity, I’d like to revisit the reasons why it’s important, and the lessons we’ve already learned.</p>
<p>Mission drives Mozilla. People sometimes forget that we’re a non-profit, that our only job is to make the Web a better place. Rapid release advances our mission in important ways. We get <a href="http://blog.mozilla.com/devtools/2011/08/15/introducing-scratchpad/">features</a> and <a href="http://blog.mozilla.com/nnethercote/2011/08/09/firefox-7-is-lean-and-fast-2/">improvements</a> to users faster. We get new <a href="http://dbaron.org/log/20110615-animations">APIs and standards</a> out to web developers faster. <strong>We are delivering on the promise of the web <a href="http://blog.lizardwrangler.com/2011/08/25/rapid-release-process/">at web speed</a>.</strong></p>
<p>Small, frequent releases improve quality, too. Engineers in the Mozilla community regularly say things now like “I don’t like not understanding this piece, let’s back it out and I’ll catch the next train.” We move deliberately. We don’t rush. And, even though it sounds like a contradiction, when we take our time we go faster.</p>
<p><strong>There’s a great deal for us to be proud of, but we also need to be humble.</strong> This change was hard for us to make, and it’s been hard for some of our supporters, too. We have been glib or dismissive in the way we’ve communicated about parts of it. We live rapid release daily, and that makes it easier for us to see past the problems. We are also tenacious about the necessity of our new schedule, and tenacity can be mistaken for obstinacy.</p>
<p>We, everyone in the Mozilla community, all of us, need to communicate with clarity and sensitivity. We need to help the people who support our mission to understand why these changes are essential. We need to keep listening, and adjusting as we learn. We need to, and we will.</p>
<p>The push to ship faster isn’t some kind of software machismo. We push ourselves to ship faster because the web is under threat. Amazing and innovative people are doing amazing and innovative things and right now they have a choice: build for the web, or build for the walled gardens. <strong>The web can win that fight.</strong></p>
<p>The open web is the most amazing, universal communication and distribution platform ever built. To win, the web needs to be agile and responsive. To help it, we need to be agile and responsive, too. That’s why rapid release matters.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.johnath.com/2011/08/26/rapidity/feed/</wfw:commentRss>
		<slash:comments>16</slash:comments>
		</item>
		<item>
		<title>18 Months</title>
		<link>http://blog.johnath.com/2011/08/13/18-months/</link>
		<comments>http://blog.johnath.com/2011/08/13/18-months/#comments</comments>
		<pubDate>Sat, 13 Aug 2011 20:50:38 +0000</pubDate>
		<dc:creator>Johnath</dc:creator>
				<category><![CDATA[Life]]></category>
		<category><![CDATA[Parenthood]]></category>

		<guid isPermaLink="false">http://blog.johnath.com/?p=645</guid>
		<description><![CDATA[You became a little girl. I wasn&#8217;t consulted on this, and if I had been I&#8217;m not sure I would have approved. You&#8217;re a wonderful little girl. The best little girl. But 6 months ago you just were finishing up with being a baby, and I thought I&#8217;d have more time to prepare for the [...]]]></description>
			<content:encoded><![CDATA[<p><a title="A Girl and her Pinecone by Johnath, on Flickr" href="http://www.flickr.com/photos/johnath/6038949421/"><img class="alignright" src="http://farm7.static.flickr.com/6136/6038949421_78bc14ce6d_m.jpg" alt="A Girl and her Pine Cone" width="192" height="240" /></a>You became a little girl.</p>
<p>I wasn&#8217;t consulted on this, and if I had been I&#8217;m not sure I would have approved. You&#8217;re a wonderful little girl. The <em>best</em> little girl. But <a href="http://blog.johnath.com/2011/02/13/1-year-old/">6 months ago</a> you just were finishing up with being a baby, and I thought I&#8217;d have more time to prepare for the next thing.</p>
<p>Years from now, you&#8217;ll want to know all about this part of your life. There&#8217;s change everywhere, and you&#8217;re not so hot on forming long term memories just yet so you&#8217;re counting on your mom and me to take accurate notes. We&#8217;re trying. We have a running log that Mommy tries to keep up to date with every new thing you do:</p>
<blockquote><p><em>Lily gives lots of kisses now, sometimes when asked, and sometimes spontaneously! She kisses her toys, pages in books, and definitely people.</em></p></blockquote>
<blockquote><p><em>Lily loves to share things with her toys &#8211; they often to get to share her water or her snack. She also likes when we wrap them up in a blanket and rock them to sleep.</em></p></blockquote>
<blockquote><p><em>Sometimes she likes the water, sometimes she&#8217;s really hesitant about it. Mostly she likes to play with the toys on the side of the pool. Life jackets? Forget it.</em></p></blockquote>
<p>You literally learn new words daily. Some of my favourites in the last week: Hospital (sounds like <em><a href="http://www.flickr.com/photos/crumfypants/6027130673/">hoh-pitatah</a></em>), aluminum <em>(a-lem-in-nen</em>), tilapia (<em>dala-pala</em>), and dirt (<em>dut</em>).</p>
<p>Your mom and I talk about you a lot. What kind of school you should attend, what kind of activities you might be interested in, what we can do to ensure we both spend as much time with you as possible. We know we can&#8217;t predict the future. We know that you&#8217;ll have your own opinions, loudly stated. We know that change is constant, and that it can sneak up on you. We do it anyhow, because the illusion of a plan gives us something to hold on to when the uncertainty gets overwhelming. I think you won&#8217;t understand this the first time you read it but, when you have kids of your own, you might.</p>
<p>Today you ate a mouthful of sand at the playground.</p>
<p>Today you refused to eat your sandwich until you dipped each torn up little piece into a blob of ketchup.</p>
<p>Today you lay with me on the couch and made me put on music videos and then told me which ones to skip.</p>
<p>Today I have something in my eye.</p>
<p>You became a little girl.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.johnath.com/2011/08/13/18-months/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Every Six Weeks</title>
		<link>http://blog.johnath.com/2011/07/18/every-six-weeks/</link>
		<comments>http://blog.johnath.com/2011/07/18/every-six-weeks/#comments</comments>
		<pubDate>Mon, 18 Jul 2011 19:40:10 +0000</pubDate>
		<dc:creator>Johnath</dc:creator>
				<category><![CDATA[Commentary]]></category>
		<category><![CDATA[Mozilla]]></category>
		<category><![CDATA[Work]]></category>

		<guid isPermaLink="false">http://blog.johnath.com/?p=620</guid>
		<description><![CDATA[It’s astounding to me, but we’ve been living rapid release for a few months now. We’re moving faster. A new feature implemented today and landed on mozilla-central can be delivered to our users in 12 to 18 weeks, not months or years. Incredibly, the same process that gives us that agility is giving us greater [...]]]></description>
			<content:encoded><![CDATA[<p>It’s astounding to me, but we’ve been living <a href="http://mozilla.github.com/process-releases/draft/development_overview/">rapid release</a> for a few months now. We’re moving faster. A new feature implemented today and landed on mozilla-central can be delivered to our users in 12 to 18 weeks, not months or years. Incredibly, the same process that gives us that agility is giving us greater robustness, too. Testing and stabilization of each release across progressively larger audiences helps us find and fix bugs early, and build confidence in the quality of each release.</p>
<p>I want to clarify an important part of the process, though, that I think many people haven’t yet understood. Remember, an individual release train is 6 weeks of development time followed by 12 weeks of stabilization:</p>
<p style="text-align: center;"><a href="http://blog.johnath.com/wp-content/uploads/2011/07/rrprocess1.png"><img title="Rapid Release Process - Single Train" src="http://blog.johnath.com/wp-content/uploads/2011/07/rrprocess1-267x300.png" alt="" width="267" height="300" /></a></p>
<p>New work doesn’t land on Aurora and Beta. Instead, those channels focus exclusively on working with our heroic and growing community of testers to spot any unexpected issues introduced during development, and then resolve them. Looking at this diagram, you might well conclude that we’d have a release ready every 18 weeks.</p>
<p>Aurora and Beta are so single-minded in their focus on stabilization and testing, though, that many engineers can move on to new work. If we take a step back and look at the broader picture, this is what <em>actually</em> happens:</p>
<p style="text-align: center;"><a href="http://blog.johnath.com/wp-content/uploads/2011/07/rrprocess2.png"><img title="Rapid Release Process - Multiple Trains" src="http://blog.johnath.com/wp-content/uploads/2011/07/rrprocess2-1024x965.png" alt="" width="512" /></a></p>
<p>During the 12 weeks that a release spends on Aurora and Beta, the Mozilla community is not sitting idle. They are already working on features and fixes for the next release, and the release after that. Every 6 weeks their work is picked up into the next Aurora, the next Beta, and the next release. When you look at this broader picture, you notice an important point:</p>
<p><strong><em>There can be a new release of Firefox every 6 weeks, not every 12 or 18.</em></strong></p>
<p>I’ll say it again, because it’s important: most of the time, we’ll release a new Firefox every 6 weeks.</p>
<p>Many people are surprised by this fact, though <a href="http://mozilla.github.com/process-releases/draft/development_specifics/">it’s been part of the process all along</a>. When Firefox 4 came out, we committed to ship the next release of Firefox within 3 months. We did it, and when we did I think many people concluded that we have moved to a 3 month cycle. In truth, though, the only reason it took us 3 months was that our Aurora and Beta channels started off empty; they had to wait for the new release to make it through the process. The next Firefox is already in Beta, and is scheduled to come out 6 weeks after the last one. When that happens, yet another Firefox will enter Beta, and so on.</p>
<p>We’re studying the effects of the process carefully; it’s a big change and we will be flexible in our approach as new information comes in. We may decide that 6 weeks is the wrong interval, for instance, though it’s worth remembering that Firefox maintenance releases have been released on 6-8 week intervals for years, and sometimes included major changes. We’re also paying close attention to the impacts this cycle has on our ecosystem of add-ons, plugins, and other 3rd party software that interacts with Firefox. We&#8217;re working with large organizations, too, to understand how rapid release can fit into their software deployment systems.</p>
<p>Whatever adjustments we make, it’s clear that rapid release is a major improvement in our ability to respond to the needs of our users and the web. Every 6 weeks we have a new Firefox to evaluate and, unless some surprising and irreconcilable breakage is discovered, release to the world. No one will have to wait a year for the developer scratchpad now in <a href="http://www.mozilla.com/en-US/firefox/channel/">Beta</a>, or the massive memory and performance improvements already on <a href="http://www.mozilla.com/en-US/firefox/channel/">Aurora</a>, or the slick tab management animations soon to land on <a href="http://nightly.mozilla.org">Nightly</a>. Rapid release is already paying dividends, and we’re just getting started.</p>
<p><em>[This post originally appeared on the <a href="http://blog.mozilla.com/channels/2011/07/18/every-six-weeks/">Channels</a> blog]</em></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.johnath.com/2011/07/18/every-six-weeks/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Deliberacy</title>
		<link>http://blog.johnath.com/2011/04/19/deliberacy/</link>
		<comments>http://blog.johnath.com/2011/04/19/deliberacy/#comments</comments>
		<pubDate>Tue, 19 Apr 2011 15:44:33 +0000</pubDate>
		<dc:creator>Johnath</dc:creator>
				<category><![CDATA[Mozilla]]></category>
		<category><![CDATA[Work]]></category>

		<guid isPermaLink="false">http://blog.johnath.com/?p=601</guid>
		<description><![CDATA[The Firefox community is kicking ass. We just worked through our first Aurora merge as part of our new rapid release process and in less than 6 weeks, the next train leaves the station. We are rewriting the way we build software and we are doing it fast. We&#8217;re succeeding because we&#8217;re acting deliberately. We&#8217;re [...]]]></description>
			<content:encoded><![CDATA[<p><a title="crew by emurray, on Flickr" href="http://www.flickr.com/photos/emurray/127295952/"><img class="alignright" title="crew, by emurray" src="http://farm1.static.flickr.com/54/127295952_da1c24d465_m.jpg" alt="a team in a rowboat on blue water" width="240" height="163" /></a><br />
The Firefox community is kicking ass. We just worked through our first Aurora merge as part of our new rapid release process and in less than 6 weeks, the next train leaves the station. We are rewriting the way we build software and we are doing it <em>fast</em>.</p>
<p>We&#8217;re succeeding because we&#8217;re acting deliberately. We&#8217;re doing it on purpose. We know what we need our release process to do and we&#8217;re building forward from that, instead of shooting first and calling whatever we hit the target.</p>
<p>I&#8217;m glad that we&#8217;re being deliberate about <em>how</em> we build Firefox. We need to be deliberate about <em>what</em> we build, too. I&#8217;ll tell you how I think that should go, after a brief digression on how it has gone up until now.</p>
<p>(If you have no time for that, deb&#8217;s written a <a href="https://wiki.mozilla.org/Features/Planning_and_Tracking">more concise introduction</a>.)</p>
<p><strong><span id="more-601"></span>Prehistory: Bugs</strong></p>
<p>Historically, if you wanted to get a feature built, you filed a bug. Maybe you started a newsgroup thread, or an irc conversation but it wasn&#8217;t real until there was a bug. This is a great instinct. It makes the work concrete, it lets people opt in to tracking its progress, and it makes Bugzilla into a single source of truth about active work in the project.</p>
<p><strong>Recent History: Prioritization</strong></p>
<p>Bugs are good for tracking atomic pieces of work, but they are not good for overall project direction. As Mozilla grows, with more going on at once, we hit contention for scarce resources like code review, UX support, even permission to land at all, late in cycle.</p>
<p>Contention can be virtuous. It forces us to focus, but that focus is nearsighted. Managers ask their teams to work on high priority items, but priorities are often ad hoc (or post hoc!) Our releases have been driven by extremely smart people and they&#8217;ve been phenomenally successful, but the lack of a centralized, up-front plan and prioritization has lead to wasted effort and missed opportunities. It also bleeds those smart people dry, and we can do better.</p>
<p><strong>The Future, In 4 Parts</strong></p>
<p>We&#8217;re still going to use bugs to track work. We&#8217;re still going to need ideas from everywhere and we&#8217;re still going to need brilliant people, close to the code, letting us know what&#8217;s most important. What&#8217;s changing is that we&#8217;re going to bring some order to those ideas. It all starts with the feature page.</p>
<p><strong>Part 1: The Feature Page</strong></p>
<p>A <a href="https://wiki.mozilla.org/Feature_Page_Structure">feature page</a> is a basic one-page summary of a piece of work. It&#8217;s written before implementation work begins, and brings all the information about a feature together, including:</p>
<ul>
<li>A summary of the feature&#8217;s motivation, goals and non-goals</li>
<li>Bugs tracking work items</li>
<li>Dependencies on other groups</li>
<li>The feature team (Developer, UX, Security, QA, Project Management, &amp;c) and overall owner</li>
<li>Any UI designs, behaviour specs, test plans, and references necessary to make the implementation right, and usefully <a href="http://blog.johnath.com/2011/02/02/vacuums-and-you-or-estimating-like-an-astronaut/">estimate</a> its size</li>
</ul>
<p>A feature page is more flexible than a bug for tracking these soft pieces. It introduces some maintenance cost for the feature owner, but the benefit is that every feature has a source of truth. Beyond the benefits this brings to engineering, it gives teams like QA, Security, Marketing, and Support a point source for the work they do for every feature we ship. Not having that source in the past has hurt us. Repeatedly, and significantly.</p>
<p><strong>Part 2: Feature Tracking</strong></p>
<p>When a new feature is picked up for work, the owner (<em>not necessarily the main developer!</em>) links to the feature from the <a href="https://wiki.mozilla.org/Features/Release_Tracking">tracking page</a>. The tracking page transcludes each feature&#8217;s status line into an overall summary.</p>
<p>A given feature might move between releases on the tracking page as the realities of the feature&#8217;s size change; <em>that&#8217;s fine</em>. Having things on one page still lets us see at a glance what&#8217;s <em>likely</em> to make the next train, and the train after that. It helps us spot possible conflicts or danger spots earlier and lets people who care about different stages of the release focus their work. As this system starts to work, I can well imagine our development meetings re-orienting themselves to track this list.</p>
<p><strong>Part 3: Feature Prioritization</strong></p>
<p>Looking for a feature to work on? The product team is building a list with all of them. <a href="https://wiki.mozilla.org/Features">The feature list</a> is, in a sense, the product team&#8217;s central deliverable: it maps our overall vision and priorities to a ranked list of feature work that embodies them. Start at the top of the list, work down until you find a good match for your skills and interests, poke the owner, and spin it up.</p>
<p><strong>Part 4: Adding Features</strong></p>
<p>The features on the list come from everywhere in Mozilla, as they always have. What&#8217;s new is that we collect them in one page; new features go into <a href="https://wiki.mozilla.org/Features/Inbox">the inbox</a>. Have an idea? Write up a feature page, add it to the inbox, and the product team will triage it into the right spot.</p>
<p>Of course, you can just do the work in a bug without any of this, but you do so at your own peril. Unlisted features have no priority, which means you&#8217;re back to contending for scarce resources. Writing the feature page is also an exercise in clarifying your thoughts, I don&#8217;t think the bar there is too high.</p>
<p><strong>So to sum up&#8230;</strong></p>
<p>I know, it&#8217;s a lot of words. And not every piece of work rises to the level of &#8220;Feature&#8221; and requires this overhead &#8211; straight up bug fixes rarely will, for instance. Nevertheless, I think the change is worth it. For me, ensuring we work on the right things, to say nothing of the benefits in terms of communication &amp; coordination of work, are easily worth the cost. What do you think?</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.johnath.com/2011/04/19/deliberacy/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
	</channel>
</rss>

<!-- Dynamic page generated in 0.300 seconds. -->
<!-- Cached page generated by WP-Super-Cache on 2012-05-11 12:21:30 -->

