<?xml version="1.0"?>
<rss version="2.0"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
>

<channel>
	<title>Planet Mozilla</title>
	<link>http://planet.mozilla.org/</link>
	<language>en</language>
	<description>Planet Mozilla - http://planet.mozilla.org/</description>
	<atom:link rel="self" href="http://planet.mozilla.org/rss20.xml" type="application/rss+xml"/>

<item>
	<title>Alexander Surkov: Firefox 11 for AT developers</title>
	<guid isPermaLink="false">tag:blogger.com,1999:blog-564396784419613484.post-9023183075492200760</guid>
	<link>http://asurkov.blogspot.com/2011/11/firefox-11-for-at-developers.html</link>
	<description>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot;&gt;Here's an update what's new in Firefox 11 (beta, release on March 13) for assistive technology developers.&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-size: large;&quot;&gt;HTML &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;CSS generated tables (CSS &lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;span&gt;display:table&lt;/span&gt;&lt;/span&gt; style) are exposed as &lt;a href=&quot;http://asurkov.blogspot.com/2011/10/data-vs-layout-table.html&quot;&gt;layout tables&lt;/a&gt;. Originally this piece of work was targeted to Firefox 10 but we weren't in time to make this happen.&lt;br /&gt;&lt;br /&gt;HTML table cells (HTML &lt;span&gt;th&lt;/span&gt; and &lt;span&gt;td&lt;/span&gt; elements) gained new not standard &lt;span&gt;axis&lt;/span&gt; and &lt;span&gt;abbr&lt;/span&gt; object attributes.&lt;br /&gt;&lt;br /&gt;The &lt;span&gt;axis&lt;/span&gt; object attribute is direct mapping of HTML &lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;a href=&quot;http://www.w3.org/TR/html4/struct/tables.html#adef-axis&quot;&gt;@axis&lt;/a&gt;&lt;/span&gt; attribute. This object attribute is supposed to help AT to extract semantic of rich HTML tables in the web. Granted, this HTML attribute is not wide used on the web but we wanted to break the chicken-egg problem: browsers/AT don't support it iff web authors don't use it.&lt;br /&gt;&lt;br /&gt;The &lt;span&gt;abbr&lt;/span&gt; object attribute is less academic than previous one and useful to pick up short accessible name for header cells, for example, it makes sense when the user traverses through table cells and screen reader announces related heading information for each cell. The user doesn't want to hear long header cell names on and on: that's what &lt;span&gt;abbr&lt;/span&gt; object attribute is supposed to help to. This object attribute is exposed in two cases:&lt;br /&gt;&lt;ul style=&quot;text-align: left;&quot;&gt;&lt;li&gt; HTML &lt;span&gt;abbr&lt;/span&gt; element is inside the table cell&lt;/li&gt;&lt;li&gt;&lt;span&gt;@abbr&lt;/span&gt; attribute is used on table cell&lt;/li&gt;&lt;/ul&gt;Examples: &lt;br /&gt;&lt;pre&gt;  &amp;lt;th id=&quot;th1&quot;&amp;gt;&amp;lt;abbr title=&quot;Social Security Number&quot;&amp;gt;SS#&amp;lt;/abbr&amp;gt;&amp;lt;/th&amp;gt;&lt;br /&gt;  &amp;lt;th id=&quot;th2&quot; abbr=&quot;SS#&quot;&amp;gt;Social Security Number&amp;lt;/th&amp;gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;HTML &lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;span&gt;acronym&lt;/span&gt;&lt;/span&gt; and &lt;span&gt;abbr&lt;/span&gt; elements allow &lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;span&gt;@title&lt;/span&gt;&lt;/span&gt; attribute for accessible name computation. This can be illustrated by following example:&lt;br /&gt;&lt;pre&gt;  &amp;lt;input id=&quot;input&quot;&amp;gt;&lt;br /&gt;  &amp;lt;label for=&quot;input&quot;&amp;gt;&amp;lt;acronym title=&quot;O A T F&quot;&amp;gt;OATF&amp;lt;/acronym&amp;gt;&amp;lt;/label&amp;gt;&lt;/pre&gt;Accessible name of input accessible is &quot;O A T F&quot; now.&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-size: large;&quot;&gt;HMTL5&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-size: large;&quot;&gt;&lt;span style=&quot;font-size: small;&quot;&gt;HTML5 &lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;span&gt;figure&lt;/span&gt;&lt;/span&gt; and &lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;span&gt;figcaption&lt;/span&gt;&lt;/span&gt; elements are now accessible.  The &lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;span&gt;figure&lt;/span&gt;&lt;/span&gt; element is exposed with generic MSAA &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: large;&quot;&gt;&lt;span&gt;ROLE_SYSTEM_GROUPING&lt;/span&gt;&lt;span style=&quot;font-size: small;&quot;&gt; and ATK &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: large;&quot;&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;span&gt;ATK_ROLE_PANEL&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: small;&quot;&gt; roles because neither IAccessible2 nor ATK provide more suitable roles. AT can rely on &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: large;&quot;&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;span&gt;xml-roles:figure&lt;/span&gt;&lt;/span&gt; object attribute to detect &lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;span&gt;figure&lt;/span&gt;&lt;/span&gt; element&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: large;&quot;&gt;&lt;span style=&quot;font-size: small;&quot;&gt;. HTML &lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;span&gt;figure&lt;/span&gt;&lt;/span&gt; element picks up accessible name from &lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;span&gt;figcaption&lt;/span&gt;&lt;/span&gt; element which is exposed with &lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;span&gt;IA2_ROLE_CAPTION&lt;/span&gt;&lt;/span&gt; / &lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;span&gt;ATK_ROLE_CAPTION&lt;/span&gt;&lt;/span&gt; role. The &lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;span&gt;figure&lt;/span&gt;&lt;/span&gt; and &lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;span&gt;figcaption&lt;/span&gt;&lt;/span&gt; accessible objects are linked by &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;span&gt;LABELLED_BY &lt;/span&gt;&lt;/span&gt;/ &lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;span&gt;LABEL_FOR&lt;/span&gt;&lt;/span&gt; relations.&lt;br /&gt;&lt;br /&gt;The content of HTML5 &lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;span&gt;canvas&lt;/span&gt;&lt;/span&gt; element is not accessible still but Firefox 11 started to expose an accessible object having &lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;span&gt;IA2_ROLE_CANVAS/ATK_ROLE_CANVAS&lt;/span&gt;&lt;/span&gt; role for &lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;span&gt;canvas&lt;/span&gt;&lt;/span&gt; element itself. Not big deal but it's a good first step on canvas accessibility.&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-size: large;&quot;&gt;ARIA&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;ARIA attributes used on HTML file element (&lt;span&gt;input@type=&quot;file&quot;&lt;/span&gt;) are propagated to underlying text field and &quot;Browse&quot; button, i.e. accessible states defined by these attributes are inherited.&lt;br /&gt;&lt;br /&gt;ARIA combobox (&lt;span&gt;@role=&quot;combobox&quot;&lt;/span&gt;) fires MSAA &lt;span style=&quot;font-family: inherit; font-size: x-small;&quot;&gt;EVENT_OBJECT_VALUECHANGE&lt;/span&gt; event and ATK &lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;span&gt;accessible-value&lt;/span&gt;&lt;/span&gt; signal when option is changed. Here's an &lt;a href=&quot;http://oaa-accessibility.org/example/10/&quot;&gt;example&lt;/a&gt; of ARIA combobox widget.&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-size: large;&quot;&gt;Correctness&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;span&gt;IA2_STATE_ACTIVE/ATK_STATE_ACTIVE&lt;/span&gt;&lt;/span&gt; state is exposed on active item for standard composite widgets like HTML select elements. The state can be used for example to detect the current item of the widget when the widget isn't focused. We make our implementation closer to ARIA widgets where &lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;span&gt;aria-activedescendant&lt;/span&gt;&lt;/span&gt; technique is used. Another side of this code unification is &lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;span&gt;IAccessible::accSelect&lt;/span&gt;&lt;/span&gt; called with &lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;span&gt;SELFLAG_TAKEFOCUS&lt;/span&gt;&lt;/span&gt; flag can be used on widget items now.&lt;br /&gt;&lt;br /&gt;Small fix for &lt;span id=&quot;summary_alias_container&quot;&gt;&lt;span id=&quot;short_desc_nonedit_display&quot;&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;span&gt;IAccessible::get_accName&lt;/span&gt;&lt;/span&gt; that returns &lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;span&gt;S_FALSE&lt;/span&gt;&lt;/span&gt; when the accessible object doesn't have accessible name. Not big deal. Done for consistence and meet MSAA spec.&lt;/span&gt;&lt;/span&gt; &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img alt=&quot;&quot; height=&quot;1&quot; src=&quot;https://blogger.googleusercontent.com/tracker/564396784419613484-9023183075492200760?l=asurkov.blogspot.com&quot; width=&quot;1&quot; /&gt;&lt;/div&gt;</description>
	<pubDate>Wed, 08 Feb 2012 09:38:36 +0000</pubDate>
	<author>noreply@blogger.com (Alex Surkov)</author>
</item>
<item>
	<title>Bonjour Mozilla: Nikola Matosovic</title>
	<guid isPermaLink="false">urn:md5:a8d836d931150fa77ee8fcb831d65819</guid>
	<link>http://bonjourmozilla.fr/?post/2012/02/07/Nikola-Matosovic</link>
	<description>&lt;p&gt;&lt;a href=&quot;http://www.flickr.com/photos/king-molan/6770403997/in/photostream/&quot;&gt;&lt;img alt=&quot;nikolam&quot; src=&quot;http://bonjourmozilla.fr/public/.nikolam_m.jpg&quot; title=&quot;nikolam, fév. 2012&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;em&gt;(Photo : Brian King)&lt;/em&gt;&lt;/p&gt;
&lt;p lang=&quot;fr&quot;&gt;Il est le visage emblématique de la communauté Mozilla en Croatie et vient de publier un &lt;a href=&quot;http://nikolamatosovic.wordpress.com/2012/02/01/croatian-community-first-6-months-what-and-how-happend/&quot; hreflang=&quot;en&quot;&gt;billet sur son blog&lt;/a&gt; rédigé sur 3 mois dans lequel il raconte par le menu ses premiers pas aux côtés du Panda Roux en tant que Reps. Ambitieux, Nikola Matosovic est bien décidé à bâtir une communauté importante dans son pays… Et c’est bien parti ! Il a déjà réussi à convaincre quelque 30 personnes de contribuer à Mozilla ! Il faut dire que Nikola est un remarquable organisateur, ainsi qu’un garçon enthousiaste et très sociable. C’est donc logiquement qu’il est candidat pour accueillir le prochain MeetUp pour les Balkans.&lt;/p&gt;
&lt;p lang=&quot;fr&quot;&gt;Bonjour Nikola ! Et merci !&lt;/p&gt;
&lt;p lang=&quot;fr&quot;&gt;PS : Bonjour Mozilla serait motivé pour participer à ce meetup ;-)&lt;/p&gt;
&lt;hr style=&quot;width: 50%;&quot; /&gt;
&lt;p lang=&quot;en&quot;&gt;He is the iconic face of Mozilla community in Croatia and has just published a &lt;a href=&quot;http://nikolamatosovic.wordpress.com/2012/02/01/croatian-community-first-6-months-what-and-how-happend/&quot; hreflang=&quot;en&quot;&gt;post on his blog&lt;/a&gt; written during about three months in which he tell in detail his first steps with the Red Panda as a Reps. Ambitious, Nikola Matosovic is determined to build a large community in his country… And he started well with 30 people already convinced to contribute to Mozilla! I must say that Nikola is an outstanding event organizer and a very enthusiastic and sociable boy. He is therefore logically volunteering to host the next  Balkan MeetUp.&lt;/p&gt;
&lt;p lang=&quot;en&quot;&gt;Bonjour Nikola! and thank you!&lt;/p&gt;
&lt;p lang=&quot;en&quot;&gt;PS : Bonjour Mozilla would be very happy to participate to this meetup ;-)&lt;/p&gt;</description>
	<pubDate>Wed, 08 Feb 2012 09:00:00 +0000</pubDate>
	<dc:creator>clarista</dc:creator>
</item>
<item>
	<title>Brett Gaylor: Mozilla Popcorn aka The Meme Generating Machine</title>
	<guid isPermaLink="true">http://brettgaylor.tumblr.com/post/17252723967</guid>
	<link>http://brettgaylor.tumblr.com/post/17252723967</link>
	<description>&lt;strong&gt;meme&lt;/strong&gt; ( /ˈmiːm/)
“an idea, behavior or style that spreads from person to person within a culture.”
&lt;p&gt;
&lt;em&gt;“A meme is an idea that behaves like a virus—that moves through a population, taking hold in each person it infects.”&lt;/em&gt; - Malcolm Gladwell”
&lt;/p&gt;&lt;p&gt;
&lt;strong&gt;We need Mozilla Popcorn to become a virus.&lt;/strong&gt;
&lt;/p&gt;&lt;p&gt;
Hear us out here.
&lt;/p&gt;&lt;p&gt;
In our early iterations of Popcorn Maker, we’ve been tackling the problem of how to make it easy for non-programmers to create Popcorn experiences. It remains the central focus of the project, and we’ve fleshed out our User Stories to imagine the full experience that a user might have. Ben has described these stories in a recent blog post.
&lt;/p&gt;&lt;p&gt;
During our Popcorn Maker sprint, we put a lot of thought into imagining how our users’ creations will get shared and disseminated on the web. Ben has blogged about how &lt;a href=&quot;http://www.benmoskowitz.com/?p=390&quot;&gt;Popcorn.js is a gateway drug&lt;/a&gt; to learning JavaScript (Also of the good sort. Stay with us). Similarly, we want Popcorn Maker to be a tool for injecting the Maker meme onto the web.
&lt;/p&gt;&lt;h3&gt;Fork my meme&lt;/h3&gt;
To do this, we’ll need to do a few things. First, we need to make it easy for Popcorn makers to embed their creations on their own blogs, Tumblrs and websites. This means offering embeds.
&lt;img alt=&quot;&quot; class=&quot;alignnone size-full wp-image-751&quot; height=&quot;309&quot; src=&quot;http://mozillapopcorn.org/wp-content/uploads/2012/02/tumblr.png&quot; title=&quot;tumblr&quot; width=&quot;479&quot; /&gt;&lt;p&gt;
More interestingly, we want to give viewers the ability to fork others’ Popcorn productions. If you’ve watched Jonathan MacIntosh’s &lt;a href=&quot;http://www.rebelliouspixels.com/popupvideo/&quot;&gt;Buffy Vs Edward pop-up video remix&lt;/a&gt;, for example, wouldn’t you love the ability to easily clone his creation and add to it?
&lt;/p&gt;&lt;p&gt;
Each Popcorn creation needs a post-roll that offers viewers the ability to 1) Replay, 2) Share and embed, and 3) Fork this creation.
&lt;/p&gt;&lt;p&gt;
&lt;img src=&quot;http://benmoskowitz.com/i/pm/pmembed.png&quot; /&gt;&lt;/p&gt;&lt;h3&gt;Popcorn Gallery&lt;/h3&gt;
&lt;img src=&quot;http://benmoskowitz.com/i/pm/pmshare.png&quot; /&gt;&lt;p&gt;
To build WordPress-like community scaffolding, we need the ability for every single creation to be made available in the Popcorn Gallery. When users choose to [Share] from Popcorn Maker they have an option to share to the Gallery that is checked by default.

While the Gallery will favour our default templates, it will become a jumping off point for new creators to get started with Popcorn. It will solidify the notion that creating on the web is generative. &lt;strong&gt;The act of creation will start by building on someone else’s work.&lt;/strong&gt;

&lt;img alt=&quot;&quot; class=&quot;alignnone size-full wp-image-753&quot; height=&quot;481&quot; src=&quot;http://mozillapopcorn.org/wp-content/uploads/2012/02/gallery.png&quot; title=&quot;gallery&quot; width=&quot;569&quot; /&gt;&lt;/p&gt;&lt;p&gt;
We think Popcorn will be a good bug to catch. Like getting the chicken pox when you were a kid. Or maybe more like taking an interest in photography. We’re sure this is the right metaphor.

&lt;em&gt;Note: knock knock jokes, box stores and lolcats were all considered as alternatives while titling this post. Go meme or go home.&lt;/em&gt; &lt;/p&gt;</description>
	<pubDate>Wed, 08 Feb 2012 05:28:00 +0000</pubDate>
</item>
<item>
	<title>Web Made Movies: Roadmap Popcorn Maker 1.0</title>
	<guid isPermaLink="false">http://mozillapopcorn.org/?p=787</guid>
	<link>http://mozillapopcorn.org/roadmapping-popcorn-maker-1-0/</link>
	<description>&lt;p&gt;&lt;a href=&quot;http://mozillapopcorn.org/wp-content/uploads/2012/02/roadmappin.png&quot;&gt;&lt;img alt=&quot;Roadmap for Popcorn 1.0&quot; class=&quot;alignnone size-medium wp-image-797&quot; height=&quot;154&quot; src=&quot;http://mozillapopcorn.org/wp-content/uploads/2012/02/roadmappin-300x154.png&quot; title=&quot;roadmappin&quot; width=&quot;300&quot; /&gt;&lt;/a&gt;&lt;img alt=&quot;&quot; class=&quot;alignright&quot; height=&quot;258&quot; src=&quot;http://benmoskowitz.com/i/pm/pmcomponents.png&quot; style=&quot;border: 1px solid black;&quot; width=&quot;281&quot; /&gt;&lt;/p&gt;
&lt;p&gt;We are hard at work on Popcorn Maker.&lt;/p&gt;
&lt;p&gt;Currently at &lt;a href=&quot;http://mozillapopcorn.org/maker&quot;&gt;version 0.1&lt;/a&gt;, Popcorn Maker is a little crufty. But Popcorn Maker 1.0 will hit hard in November of this year.&lt;/p&gt;
&lt;p&gt;Popcorn Maker 1.0 will empower you to make cool web-based media, whether you’re a beginner or pro. With over 20 plugins—ranging from Twitter to Google Maps to video processing—you’ll be able to stitch up a stylish video that’s “&lt;a href=&quot;http://popcornjs.org/demos&quot;&gt;woven&lt;/a&gt;” into the web. And, of course, it’s 100% free and open source.&lt;/p&gt;
&lt;p&gt;Users will be able to publish and share their creations on their blog, Twitter, or Tumblr (or just grab the code). And the app will reward them for learning more advanced HTML, CSS, and Javascript skills.&lt;/p&gt;
&lt;p&gt;When it hits critical mass, Popcorn Maker will be an engine for community innovation in open video.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://www.benmoskowitz.com/?p=254&quot;&gt;I blogged about the Popcorn Maker vision in July of last year&lt;/a&gt;. Since then, &lt;a href=&quot;http://commonspace.wordpress.com/2011/11/22/mozilla-2012-plan/&quot;&gt;it’s moved to the center of the Foundation’s “Maker” strategy&lt;/a&gt; for 2012.&lt;/p&gt;
&lt;h3&gt;Roadmapping&lt;/h3&gt;
&lt;p&gt;Last week—thanks to four intense, caffeine-fueled days—the project team arrived at a pretty solid roadmap and vision for Popcorn Maker. Our issue tracker also includes several hundred new/reassigned bugs, mapped against &lt;a href=&quot;https://webmademovies.lighthouseapp.com/projects/65733-butter/milestones&quot;&gt;cheeky code names for each release&lt;/a&gt;. (We’ve chosen a blockbuster movie motif, so look forward to 0.2 Ghostbusters, 0.3 Breakfast Club, 0.4 Top Gun, 0.5 Pulp Fiction, 0.6 Terminator, 0.7 Amelie, 0.8 Rushmore, 0.9 Wrath of Khan, and finally, 1.0—Matrix.)&lt;/p&gt;
&lt;p&gt;What’s new? A heightened level of ambition, matched with increased rigor to get it done.&lt;/p&gt;
&lt;div class=&quot;wp-caption alignright&quot; style=&quot;width: 299px;&quot;&gt;&lt;img alt=&quot;&quot; class=&quot; &quot; height=&quot;177&quot; src=&quot;http://benmoskowitz.com/i/pm/pmembed.png&quot; width=&quot;289&quot; /&gt;&lt;p class=&quot;wp-caption-text&quot;&gt;Starting in 0.7, you'll be able to embed a viral Popcorn player on third-party sites.&lt;/p&gt;&lt;/div&gt;
&lt;p&gt;Importantly, we’ve developed a working theory of how Popcorn can become a webmaking virus, which &lt;a href=&quot;http://mozillapopcorn.org/mozilla-popcorn-aka-the-meme-generating-machine/&quot;&gt;Brett Gaylor has blogged about here&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;All of this is reflected in a shiny vision document, which is a work in progress (we’ll share next week). We’ve hashed out some user stories, gotten granular on the technical challenges, and imagined how the UI/UX might work. We need to kick the tires a bit before we’re confident in both the user stories and the roadmap, but we’re close.&lt;/p&gt;
&lt;p&gt;We’d love to have your feedback in our &lt;a href=&quot;https://webmademovies.lighthouseapp.com/projects/80723-popcorn-maker/tickets/286-popcorn-maker-user-stories&quot;&gt;Lighthouse&lt;/a&gt; issue tracker. (And, as always, we’d love to hear your &lt;a href=&quot;https://webmademovies.lighthouseapp.com/projects/89138-popcorn-maker-templates/overview&quot;&gt;template ideas&lt;/a&gt;! Feel free to create a ticket and let us know what’s on your mind.)&lt;/p&gt;
&lt;p&gt;Here’s a look at some of our thinking.&lt;/p&gt;
&lt;h3&gt;Editor UI&lt;/h3&gt;
&lt;p&gt;Most users will experience the app as a special editor tray that sits on top of the project you’re working on (Popcorn Maker is a &lt;a href=&quot;http://en.wikipedia.org/wiki/WYSIWYG&quot;&gt;WYSIWYG&lt;/a&gt; tool). We need to get the editor UI/UX right. It needs to be compact but not constraining.&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot;&gt;&lt;img alt=&quot;&quot; class=&quot;aligncenter&quot; height=&quot;293&quot; src=&quot;http://benmoskowitz.com/i/pm/pmevents.png&quot; width=&quot;552&quot; /&gt;&lt;/p&gt;
&lt;p&gt;We’re moving event editors to the tray (in lieu of floating windows) and making it more intuitive to add Popcorn events to a page (just drag and drop onto the page target).&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot;&gt;&lt;img alt=&quot;&quot; class=&quot;aligncenter&quot; height=&quot;233&quot; src=&quot;http://benmoskowitz.com/i/pm/pmadd.png&quot; width=&quot;563&quot; /&gt;&lt;/p&gt;
&lt;p&gt;To make the app more versatile, we’ll offer a simple CSS editor UI to change your styles, without isolating you too much from the actual CSS:&lt;/p&gt;
&lt;p&gt;&lt;img alt=&quot;&quot; class=&quot;alignnone&quot; height=&quot;351&quot; src=&quot;http://benmoskowitz.com/i/pm/pmcss.png&quot; width=&quot;602&quot; /&gt;&lt;/p&gt;
&lt;h3&gt;Popcorn Gallery&lt;/h3&gt;
&lt;p&gt;The life-force of Popcorn Maker will be the Popcorn Gallery, which will let contributors share templates that others can build on. Call it the “WordPress.org effect.”&lt;/p&gt;
&lt;p&gt;&lt;img alt=&quot;&quot; class=&quot;alignnone&quot; height=&quot;296&quot; src=&quot;http://benmoskowitz.com/i/pm/pmgallery.png&quot; width=&quot;324&quot; /&gt;&lt;img alt=&quot;&quot; class=&quot;alignnone&quot; src=&quot;http://benmoskowitz.com/i/pm/pmshare.png&quot; /&gt;&lt;/p&gt;
&lt;h3&gt;Plugins&lt;/h3&gt;
&lt;div class=&quot;wp-caption alignright&quot; style=&quot;width: 286px;&quot;&gt;&lt;img alt=&quot;&quot; height=&quot;47&quot; src=&quot;http://benmoskowitz.com/i/pm/pmplugins.png&quot; width=&quot;276&quot; /&gt;&lt;p class=&quot;wp-caption-text&quot;&gt;You can use any popcorn.js plugin in Popcorn Maker. Even write your own.&lt;/p&gt;&lt;/div&gt;
&lt;p&gt;Last but not least—plugins. Popcorn.js plugins are what make Popcorn Maker magic. We’re currently planning on supporting the following plugins, each with a pleasing editor UI (these are subject to change): Image, Video, Webpage, Wikipedia, Attribution, Media control, Apply class, Google map, Open Street Map, Chroma, Video effects, 3D object, Processing, WordRiver, PDF, DocumentCloud, Twitter, Facebook graph, Flickr.&lt;/p&gt;
&lt;p&gt;One of the coolest things about Popcorn Maker, though, is that it will support every Popcorn.js plugin through a default editor. And plugin authors can create editor UIs for their plugins. In other words, the project is intentionally modular, so the Popcorn.js community can help us build out the functionality of the app. &lt;strong&gt; &lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;As the community grows, the app becomes more powerful&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;Seriously.&lt;a href=&quot;http://seriouslyjs.org/&quot;&gt; Check out Seriously.js&lt;/a&gt;, then read that again.&lt;/p&gt;
&lt;h3&gt;Roadmap—want to help?&lt;/h3&gt;
&lt;p&gt;It’s going to be a hard sprint. But it’s super plausible, especially with Bobby Richter, Dave Humphrey, and the brilliant students of Seneca’s &lt;a href=&quot;http://zenit.senecac.on.ca/wiki/index.php/Main_Page&quot;&gt;CDOT&lt;/a&gt; at the wheel. Here’s our roadmap, which will likely change a bit before we freeze it this month. Want to help? Join #popcorn in irc.mozilla.org, or join our &lt;a href=&quot;https://groups.google.com/group/web-made-movies-working?hl=en&quot;&gt;mailing list&lt;/a&gt;.&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;http://benmoskowitz.com/i/pm/pmroadmap.png&quot;&gt;&lt;img alt=&quot;&quot; class=&quot;aligncenter&quot; height=&quot;444&quot; src=&quot;http://benmoskowitz.com/i/pm/pmroadmap.png&quot; width=&quot;620&quot; /&gt;&lt;/a&gt;&lt;/p&gt;</description>
	<pubDate>Wed, 08 Feb 2012 05:23:23 +0000</pubDate>
	<dc:creator>ben</dc:creator>
</item>
<item>
	<title>Web Made Movies: Mozilla Popcorn aka The Meme Generating Machine</title>
	<guid isPermaLink="false">http://mozillapopcorn.org/?p=749</guid>
	<link>http://mozillapopcorn.org/mozilla-popcorn-aka-the-meme-generating-machine/</link>
	<description>&lt;p&gt;&lt;strong&gt;meme&lt;/strong&gt; ( /ˈmiːm/)&lt;br /&gt;
“an idea, behavior or style that spreads from person to person within a culture.”&lt;/p&gt;
&lt;p&gt;&lt;em&gt;“A meme is an idea that behaves like a virus–that moves through a population, taking hold in each person it infects.”&lt;/em&gt; – Malcolm Gladwell”&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;We need Mozilla Popcorn to become a virus.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Hear us out here.&lt;/p&gt;
&lt;p&gt;In our early iterations of Popcorn Maker, we’ve been tackling the problem of how to make it easy for non-programmers to create Popcorn experiences. It remains the central focus of the project, and we’ve fleshed out our User Stories to imagine the full experience that a user might have. Tthese stories have informed the foundational changes to Popcorn Maker that Ben outlined in &lt;a href=&quot;http://mozillapopcorn.org/roadmapping-popcorn-maker-1-0/&quot;&gt;a recent blog post&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;During our Popcorn Maker sprint, we put a lot of thought into imagining how our users’ creations will get shared and disseminated on the web. Ben has blogged about how &lt;a href=&quot;http://www.benmoskowitz.com/?p=390&quot;&gt;Popcorn.js is a gateway drug&lt;/a&gt; to learning JavaScript (Also of the good sort. Stay with us). Similarly, we want Popcorn Maker to be a tool for injecting the Maker meme onto the web.&lt;/p&gt;
&lt;h3&gt;Fork my meme&lt;/h3&gt;
&lt;p&gt;To do this, we’ll need to do a few things. First, we need to make it easy for Popcorn makers to embed their creations on their own blogs, Tumblrs and websites. This means offering &amp;lt;iframe&amp;gt;embeds.&lt;br /&gt;
&lt;img alt=&quot;&quot; class=&quot;alignnone size-full wp-image-751&quot; height=&quot;309&quot; src=&quot;http://mozillapopcorn.org/wp-content/uploads/2012/02/tumblr.png&quot; title=&quot;tumblr&quot; width=&quot;479&quot; /&gt;&lt;/p&gt;
&lt;p&gt;More interestingly, we want to give viewers the ability to fork others’ Popcorn productions. If you’ve watched Jonathan MacIntosh’s &lt;a href=&quot;http://www.rebelliouspixels.com/popupvideo/&quot;&gt;Buffy Vs Edward pop-up video remix&lt;/a&gt;, for example, wouldn’t you love the ability to easily clone his creation and add to it?&lt;/p&gt;
&lt;p&gt;Each Popcorn creation needs a post-roll that offers viewers the ability to 1) Replay, 2) Share and embed, and 3) Fork this creation.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;http://benmoskowitz.com/i/pm/pmembed.png&quot; /&gt;&lt;/p&gt;
&lt;h3&gt;Popcorn Gallery&lt;/h3&gt;
&lt;p&gt;&lt;img src=&quot;http://benmoskowitz.com/i/pm/pmshare.png&quot; /&gt;&lt;/p&gt;
&lt;p&gt;To build WordPress-like community scaffolding, we need the ability for every single creation to be made available in the Popcorn Gallery. When users choose to [Share] from Popcorn Maker they have an option to share to the Gallery that is checked by default.&lt;/p&gt;
&lt;p&gt;While the Gallery will favour our default templates, it will become a jumping off point for new creators to get started with Popcorn. It will solidify the notion that creating on the web is generative. &lt;strong&gt;The act of creation will start by building on someone else’s work.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;img alt=&quot;&quot; class=&quot;alignnone size-full wp-image-753&quot; height=&quot;481&quot; src=&quot;http://mozillapopcorn.org/wp-content/uploads/2012/02/gallery.png&quot; title=&quot;gallery&quot; width=&quot;569&quot; /&gt;&lt;/p&gt;
&lt;p&gt;We think Popcorn will be a good bug to catch. Like getting the chicken pox when you were a kid. Or maybe more like taking an interest in photography. We’re sure this is the right metaphor.&lt;/p&gt;
&lt;p&gt;&lt;em&gt;Note: knock knock jokes, box stores and lolcats were all considered as alternatives while titling this post. Go meme or go home.&lt;/em&gt;&lt;/p&gt;</description>
	<pubDate>Wed, 08 Feb 2012 05:12:46 +0000</pubDate>
	<dc:creator>brett</dc:creator>
</item>
<item>
	<title>Ben Moskowitz: Roadmapping Popcorn Maker 1.0</title>
	<guid isPermaLink="true">http://www.benmoskowitz.com/?p=458</guid>
	<link>http://www.benmoskowitz.com/?p=458</link>
	<description>&lt;p&gt;&lt;img alt=&quot;&quot; class=&quot;alignright&quot; height=&quot;258&quot; src=&quot;http://benmoskowitz.com/i/pm/pmcomponents.png&quot; width=&quot;281&quot; /&gt;Currently at &lt;a href=&quot;http://mozillapopcorn.org/maker&quot;&gt;version 0.1&lt;/a&gt;, Popcorn Maker is a little crufty. But Popcorn Maker 1.0 will hit hard in November of this year.&lt;/p&gt;
&lt;p&gt;Popcorn Maker 1.0 will empower you to make cool web-based media, whether you’re a beginner or pro. With over 20 plugins—ranging from Twitter to Google Maps to video processing—you’ll be able to stitch up a stylish video that’s “&lt;a href=&quot;http://popcornjs.org/demos&quot;&gt;woven&lt;/a&gt;” into the web. And, of course, it’s 100% free and open source.&lt;/p&gt;
&lt;p&gt;Users will be able to publish and share their creations on their blog, Twitter, or Tumblr (or just grab the code). And the app will reward them for learning more advanced HTML, CSS, and Javascript skills.&lt;/p&gt;
&lt;p&gt;When it hits critical mass, Popcorn Maker will be an engine for community innovation in open video.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://www.benmoskowitz.com/?p=254&quot;&gt;I blogged about the Popcorn Maker vision in July of last year&lt;/a&gt;. Since then, &lt;a href=&quot;http://commonspace.wordpress.com/2011/11/22/mozilla-2012-plan/&quot;&gt;it’s moved to the center of the Foundation’s “Maker” strategy&lt;/a&gt; for 2012.&lt;/p&gt;
&lt;h3&gt;Roadmapping&lt;/h3&gt;
&lt;p&gt;Last week—thanks to four intense, caffeine-fueled days—the project team arrived at a pretty solid roadmap and vision for Popcorn Maker. Our issue tracker also includes several hundred new/reassigned bugs, mapped against &lt;a href=&quot;https://webmademovies.lighthouseapp.com/projects/65733-butter/milestones&quot;&gt;cheeky code names for each release&lt;/a&gt;. (We’ve chosen a blockbuster movie motif, so look forward to 0.2 Ghostbusters, 0.3 Breakfast Club, 0.4 Top Gun, 0.5 Pulp Fiction, 0.6 Terminator, 0.7 Amelie, 0.8 Rushmore, 0.9 Wrath of Khan, and finally, 1.0—Matrix.)&lt;/p&gt;
&lt;p&gt;What’s new? A heightened level of ambition, matched with increased rigor to get it done.&lt;/p&gt;
&lt;div class=&quot;wp-caption alignright&quot; style=&quot;width: 299px;&quot;&gt;&lt;img alt=&quot;&quot; class=&quot; &quot; height=&quot;177&quot; src=&quot;http://benmoskowitz.com/i/pm/pmembed.png&quot; width=&quot;289&quot; /&gt;&lt;p class=&quot;wp-caption-text&quot;&gt;Starting in 0.7, you'll be able to embed a viral Popcorn player on third-party sites.&lt;/p&gt;&lt;/div&gt;
&lt;p&gt;Importantly, we’ve developed a working theory of how Popcorn can become a webmaking virus, which &lt;a href=&quot;http://mozillapopcorn.org/mozilla-popcorn-aka-the-meme-generating-machine/&quot;&gt;Brett Gaylor has blogged about here&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;All of this is reflected in a shiny vision document, which is a work in progress (we’ll share next week). We’ve hashed out some user stories, gotten granular on the technical challenges, and imagined how the UI/UX might work. We need to kick the tires a bit before we’re confident in both the user stories and the roadmap, but we’re close.&lt;/p&gt;
&lt;p&gt;We’d love to have your feedback in our &lt;a href=&quot;https://webmademovies.lighthouseapp.com/projects/80723-popcorn-maker/tickets/286-popcorn-maker-user-stories&quot;&gt;Lighthouse&lt;/a&gt; issue tracker. (And, as always, we’d love to hear your &lt;a href=&quot;https://webmademovies.lighthouseapp.com/projects/89138-popcorn-maker-templates/overview&quot;&gt;template ideas&lt;/a&gt;! Feel free to create a ticket and let us know what’s on your mind.)&lt;/p&gt;
&lt;p&gt;Here’s a look at some of our thinking.&lt;/p&gt;
&lt;h3&gt;Editor UI&lt;/h3&gt;
&lt;p&gt;Most users will experience the app as a special editor tray that sits on top of the project you’re working on (Popcorn Maker is a &lt;a href=&quot;http://en.wikipedia.org/wiki/WYSIWYG&quot;&gt;WYSIWYG&lt;/a&gt; tool). We need to get the editor UI/UX right. It needs to be compact but not constraining.&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot;&gt;&lt;img alt=&quot;&quot; class=&quot;aligncenter&quot; height=&quot;293&quot; src=&quot;http://benmoskowitz.com/i/pm/pmevents.png&quot; width=&quot;552&quot; /&gt;&lt;/p&gt;
&lt;p&gt;We’re moving event editors to the tray (in lieu of floating windows) and making it more intuitive to add Popcorn events to a page (just drag and drop onto the page target).&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot;&gt;&lt;img alt=&quot;&quot; class=&quot;aligncenter&quot; height=&quot;233&quot; src=&quot;http://benmoskowitz.com/i/pm/pmadd.png&quot; width=&quot;563&quot; /&gt;&lt;/p&gt;
&lt;p&gt;To make the app more versatile, we’ll offer a simple CSS editor UI to change your styles, without isolating you too much from the actual CSS:&lt;/p&gt;
&lt;p&gt;&lt;img alt=&quot;&quot; class=&quot;alignnone&quot; height=&quot;351&quot; src=&quot;http://benmoskowitz.com/i/pm/pmcss.png&quot; width=&quot;602&quot; /&gt;&lt;/p&gt;
&lt;h3&gt;Popcorn Gallery&lt;/h3&gt;
&lt;p&gt;The life-force of Popcorn Maker will be the Popcorn Gallery, which will let contributors share templates that others can build on. Call it the “Wordpress.org effect.”&lt;/p&gt;
&lt;p&gt;&lt;img alt=&quot;&quot; class=&quot;alignnone&quot; height=&quot;296&quot; src=&quot;http://benmoskowitz.com/i/pm/pmgallery.png&quot; width=&quot;324&quot; /&gt;&lt;img alt=&quot;&quot; class=&quot;alignnone&quot; src=&quot;http://benmoskowitz.com/i/pm/pmshare.png&quot; /&gt;&lt;/p&gt;
&lt;h3&gt;Plugins&lt;/h3&gt;
&lt;div class=&quot;wp-caption alignright&quot; style=&quot;width: 286px;&quot;&gt;&lt;img alt=&quot;&quot; height=&quot;47&quot; src=&quot;http://benmoskowitz.com/i/pm/pmplugins.png&quot; width=&quot;276&quot; /&gt;&lt;p class=&quot;wp-caption-text&quot;&gt;You can use any popcorn.js plugin in Popcorn Maker. Even write your own.&lt;/p&gt;&lt;/div&gt;
&lt;p&gt;Last but not least—plugins. Popcorn.js plugins are what make Popcorn Maker magic. We’re currently planning on supporting the following plugins, each with a pleasing editor UI (these are subject to change): Image, Video, Webpage, Wikipedia, Attribution, Media control, Apply class, Google map, Open Street Map, Chroma, Video effects, 3D object, Processing, WordRiver, PDF, DocumentCloud, Twitter, Facebook graph, Flickr.&lt;/p&gt;
&lt;p&gt;One of the coolest things about Popcorn Maker, though, is that it will support every Popcorn.js plugin through a default editor. And plugin authors can create editor UIs for their plugins. In other words, the project is intentionally modular, so the Popcorn.js community can help us build out the functionality of the app. &lt;strong&gt; &lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;As the community grows, the app becomes more powerful&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;Seriously.&lt;a href=&quot;http://seriouslyjs.org/&quot;&gt; Check out Seriously.js&lt;/a&gt;, then read that again.&lt;/p&gt;
&lt;h3&gt;Roadmap—want to help?&lt;/h3&gt;
&lt;p&gt;It’s going to be a hard sprint. But it’s super plausible, especially with Bobby Richter, Dave Humphrey, and the brilliant students of Seneca’s &lt;a href=&quot;http://zenit.senecac.on.ca/wiki/index.php/Main_Page&quot;&gt;CDOT&lt;/a&gt; at the wheel. Here’s our roadmap, which will likely change a bit before we freeze it this month. Want to help? Join #popcorn in irc.mozilla.org, or join our &lt;a href=&quot;https://groups.google.com/group/web-made-movies-working?hl=en&quot;&gt;mailing list&lt;/a&gt;.&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;http://benmoskowitz.com/i/pm/pmroadmap.png&quot;&gt;&lt;img alt=&quot;&quot; class=&quot;aligncenter&quot; height=&quot;444&quot; src=&quot;http://benmoskowitz.com/i/pm/pmroadmap.png&quot; width=&quot;620&quot; /&gt;&lt;/a&gt;&lt;/p&gt;</description>
	<pubDate>Wed, 08 Feb 2012 04:51:31 +0000</pubDate>
	<dc:creator>Ben Moskowitz</dc:creator>
</item>
<item>
	<title>Jess Klein: Day 2 of Open News Sprint- Design for Empathy vs. Pure Utility</title>
	<guid isPermaLink="false">tag:blogger.com,1999:blog-25558782.post-1103443404022239698</guid>
	<link>http://jessicaklein.blogspot.com/2012/02/day-2-of-open-news-sprint-design-for.html</link>
	<description>Day 2 of the Open News Webmaking Design Sprint kicked off with a storyboarding session- which of course meant a round of the color coding index card game! Basically what we did was come up with three categories of things that we were sketching out the flow for:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Main Screens and Modal Windows (pink cards)&lt;/li&gt;&lt;li&gt;Content in the Instructional Overlay (orange cards)&lt;/li&gt;&lt;li&gt;Badges (green cards)&lt;/li&gt;&lt;/ul&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;http://3.bp.blogspot.com/-AF0ArRZ1H2w/TzH0LhudTsI/AAAAAAAABDE/MEfsSQIgufU/s1600/IMAG0443.jpg&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;238&quot; src=&quot;http://3.bp.blogspot.com/-AF0ArRZ1H2w/TzH0LhudTsI/AAAAAAAABDE/MEfsSQIgufU/s400/IMAG0443.jpg&quot; width=&quot;400&quot; /&gt; &lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;i&gt;*Note- I will post the full storyboards later this week &lt;/i&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;One thing that was an interesting change from yesterday's conversation was that we converted the &quot;sharing&quot; steps into information that can be revealed and explored when the user clicks on the &quot;share&quot; button, thus eliminating that extra step. &lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;In terms of the badges, for simplicity we came up with one badge per each skill set. So, for example, in the image below- we sketched out 3 steps for learning about how to write the html for embedding an image into a webpage. Step 1- place an image that we give them, Step 2- hack that image with an unique image and Step 3- Remix that Image--- then the user will receive an Image Badge. Completion of all the Modules will give the user the &quot;uber badge&quot;. (We need real names for these badges, but this is just a concept).&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;http://1.bp.blogspot.com/-xpSeIX8Gf9I/TzH1QyHSPeI/AAAAAAAABDM/A0aQv9DkhJE/s1600/IMAG0449.jpg&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;400&quot; src=&quot;http://1.bp.blogspot.com/-xpSeIX8Gf9I/TzH1QyHSPeI/AAAAAAAABDM/A0aQv9DkhJE/s400/IMAG0449.jpg&quot; width=&quot;238&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;One thing that we talked about- which is out of scope for this pilot prototype- was having a user pledge for the badge by going through a series of interactive activities or games or questions... to prove their skill. It's a bigger idea that certainly relates back to integrating this badge into a larger spectrum of &quot;Mozilla Badges,&quot; but I like this idea because on some level it proves competencies and could essentially allow users to skip other &quot;intro&quot; activities in courses or interactives.&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;http://4.bp.blogspot.com/-uOrRrKii4h0/TzH3nuD-FMI/AAAAAAAABDc/WCVnaEX3ChY/s1600/Screen+Shot+2012-02-07+at+11.18.17+PM.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;http://4.bp.blogspot.com/-uOrRrKii4h0/TzH3nuD-FMI/AAAAAAAABDc/WCVnaEX3ChY/s1600/Screen+Shot+2012-02-07+at+11.18.17+PM.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;Atul, Brian and I spent a bit of time trying to figure out how we were going to implement the designs into a working prototype, a small- yet crucial step. Good news, we think we can make something by the end of this week.&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;The group had a great conversation about metrics for the project that I think we will rehash again after we create the MVP (that's a minimum viable product not a most valuable player). This is what we came up with as a first stab:&lt;br /&gt;&lt;ul class=&quot;list-bullet3&quot;&gt;&lt;li&gt;&lt;span class=&quot;author-g-33wvnrui6t57nlmo b&quot;&gt;&lt;b&gt;Beyond-the-tool Metrics&lt;/b&gt;&lt;/span&gt;&lt;/li&gt;&lt;ul&gt;&lt;li&gt;&lt;span class=&quot;author-g-33wvnrui6t57nlmo&quot;&gt;How many people share their URL outside of the tool (twitter, blogs, etc.)&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span class=&quot;author-g-33wvnrui6t57nlmo&quot;&gt;3-months-later survey of people who graduated&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;div class=&quot;&quot; id=&quot;magicdomid203&quot;&gt;&lt;ul class=&quot;list-bullet3&quot;&gt;&lt;li&gt;&lt;span class=&quot;author-g-33wvnrui6t57nlmo b&quot;&gt;&lt;b&gt;Tool usage measurement metrics&lt;/b&gt;&lt;/span&gt;&lt;/li&gt;&lt;ul&gt;&lt;li&gt;&lt;span class=&quot;author-g-33wvnrui6t57nlmo&quot;&gt;How frequently the user switches away from the page (to another tab, app, etc) while using the app&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span class=&quot;author-g-33wvnrui6t57nlmo&quot;&gt;How many steps people go through&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span class=&quot;author-g-0l77d3616edu37j3&quot;&gt;How many &lt;/span&gt;&lt;span class=&quot;author-g-33wvnrui6t57nlmo&quot;&gt;of those &lt;/span&gt;&lt;span class=&quot;author-g-0l77d3616edu37j3&quot;&gt;steps are repeated&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span class=&quot;author-g-33wvnrui6t57nlmo&quot;&gt;Time taken per step&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span class=&quot;author-g-ltja9fhw3ysz122z3qx2&quot;&gt;How many people are return users to the website; so they use the tool and stop at a certain step and then come back at a later date to continue&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span class=&quot;author-g-0l77d3616edu37j3&quot;&gt;and what are those stop points?&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span class=&quot;author-g-rwy473z122zqowmvgeu5&quot;&gt;Also, how many people graduate from the 'course' (tricycle) to the 'tool' (training wheels), ie. how many people turn off the overlay and keep coming back, how many times.&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span class=&quot;author-g-ltja9fhw3ysz122z3qx2&quot;&gt;How many people do the bare minimum (just the tutorial)&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span class=&quot;author-g-33wvnrui6t57nlmo&quot;&gt;What link text people use when writing links&lt;/span&gt;&lt;span class=&quot;author-g-ltja9fhw3ysz122z3qx2&quot;&gt; &lt;/span&gt;&lt;span class=&quot;author-g-0l77d3616edu37j3&quot;&gt;and how many links are they putting in&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span class=&quot;author-g-rwy473z122zqowmvgeu5&quot;&gt;How many people come back to pledge for the full badge?&lt;/span&gt;&lt;span class=&quot;author-g-0l77d3616edu37j3&quot;&gt; &lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span class=&quot;author-g-ltja9fhw3ysz122z3qx2&quot;&gt;How many people go above and beyond with tinkering &lt;/span&gt;&lt;/li&gt;&lt;ul class=&quot;list-bullet3&quot;&gt;&lt;li&gt;&lt;span class=&quot;author-g-0l77d3616edu37j3&quot;&gt;i.e multiple images, all the &quot;optional&quot; styles, etc.   &lt;/span&gt;&lt;span class=&quot;author-g-33wvnrui6t57nlmo&quot;&gt; &lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/ul&gt;&lt;/ul&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;We spent the remainder of our jam packed day focusing on copywriting. We had a conceptual conversation about what direction the tool should take, which of course affected the way that we wrote the copy. Because we couldn't agree on whether this should be a generic webmaking 101 tool, a tool focused on helping people tell their story through the web or a tool geared towards journalists we decided to write as much of the technical bits and pieces as possible and to come back and add on the layer that included narrative, voice and character.&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;http://2.bp.blogspot.com/-2ASa6Df0KKc/TzH8eGp6lDI/AAAAAAAABD0/H65HT2Stzkw/s1600/Screen+Shot+2012-02-07+at+11.38.52+PM.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;272&quot; src=&quot;http://2.bp.blogspot.com/-2ASa6Df0KKc/TzH8eGp6lDI/AAAAAAAABD0/H65HT2Stzkw/s640/Screen+Shot+2012-02-07+at+11.38.52+PM.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;Today I am feeling a bit conflicted about the design direction. In my heart I believe that the project should be a self directed interest based learning tool- which means a tool that helps someone make something and then baking in the learning seamlessly. I am concerned that if we go too generic we will end up with a tool, that people can't relate to and thus won't feel compelled to deep dive into the learning content. So that said, I guess this just is about deciding between the &quot;telling your story&quot; vs. &quot;webmaking for journalists 101&quot;. As I said before, I like the telling your story through the web angle for the product because it is something that is easy for many different kinds of users to relate to.  This is about branding- and by branding I don't mean slapping a logo on the project and calling it a day- it is about creating a narrative for the project that is compelling enough to give users and potential users the opportunity to empathize and relate to the project on a deeper level. &lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;For example- if the &lt;a href=&quot;http://lovebomb.me/&quot;&gt;lovebomb.me&lt;/a&gt; experimental project was a tool it might be called something like e-card maker. I suspect that people would not have responded so strongly to that project. We built in a narrative and a real directive- make a love letter for a friend- and wrapped that into a light narrative heavily supported by cute lovey-dovey graphics.  Well, this conversation is to be continued later.&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;Tomorrow we will be meeting real live journalists, so I am excited to ask them about what they really are interested in making with the web. Hopefully this will inform the direction of the project.&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img alt=&quot;&quot; height=&quot;1&quot; src=&quot;https://blogger.googleusercontent.com/tracker/25558782-1103443404022239698?l=jessicaklein.blogspot.com&quot; width=&quot;1&quot; /&gt;&lt;/div&gt;</description>
	<pubDate>Wed, 08 Feb 2012 04:48:22 +0000</pubDate>
	<author>noreply@blogger.com (Jess)</author>
</item>
<item>
	<title>Nicholas Nethercote: MemShrink progress, week 34</title>
	<guid isPermaLink="false">http://blog.mozilla.com/nnethercote/?p=1745</guid>
	<link>http://blog.mozilla.com/nnethercote/2012/02/08/memshrink-progress-week-34/</link>
	<description>&lt;h3&gt;Add-ons&lt;/h3&gt;
&lt;p&gt;The &lt;a href=&quot;https://wiki.mozilla.org/AMO:Editors/EditorGuide/AddonReviews&quot;&gt;AMO add-on review checklist&lt;/a&gt; was amended a couple of weeks ago to include checks for zombie compartments.  This change is bearing fruit:  Andreas Wagner and Kris Maglione have found more than 10 submitted add-ons that have leaks.  See &lt;a href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=724361#c10&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=723843&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=724361&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=724377&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=724273&quot;&gt;here&lt;/a&gt;.  With the experience they are gaining, we should be able to greatly &lt;a href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=725194&quot;&gt;improve the documentation on common causes of leaks&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;In less positive news, &lt;a href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=724404&quot;&gt;two&lt;/a&gt; &lt;a href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=724433&quot;&gt;leaks&lt;/a&gt; were found in the add-on SDK.  Fortunately the SDK team has proven to be effective at fixing identified leaks quickly in the past, hopefully they’ll do so again!&lt;/p&gt;
&lt;p&gt;Finally, Jason Tackaberry fixed &lt;a href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=720591&quot;&gt;a zombie compartment in NoSquint 2.1.2&lt;/a&gt;.  The fix is in the &lt;a href=&quot;https://addons.mozilla.org/en-US/firefox/addon/nosquint/&quot;&gt;latest version (2.1.5)&lt;/a&gt;.&lt;/p&gt;
&lt;h3&gt;about:nosy&lt;/h3&gt;
&lt;p&gt;Andrew Sutherland wrote a extension called &lt;a href=&quot;http://www.visophyte.org/blog/2012/02/04/aboutnosy-is-aboutmemory-with-charts-helps-you-lay-blame-more-easily/&quot;&gt;about:nosy&lt;/a&gt; which is like about:memory on steroids.  It’s oriented around hiding many of the details and instead assigning blame for memory allocations to particular tabs (and similar things).  It also features graphs showing how the memory consumption of each tracked entity changes over time;  this latter feature is quite memory and CPU-intensive, however.  If you are running a recent Nightly build of Firefox, download about:nosy &lt;a href=&quot;https://clicky.visophyte.org/files/labs/about-nosy/about-nosy-0.2.xpi&quot;&gt;here&lt;/a&gt; and you won’t even have to restart Firefox to see it, just type “about:nosy” into the address bar.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=713799&quot;&gt;Forthcoming changes&lt;/a&gt; will make about:memory more like about:nosy, by measuring more things on a per-tab basis.  And for a long time I have had a vague plan that one day someone who knows about UX will write a user-friendly alternative to about:memory that focuses just on per-tab memory consumption, and about:nosy is a good indicator of what that might look like.&lt;/p&gt;
&lt;h3&gt;Miscellaneous&lt;/h3&gt;
&lt;p&gt;Saptarshi Guha from the metrics team did an &lt;a href=&quot;http://blog.mozilla.com/metrics/2012/02/07/how-is-the-memshrink-project-working-out/&quot;&gt;analysis of the physical memory consumption of Firefox 10, 11 and 12&lt;/a&gt;, based on telemetry data.  The post is heavy going for those who aren’t experts at statistics and &lt;a href=&quot;http://en.wikipedia.org/wiki/R_%28programming_language%29&quot;&gt;R&lt;/a&gt;, but the two main conclusions of interest are (a) that add-ons significantly increase resident memory consumption, and (b) Firefox 12 is consuming more resident memory than Firefox 11.  This latter fact matches something we’d seen in today’s MemShrink meeting when looking at data from John Schoenick’s in-development version of &lt;a href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=704646&quot;&gt;areweslimyet.com&lt;/a&gt; — something in early January caused a significant memory consumption regression.  John is working on narrowing down which change caused this.&lt;/p&gt;
&lt;p&gt;Gian-Carlo Pascutto &lt;a href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=673470&quot;&gt;overhauled the safe browsing implementation&lt;/a&gt;.  I don’t claim to understand this change at all, but I think it reduces memory consumption when the database is updated.  Better explanations from those who understand this change are welcome!&lt;/p&gt;
&lt;p&gt;I &lt;a href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=722969&quot;&gt;reduced the amount of memory allocated when generating about:memory by roughly 30%&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;I wrote a &lt;a href=&quot;http://blog.mozilla.com/nnethercote/2012/02/08/the-benefits-of-reducing-memory-consumption-2/&quot;&gt;detailed discussion of the benefits of reducing memory consumption&lt;/a&gt;.&lt;/p&gt;
&lt;h3&gt;Bug Counts&lt;/h3&gt;
&lt;p&gt;Here are this week’s bug counts.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;P1: 22 (-0/+0)&lt;/li&gt;
&lt;li&gt;P2: 134 (-4/+8)&lt;/li&gt;
&lt;li&gt;P3: 75 (-3/+4)&lt;/li&gt;
&lt;li&gt;Unprioritized: 2 (-2/+1)&lt;/li&gt;
&lt;/ul&gt;</description>
	<pubDate>Wed, 08 Feb 2012 04:35:18 +0000</pubDate>
	<dc:creator>Nicholas Nethercote</dc:creator>
</item>
<item>
	<title>Meeting Notes from the Mozilla community: SeaMonkey Meeting Minutes: 2012-02-07</title>
	<guid isPermaLink="false">https://blog.mozilla.com/meeting-notes/archives/765</guid>
	<link>http://blog.mozilla.com/meeting-notes/archives/765</link>
	<description>&lt;div&gt;
&lt;h3&gt;SeaMonkey/StatusMeetings/2012-02-07&lt;/h3&gt;
&lt;div&gt;&lt;span class=&quot;subpages&quot;&gt;&amp;lt; &lt;a href=&quot;https://wiki.mozilla.org/SeaMonkey&quot; title=&quot;SeaMonkey&quot;&gt;SeaMonkey&lt;/a&gt; | &lt;a href=&quot;https://wiki.mozilla.org/SeaMonkey/StatusMeetings&quot; title=&quot;SeaMonkey/StatusMeetings&quot;&gt;StatusMeetings&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href=&quot;https://wiki.mozilla.org/SeaMonkey/StatusMeetings/2012-01-24&quot; title=&quot;SeaMonkey/StatusMeetings/2012-01-24&quot;&gt;« last meeting&lt;/a&gt; | &lt;a class=&quot;mw-redirect&quot; href=&quot;https://wiki.mozilla.org/SeaMonkey:StatusMeetings&quot; title=&quot;SeaMonkey:StatusMeetings&quot;&gt;index&lt;/a&gt; | &lt;a class=&quot;new&quot; href=&quot;https://wiki.mozilla.org/index.php?title=SeaMonkey/StatusMeetings/2012-02-21&amp;amp;action=edit&amp;amp;redlink=1&quot; title=&quot;SeaMonkey/StatusMeetings/2012-02-21 (page does not exist)&quot;&gt;next meeting »&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;SeaMonkey Meeting Details&lt;/b&gt;
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt; Time: &lt;a class=&quot;external text&quot; href=&quot;http://www.timeanddate.com/worldclock/fixedtime.html?day=7&amp;amp;month=02&amp;amp;year=2012&amp;amp;hour=13&amp;amp;min=0&amp;amp;sec=0&amp;amp;p1=0&quot; rel=&quot;nofollow&quot;&gt;7 February, 2012, 13:00 UTC&lt;/a&gt;&lt;p&gt;&lt;/p&gt;
&lt;/li&gt;&lt;li&gt; Location: &lt;a class=&quot;external text&quot; href=&quot;irc://irc.mozilla.org/seamonkey&quot; rel=&quot;nofollow&quot;&gt;#seamonkey IRC channel&lt;/a&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;table class=&quot;toc&quot; id=&quot;toc&quot;&gt;
&lt;tbody&gt;&lt;tr&gt;
&lt;td&gt;
&lt;div&gt;
&lt;h4&gt;Contents&lt;/h4&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li class=&quot;toclevel-1 tocsection-1&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/SeaMonkey/StatusMeetings/2012-02-07#Agenda&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;1&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Agenda&lt;/span&gt;&lt;/a&gt;
&lt;ul&gt;
&lt;li class=&quot;toclevel-2 tocsection-2&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/SeaMonkey/StatusMeetings/2012-02-07#Action_Items&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;1.1&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Action Items&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-2 tocsection-3&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/SeaMonkey/StatusMeetings/2012-02-07#Status_of_the_SeaMonkey_Buildbot_Master_and_Tree&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;1.2&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Status of the SeaMonkey Buildbot Master and Tree&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-2 tocsection-4&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/SeaMonkey/StatusMeetings/2012-02-07#Release_Train&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;1.3&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Release Train&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-2 tocsection-5&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/SeaMonkey/StatusMeetings/2012-02-07#Extensions_Compatibility_Tracking&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;1.4&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Extensions Compatibility Tracking&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-2 tocsection-6&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/SeaMonkey/StatusMeetings/2012-02-07#2.x_.28Last.2C_Current.2C_Next.29&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;1.5&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;2.x (Last, Current, Next)&lt;/span&gt;&lt;/a&gt;
&lt;ul&gt;
&lt;li class=&quot;toclevel-3 tocsection-7&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/SeaMonkey/StatusMeetings/2012-02-07#2.7&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;1.5.1&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;2.7&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-3 tocsection-8&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/SeaMonkey/StatusMeetings/2012-02-07#2.Next&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;1.5.2&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;2.Next&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li class=&quot;toclevel-2 tocsection-9&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/SeaMonkey/StatusMeetings/2012-02-07#Feature_List.2C_Planning&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;1.6&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Feature List, Planning&lt;/span&gt;&lt;/a&gt;
&lt;ul&gt;
&lt;li class=&quot;toclevel-3 tocsection-10&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/SeaMonkey/StatusMeetings/2012-02-07#Active&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;1.6.1&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Active&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-3 tocsection-11&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/SeaMonkey/StatusMeetings/2012-02-07#Needing_help.2C_Unowned.2C_Stalled&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;1.6.2&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Needing help, Unowned, Stalled&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li class=&quot;toclevel-2 tocsection-12&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/SeaMonkey/StatusMeetings/2012-02-07#Roundtable_-_Personal_Status_Updates&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;1.7&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Roundtable – Personal Status Updates&lt;/span&gt;&lt;/a&gt;
&lt;ul&gt;
&lt;li class=&quot;toclevel-3 tocsection-13&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/SeaMonkey/StatusMeetings/2012-02-07#Aqualon&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;1.7.1&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Aqualon&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-3 tocsection-14&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/SeaMonkey/StatusMeetings/2012-02-07#asrail&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;1.7.2&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;asrail&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-3 tocsection-15&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/SeaMonkey/StatusMeetings/2012-02-07#Callek&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;1.7.3&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Callek&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-3 tocsection-16&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/SeaMonkey/StatusMeetings/2012-02-07#ewong&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;1.7.4&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;ewong&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-3 tocsection-17&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/SeaMonkey/StatusMeetings/2012-02-07#IanN&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;1.7.5&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;IanN&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-3 tocsection-18&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/SeaMonkey/StatusMeetings/2012-02-07#InvisibleSmiley&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;1.7.6&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;InvisibleSmiley&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-3 tocsection-19&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/SeaMonkey/StatusMeetings/2012-02-07#KaiRo&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;1.7.7&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;KaiRo&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-3 tocsection-20&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/SeaMonkey/StatusMeetings/2012-02-07#mcsmurf&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;1.7.8&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;mcsmurf&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-3 tocsection-21&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/SeaMonkey/StatusMeetings/2012-02-07#Misak&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;1.7.9&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Misak&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-3 tocsection-22&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/SeaMonkey/StatusMeetings/2012-02-07#Mnyromyr&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;1.7.10&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Mnyromyr&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-3 tocsection-23&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/SeaMonkey/StatusMeetings/2012-02-07#MReimer&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;1.7.11&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;MReimer&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-3 tocsection-24&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/SeaMonkey/StatusMeetings/2012-02-07#Neil&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;1.7.12&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Neil&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-3 tocsection-25&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/SeaMonkey/StatusMeetings/2012-02-07#Ratty&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;1.7.13&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Ratty&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-3 tocsection-26&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/SeaMonkey/StatusMeetings/2012-02-07#Ricardo&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;1.7.14&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Ricardo&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-3 tocsection-27&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/SeaMonkey/StatusMeetings/2012-02-07#sgautherie&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;1.7.15&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;sgautherie&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-3 tocsection-28&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/SeaMonkey/StatusMeetings/2012-02-07#Stanimir&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;1.7.16&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Stanimir&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-3 tocsection-29&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/SeaMonkey/StatusMeetings/2012-02-07#stefanh&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;1.7.17&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;stefanh&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-3 tocsection-30&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/SeaMonkey/StatusMeetings/2012-02-07#tonymec&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;1.7.18&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;tonymec&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li class=&quot;toclevel-2 tocsection-31&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/SeaMonkey/StatusMeetings/2012-02-07#Any_other_business.3F&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;1.8&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Any other business?&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;
&lt;h4&gt; &lt;span class=&quot;mw-headline&quot;&gt; Agenda &lt;/span&gt;&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt; Who’s taking minutes? -&amp;gt; &lt;b&gt;Ratty&lt;/b&gt;&lt;p&gt;&lt;/p&gt;
&lt;/li&gt;&lt;li&gt; Nominees for Friends of the Fish Tank:
&lt;ul&gt;
&lt;li&gt; Please note &lt;i&gt;A person or entity can’t be nominated twice in a row&lt;/i&gt;.
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;h5&gt; &lt;span class=&quot;mw-headline&quot;&gt; Action Items &lt;/span&gt;&lt;/h5&gt;
&lt;p&gt;(who needs to do what that hasn’t been recorded in a bug) We should assign people to the open items.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;NEW&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;OPEN&lt;/b&gt;
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt; &lt;b&gt;IanN&lt;/b&gt; to write the “Friends of the Fish Tank” F.A.Q.
&lt;/li&gt;&lt;/ul&gt;
&lt;h5&gt; &lt;span class=&quot;mw-headline&quot;&gt; Status of the SeaMonkey Buildbot Master and Tree &lt;/span&gt;&lt;/h5&gt;
&lt;ul&gt;
&lt;li&gt; Current Issues with existing machines&lt;p&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt; one linux VM — Hosted on parallels, kernel panicking, No bug yet, but will get it done ASAP.&lt;p&gt;&lt;/p&gt;
&lt;/li&gt;&lt;li&gt; problems with creating a second linux VM — will either fix or reclone this week.
&lt;/li&gt;&lt;li&gt; one win VM, switched from FAT32 to NTFS for one of its drives, need to recreate folders appropriately.
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt; “Where do we stand with the machine(s) right now?”
&lt;ul&gt;
&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=721516&quot; rel=&quot;nofollow&quot;&gt;bug 721516&lt;/a&gt; migrate seamonkey systems out of sjc1/scl2 and into scl3/scl1.&lt;p&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt; (2012-02-02) The iX boxes are now located at SJC1 they have been put into production for Callek and team.
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;h5&gt; &lt;span class=&quot;mw-headline&quot;&gt; Release Train &lt;/span&gt;&lt;/h5&gt;
&lt;ul&gt;
&lt;li&gt; 2.7b4 was shipped on January 20&lt;p&gt;&lt;/p&gt;
&lt;/li&gt;&lt;li&gt; 2.7b5 was shipped on January 26
&lt;/li&gt;&lt;li&gt; 2.7 was shipped on January 31.
&lt;/li&gt;&lt;li&gt; 2.8b1 was shipped on February 4.
&lt;/li&gt;&lt;/ul&gt;
&lt;h5&gt; &lt;span class=&quot;mw-headline&quot;&gt; Extensions Compatibility Tracking &lt;/span&gt;&lt;/h5&gt;
&lt;p&gt;We need some help with the add-ons listed under the “2.0x” heading. Anything above it will work out of the box with SM 2.7 and later (yay to compatible-by-default!). Perhaps Ratty can go through his xSidebar site and check which add-ons are not compatible with at least SM 2.1 – that would help, too.
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt; Since xSidebar itself is not compatible with any recent SM version, it should not be listed as a featured add-on on AMO. Who can make that change?&lt;p&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt; KaiRo can, InvisibleSmiley will check talk to KaiRo about that.&lt;p&gt;&lt;/p&gt;
&lt;/li&gt;&lt;li&gt; If anyone wants to suggest add-ons to be featured, send them to InvisibleSmiley (in manageable doses that is).
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt; &lt;a href=&quot;https://wiki.mozilla.org/SeaMonkey/AddonCompat&quot; title=&quot;SeaMonkey/AddonCompat&quot;&gt;Addon Compatibility Listings&lt;/a&gt;, mostly maintained by InvisibleSmiley&lt;p&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt; Recent changes can be found &lt;a href=&quot;https://wiki.mozilla.org/SeaMonkey/AddonCompat#Recent_Changes_to_This_Page&quot; title=&quot;SeaMonkey/AddonCompat&quot;&gt;here&lt;/a&gt;.&lt;p&gt;&lt;/p&gt;
&lt;/li&gt;&lt;li&gt; Restructured for compatible-by-default.
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt; ACR 1.0.3 has been released with a fix for broken AOM search.
&lt;/li&gt;&lt;li&gt; Enigmail provides versions for release (AMO) and all branches (&lt;a class=&quot;external text&quot; href=&quot;http://enigmail.mozdev.org/download/nightly.php.html&quot; rel=&quot;nofollow&quot;&gt;Enigmail nightly page&lt;/a&gt;). The current release is compatible with both 2.5 and 2.6.
&lt;/li&gt;&lt;li&gt; Lightning provides versions for the current stable and beta releases (AMO) and nightlies for trunk and Aurora (&lt;a class=&quot;external text&quot; href=&quot;https://developer.mozilla.org/en/Calendar/Calendar_Versions&quot; rel=&quot;nofollow&quot;&gt;Calendar Versions page&lt;/a&gt;). Lightning 1.3b1 which works with SM 2.8b1 is available from AMO (Development Channel).
&lt;/li&gt;&lt;li&gt; Firebug is compatible but not flagged as such on AMO (depends on automatic tests being set up and run on the Firebug side: &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=680837&quot; rel=&quot;nofollow&quot;&gt;bug 680837&lt;/a&gt;, needs a Python coder). Stable Firebug version 1.9.x works with any recent SM version. FB 1.10a1 works with trunk, 1.10a2 is broken but 1.10a3 should be OK again (cf. &lt;a class=&quot;external text&quot; href=&quot;http://code.google.com/p/fbug/issues/detail?id=5188&quot; rel=&quot;nofollow&quot;&gt;FB issue 5188&lt;/a&gt;).
&lt;/li&gt;&lt;li&gt; Besides the above, we should also take a look at other add-ons that are important for our users when they switch to 2.x.
&lt;ul&gt;
&lt;li&gt; Useful query: &lt;a class=&quot;external free&quot; href=&quot;https://addons.mozilla.org/en-US/seamonkey/extensions/?sort=popular&quot; rel=&quot;nofollow&quot;&gt;https://addons.mozilla.org/en-US/seamonkey/extensions/?sort=popular&lt;/a&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt; The &lt;a href=&quot;https://wiki.mozilla.org/SeaMonkey/Features&quot; title=&quot;SeaMonkey/Features&quot;&gt;SeaMonkey Features&lt;/a&gt; page links to sub-pages for all recent SM versions, including those in development. Please help InvisibleSmiley add major features to the respective pages, ideally as they land. These pages are used when creating release notes, so the more up-to-date the better.
&lt;/li&gt;&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=666303&quot; rel=&quot;nofollow&quot;&gt;bug 666303&lt;/a&gt; (Seamonkey 2.1 is detected as Firefox 2.1 on the Add-on Site) and &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=671085&quot; rel=&quot;nofollow&quot;&gt;bug 671085&lt;/a&gt; Confusing compatibility error when visiting Firefox listing page using SeaMonkey)
&lt;ul&gt;
&lt;li&gt; We don’t have a dedicated person here who understands how AMO really works, who to contact in order to actually get things moving etc. Unfortunately. Someone needs to sit down and find the offending logic, wherever it may be (probably in the AMO source, wherever that is).
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;h5&gt; &lt;span class=&quot;mw-headline&quot;&gt; 2.x (Last, Current, Next) &lt;/span&gt;&lt;/h5&gt;
&lt;ul&gt;
&lt;li&gt; 2.6 had ~67,000 and 2.7 had ~21,000 ADU by last Thursday and 2.6.1 has had ~105,000 and 2.7 has had ~20,000 downloads so far.&lt;p&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt; Of the released versions, as of last Thursday, we have 17.7% on 2.0, 6.3% on 2.1-2.3, 5.3% on 2.4, 5.3% on 2.5, 49.3% on 2.6 and 16.1% on 2.7. So, in the last two weeks, ~3k (an additional 2.7% of ADU) have migrated to 2.5 or above.
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt; Still a large chunk of users on 2.0.x.
&lt;/li&gt;&lt;li&gt; Figure out what is preventing people from moving from 2.0.x to the latest versions.
&lt;ul&gt;
&lt;li&gt; Some people cannot upgrade due to system requirements (OS version, processor capabilities etc.)&lt;p&gt;&lt;/p&gt;
&lt;/li&gt;&lt;li&gt; Perhaps putting resources into getting certain extensions working with SM 2.4 and above (those that won’t work with SM 2.7 automatically due to compatible-by-default extensions).
&lt;/li&gt;&lt;li&gt; Still need volunteers to look at what is keeping people at below 2.4. IanN could try knocking something up and send it round members lists for polishing but he’s not on all the channels (mozillazine, etc) to post it to when finished.
&lt;/li&gt;&lt;li&gt; Are some Linux distributions are still stuck on 2.0? We have data on OSes and OS versions in the raw data in the Mozilla metrics, AFAIK, Callek now also has access to that.
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;Usual reminders:
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt; Please make sure that anything that landed on comm-beta (for TB) or mozilla-beta (for FF) which affected non-shared code and which fixed regressions will be fixed on our side, too. Please mark bugs we feel *need* to land on a particular train tracking+ or tracking? so that when we to do a release we can be sure that we don’t miss anything.&lt;p&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt; Priority should be given to fixing regressions ASAP. Also keep an eye on and prioritize bugs to be ported from FF/TB that land on branches (Aurora, Beta). We need to keep an eye especially on Session Restore, Sync, Tabbrowser and Address Book.&lt;p&gt;&lt;/p&gt;
&lt;/li&gt;&lt;li&gt; Be careful not to break code shared with Thunderbird, otherwise patches might have to be backed out of string frozen repositories.
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;h6&gt; &lt;span class=&quot;mw-headline&quot;&gt; 2.7 &lt;/span&gt;&lt;/h6&gt;
&lt;p&gt;&lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/buglist.cgi?resolution=---&amp;amp;field0-0-0=cf_tracking_seamonkey27&amp;amp;type0-0-0=equals&amp;amp;value0-0-0=%2B&quot; rel=&quot;nofollow&quot;&gt;open tracking&lt;/a&gt; (0)&lt;br /&gt;
&lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/buglist.cgi?&amp;amp;field0-0-0=cf_tracking_seamonkey27&amp;amp;type0-0-0=equals&amp;amp;value0-0-0=%3F&quot; rel=&quot;nofollow&quot;&gt;tracking requests&lt;/a&gt; (0)&lt;br /&gt;
&lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/buglist.cgi?resolution=---&amp;amp;target_milestone=seamonkey2.7&quot; rel=&quot;nofollow&quot;&gt;targeted&lt;/a&gt; (0)&lt;br /&gt;
&lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/buglist.cgi?query_format=advanced&amp;amp;resolution=FIXED&amp;amp;field0-0-0=target_milestone&amp;amp;field0-1-0=cf_status_seamonkey27&amp;amp;field0-2-0=target_milestone&amp;amp;field0-3-0=cf_status_seamonkey26&amp;amp;field0-4-0=cf_status_seamonkey25&amp;amp;field0-5-0=cf_status_seamonkey24&amp;amp;field0-6-0=cf_status_seamonkey23&amp;amp;field0-7-0=cf_status_seamonkey22&amp;amp;field0-8-0=cf_status_seamonkey21&amp;amp;type0-0-0=anywordssubstr&amp;amp;type0-1-0=equals&amp;amp;type0-2-0=nowordssubstr&amp;amp;type0-3-0=notsubstring&amp;amp;type0-4-0=notsubstring&amp;amp;type0-5-0=notsubstring&amp;amp;type0-6-0=notsubstring&amp;amp;type0-7-0=notsubstring&amp;amp;type0-8-0=notsubstring&amp;amp;value0-0-0=seamonkey2.7%20seamonkey2.8%20seamonkey2.9&amp;amp;value0-1-0=fixed&amp;amp;value0-2-0=seamonkey2.6%20seamonkey2.5%20seamonkey2.4%20seamonkey2.3%20seamonkey2.2%20seamonkey2.1%20seamonkey2.0&amp;amp;value0-3-0=fixed&amp;amp;value0-4-0=fixed&amp;amp;value0-5-0=fixed&amp;amp;value0-6-0=fixed&amp;amp;value0-7-0=fixed&amp;amp;value0-8-0=fixed&quot; rel=&quot;nofollow&quot;&gt;fixed&lt;/a&gt; (30)
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt; One tracked 2.5 issue still open.&lt;p&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt; 2.1 through 2.7 have NOT included the ka locale. The last release with ka locale shipped was 2.0.14 and the ka l10n maintainers have not yet updated for changes in later SeaMonkey versions.&lt;p&gt;&lt;/p&gt;
&lt;/li&gt;&lt;li&gt; Callek now needs to morph &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=667147&quot; rel=&quot;nofollow&quot;&gt;bug 667147&lt;/a&gt; into removing |ka| from our [current] automation entirely (all-locales). Callek will look at best locale to transition any ka users to.
&lt;/li&gt;&lt;li&gt; Callek isn’t here at the moment (timezones), so ewong will talk to Callek about the ka locale later.
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt; The &lt;a href=&quot;https://wiki.mozilla.org/SeaMonkey/Features/2.7&quot; title=&quot;SeaMonkey/Features/2.7&quot;&gt;New 2.7 Features&lt;/a&gt; page has a comprehensive list of features.
&lt;/li&gt;&lt;/ul&gt;
&lt;h6&gt; &lt;span class=&quot;mw-headline&quot;&gt; 2.Next &lt;/span&gt;&lt;/h6&gt;
&lt;ul&gt;
&lt;li&gt; InvisibleSmiley created a restartless add-on (&lt;a class=&quot;external text&quot; href=&quot;https://addons.mozilla.org/seamonkey/addon/add-ons-sync-prefs/&quot; rel=&quot;nofollow&quot;&gt;available on AMO&lt;/a&gt;) for SM 2.8 (now in Beta) which adds an “Add-ons” options to the list of engines on the Sync pref panel.&lt;p&gt;&lt;/p&gt;
&lt;/li&gt;&lt;li&gt; Remember to help update the &lt;a href=&quot;https://wiki.mozilla.org/SeaMonkey/Features&quot; title=&quot;SeaMonkey/Features&quot;&gt;New Features&lt;/a&gt; pages as we go along.
&lt;/li&gt;&lt;/ul&gt;
&lt;h5&gt; &lt;span class=&quot;mw-headline&quot;&gt; Feature List, Planning &lt;/span&gt;&lt;/h5&gt;
&lt;p&gt;&lt;a class=&quot;external text&quot; href=&quot;http://dev.seamonkey.at/#bugstats&quot; rel=&quot;nofollow&quot;&gt;Bug statistics&lt;/a&gt; for last two (full) weeks: 50 new, 28 fixed, 14 triaged.
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt; Medium triaging effort.&lt;p&gt;&lt;/p&gt;
&lt;/li&gt;&lt;li&gt; Good further triage targets could come out of looking at the &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/report.cgi?query_format=report-table&amp;amp;format=table&amp;amp;action=wrap&amp;amp;x_axis_field=bug_status&amp;amp;y_axis_field=component&amp;amp;product=SeaMonkey&amp;amp;resolution=---&quot; rel=&quot;nofollow&quot;&gt;component bug counts&lt;/a&gt;, pick yours!
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/chart.cgi?category=-All-&amp;amp;subcategory=-All-&amp;amp;name=1183&amp;amp;label0=SM-with-review%3F-requests&amp;amp;line0=1928&amp;amp;label1=SM-with-superreview%3F-requests&amp;amp;line1=1929&amp;amp;gt=1&amp;amp;labelgt=Grand+Total&amp;amp;datefrom=2009-07-15&amp;amp;dateto=&amp;amp;action-wrap=Chart+This+List&quot; rel=&quot;nofollow&quot;&gt;Open reviews/flags&lt;/a&gt;:&lt;br /&gt;
&lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/buglist.cgi?cmdtype=dorem&amp;amp;namedcmd=SeaMonkey%20%282%29%20/%20-All-%20/%20SM-with-review%3F-requests&amp;amp;series_id=1928&amp;amp;remaction=runseries&quot; rel=&quot;nofollow&quot;&gt;25 review&lt;/a&gt;&lt;br /&gt;
&lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/buglist.cgi?cmdtype=dorem&amp;amp;namedcmd=SeaMonkey%20%282%29%20/%20-All-%20/%20SM-with-superreview%3F-requests&amp;amp;series_id=1929&amp;amp;remaction=runseries&quot; rel=&quot;nofollow&quot;&gt;9 super-review&lt;/a&gt;&lt;br /&gt;
&lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/buglist.cgi?product=SeaMonkey&amp;amp;field0-0-0=flagtypes.name&amp;amp;type0-0-0=equals&amp;amp;value0-0-0=ui-review%3F&quot; rel=&quot;nofollow&quot;&gt;0 ui-review&lt;/a&gt;&lt;br /&gt;
&lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/buglist.cgi?product=SeaMonkey&amp;amp;field0-0-0=flagtypes.name&amp;amp;type0-0-0=equals&amp;amp;value0-0-0=feedback%3F&quot; rel=&quot;nofollow&quot;&gt;8 feedback&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Major wanted/needed features:
&lt;/p&gt;
&lt;h6&gt; &lt;span class=&quot;mw-headline&quot;&gt; Active &lt;/span&gt;&lt;/h6&gt;
&lt;ul&gt;
&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=606683&quot; rel=&quot;nofollow&quot;&gt;bug 606683&lt;/a&gt; Allow customization of toolbar in Composer and MailNews Composition [IanN].&lt;p&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt; Progressing slowly, still waiting on reviews from TB side. Full customization has to go to 2.next (currently 2.6 but could be pushed back further) as it needs work on TB too which is taking a while to get reviews on, plus feedback from kaze.&lt;p&gt;&lt;/p&gt;
&lt;/li&gt;&lt;li&gt; IanN is still wading through the unpicking of Composer/Mail Compose code in the dependent bugs. After that he will be reworking his customising patches.
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=477845&quot; rel=&quot;nofollow&quot;&gt;bug 477845&lt;/a&gt; Build a standalone (Comm-central) Composer. [kaze]
&lt;ul&gt;
&lt;li&gt; &lt;i&gt;kaze&lt;/i&gt; has done a bit of work in this bug recently. Building on Windows works. Now supports debug builds on Linux if tests are disabled (–disable-tests). Still a lot to do.&lt;p&gt;&lt;/p&gt;
&lt;/li&gt;&lt;li&gt; The standalone Composer patch has to be rebased and fixed for MacOSX.
&lt;/li&gt;&lt;li&gt; Kaze is considering moving Kompozer to an addon so that we can reuse the dialog boxes but start fresh for the content part. Also we can then use the current devtools. KaiRo told kaze in Berlin it seemed a good idea, as it could allow to run a Composer *tab* instead of a Composer window.
&lt;/li&gt;&lt;li&gt; Kaze working on it on hi spare time, with an Indian contributor.
&lt;/li&gt;&lt;li&gt; &lt;i&gt;IanN&lt;/i&gt; was supposed to help get builds working with &lt;tt&gt;--enable-tests&lt;/tt&gt;.
&lt;ul&gt;
&lt;li&gt; Will look into this once he gets his customization patches reworked.
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt; Real full-screen (&lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=610509&quot; rel=&quot;nofollow&quot;&gt;bug 610509&lt;/a&gt;) and DOM full-screen (&lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=701714&quot; rel=&quot;nofollow&quot;&gt;bug 701714&lt;/a&gt;)
&lt;ul&gt;
&lt;li&gt; patches provided by Mnyromyr and InvisibleSmiley. Otherwise stalled. :-(
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;h6&gt; &lt;span class=&quot;mw-headline&quot;&gt; Needing help, Unowned, Stalled &lt;/span&gt;&lt;/h6&gt;
&lt;ul&gt;
&lt;li&gt; Kill-RDF:&lt;p&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=657607&quot; rel=&quot;nofollow&quot;&gt;bug 657607&lt;/a&gt; Port jminta’s kill-rdf to SeaMonkey where applicable Part 2 [&lt;b&gt;meta&lt;/b&gt;].&lt;p&gt;&lt;/p&gt;
&lt;/li&gt;&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=657604&quot; rel=&quot;nofollow&quot;&gt;bug 657604&lt;/a&gt; Remove the RDF global object. [&lt;i&gt;serge&lt;/i&gt;]
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=436794&quot; rel=&quot;nofollow&quot;&gt;bug 436794&lt;/a&gt; Enable Mac OS X system address book per default and add UI.
&lt;ul&gt;
&lt;li&gt; SM UI needed, unowned, helpwanted.
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=449728&quot; rel=&quot;nofollow&quot;&gt;bug 449728&lt;/a&gt; Drag tabs between windows.
&lt;/li&gt;&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=477840&quot; rel=&quot;nofollow&quot;&gt;bug 477840&lt;/a&gt; Backport KompoZer to Composer (Depends on &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=477845&quot; rel=&quot;nofollow&quot;&gt;bug 477845&lt;/a&gt;).
&lt;ul&gt;
&lt;li&gt; kaze has done a ton of work there. We still need to work out some organizational issues. At the moment there is no active interest from MoMo for bringing standalone composer into comm-central. That’s something we (KaiRo and kaze) will have to negotiate with the Thunderbird team (Standard8).
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=507841&quot; rel=&quot;nofollow&quot;&gt;bug 507841&lt;/a&gt; Port Bug 422814 – Make account configuration quick, easy, and more secure (autoconfig, Quick Account Setup).
&lt;/li&gt;&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=533908&quot; rel=&quot;nofollow&quot;&gt;bug 533908&lt;/a&gt; SeaMonkey Mail: tabs not restored [misak].
&lt;/li&gt;&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=523274&quot; rel=&quot;nofollow&quot;&gt;bug 523274&lt;/a&gt; Complete new default theme icon set.
&lt;ul&gt;
&lt;li&gt; A &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=523274#c0&quot; rel=&quot;nofollow&quot;&gt;list of TODO icons&lt;/a&gt; is up in the bug.
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=526210&quot; rel=&quot;nofollow&quot;&gt;bug 526210&lt;/a&gt; Update the icon set for the SeaMonkey Modern Theme.
&lt;ul&gt;
&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=548778&quot; rel=&quot;nofollow&quot;&gt;bug 548778&lt;/a&gt; New communicator icons (based on Strata theme) for SeaMonkey. Some proposed icons got posted, we should take a look how to get that contribution into the product.&lt;p&gt;&lt;/p&gt;
&lt;/li&gt;&lt;li&gt; The rest is unowned so far.
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=87098&quot; rel=&quot;nofollow&quot;&gt;bug 87098&lt;/a&gt; [SeaMonkey] Delete key should delete location bar history list entry.
&lt;ul&gt;
&lt;li&gt; Note: Our location bar history doesn’t and can’t use autocomplete at all.
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=677484&quot; rel=&quot;nofollow&quot;&gt;bug 677484&lt;/a&gt; Individual SeaMonkey components are not properly handled by the Windows 7 taskbar.
&lt;/li&gt;&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=654009&quot; rel=&quot;nofollow&quot;&gt;bug 654009&lt;/a&gt; Reply to list: automatically determine From: address
&lt;ul&gt;
&lt;li&gt; Note: The actual task here is to port &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=45715&quot; rel=&quot;nofollow&quot;&gt;bug 45715&lt;/a&gt; “Reply to List” [button/(context) menu item]
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=664309&quot; rel=&quot;nofollow&quot;&gt;bug 664309&lt;/a&gt; Make the built-in ChatZilla display a cZ icon in SeaMonkey (now &lt;i&gt;helpwanted&lt;/i&gt;)
&lt;/li&gt;&lt;/ul&gt;
&lt;h5&gt; &lt;span class=&quot;mw-headline&quot;&gt; Roundtable – Personal Status Updates  &lt;/span&gt;&lt;/h5&gt;
&lt;p&gt;Status Updates from developers – what are you working on, what’s the progress, any other comments? (feel free to add yourself to the list if your name is missing and you have interesting status). &lt;/p&gt;
&lt;p&gt;aceman has been doing some work that touches SM as well as TB especially around feeds, which is good stuff.
&lt;/p&gt;
&lt;h6&gt; &lt;span class=&quot;mw-headline&quot;&gt; Aqualon &lt;/span&gt;&lt;/h6&gt;
&lt;h6&gt; &lt;span class=&quot;mw-headline&quot;&gt; asrail &lt;/span&gt;&lt;/h6&gt;
&lt;h6&gt; &lt;span class=&quot;mw-headline&quot;&gt; Callek &lt;/span&gt;&lt;/h6&gt;
&lt;p&gt;Completed Release Engineering tasks:
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=673834&quot; rel=&quot;nofollow&quot;&gt;bug 673834&lt;/a&gt; Obsolete ReleaseRepackFactory, fold logic into CCReleaseRepackFactory.&lt;p&gt;&lt;/p&gt;
&lt;/li&gt;&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=720918&quot; rel=&quot;nofollow&quot;&gt;bug 720918&lt;/a&gt; (SM2.7b5) Tracking bug for build and release of SeaMonkey 2.7b5.
&lt;/li&gt;&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=721584&quot; rel=&quot;nofollow&quot;&gt;bug 721584&lt;/a&gt; (SM2.7) Tracking bug for build and release of SeaMonkey 2.7 Final.
&lt;/li&gt;&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=722065&quot; rel=&quot;nofollow&quot;&gt;bug 722065&lt;/a&gt; Obsolete GenerateCCTestBuilder.
&lt;/li&gt;&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=722940&quot; rel=&quot;nofollow&quot;&gt;bug 722940&lt;/a&gt; codesize upload broken for SeaMonkey [and Thunderbird] due to tools dir being incorrect.
&lt;/li&gt;&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=724480&quot; rel=&quot;nofollow&quot;&gt;bug 724480&lt;/a&gt; Update function on nightly non-functional since version bump to 2.10a1.
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;Build Config fixes:&lt;br /&gt;
Other fixes:
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=715802&quot; rel=&quot;nofollow&quot;&gt;bug 715802&lt;/a&gt; Move quirks triggering into nsSuiteApp.cpp because &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=696376&quot; rel=&quot;nofollow&quot;&gt;bug 696376&lt;/a&gt; caused our quirks to be triggered too late.&lt;p&gt;&lt;/p&gt;
&lt;/li&gt;&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=724336&quot; rel=&quot;nofollow&quot;&gt;bug 724336&lt;/a&gt; SeaMonkey News XML causes errors (website).
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;Working on:
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt; No Bug — Bring up Win2k3 iX Machines, and install MSVC2010.&lt;p&gt;&lt;/p&gt;
&lt;/li&gt;&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=560772&quot; rel=&quot;nofollow&quot;&gt;bug 560772&lt;/a&gt; Make use of mozilla::services for comm-central.
&lt;/li&gt;&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=607392&quot; rel=&quot;nofollow&quot;&gt;bug 607392&lt;/a&gt; split tagging into en-US and other (RelEng).
&lt;/li&gt;&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=722262&quot; rel=&quot;nofollow&quot;&gt;bug 722262&lt;/a&gt; Port |&lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=552864&quot; rel=&quot;nofollow&quot;&gt;bug 552864&lt;/a&gt; Throw away wrapper shell script on unix and lazily load libxul| to SeaMonkey.
&lt;ul&gt;
&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=704835&quot; rel=&quot;nofollow&quot;&gt;bug 704835&lt;/a&gt; Use a pre-generated nsXREAppData struct instead of application.ini. [SeaMonkey Part].
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=724791&quot; rel=&quot;nofollow&quot;&gt;bug 724791&lt;/a&gt; Bring GenerateCCBranchObjects up to date (RelEng).
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;ToDo:
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=655399&quot; rel=&quot;nofollow&quot;&gt;bug 655399&lt;/a&gt; Backout CSS change from &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=655395&quot; rel=&quot;nofollow&quot;&gt;bug 655395&lt;/a&gt; once SeaMonkey can use it.&lt;p&gt;&lt;/p&gt;
&lt;/li&gt;&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=722448&quot; rel=&quot;nofollow&quot;&gt;bug 722448&lt;/a&gt; Close PasswordAuth ssh access on cn-sea-qm-centos5-01.nl.mozilla.org.
&lt;/li&gt;&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=591848&quot; rel=&quot;nofollow&quot;&gt;bug 591848&lt;/a&gt; SeaMonkey linux and Windows machines need device support for sound enabled.
&lt;/li&gt;&lt;/ul&gt;
&lt;h6&gt; &lt;span class=&quot;mw-headline&quot;&gt; ewong &lt;/span&gt;&lt;/h6&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;Fixed&lt;/b&gt;:&lt;p&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=717493&quot; rel=&quot;nofollow&quot;&gt;bug 717493&lt;/a&gt; – Port |Bug 717491 – “Warning: package error or possible missing or unnecessary file: bin/components/proxyObject.xpt (package-manifest, 151).”| to SeaMonkey
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;Needs Review&lt;/b&gt;:&lt;p&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=707786&quot; rel=&quot;nofollow&quot;&gt;bug 707786&lt;/a&gt; – Use Services.prefs instead of preferences-service / gPrefService, in SeaMonkey
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;Working On&lt;/b&gt;:&lt;p&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=722767&quot; rel=&quot;nofollow&quot;&gt;bug 722767&lt;/a&gt; – Change buildbot configs to upload symbols to symbols1.dmz.phx1.mozilla.com &lt;p&gt;&lt;/p&gt;
&lt;/li&gt;&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=723839&quot; rel=&quot;nofollow&quot;&gt;bug 723839&lt;/a&gt; – Tracking bug for build and release of SeaMonkey 2.8 Beta 1
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;To Do&lt;/b&gt;:&lt;p&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=633937&quot; rel=&quot;nofollow&quot;&gt;bug 633937&lt;/a&gt; – Port &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=562048&quot; rel=&quot;nofollow&quot;&gt;bug 562048&lt;/a&gt; to suite.
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;h6&gt; &lt;span class=&quot;mw-headline&quot;&gt; IanN &lt;/span&gt;&lt;/h6&gt;
&lt;ul&gt;
&lt;li&gt; Usual testing, reviewing and commenting.&lt;p&gt;&lt;/p&gt;
&lt;/li&gt;&lt;li&gt; Fixed:
&lt;ul&gt;
&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=719080&quot; rel=&quot;nofollow&quot;&gt;bug 719080&lt;/a&gt; [en-GB] Search Engine modification for SeaMonkey&lt;p&gt;&lt;/p&gt;
&lt;/li&gt;&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=705458&quot; rel=&quot;nofollow&quot;&gt;bug 705458&lt;/a&gt; [en-GB] add Twitter Search Engine for Fx (en-GB)
&lt;/li&gt;&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=722758&quot; rel=&quot;nofollow&quot;&gt;bug 722758&lt;/a&gt; Print button is misaligned in the Mail &amp;amp; News toolbar with the Modern theme
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt; Waiting for review on:
&lt;ul&gt;
&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=638643&quot; rel=&quot;nofollow&quot;&gt;bug 638643&lt;/a&gt; Remove obsolete EditorToggleParagraphMarks from editor.js
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt; Waiting for dependent bug to be checked in:
&lt;ul&gt;
&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=720661&quot; rel=&quot;nofollow&quot;&gt;bug 720661&lt;/a&gt; Display account central when no default account / no accounts setup
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt; Waiting for additional review on:
&lt;/li&gt;&lt;li&gt; Reviewed and waiting for feedback from mobile peer:
&lt;ul&gt;
&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=689253&quot; rel=&quot;nofollow&quot;&gt;bug 689253&lt;/a&gt; Update en-GB for Mobile 10.0 (comm-aurora)
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt; Working on:
&lt;ul&gt;
&lt;li&gt; Contacting people affected by proposed changes to Project Areas.&lt;p&gt;&lt;/p&gt;
&lt;/li&gt;&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=606683&quot; rel=&quot;nofollow&quot;&gt;bug 606683&lt;/a&gt; Allow customization of toolbar in Composer and MailNews Composition
&lt;/li&gt;&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=639690&quot; rel=&quot;nofollow&quot;&gt;bug 639690&lt;/a&gt; [META] Re-arrange code between editor and editorOverlay
&lt;/li&gt;&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=657234&quot; rel=&quot;nofollow&quot;&gt;bug 657234&lt;/a&gt; Move pasteQuote and pasteNoFormatting into contentAreaContextOverlay
&lt;/li&gt;&lt;li&gt; File/Folder selection in windows.
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt; To Do:
&lt;ul&gt;
&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=639395&quot; rel=&quot;nofollow&quot;&gt;bug 639395&lt;/a&gt; Get cmd_fontSize to reflect current state of selected content / content at caret.&lt;p&gt;&lt;/p&gt;
&lt;/li&gt;&lt;li&gt; Prefs-in-a-tab.
&lt;/li&gt;&lt;li&gt; Create FAQ for Friends of the Fish Tank.
&lt;/li&gt;&lt;li&gt; Knock something up finding out why users are not upgrading to 2.4+ and send it around members lists for polishing.
&lt;/li&gt;&lt;li&gt; Help get composer standalone builds working with –enable-tests.
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;h6&gt; &lt;span class=&quot;mw-headline&quot;&gt; InvisibleSmiley &lt;/span&gt;&lt;/h6&gt;
&lt;ul&gt;
&lt;li&gt; Fixed:&lt;p&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=724311&quot; rel=&quot;nofollow&quot;&gt;bug 724311&lt;/a&gt; Start page JS (upgrade nagging) fails to identify 2.10a1 nightly correctly&lt;p&gt;&lt;/p&gt;
&lt;/li&gt;&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=724076&quot; rel=&quot;nofollow&quot;&gt;bug 724076&lt;/a&gt; Update SeaMonkey website for 2.8 Beta 1
&lt;/li&gt;&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=722405&quot; rel=&quot;nofollow&quot;&gt;bug 722405&lt;/a&gt; Update SeaMonkey website for 2.7 Final release
&lt;/li&gt;&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=721881&quot; rel=&quot;nofollow&quot;&gt;bug 721881&lt;/a&gt; Port |&lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=666306&quot; rel=&quot;nofollow&quot;&gt;bug 666306&lt;/a&gt; – Video content should become large play button …| to Modern
&lt;/li&gt;&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=721583&quot; rel=&quot;nofollow&quot;&gt;bug 721583&lt;/a&gt; Make lightweight themes / Personas work in the Download Manager window
&lt;/li&gt;&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=721286&quot; rel=&quot;nofollow&quot;&gt;bug 721286&lt;/a&gt; Update SeaMonkey website for 2.7 Beta 5
&lt;/li&gt;&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=721021&quot; rel=&quot;nofollow&quot;&gt;bug 721021&lt;/a&gt; Port |&lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=593321&quot; rel=&quot;nofollow&quot;&gt;bug 593321&lt;/a&gt; – Opening saved .EML with empty subject has wrong window title|
&lt;/li&gt;&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=712699&quot; rel=&quot;nofollow&quot;&gt;bug 712699&lt;/a&gt; Create/Update 2.7 Release Notes
&lt;/li&gt;&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=713087&quot; rel=&quot;nofollow&quot;&gt;bug 713087&lt;/a&gt; Port |&lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=534956&quot; rel=&quot;nofollow&quot;&gt;bug 534956&lt;/a&gt; – Sync add-ons| (restartless add-on for SM 2.8)
&lt;/li&gt;&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=718310&quot; rel=&quot;nofollow&quot;&gt;bug 718310&lt;/a&gt; Port |&lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=526998&quot; rel=&quot;nofollow&quot;&gt;bug 526998&lt;/a&gt; – Implement F2 keyboard shortcut for renaming focused attachments when composing (on Windows and Unix)|
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt; ToDo:&lt;p&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=701714&quot; rel=&quot;nofollow&quot;&gt;bug 701714&lt;/a&gt; Add support for DOM full-screen&lt;p&gt;&lt;/p&gt;
&lt;/li&gt;&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=640420&quot; rel=&quot;nofollow&quot;&gt;bug 640420&lt;/a&gt; Add draggable splitter between urlbar and searchbar
&lt;/li&gt;&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=711334&quot; rel=&quot;nofollow&quot;&gt;bug 711334&lt;/a&gt; Be explicit that TLS version is 1.0
&lt;/li&gt;&lt;li&gt; look into
&lt;ul&gt;
&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=698038&quot; rel=&quot;nofollow&quot;&gt;bug 698038&lt;/a&gt; Update Preferences help for the new section to control crash report&lt;p&gt;&lt;/p&gt;
&lt;/li&gt;&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=696757&quot; rel=&quot;nofollow&quot;&gt;bug 696757&lt;/a&gt; Port “Time range to clear” from Firefox to SeaMonkey’s “Clear private data” dialog
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt; track
&lt;ul&gt;
&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=687316&quot; rel=&quot;nofollow&quot;&gt;bug 687316&lt;/a&gt; (Remaining) Sync changes to port to Suite
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;h6&gt; &lt;span class=&quot;mw-headline&quot;&gt; KaiRo &lt;/span&gt;&lt;/h6&gt;
&lt;h6&gt; &lt;span class=&quot;mw-headline&quot;&gt; mcsmurf &lt;/span&gt;&lt;/h6&gt;
&lt;ul&gt;
&lt;li&gt; Working on &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=721474&quot; rel=&quot;nofollow&quot;&gt;bug 721474&lt;/a&gt; Port |&lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=575830&quot; rel=&quot;nofollow&quot;&gt;bug 575830&lt;/a&gt; Image zoom (Page zoom) is reset when I switch tabs| to SeaMonkey.
&lt;/li&gt;&lt;/ul&gt;
&lt;h6&gt; &lt;span class=&quot;mw-headline&quot;&gt; Misak &lt;/span&gt;&lt;/h6&gt;
&lt;h6&gt; &lt;span class=&quot;mw-headline&quot;&gt; Mnyromyr &lt;/span&gt;&lt;/h6&gt;
&lt;h6&gt; &lt;span class=&quot;mw-headline&quot;&gt; MReimer &lt;/span&gt;&lt;/h6&gt;
&lt;h6&gt; &lt;span class=&quot;mw-headline&quot;&gt; Neil &lt;/span&gt;&lt;/h6&gt;
&lt;h6&gt; &lt;span class=&quot;mw-headline&quot;&gt; Ratty &lt;/span&gt;&lt;/h6&gt;
&lt;p&gt;Page Info Fixes:
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt; Fixed &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=168908&quot; rel=&quot;nofollow&quot;&gt;bug 168908&lt;/a&gt; All columns in Page Info tabs can be hidden.&lt;p&gt;&lt;/p&gt;
&lt;/li&gt;&lt;li&gt; Fixed &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=723984&quot; rel=&quot;nofollow&quot;&gt;bug 723984&lt;/a&gt; PageInfo-&amp;gt;Permissions: Don’t assume that the whitelist pref is there. It defaults to true in the new add-ons manager code. Don’t assume all consumers use testPermission.
&lt;/li&gt;&lt;li&gt; Fixed &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=724222&quot; rel=&quot;nofollow&quot;&gt;bug 724222&lt;/a&gt; View page info -&amp;gt; Security: doesn’t show cookies were set for sites with ip:8080 address (see Firefox &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=409174&quot; rel=&quot;nofollow&quot;&gt;bug 409174&lt;/a&gt;).
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;Test Fixes:
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=724331&quot; rel=&quot;nofollow&quot;&gt;bug 724331&lt;/a&gt; TEST-UNEXPECTED-FAIL | chrome://mochitests/content/browser/suite/browser/test/browser_bug427559.js | an unexpected uncaught JS exception reported through window.onerror – executeSoon is not defined at …./suite/browser/test/browser_bug427559.js:56.&lt;p&gt;&lt;/p&gt;
&lt;/li&gt;&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=724499&quot; rel=&quot;nofollow&quot;&gt;bug 724499&lt;/a&gt; TEST-UNEXPECTED-FAIL | chrome://mochitests/content/browser/suite/browser/test/browser_pluginnotification.js | Test timed out.
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;Lightning/SeaMonkey Integration:
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=719031&quot; rel=&quot;nofollow&quot;&gt;bug 719031&lt;/a&gt; [Meta] SeaMonkey issues from Lightning &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=316916&quot; rel=&quot;nofollow&quot;&gt;bug 316916&lt;/a&gt; landing (Task Quick Filter bar).&lt;p&gt;&lt;/p&gt;
&lt;/li&gt;&lt;li&gt; Fixed &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=721330&quot; rel=&quot;nofollow&quot;&gt;bug 721330&lt;/a&gt; Make Customizing Lightning Toolbars work in SeaMonkey.
&lt;ul&gt;
&lt;li&gt; Part 1: CalendarToolbar and TaskToolbar.&lt;p&gt;&lt;/p&gt;
&lt;/li&gt;&lt;li&gt; Part 2: TaskActionsToolbar.
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt; &lt;i&gt;Waiting for review&lt;/i&gt;: &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=721327&quot; rel=&quot;nofollow&quot;&gt;bug 721327&lt;/a&gt; Implement Tabs Toolbar for Thunderbird and Lightning Compatibility.
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;Backout Patches (waiting for comm-aurora approval):
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=723970&quot; rel=&quot;nofollow&quot;&gt;bug 723970&lt;/a&gt; Backout &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=698187&quot; rel=&quot;nofollow&quot;&gt;bug 698187&lt;/a&gt; due to mozilla-central back out of parts of &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=698986&quot; rel=&quot;nofollow&quot;&gt;bug 698986&lt;/a&gt; to resolve &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=716945&quot; rel=&quot;nofollow&quot;&gt;bug 716945&lt;/a&gt;.
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;Waiting for feedback:
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=701432&quot; rel=&quot;nofollow&quot;&gt;bug 701432&lt;/a&gt; Add support for fave icons on jump list uri entries.
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;ToDo:&lt;/p&gt;
&lt;p&gt;Other:
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt; Bug triage and Bug discussions.&lt;p&gt;&lt;/p&gt;
&lt;/li&gt;&lt;li&gt; End user support and PR in newsgroups and &lt;a class=&quot;external text&quot; href=&quot;http://forums.mozillazine.org/&quot; rel=&quot;nofollow&quot;&gt;Mozillazine&lt;/a&gt;.
&lt;/li&gt;&lt;/ul&gt;
&lt;h6&gt; &lt;span class=&quot;mw-headline&quot;&gt; Ricardo &lt;/span&gt;&lt;/h6&gt;
&lt;h6&gt; &lt;span class=&quot;mw-headline&quot;&gt; sgautherie &lt;/span&gt;&lt;/h6&gt;
&lt;ul&gt;
&lt;li&gt;Fixed SeaMonkey (related) bugs:&lt;p&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=707039&quot; rel=&quot;nofollow&quot;&gt;bug 707039&lt;/a&gt; [SeaMonkey] mochitest-chrome: “TEST-UNEXPECTED-FAIL … textLTR.openPopup is not a function at … test_bug649840.xul:39″&lt;p&gt;&lt;/p&gt;
&lt;/li&gt;&lt;li&gt;&lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=714257&quot; rel=&quot;nofollow&quot;&gt;bug 714257&lt;/a&gt; Package ‘necko_websocket.xpt’ in SeaMonkey after |Bug 640003 – WebSockets – upgrade to ietf-07|
&lt;/li&gt;&lt;li&gt;&lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=716395&quot; rel=&quot;nofollow&quot;&gt;bug 716395&lt;/a&gt; Port |Bug 716397 – [Linux] “Warning: package error or possible missing or unnecessary file: bin/libmozglue.so”| to SeaMonkey
&lt;/li&gt;&lt;li&gt;&lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=718912&quot; rel=&quot;nofollow&quot;&gt;bug 718912&lt;/a&gt; Port |Bug 717975 – only expose m-c implementation of navigator.mozApps on b2g| to SeaMonkey
&lt;/li&gt;&lt;li&gt;&lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=719325&quot; rel=&quot;nofollow&quot;&gt;bug 719325&lt;/a&gt; Package dom_network.xpt : Port Bug 677166 (Implement Network Status API) Part 2 Add .mozConnection to navigator
&lt;/li&gt;&lt;li&gt;&lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=721357&quot; rel=&quot;nofollow&quot;&gt;bug 721357&lt;/a&gt; Support ‘mailbloat’ test target in SeaMonkey
&lt;/li&gt;&lt;li&gt;&lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=721533&quot; rel=&quot;nofollow&quot;&gt;bug 721533&lt;/a&gt; [SeaMonkey] “Warning: package error or possible missing or unnecessary file: bin/components/chardet.xpt”
&lt;/li&gt;&lt;li&gt;&lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=724448&quot; rel=&quot;nofollow&quot;&gt;bug 724448&lt;/a&gt; tests cleanup for browser_367052.js and browser_bug431826.js, in SeaMonkey
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;Fixed Core bugs:
&lt;ul&gt;
&lt;li&gt;&lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=649840&quot; rel=&quot;nofollow&quot;&gt;bug 649840&lt;/a&gt; RTL on forms inputs autocomplete&lt;p&gt;&lt;/p&gt;
&lt;/li&gt;&lt;li&gt;&lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=720095&quot; rel=&quot;nofollow&quot;&gt;bug 720095&lt;/a&gt; SimpleTest/EventUtils.js: fix some strict warnings and nits
&lt;/li&gt;&lt;li&gt;&lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=720952&quot; rel=&quot;nofollow&quot;&gt;bug 720952&lt;/a&gt; [MacOSX] Some (or random?) builders report “Typelibs contain definitions of interface nsIDocCharset with different IIDs!” when “Linking .xpt files…”
&lt;/li&gt;&lt;li&gt;&lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=720955&quot; rel=&quot;nofollow&quot;&gt;bug 720955&lt;/a&gt; pyxpt: Report IIDs when they differ
&lt;/li&gt;&lt;li&gt;&lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=722019&quot; rel=&quot;nofollow&quot;&gt;bug 722019&lt;/a&gt; Investigate status of cbox-dis.gif (and related)
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;Fixed other projects bugs:
&lt;ul&gt;
&lt;li&gt;[Firefox] &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=652297&quot; rel=&quot;nofollow&quot;&gt;bug 652297&lt;/a&gt; Stop trying to package MSVC DLLs in debug Windows Firefox&lt;p&gt;&lt;/p&gt;
&lt;/li&gt;&lt;li&gt;[Firefox] &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=721535&quot; rel=&quot;nofollow&quot;&gt;bug 721535&lt;/a&gt; [Firefox] “Warning: package error or possible missing or unnecessary file: bin/components/chardet.xpt”
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;h6&gt; &lt;span class=&quot;mw-headline&quot;&gt; Stanimir &lt;/span&gt;&lt;/h6&gt;
&lt;h6&gt; &lt;span class=&quot;mw-headline&quot;&gt; stefanh &lt;/span&gt;&lt;/h6&gt;
&lt;p&gt;Fixed:
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=425916&quot; rel=&quot;nofollow&quot;&gt;bug 425916&lt;/a&gt; Improve look of mac treerows when in editing mode.&lt;p&gt;&lt;/p&gt;
&lt;/li&gt;&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=713445&quot; rel=&quot;nofollow&quot;&gt;bug 713445&lt;/a&gt; [Mac Default] tabbrowser tab title text styling is wrong in Lion.
&lt;/li&gt;&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=713446&quot; rel=&quot;nofollow&quot;&gt;bug 713446&lt;/a&gt; White text with text-shadow in selected bottom tabs.
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;Working on:
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=721529&quot; rel=&quot;nofollow&quot;&gt;bug 721529&lt;/a&gt; [Mac default] Reference to non-existing chrome://global/skin/tree/item.png in searchbar.css and directory.css.
&lt;/li&gt;&lt;/ul&gt;
&lt;h6&gt; &lt;span class=&quot;mw-headline&quot;&gt; tonymec &lt;/span&gt;&lt;/h6&gt;
&lt;ul&gt;
&lt;li&gt; In progress: &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=716232&quot; rel=&quot;nofollow&quot;&gt;bug 716232&lt;/a&gt; crash in JS GC at every cZ startup: working with dmandelin to find the culprit changeset&lt;p&gt;&lt;/p&gt;
&lt;/li&gt;&lt;li&gt; TODO: IRC meeting later today about giving up ownership of the Nightly Tester Tools extension to a fuller team from automation and/or QA
&lt;/li&gt;&lt;/ul&gt;
&lt;h5&gt; &lt;span class=&quot;mw-headline&quot;&gt; Any other business?  &lt;/span&gt;&lt;/h5&gt;
&lt;ul&gt;
&lt;li&gt; Need to review &lt;a class=&quot;external text&quot; href=&quot;http://www.seamonkey-project.org/dev/project-areas&quot; rel=&quot;nofollow&quot;&gt;project areas&lt;/a&gt;&lt;p&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt; &lt;b&gt;IanN&lt;/b&gt; has put out a final draft of the project areas list, and will then confirm that anyone who is not in the loop already has been consulted.&lt;p&gt;&lt;/p&gt;
&lt;/li&gt;&lt;li&gt; IanN is still waiting for the last few people to respond before creating the new version.
&lt;/li&gt;&lt;li&gt; We will also need to update the Mozilla-wide list of official reviewers
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt; &lt;b&gt;Extended Support Releases (ESR)&lt;/b&gt;
&lt;ul&gt;
&lt;li&gt; At the moment looks like that will be based off Gecko 10 so that will be 2.7 for us. Assuming we have the machines, we will also have an ESR which might help move some of those still on 2.0 up to 2.7. We’re unlikely to move to ESR until Gecko 10.0.1 or 10.0.2.&lt;p&gt;&lt;/p&gt;
&lt;/li&gt;&lt;li&gt; Our ESR should use the same branch as Firefox ESR so any Security and Stability “extended” fixes for Gecko will be picked up by the SeaMonkey ESR.
&lt;/li&gt;&lt;li&gt; An ESR (Extended Security Release) may not be a given for us out of the gate. Callek thinks we should revisit that, separately, once it is clearer what MoCo’s general plans for their marketing/target/support levels etc. are.
&lt;/li&gt;&lt;li&gt; mcsmurf is on the ESR mailing list is our ESR goto guy.
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt; &lt;b&gt;Geolocation&lt;/b&gt;
&lt;ul&gt;
&lt;li&gt; Geolocation now works out of the box. MoCo turned it on by default for all applications that build off mozilla-central.&lt;p&gt;&lt;/p&gt;
&lt;/li&gt;&lt;li&gt; For comm-beta all we need to do is (&lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=494421&quot; rel=&quot;nofollow&quot;&gt;bug 494421&lt;/a&gt;) to add &lt;tt&gt;pref(&quot;geo.wifi.uri&quot;, &quot;&lt;a class=&quot;external free&quot; href=&quot;https://www.google.com/loc/json&quot; rel=&quot;nofollow&quot;&gt;https://www.google.com/loc/json&lt;/a&gt;&quot;);&lt;/tt&gt; to browser-prefs.js. However we’re not even sure we are legally allowed to ship with the URL in, we might need to actually put in a pref to disable that in newer builds.
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;div class=&quot;printfooter&quot;&gt;
Retrieved from “&lt;a href=&quot;https://wiki.mozilla.org/SeaMonkey/StatusMeetings/2012-02-07&quot;&gt;https://wiki.mozilla.org/SeaMonkey/StatusMeetings/2012-02-07&lt;/a&gt;“&lt;/div&gt;
&lt;div class=&quot;catlinks catlinks-allhidden&quot;&gt;&lt;/div&gt;
&lt;div class=&quot;visualClear&quot;&gt;&lt;/div&gt;
&lt;p&gt;&lt;/p&gt;&lt;/div&gt;</description>
	<pubDate>Wed, 08 Feb 2012 04:00:11 +0000</pubDate>
	<dc:creator>Jesper Kristensen</dc:creator>
</item>
<item>
	<title>Meeting Notes from the Mozilla community: Mozilla Platform Meeting Minutes: 2012-02-07</title>
	<guid isPermaLink="false">https://blog.mozilla.com/meeting-notes/archives/764</guid>
	<link>http://blog.mozilla.com/meeting-notes/archives/764</link>
	<description>&lt;div&gt;
&lt;h3&gt;Platform/2012-02-07&lt;/h3&gt;
&lt;div&gt;&lt;span class=&quot;subpages&quot;&gt;&amp;lt; &lt;a href=&quot;https://wiki.mozilla.org/Platform&quot; title=&quot;Platform&quot;&gt;Platform&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;
&lt;p&gt;
&lt;a href=&quot;https://wiki.mozilla.org/Platform/2012-01-31&quot; title=&quot;Platform/2012-01-31&quot;&gt;« previous week&lt;/a&gt; | &lt;a href=&quot;https://wiki.mozilla.org/Platform&quot; title=&quot;Platform&quot;&gt;index&lt;/a&gt; | &lt;a class=&quot;new&quot; href=&quot;https://wiki.mozilla.org/index.php?title=Platform/2012-02-14&amp;amp;action=edit&amp;amp;redlink=1&quot; title=&quot;Platform/2012-02-14 (page does not exist)&quot;&gt;next week »&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Platform Meeting Details&lt;/b&gt;
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt; Tuesdays – 11:00 am Pacific&lt;p&gt;&lt;/p&gt;
&lt;/li&gt;&lt;li&gt; &lt;a href=&quot;https://wiki.mozilla.org/Teleconferencing&quot; title=&quot;Teleconferencing&quot;&gt;Dial-in&lt;/a&gt;: conference# 95312
&lt;ul&gt;
&lt;li&gt; US/International: +1 650 903 0800 x92 Conf# 95312&lt;p&gt;&lt;/p&gt;
&lt;/li&gt;&lt;li&gt; US toll free: +1 800 707 2533 (pin 369) Conf# 95312
&lt;/li&gt;&lt;li&gt; Canada: +1 416 848 3114 x92 Conf# 95312
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://v.mozilla.com/flex.html?roomdirect.html&amp;amp;key=UK1zyrd7Vhym&quot; rel=&quot;nofollow&quot;&gt;Warp Core Vidyo Room&lt;/a&gt;
&lt;/li&gt;&lt;li&gt; join irc.mozilla.org #planning for back channel
&lt;/li&gt;&lt;/ul&gt;
&lt;table class=&quot;toc&quot; id=&quot;toc&quot;&gt;
&lt;tbody&gt;&lt;tr&gt;
&lt;td&gt;
&lt;div&gt;
&lt;h4&gt;Contents&lt;/h4&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li class=&quot;toclevel-1 tocsection-1&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/Platform/2012-02-07#Notices_.2F_Schedule&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;1&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Notices / Schedule&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-1 tocsection-2&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/Platform/2012-02-07#Firefox_Development&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;2&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Firefox Development&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-1 tocsection-3&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/Platform/2012-02-07#Firefox_Developer_Tools&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;3&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Firefox Developer Tools&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-1 tocsection-4&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/Platform/2012-02-07#Performance&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;4&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Performance&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-1 tocsection-5&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/Platform/2012-02-07#GFX&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;5&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;GFX&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-1 tocsection-6&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/Platform/2012-02-07#JS&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;6&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;JS&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-1 tocsection-7&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/Platform/2012-02-07#Layout&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;7&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Layout&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-1 tocsection-8&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/Platform/2012-02-07#Video&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;8&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Video&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-1 tocsection-9&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/Platform/2012-02-07#DOM&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;9&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;DOM&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-1 tocsection-10&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/Platform/2012-02-07#WebAPI&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;10&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;WebAPI&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-1 tocsection-11&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/Platform/2012-02-07#Network&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;11&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Network&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-1 tocsection-12&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/Platform/2012-02-07#Identity&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;12&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Identity&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-1 tocsection-13&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/Platform/2012-02-07#Plugins&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;13&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Plugins&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-1 tocsection-14&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/Platform/2012-02-07#Mobile&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;14&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Mobile&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-1 tocsection-15&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/Platform/2012-02-07#Accessibility&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;15&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Accessibility&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-1 tocsection-16&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/Platform/2012-02-07#Tree_Management&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;16&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Tree Management&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-1 tocsection-17&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/Platform/2012-02-07#Security&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;17&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Security&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-1 tocsection-18&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/Platform/2012-02-07#Stability_Report&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;18&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Stability Report&lt;/span&gt;&lt;/a&gt;
&lt;ul&gt;
&lt;li class=&quot;toclevel-2 tocsection-19&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/Platform/2012-02-07#Socorro&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;18.1&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Socorro&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-2 tocsection-20&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/Platform/2012-02-07#Desktop&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;18.2&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Desktop&lt;/span&gt;&lt;/a&gt;
&lt;ul&gt;
&lt;li class=&quot;toclevel-3 tocsection-21&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/Platform/2012-02-07#Firefox_10_Top_Issues&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;18.2.1&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Firefox 10 Top Issues&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-3 tocsection-22&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/Platform/2012-02-07#Firefox_11_Top_Issues&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;18.2.2&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Firefox 11 Top Issues&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-3 tocsection-23&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/Platform/2012-02-07#Firefox_12_Top_Issues&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;18.2.3&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Firefox 12 Top Issues&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-3 tocsection-24&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/Platform/2012-02-07#Trunk_Top_Issues&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;18.2.4&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Trunk Top Issues&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li class=&quot;toclevel-2 tocsection-25&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/Platform/2012-02-07#Mobile_2&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;18.3&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Mobile&lt;/span&gt;&lt;/a&gt;
&lt;ul&gt;
&lt;li class=&quot;toclevel-3 tocsection-26&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/Platform/2012-02-07#Trunk_Top_Issues_2&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;18.3.1&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Trunk Top Issues&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-3 tocsection-27&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/Platform/2012-02-07#Aurora_Top_Issues&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;18.3.2&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Aurora Top Issues&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-3 tocsection-28&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/Platform/2012-02-07#Beta&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;18.3.3&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Beta&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li class=&quot;toclevel-1 tocsection-29&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/Platform/2012-02-07#Roundtable&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;19&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Roundtable&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;
&lt;h4&gt; &lt;span class=&quot;mw-headline&quot;&gt;Notices / Schedule&lt;/span&gt;&lt;/h4&gt;
&lt;h4&gt; &lt;span class=&quot;mw-headline&quot;&gt;Firefox Development&lt;/span&gt;&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt; As mentioned last week, New Tab is now on by default. Tim Taubert is on a tear fixing followup issues, improving performance of the thumbnail service, and making styling tweaks.&lt;p&gt;&lt;/p&gt;
&lt;/li&gt;&lt;li&gt; Inline autocomplete has been disabled on trunk while we fix some additional issues that popped up (&lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=720792&quot; rel=&quot;nofollow&quot;&gt;bug 720792&lt;/a&gt;). Marco is on the case, and we’ll get that re-enabled shortly.
&lt;/li&gt;&lt;li&gt; Chemspill candidates for FF10 are being discussed at today’s channel meeting (2PM PT in Warp Core)
&lt;/li&gt;&lt;/ul&gt;
&lt;h4&gt; &lt;span class=&quot;mw-headline&quot;&gt;Firefox Developer Tools&lt;/span&gt;&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt; Initial Debugger &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=697762#c60&quot; rel=&quot;nofollow&quot;&gt;Has Landed&lt;/a&gt;&lt;p&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt; Preffed off: to enable, set &lt;b&gt;devtools.debugger.enable&lt;/b&gt; to &lt;b&gt;true&lt;/b&gt;.
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;h4&gt; &lt;span class=&quot;mw-headline&quot;&gt;Performance&lt;/span&gt;&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://metrics.mozilla.com/data&quot; rel=&quot;nofollow&quot;&gt;Telemetry dashboard&lt;/a&gt; is now public! See &lt;a class=&quot;external text&quot; href=&quot;http://people.mozilla.com/~tglek/fosdem2012/#/step-11&quot; rel=&quot;nofollow&quot;&gt;Taras’ presentation&lt;/a&gt; for access details.&lt;p&gt;&lt;/p&gt;
&lt;/li&gt;&lt;li&gt; Performance work week &lt;a class=&quot;external text&quot; href=&quot;http://msujaws.wordpress.com/2012/02/03/firefox-performancesnappy-work-week-recap/&quot; rel=&quot;nofollow&quot;&gt;summary from Jared&lt;/a&gt;.
&lt;ul&gt;
&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://etherpad.mozilla.org/perfworkweek&quot; rel=&quot;nofollow&quot;&gt;Front-end activities and notes&lt;/a&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt; Safebrowsing move from SQLite to flat file landed (&lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=673470&quot; rel=&quot;nofollow&quot;&gt;bug 673470&lt;/a&gt;)
&lt;/li&gt;&lt;li&gt; Various front-end telemetry probes landed, and a bunch more are in-progress.
&lt;ul&gt;
&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://etherpad.mozilla.org/fe-telemetry&quot; rel=&quot;nofollow&quot;&gt;Notes from perf work-week&lt;/a&gt;&lt;p&gt;&lt;/p&gt;
&lt;/li&gt;&lt;li&gt; page thumbnails for new-tab (&lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=721019&quot; rel=&quot;nofollow&quot;&gt;bug 721019&lt;/a&gt;)
&lt;/li&gt;&lt;li&gt; site identity popup (&lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=723090&quot; rel=&quot;nofollow&quot;&gt;bug 723090&lt;/a&gt;)
&lt;/li&gt;&lt;li&gt; Places idle frecency updates (&lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=723124&quot; rel=&quot;nofollow&quot;&gt;bug 723124&lt;/a&gt;)
&lt;/li&gt;&lt;li&gt; Places idle maintenance tasks (&lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=723126&quot; rel=&quot;nofollow&quot;&gt;bug 723126&lt;/a&gt;)
&lt;/li&gt;&lt;li&gt; Firefox menu opening time (&lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=723515&quot; rel=&quot;nofollow&quot;&gt;bug 723515&lt;/a&gt;)
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;h4&gt; &lt;span class=&quot;mw-headline&quot;&gt;GFX&lt;/span&gt;&lt;/h4&gt;
&lt;h4&gt; &lt;span class=&quot;mw-headline&quot;&gt;JS&lt;/span&gt;&lt;/h4&gt;
&lt;h4&gt; &lt;span class=&quot;mw-headline&quot;&gt;Layout&lt;/span&gt;&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt; Edwin Flores (intern) making good progress on “embedded SVG glyphs in OpenType fonts” (aka “SVG Fonts Done Right”) &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=719286&quot; rel=&quot;nofollow&quot;&gt;bug 719286&lt;/a&gt;. We should have something shippable-but-preffed-off-by-default soon.&lt;p&gt;&lt;/p&gt;
&lt;/li&gt;&lt;li&gt; Other notable patches:
&lt;ul&gt;
&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=721068&quot; rel=&quot;nofollow&quot;&gt;bug 721068&lt;/a&gt; Graphite font shaping update from SIL&lt;p&gt;&lt;/p&gt;
&lt;/li&gt;&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=722322&quot; rel=&quot;nofollow&quot;&gt;bug 722322&lt;/a&gt; Have the “1″ and “2″ keys switch between images in reftest-analyzer.xhtml
&lt;/li&gt;&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=722071&quot; rel=&quot;nofollow&quot;&gt;bug 722071&lt;/a&gt; Implement array style indexing for SVGStringList
&lt;/li&gt;&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=714839&quot; rel=&quot;nofollow&quot;&gt;bug 714839&lt;/a&gt; nsCSSFrameConstructor now inherits nsFrameManager
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;h4&gt; &lt;span class=&quot;mw-headline&quot;&gt;Video&lt;/span&gt;&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt; libcubeb landed for Windows, but was disabled due to some random test failures&lt;p&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt; Matthew working on reenabling that, plus tracking down failures in Mac and ALSA backends
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt; WebRTC:
&lt;ul&gt;
&lt;li&gt; alder repo now builds on Win32 (thanks Ted!).&lt;p&gt;&lt;/p&gt;
&lt;/li&gt;&lt;li&gt; Win32, Linux and Mac can capture images from video with fabrice’s &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=629955&quot; rel=&quot;nofollow&quot;&gt;bug 629955&lt;/a&gt; patches
&lt;/li&gt;&lt;li&gt; Chrome is now shipping Canary Chromium builds with a very early version of WebRTC enable-able. A number of 3rd-parties have built early demos based on it; several were shown at IETF Interim last week.
&lt;/li&gt;&lt;li&gt; Data channel API/protocols firming up; will evangelize at HTML5 Gaming work week in Toronto (great for games!) and look to implement ASAP
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;h4&gt; &lt;span class=&quot;mw-headline&quot;&gt;DOM&lt;/span&gt;&lt;/h4&gt;
&lt;h4&gt; &lt;span class=&quot;mw-headline&quot;&gt;WebAPI&lt;/span&gt;&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt; Started work on WebNFC&lt;p&gt;&lt;/p&gt;
&lt;/li&gt;&lt;li&gt; Mounir is editor for Network Information API and Screen Orientation APIs at W3C
&lt;/li&gt;&lt;/ul&gt;
&lt;h4&gt; &lt;span class=&quot;mw-headline&quot;&gt;Network&lt;/span&gt;&lt;/h4&gt;
&lt;h4&gt; &lt;span class=&quot;mw-headline&quot;&gt;Identity&lt;/span&gt;&lt;/h4&gt;
&lt;h4&gt; &lt;span class=&quot;mw-headline&quot;&gt;Plugins&lt;/span&gt;&lt;/h4&gt;
&lt;h4&gt; &lt;span class=&quot;mw-headline&quot;&gt;Mobile&lt;/span&gt;&lt;/h4&gt;
&lt;h4&gt; &lt;span class=&quot;mw-headline&quot;&gt;Accessibility&lt;/span&gt;&lt;/h4&gt;
&lt;h4&gt; &lt;span class=&quot;mw-headline&quot;&gt;Tree Management&lt;/span&gt;&lt;/h4&gt;
&lt;h4&gt; &lt;span class=&quot;mw-headline&quot;&gt;Security&lt;/span&gt;&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt; No security reviews this week due to security work week in Santa Cruz.&lt;p&gt;&lt;/p&gt;
&lt;/li&gt;&lt;li&gt; Please work with Curtis to schedule reviews and
&lt;/li&gt;&lt;li&gt; Update feature pages so we have accurate information
&lt;/li&gt;&lt;/ul&gt;
&lt;h4&gt; &lt;span class=&quot;mw-headline&quot;&gt;Stability Report&lt;/span&gt;&lt;/h4&gt;
&lt;h5&gt; &lt;span class=&quot;mw-headline&quot;&gt;Socorro&lt;/span&gt;&lt;/h5&gt;
&lt;h5&gt; &lt;span class=&quot;mw-headline&quot;&gt;Desktop&lt;/span&gt;&lt;/h5&gt;
&lt;h6&gt; &lt;span class=&quot;mw-headline&quot;&gt;Firefox 10 Top Issues&lt;/span&gt;&lt;/h6&gt;
&lt;ul&gt;
&lt;li&gt; Noticed increase in cycle collector crashes – GCGraphBuilder::NoteXPCOMChild(nsISupports*) – #2 crash&lt;p&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=724129&quot; rel=&quot;nofollow&quot;&gt;bug 724129&lt;/a&gt; – startup crash nsXBLDocumentInfo::cycleCollection::Traverse&lt;p&gt;&lt;/p&gt;
&lt;/li&gt;&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=724284&quot; rel=&quot;nofollow&quot;&gt;bug 724284&lt;/a&gt; – Security bug we believe is causing the above regression.
&lt;/li&gt;&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=718284&quot; rel=&quot;nofollow&quot;&gt;bug 718284&lt;/a&gt; – Bug in FF11 that is also causing an increase of these crashes.
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt; Startup crash @ PR_EnumerateAddrInfo | nsDNSRecord::GetNextAddr – #3 crash
&lt;ul&gt;
&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=718389&quot; rel=&quot;nofollow&quot;&gt;bug 718389&lt;/a&gt; – Spike we saw in FF10b4  &lt;p&gt;&lt;/p&gt;
&lt;/li&gt;&lt;li&gt; No clear next steps for investigation. Correlation reports have been inconclusive.
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=725009&quot; rel=&quot;nofollow&quot;&gt;bug 725009&lt;/a&gt; – crash je_free | mozutils.dll. May be related to Flash.
&lt;/li&gt;&lt;/ul&gt;
&lt;h6&gt; &lt;span class=&quot;mw-headline&quot;&gt;Firefox 11 Top Issues&lt;/span&gt;&lt;/h6&gt;
&lt;ul&gt;
&lt;li&gt; Increase in hangs – &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=722394&quot; rel=&quot;nofollow&quot;&gt;bug 722394&lt;/a&gt;&lt;p&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=709209&quot; rel=&quot;nofollow&quot;&gt;bug 709209&lt;/a&gt; – This is complicating our investigation.&lt;p&gt;&lt;/p&gt;
&lt;/li&gt;&lt;li&gt; Marcia logging some plugin side reports that might help uncover the issue – &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=724617&quot; rel=&quot;nofollow&quot;&gt;bug 724617&lt;/a&gt;
&lt;/li&gt;&lt;li&gt; Top concern, not making much headway – need some developer help with the analysis.
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=715401&quot; rel=&quot;nofollow&quot;&gt;bug 715401&lt;/a&gt; – new on 11a2 but rising in b1 – trying to isolate the regression range.
&lt;/li&gt;&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=718284&quot; rel=&quot;nofollow&quot;&gt;bug 718284&lt;/a&gt; – Separate issue causing increase in cycle collector issues.
&lt;/li&gt;&lt;/ul&gt;
&lt;h6&gt; &lt;span class=&quot;mw-headline&quot;&gt;Firefox 12 Top Issues&lt;/span&gt;&lt;/h6&gt;
&lt;ul&gt;
&lt;li&gt; Nothing new and notable on Aurora yet.
&lt;/li&gt;&lt;/ul&gt;
&lt;h6&gt; &lt;span class=&quot;mw-headline&quot;&gt;Trunk Top Issues&lt;/span&gt;&lt;/h6&gt;
&lt;ul&gt;
&lt;li&gt; Tracking a number of new crashes related to the landing of some plugin work &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=90268&quot; rel=&quot;nofollow&quot;&gt;bug 90268&lt;/a&gt;&lt;p&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt; &lt;a class=&quot;external free&quot; href=&quot;https://etherpad.mozilla.org/Bug-90268&quot; rel=&quot;nofollow&quot;&gt;https://etherpad.mozilla.org/Bug-90268&lt;/a&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;h5&gt; &lt;span class=&quot;mw-headline&quot;&gt;Mobile&lt;/span&gt;&lt;/h5&gt;
&lt;ul&gt;
&lt;li&gt; Socorro fixes to separate out Java signatures – fix went out last week.&lt;p&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=719943&quot; rel=&quot;nofollow&quot;&gt;bug 719943&lt;/a&gt;- new field in json metadata needs exposure in the UI
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt; Crash volume going down after a bunch of fixes landed last week.
&lt;/li&gt;&lt;/ul&gt;
&lt;h6&gt; &lt;span class=&quot;mw-headline&quot;&gt;Trunk Top Issues&lt;/span&gt;&lt;/h6&gt;
&lt;ul&gt;
&lt;li&gt; Still lots of new stuff landing. Focus on logging all the new Java signatures…&lt;p&gt;&lt;/p&gt;
&lt;/li&gt;&lt;li&gt; top crash fixed – &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=723550&quot; rel=&quot;nofollow&quot;&gt;bug 723550&lt;/a&gt; – Lots of base64 decode errors in logcat
&lt;/li&gt;&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=724215&quot; rel=&quot;nofollow&quot;&gt;bug 724215&lt;/a&gt; – java.lang.NullPointerException: at org.mozilla.gecko.GeckoEvent.addMotionPoint(GeckoEvent.java)
&lt;/li&gt;&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=723495&quot; rel=&quot;nofollow&quot;&gt;bug 723495&lt;/a&gt; – java.lang.IllegalArgumentException: View not attached to window manager at android.view.WindowManagerImpl.findViewLocked(WindowManagerImpl.java) – (affects 13, 12, 11)
&lt;/li&gt;&lt;/ul&gt;
&lt;h6&gt; &lt;span class=&quot;mw-headline&quot;&gt;Aurora Top Issues&lt;/span&gt;&lt;/h6&gt;
&lt;ul&gt;
&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=711852&quot; rel=&quot;nofollow&quot;&gt;bug 711852&lt;/a&gt; – Crash in neon_composite_over_8888_8888 or neon_composite_over_n_8_0565 or fast_composite_over_8888_0565 or arm_neon_fill @ libxul.so@0xa – (affects 12, 11)
&lt;/li&gt;&lt;/ul&gt;
&lt;h6&gt; &lt;span class=&quot;mw-headline&quot;&gt;Beta&lt;/span&gt;&lt;/h6&gt;
&lt;ul&gt;
&lt;li&gt; Not enough data yet – top issue is just 4 crashes&lt;p&gt;&lt;/p&gt;
&lt;/li&gt;&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=719741&quot; rel=&quot;nofollow&quot;&gt;bug 719741&lt;/a&gt; – Crash @ __libc_android_abort | dlfree | free | fclose
&lt;/li&gt;&lt;/ul&gt;
&lt;h4&gt; &lt;span class=&quot;mw-headline&quot;&gt;Roundtable&lt;/span&gt;&lt;/h4&gt;
&lt;div class=&quot;printfooter&quot;&gt;
Retrieved from “&lt;a href=&quot;https://wiki.mozilla.org/Platform/2012-02-07&quot;&gt;https://wiki.mozilla.org/Platform/2012-02-07&lt;/a&gt;“&lt;/div&gt;
&lt;div class=&quot;catlinks catlinks-allhidden&quot;&gt;&lt;/div&gt;
&lt;div class=&quot;visualClear&quot;&gt;&lt;/div&gt;
&lt;p&gt;&lt;/p&gt;&lt;/div&gt;</description>
	<pubDate>Wed, 08 Feb 2012 04:00:05 +0000</pubDate>
	<dc:creator>Jesper Kristensen</dc:creator>
</item>
<item>
	<title>Brian R. Bondy: Snappy optimizations for faster Firefox startup</title>
	<guid isPermaLink="true">http://www.brianbondy.com/blog/id/127</guid>
	<link>http://www.brianbondy.com/blog/id/127</link>
	<description>&lt;p&gt;&lt;a href=&quot;https://wiki.mozilla.org/Performance/Snappy&quot;&gt;Snappy&lt;/a&gt; is a project that &lt;strike&gt;aims to improve&lt;/strike&gt; is improving Firefox responsiveness.  As part of this project I've been working on Firefox startup optimizations.&lt;/p&gt;
&lt;p&gt;You can spend days, months, or even years trying to optimize code, but if you don't understand where to optimize, you won't be making a difference.
Likewise, searching for an optimizations in a competitor's product is usually not the best way to get results.&lt;/p&gt;
&lt;p&gt;It's nearly impossible to optimize code by guessing what is slow, you need to profile the code to understand the problems. Once you understand the problems you can then fix them, and then finally test to make sure they are fixed.&lt;/p&gt;
&lt;p&gt;Here are some initial Firefox startup optimizations I've done with some lite profiling on Windows over the period of a few days:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=724177&quot;&gt;bug 724177&lt;/a&gt; - 30-50ms (5%) Firefox startup speed optimization on Windows in nsLocalFileWin&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=724256&quot;&gt;bug 724256&lt;/a&gt; - Optimize move file calls on Windows, saving about 2ms per call (1 call on startup)&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=722225&quot;&gt;bug 722225&lt;/a&gt; - Firefox startup speed by ~5% (-70ms) on Windows by optimizing D3D10CreateDevice1 &lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=722315&quot;&gt;bug 722315&lt;/a&gt; - Firefox startup speed by by ~5% (-76ms) on Windows by lazy loading CLSID_DragDropHelper&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=724203&quot;&gt;bug 724203&lt;/a&gt; - Optimize nsLocalFile::IsDirectory on Windows by 50% giving 5ms startup improvement&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=724207&quot;&gt;bug 724207&lt;/a&gt; - Save 15-20ms on startup from unused file attributes fetch when opening files &lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=692255&quot;&gt;bug 692255&lt;/a&gt; - Find a way to get rid of prefetch files on Windows for faster startup&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;I plan to keep doing more startup optimizations for a while in between silent update work.&lt;/p&gt;
&lt;p&gt;So how are optimizations found?
There are many ways, the first I will talk about is Xperf.&lt;/p&gt;
&lt;hr /&gt;
&lt;p&gt;&lt;strong&gt;Xperf&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;One way to identify optimization bottlenecks on Windows is to use &lt;a href=&quot;https://wiki.mozilla.org/Using_XPerf&quot;&gt;Xperf&lt;/a&gt;.
Xperf is a great way to find both IO bottlenecks and CPU usage bottlenecks.&lt;/p&gt;
&lt;p&gt;It can tell you which files use the most IO, what the IO patterns are, which functions take the most time, and allow you to group based on different criteria to view the data in different ways.  It is the tool that made Windows 7 so much faster than Windows Vista.  It actually does a ton more than that but I won't focus on it in the context of this blog post.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://www.brianbondy.com/static/img/blogpost_127/xperf.jpg&quot;&gt;&lt;img src=&quot;http://www.brianbondy.com/static/img/blogpost_127/xperf.jpg&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;hr /&gt;
&lt;p&gt;&lt;strong&gt;Built in Mozilla profiler&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Another way to find optimizations is to use &lt;a href=&quot;https://developer.mozilla.org/en/Performance/Profiling_with_the_Built-in_Profiler&quot;&gt;Benoit's profiler (SPS)&lt;/a&gt;. Currently it works well on Mac, and Windows is nearly completed.&lt;/p&gt;
&lt;p&gt;I'm very excited to start using it on Windows.&lt;br /&gt;
It far surpasses the tools I've been using to find the bugs and fixes above.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://www.brianbondy.com/static/img/blogpost_127/SPS_profiler.png&quot;&gt;&lt;img src=&quot;http://www.brianbondy.com/static/img/blogpost_127/SPS_profiler_small.png&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;hr /&gt;
&lt;p&gt;&lt;strong&gt;Custom profiler&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;I haven't seen how the Mozilla built-in profiler is implemented, but I suspect that this custom profiler is a simplified version of the Mozilla profiler's Pseudostack mode.&lt;/p&gt;
&lt;p&gt;I was able to find all of the above optimizations (with the exception of the prefetch task) with a tiny class with a couple of wrapper macros.&lt;/p&gt;
&lt;p&gt;Basically the class is an &lt;a href=&quot;http://en.wikipedia.org/wiki/Resource_Acquisition_Is_Initialization&quot;&gt;RAII class&lt;/a&gt; built around the Win32 API QueryPerformanceCounter and QueryPerformanceFrequency.
These functions allow you to get very detailed timing results.&lt;br /&gt;
&lt;/p&gt;
&lt;p&gt;For any function you want to profile you simply add the PROFILE_FUNCTION() macro to the start of the function.  I usually start by adding this to each non-trivial function in a file.&lt;/p&gt;
&lt;p&gt;Once you've found a function that takes a non trivial amount of time you can start to dig deeper into other functions inside of the function until you find the root cause. &lt;/p&gt;
&lt;p&gt;But sometimes a function has a lot of code and you aren't sure what the slow part of the function is.
For this I use a second macro PROFILE_STR(&quot;FunctionName:N&quot;) where N is a number I increment evenly spaced out. 
The string can be anything, I just use that normally.&lt;/p&gt;
&lt;p&gt;These macros just create an object.  The constructor of the object stores the start time, the destructor of the object gets the end time.&lt;br /&gt;
&lt;/p&gt;
&lt;p&gt;The destructor also uses the function name or string as a lookup in a global map that keeps track of the number of hits, the maximum length of time, the minimum length of time, and the average length of time for each function/string.&lt;/p&gt;
&lt;p&gt;There is a third macro I was using to dump the results to a file at particular events I wanted to focus on, like first paint, or when the session is restored.&lt;/p&gt;
&lt;p&gt;One thing you have to look out for with this method is if you happen to put the calls in a recursive function. 
In that case it will appear to be a bigger bottleneck because the first call will include the full length of time of all calls that contain it.&lt;br /&gt;
All of the inner calls will add onto that.&lt;/p&gt;
&lt;p&gt;The output of this function is made when the third macro to dump the results is called.  It dumps the results to a simple formatted .txt file:&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://www.brianbondy.com/static/img/blogpost_127/custom_profiler.png&quot;&gt;&lt;img src=&quot;http://www.brianbondy.com/static/img/blogpost_127/custom_profiler_small.png&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;hr /&gt;
&lt;p&gt;&lt;strong&gt;Verifying startup results&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;If you're working on Firefox, a good way to verify that your speed optimization made a difference is to use the &lt;a href=&quot;http://www.google.com/url?sa=t&amp;amp;rct=j&amp;amp;q=about%3Astartup&amp;amp;source=web&amp;amp;cd=1&amp;amp;ved=0CDMQFjAA&amp;amp;url=https%3A%2F%2Faddons.mozilla.org%2Fen-us%2Ffirefox%2Faddon%2Fabout-startup%2F&amp;amp;ei=1_QxT6SyCsXs0gGZx5TvBw&amp;amp;usg=AFQjCNFEKcjpscVcDQ28iq7nhyzrbDmi-Q&amp;amp;sig2=5jZqsqTfwbFoElJKLCVIrg&amp;amp;cad=rja&quot;&gt;about:startup extension&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;This extension times the startup of important events like firstPaint
and sessionRestored and gives you the average up top.&lt;br /&gt;
&lt;/p&gt;
&lt;p&gt;To verify my results I just did 20 startups in sequence with a release build that contained my patches vs a release build that did not contain my patches.&lt;/p&gt;
&lt;p&gt;Here is an example after one of the patches above:&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://www.brianbondy.com/static/img/blogpost_127/aboutstartup.png&quot;&gt;&lt;img src=&quot;http://www.brianbondy.com/static/img/blogpost_127/aboutstartup_small.png&quot; /&gt;&lt;/a&gt;&lt;/p&gt;</description>
	<pubDate>Wed, 08 Feb 2012 03:48:21 +0000</pubDate>
</item>
<item>
	<title>Mozilla Add-ons Blog: Jetpack Project: weekly update for February 7th, 2012</title>
	<guid isPermaLink="false">http://blog.mozilla.com/addons/?p=4235</guid>
	<link>http://blog.mozilla.com/addons/2012/02/07/jetpack-project-weekly-update-for-february-7th-2012/</link>
	<description>&lt;h3&gt;Project News&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;We released a hotfix release, 1.4.3. It fixes an important regression in 1.4, 1.4.1 and 1.4.2 and should be taken by anybody currently using one of those releases. More details &lt;a href=&quot;http://blog.mozilla.com/addons/2012/02/06/add-on-sdk-1-4-3-released-2/&quot;&gt;here&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;FOSDEM happened, there were Jetpack presentations and discussions. &lt;a href=&quot;http://www.hskupin.info/2012/02/06/fosdem-2012-add-on-sdk-and-slides-for-mozmill-ci/&quot;&gt;Henrik Skupin blogged about it&lt;/a&gt;, and contributed a patch.&lt;/li&gt;
&lt;li&gt;Andrew Sutherland has written an add-on using the SDK to break down Firefox memory usage by tab: or, to &lt;a href=&quot;http://www.visophyte.org/blog/2012/02/04/aboutnosy-is-aboutmemory-with-charts-helps-you-lay-blame-more-easily/&quot;&gt;“help you lay blame more easily”&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Quick Stats&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Total &lt;a href=&quot;https://bugzilla.mozilla.org/buglist.cgi?bug_status=UNCONFIRMED&amp;amp;bug_status=NEW&amp;amp;bug_status=ASSIGNED&amp;amp;bug_status=REOPENED&amp;amp;product=Add-on%20SDK&amp;amp;known_name=Jetpack-Open&quot; target=&quot;_blank&quot;&gt;open bugs&lt;/a&gt;: 253&lt;/li&gt;
&lt;li&gt;Bugs &lt;a href=&quot;https://bugzilla.mozilla.org/buglist.cgi?chfieldto=2012-02-07&amp;amp;chfield=[Bug%20creation]&amp;amp;chfieldfrom=2012-01-30&amp;amp;product=Add-on%20SDK&quot; target=&quot;_blank&quot;&gt;created last week&lt;/a&gt;: 20&lt;/li&gt;
&lt;li&gt;Bugs &lt;a href=&quot;https://bugzilla.mozilla.org/buglist.cgi?chfieldto=2012-02-07&amp;amp;chfield=resolution&amp;amp;chfieldfrom=2012-01-30&amp;amp;chfieldvalue=FIXED&amp;amp;product=Add-on%20SDK&quot; target=&quot;_blank&quot;&gt;fixed last week&lt;/a&gt;: 12&lt;/li&gt;
&lt;li&gt;Total SDK-based Addons &lt;a href=&quot;https://addons.mozilla.org/en-US/firefox/tag/jetpack?appver=10.0&quot; target=&quot;_blank&quot;&gt;on AMO&lt;/a&gt;: 432&lt;/li&gt;
&lt;li&gt;Open &lt;a href=&quot;https://github.com/mozilla/addon-sdk/pulls&quot; target=&quot;_blank&quot;&gt;pull requests&lt;/a&gt; on Github: 25&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;em style=&quot;font-size: 85%;&quot;&gt;Note: the stats above are based on the queries I linked to for each item. If you have suggestions on how these queries might be made more accurate,please comment below. Stats generated at 2012-02-07 17:43:52 PST&lt;/em&gt;&lt;/p&gt;
&lt;h3&gt;Meeting Brief&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;The Add-on Builder is preparing for its 1.0 release. We have one blocker, &lt;a href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=724766&quot; title=&quot;bug 724766&quot;&gt;bug 724766&lt;/a&gt;, otherwise things are looking good. &lt;/li&gt;
&lt;li&gt;We had a brief 1.4.3 postmortem: concluded that we need to improve test coverage for beta releases.&lt;/li&gt;
&lt;li&gt;There’s a lot of demand to make the SDK support Thunderbird. The SDK team does not have the resources to support Thunderbird officially, but should not prevent Thunderbird from working by, for example, throwing an exception when Thunderbird is detected.&lt;/li&gt;
&lt;li&gt;Here’s a blog post from Dietrich on &lt;a href=&quot;http://autonome.wordpress.com/2011/12/22/firefox-feature-development-in-2012/&quot; title=&quot;http://autonome.wordpress.com/2011/12/22/firefox-feature-development-in-2012/&quot;&gt;using the SDK to deliver features into Firefox&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Full minutes are available here:&lt;br /&gt;
&lt;a href=&quot;https://wiki.mozilla.org/Jetpack/Weekly_Meeting/2012-2-7#Minutes&quot;&gt;&lt;/a&gt;&lt;/p&gt;&lt;a href=&quot;https://wiki.mozilla.org/Jetpack/Weekly_Meeting/2012-2-7#Minutes&quot;&gt;
&lt;/a&gt;&lt;p&gt;&lt;a href=&quot;https://wiki.mozilla.org/Jetpack/Weekly_Meeting/2012-2-7#Minutes&quot;&gt;https://wiki.mozilla.org/Jetpack/Weekly_Meeting/2012-2-7#Minutes&lt;/a&gt;&lt;/p&gt;</description>
	<pubDate>Wed, 08 Feb 2012 01:59:20 +0000</pubDate>
	<dc:creator>wbamberg</dc:creator>
</item>
<item>
	<title>Nicholas Nethercote: The benefits of reducing memory consumption</title>
	<guid isPermaLink="false">http://blog.mozilla.com/nnethercote/?p=1704</guid>
	<link>http://blog.mozilla.com/nnethercote/2012/02/08/the-benefits-of-reducing-memory-consumption-2/</link>
	<description>&lt;p&gt;&lt;strong&gt;TL;DR: Any single change that reduces Firefox’s memory consumption can affect Firefox’s speed, stability and reputation in a variety of ways, some of which are non-obvious.  Some examples illustrate this.&lt;br /&gt;
&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;The &lt;a href=&quot;https://wiki.mozilla.org/Performance/MemShrink&quot;&gt;MemShrink wiki page&lt;/a&gt; starts with the following text.&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;MemShrink is a project that aims to reduce Firefox’s memory consumption. There are three potential benefits.  Speed. [...] Stability. [...] Reputation.”&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;I want to dig more deeply into these benefits and the question of what it means to “reduce Firefox’s memory consumption”, because there are some subtleties involved.  In what follows I will use the term “MemShrink optimization” to refer to any change that reduces Firefox’s memory consumption.&lt;/p&gt;
&lt;h3&gt;Speed&lt;/h3&gt;
&lt;p&gt;People tend to associate low memory consumption with speed.  However, time/space trade-offs abound in programming, and an explicit goal of MemShrink is to not slow Firefox down — the wiki page says:&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;Changes that reduce memory consumption but make Firefox slower are not desirable.&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;There are several ways that MemShrink optimizations can improve performance.&lt;/p&gt;
&lt;h4&gt;Paging&lt;/h4&gt;
&lt;p&gt;The case that people probably think of first is paging.  If physical memory fills up and the machine needs to start paging, i.e. evicting virtual memory pages to disk space, it can be catastrophic for performance.  This is because disk accesses are many thousands of times slower than RAM accesses.&lt;/p&gt;
&lt;p&gt;However, some MemShrink optimizations are far more likely to affect paging than others.  The key idea here is that of the &lt;a href=&quot;http://en.wikipedia.org/wiki/Working_Set_Size&quot;&gt;working set size&lt;/a&gt; — what’s important is not the total amount of physical or virtual memory being used, but the fraction of that memory that is touched frequently.  For example, consider two programs that allocate and use a 1GB array.  The first one touches pages within the array at random.  The second one touches every page once and then touches the first page many times.  The second program will obviously page much less than the first if the system’s physical memory fills up.&lt;/p&gt;
&lt;p&gt;The consequence of this is that a change that reduces the size of data structures that are accessed frequently is much more likely to reduce paging than a change that reduces the size of data structures that are accessed rarely.  Note that this is counter-intuitive!  It’s natural to want to optimize data structures that are wasteful of space, but “wasteful of space” often means “hardly touched” and so such optimizations don’t have much effect on paging.&lt;/p&gt;
&lt;p&gt;Measuring the working set size of a complex program like a web browser is actually rather difficult, which means that gauging the impact of a change on paging is also difficult.  Julian Seward’s &lt;a href=&quot;http://blog.mozilla.com/jseward/2011/01/27/profiling-the-browsers-virtual-memory-behaviour/&quot;&gt;virtual memory profiler&lt;/a&gt; offers one possible way.  Another complication is that results vary greatly between machines.  If you are running Firefox on a machine with 16GB of RAM, it’s likely that no change will affect paging, because Firefox is probably never paging in the first place.  If you are on a netbook with 1GB of RAM, the story is obviously different.  Also, the effects can vary between different operating systems.&lt;/p&gt;
&lt;h4&gt;Cache pressure&lt;/h4&gt;
&lt;p&gt;Some MemShrink optimizations can also reduce cache pressure.  For example, a change that makes a struct smaller would allow more of them to fit into a cache line.  Like paging, these effects are very difficult to quantify, and changes that affect hot structures are more likely to reduce cache pressure significantly and improve performance.&lt;/p&gt;
&lt;h4&gt;Structure traversals&lt;/h4&gt;
&lt;p&gt;Sometimes large data structures must be traversed, and reducing the number of elements in the data structure can reduce that traversal time.  The obvious case for Firefox is the JavaScript heap — the garbage collector and cycle collector frequently traverse it, and so any change that causes dead objects to accumulate more slowly will reduce their traversal times.&lt;/p&gt;
&lt;p&gt;Only a small fraction of MemShrink optimizations will speed up structure traversals.&lt;/p&gt;
&lt;h3&gt;Stability&lt;/h3&gt;
&lt;p&gt;If Firefox (or any program) uses too much memory, it can lead to aborts and crashes.  These are sometimes called “OOMs” (out of memory). There are two main kinds of OOM:  those involving virtual memory, and those involving physical memory.&lt;/p&gt;
&lt;h4&gt;Virtual OOMs&lt;/h4&gt;
&lt;p&gt;A “virtual OOM” occurs when the virtual address space fills up and Firefox simply cannot refer to any more memory.  This is mostly a problem on Windows, where Firefox is distributed as a 32-bit application, and so it can only address 2GB or 4GB of memory (the addressable amount depends on the OS configuration).  This is true even if you have more than 4GB of RAM.  In contrast, Mac OS X and Linux builds of Firefox are 64-bit and so virtual memory exhaustion is essentially impossible because the address space is massively larger.&lt;/p&gt;
&lt;p&gt;(I don’t want to get distracted by the question of why Firefox is a 32-bit application on Windows.  I’ll just mention that (a) many Windows users are still running 32-bit versions of Windows that cannot run 64-bit applications, and (b) Mozilla does 64-bit Windows builds for testing purposes.  Detailed discussions of the pros and cons of 64-bit builds can be read &lt;a href=&quot;https://groups.google.com/forum/?fromgroups#!topic/mozilla.dev.planning/Mrba6hvl5-w&quot;&gt;here&lt;/a&gt; and &lt;a href=&quot;https://groups.google.com/forum/?fromgroups#!topic/mozilla.dev.planning/aeTXSZ_WFAs&quot;&gt;here&lt;/a&gt;.)&lt;/p&gt;
&lt;p&gt;The vast majority of MemShrink optimizations will reduce the amount of virtual memory consumed.  (The only counter-examples I can think of involve deliberately evicting pages from physical memory.  E.g. see the example of the GC decommitting change discussed below.)  And&lt;em&gt;&lt;/em&gt; any such change will obviously reduce the number of virtual OOMs.  Furthermore, the effect of any reduction is obvious and straightforward — a change that reduces the virtual memory consumption by 100MB on a particular machine and workload is twice as good as one that reduces it by 50MB.  Of course, any improvement will only be noticed by those who experience virtual OOMs, which typically is people who have 100s of tabs open at once.  (It may come as a surprise, but some people have that many tabs open regularly.)&lt;/p&gt;
&lt;h4&gt;Physical OOMs&lt;/h4&gt;
&lt;p&gt;A “physical OOM” occurs when physical memory (and any additional backing storage such as swap space on disk) fills up.  This is mostly a problem on low-end devices such as smartphones and netbooks, which typically have small amounts of RAM and may not have any swap space.&lt;/p&gt;
&lt;p&gt;The situation for physical memory is similar to that for virtual memory:  almost any MemShrink optimization will reduce Firefox’s physical memory consumption.  (One exception is that it’s possible for a memory allocation to consume virtual memory but not physical memory if it’s never accessed;  more about this in the examples section below.)  And any reduction in physical memory consumption will in turn reduce the number of physical OOMs.  Finally, the effects are again obvious and straightforward — a 100MB reduction is twice as good as a 50MB reduction.&lt;/p&gt;
&lt;h3&gt;Reputation&lt;/h3&gt;
&lt;p&gt;Finally, we have reputation.  The obvious effect here is that if MemShrink optimizations cause Firefox to become faster and more stable over time, people’s opinion of Firefox will rise, either because their own experience improves, or they hear that other people’s experience improves.&lt;/p&gt;
&lt;p&gt;But I want to highlight a less obvious aspect of reputation.  People often gauge Firefox’s memory consumption by looking at a utility such as the Task Manager (on Windows) or ‘top’ (on Mac/Linux).  Interpreting the numbers from these utilities is rather difficult — there are multiple metrics and all sorts of subtleties involved.  (See &lt;a href=&quot;http://stackoverflow.com/questions/1984186/what-is-private-bytes-virtual-bytes-working-set&quot;&gt;this Stack Overflow post&lt;/a&gt; for evidence of the complexities and how easy it is to get things wrong.)  In fact, in my opinion, the subtleties are so great that people should almost never look at these numbers and instead focus on metrics that are influenced by memory consumption but which they can observe directly as users, i.e. speed and crash rate… but that’s a discussion for another time.&lt;/p&gt;
&lt;p&gt;Nonetheless, a non-trivial number of people judge Firefox on this metric.  Imagine a change that caused Firefox’s numbers in these utilities to drop but had no other observable effect.  (Such a change may be impossible in practice, but that doesn’t matter in this thought experiment.)  One thing that has consistently surprised me is that some people view memory consumption as something approaching a moral issue:  low memory consumption is virtuous and high memory consumption is sinful.  As a result, this hypothetical change would improve Firefox’s reputation, rightly or wrongly, for the better.&lt;/p&gt;
&lt;p&gt;Let’s call this aspect of Firefox’s reputation the “reputation-by-measurement”.  I suspect the most important metric for reputation-by-measurement is the “private bytes” reported by the Windows Task Manager, because that’s what people seem to most often look at.  Private bytes measures the virtual memory of a process that is not shared with any other process.  It’s my educated guess that in Firefox’s case that the amount of shared memory isn’t that high, and so the situation is similar to virtual OOMs above — just about any change that reduces the amount of virtual memory will reduce the private bytes by the same amount, and in terms of reputation-by-measurement, a 100MB reduction is twice as good as a 50MB reduction.&lt;/p&gt;
&lt;h3&gt;Examples&lt;/h3&gt;
&lt;p&gt;Some examples help bring this discussion together.  Consider &lt;a href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=609905&quot;&gt;bug 609905&lt;/a&gt;, which removed a 512KB block of memory that was found to be allocated but never accessed.  (This occurred because some code that used that block was removed but the allocation wasn’t removed at the same time.)  What were the benefits of this change?&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;The 512KB never would have been in the working set, so performance would not have been affected.&lt;/li&gt;
&lt;li&gt;Virtual memory consumption would have dropped by 512KB, slightly reducing the likelihood of virtual OOMs.&lt;/li&gt;
&lt;li&gt;Physical memory consumption probably didn’t change — because the block was never accessed, it probably never made it into physical memory.&lt;/li&gt;
&lt;li&gt;Private bytes would have dropped by 512KB, slightly improving reputation-by-measurement.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Now consider &lt;a href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=670596&quot;&gt;bug 670596&lt;/a&gt;, which made the JavaScript garbage collector decommit (i.e. remove from physical memory and backing storage) 1MB heap chunks that are unused.  What were the benefits of this change?&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Performance may have improved slightly due to reduced paging, on machines where paging happens.  Those chunks are clearly not in the working set when they are decommitted, but if paging occurs, the pre-emptive removal of some pages from physical memory may prevent the OS from having to evict some other pages, some of which might have been in the working set.&lt;/li&gt;
&lt;li&gt;Virtual memory consumption would not have changed at all, because decommitted memory still takes up address space.&lt;/li&gt;
&lt;li&gt;Physical memory consumption would have dropped by the full decommit amount — 10s or even 100s of MBs in many cases when decommitting is triggered — significantly reducing the likelihood of physical OOMs.&lt;/li&gt;
&lt;li&gt;Private bytes would not have changed, leaving reputation-by-measurement unaffected. &lt;strong&gt;[Update: Justin Lebar queried this. &lt;a href=&quot;http://blogs.msdn.com/b/ricom/archive/2005/08/01/446329.aspx&quot;&gt;This page&lt;/a&gt; indicates that decommitting memory does reduce private bytes, which means that this change would have improved reputation-by-measurement.]&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Another interesting one is &lt;a href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=676457&quot;&gt;bug 676457&lt;/a&gt;.  It fixed a problem where PLArenaPool was requesting lots of allocations of ~4,128 bytes.  jemalloc rounded these requests up to 8,192 bytes, so almost 50% of each 8,192 byte block was wasted, and there could be many of these blocks.  The patch fixed this by reducing the requests to 4,096 bytes which is a power-of-two and not rounded up (and also usually the size of an OS virtual memory page).  What were the benefits of this change?&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Performance may have improved due to less paging, because the working set size may have dropped.  The size of the effect depends how often the final 32 used bytes of each chunk — those that spilled onto a second page — are accessed.  For at least some of the blocks those 32 bytes would never be touched.&lt;/li&gt;
&lt;li&gt;Virtual memory consumption dropped significantly, reducing the likelihood of virtual OOMs.&lt;/li&gt;
&lt;li&gt;Physical memory consumption may have dropped, but it’s not clear by how much.  In cases where the extra 32 bytes are never accessed, the second page might not have ever taken up physical memory.&lt;/li&gt;
&lt;li&gt;Private bytes would have dropped by the same amount as virtual memory, improving reputation-by-measurement.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Finally, let’s think about a &lt;a href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=619558&quot;&gt;compacting, generational garbage collector&lt;/a&gt;, something that is being worked on by the JS team at the moment.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Performance improves for three reasons.  First, paging is reduced because of the generational behaviour:  much of the JS engine activity occurs in the nursery, which is small;  in other words, the memory activity is concentrated within a smaller part of the working set.  Second, paging is further reduced because of the compaction: this reduces fragmentation within pages in the tenured heap, reducing the total working set size.  Third, the tenured heap grows more slowly because of the generational behaviour: many objects are collected earlier (in the nursery) than they would be with a non-generational collector, which means that structure traversals done by the garbage collector (during full-heap collections) and cycle collector are faster.&lt;/li&gt;
&lt;li&gt;Virtual memory consumption drops in two ways.  First, the compaction minimizes waste due to fragmentation.  Second, the heap grows more slowly.&lt;/li&gt;
&lt;li&gt;Physical memory consumption drops for the same two reasons.&lt;/li&gt;
&lt;li&gt;Private bytes also drops for the same two reasons.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;A virtuous change indeed.&lt;/p&gt;
&lt;h3&gt;Conclusion&lt;/h3&gt;
&lt;p&gt;Reducing Firefox’s memory consumption is a good thing, and it has the following benefits.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;It can improve speed, due to less paging, fewer cache misses, and faster structure traversals.  These changes are likely to be noticed more by users on lower-end machines.&lt;/li&gt;
&lt;li&gt;It improves stability by reducing virtual OOM aborts, which mostly helps heavy tab users on Windows.  It also improves stability by reducing physical OOM aborts, which mostly affects heavy-ish tab users on small devices like smartphones and netbooks.&lt;/li&gt;
&lt;li&gt;It improves reputation among those whose browsing experience is improved by the above changes, and also among users who make judgments according to memory measurements with utilities like the Windows Task Manager.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Furthermore, when discussing MemShrink optimizations, it’s a good idea to describe improvements in these terms.  For example, instead of saying “this change reduces memory consumption”, one could say “this change reduces physical and virtual memory consumption and may reduce paging”.  I will endeavour to do this myself from now on.&lt;/p&gt;</description>
	<pubDate>Wed, 08 Feb 2012 01:22:40 +0000</pubDate>
	<dc:creator>Nicholas Nethercote</dc:creator>
</item>
<item>
	<title>Robert Accettura: Why Open Source Is Pretty Awesome</title>
	<guid isPermaLink="false">http://robert.accettura.com/?p=7427</guid>
	<link>http://robert.accettura.com/blog/2012/02/07/why-open-source-is-pretty-awesome/</link>
	<description>&lt;p&gt;At some point I think it’s easy to &lt;a href=&quot;http://en.wiktionary.org/wiki/take_for_granted&quot;&gt;take things for granted&lt;/a&gt;.  Being able to alter software to meet your needs is an awesome power.  &lt;/p&gt;
&lt;p&gt;Today, a &lt;a href=&quot;https://twitter.com/mhoye/status/166893548413796353&quot;&gt;tweet&lt;/a&gt; rehashed an annoyance regarding a tactic on websites to alter copy/paste and put a link with tracking code in your clipboard.  I could &lt;a href=&quot;http://www.tynt.com/tynt-users-opt-out&quot; rel=&quot;nofollow&quot;&gt;opt out&lt;/a&gt;, but that doesn’t fix when websites roll their own.  It’s a fairly simple thing to implement.  In my mind there’s little (read: no) legitimate justification for &lt;code&gt;oncopy&lt;/code&gt;, &lt;code&gt;oncut&lt;/code&gt; or &lt;code&gt;onpaste&lt;/code&gt; events.&lt;/p&gt;
&lt;p&gt;So I did an hg pull while working on some other stuff.  I came back and wrote a quick patch, started compiling and went back to working on other stuff.  &lt;/p&gt;
&lt;p&gt;Then came back to a shiny new Firefox build with a shiny new preference that disabled the offending functionality.  A quick test against a few websites shows it works as I intended by simply killing that event.  You can’t do these things with closed source.&lt;/p&gt;
&lt;p&gt;Of course I found the relevant &lt;a href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=542938&quot;&gt;bug&lt;/a&gt; and added a patch for anyone interested.&lt;/p&gt;
&lt;p&gt;A 15 minute diversion and my web browsing experience got a little better.  Sometimes I forget I’ve got experience on that side of the wire too &lt;img alt=&quot;;-)&quot; class=&quot;wp-smiley&quot; src=&quot;http://i.robert.accettura.com/wp-includes/images/smilies/icon_wink.gif&quot; /&gt;  .
&lt;/p&gt;&lt;div id=&quot;rja_commentCountImage&quot;&gt;&lt;a href=&quot;http://robert.accettura.com/?p=7427#comments&quot;&gt;&lt;img alt=&quot;Comment Count&quot; src=&quot;http://i.robert.accettura.com/wp-content/commentCount/2012/02/aecad42.gif&quot; style=&quot;border: 0;&quot; /&gt;&lt;/a&gt;&lt;/div&gt;</description>
	<pubDate>Wed, 08 Feb 2012 01:01:09 +0000</pubDate>
	<dc:creator>Robert</dc:creator>
</item>
<item>
	<title>Harvey Anderson: Comments supporting DMCA jailbreaking exemption</title>
	<guid isPermaLink="false">http://lockshot.wordpress.com/?p=924</guid>
	<link>http://lockshot.wordpress.com/2012/02/08/comments-supporting-dmca-jailbreaking-exemption/</link>
	<description>&lt;p&gt;Every three years the US Copyright office, examines whether it will renew certain exemptions to the DMCA. In 2009 we submitted arguments supporting the EFF’s petition for the exemption of  jailbreaking from the DMCA. The Copyright office &lt;a href=&quot;https://www.eff.org/press/archives/2010/07/26&quot;&gt;granted the exemption in 2010&lt;/a&gt; which now expires at the end of 2012.&lt;/p&gt;
&lt;p&gt;Although it seems a bit silly to have to do this every three years, we’re going to again file a brief supporting the exemption for jailbreaking, also known as “rooting.” EFF has &lt;a href=&quot;https://www.eff.org/pages/jailbreaking-not-crime-tell-copyright-office-free-your-devices&quot;&gt;more information here&lt;/a&gt; on the arguments and the process.&lt;/p&gt;
&lt;p&gt;Based on feedback from developers around the Mozilla project, the brief will contend that rooting is important because it’s necessary to achieve competitive application performance on Android mobile platforms, to effectively debug applications, and for regression testing.  In addition, it’s even more critical now as mobile devices surpass desktop, and Internet access increasingly comes from mobile platforms.&lt;/p&gt;
&lt;p&gt;We plan to file our comments on Friday afternoon. If you have ideas or thoughts that could be incorporated in the brief, please let us know. Alternatively, &lt;a href=&quot;http://www.copyright.gov/1201/comment-forms/&quot;&gt;you can file your own comments&lt;/a&gt;, or if your flavor is &lt;a href=&quot;https://jailbreakingisnotacrime.org/&quot;&gt;petitions go here&lt;/a&gt;.&lt;/p&gt;
&lt;br /&gt;  &lt;a href=&quot;http://feeds.wordpress.com/1.0/gocomments/lockshot.wordpress.com/924/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/comments/lockshot.wordpress.com/924/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/godelicious/lockshot.wordpress.com/924/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/delicious/lockshot.wordpress.com/924/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gofacebook/lockshot.wordpress.com/924/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/facebook/lockshot.wordpress.com/924/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gotwitter/lockshot.wordpress.com/924/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/twitter/lockshot.wordpress.com/924/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gostumble/lockshot.wordpress.com/924/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/stumble/lockshot.wordpress.com/924/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/godigg/lockshot.wordpress.com/924/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/digg/lockshot.wordpress.com/924/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/goreddit/lockshot.wordpress.com/924/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/reddit/lockshot.wordpress.com/924/&quot; /&gt;&lt;/a&gt; &lt;img alt=&quot;&quot; border=&quot;0&quot; height=&quot;1&quot; src=&quot;http://stats.wordpress.com/b.gif?host=lockshot.wordpress.com&amp;amp;blog=3541200&amp;amp;post=924&amp;amp;subd=lockshot&amp;amp;ref=&amp;amp;feed=1&quot; width=&quot;1&quot; /&gt;</description>
	<pubDate>Wed, 08 Feb 2012 00:55:57 +0000</pubDate>
	<dc:creator>lockshot</dc:creator>
</item>
<item>
	<title>Taras Glek: Snappy, Feb 2nd – FOSDEM, Help Wanted</title>
	<guid isPermaLink="false">http://blog.mozilla.com/tglek/?p=565</guid>
	<link>http://blog.mozilla.com/tglek/2012/02/07/snappy-feb-2nd-fosdem-help-wanted/</link>
	<description>&lt;p&gt;We cancelled last week’s snappy meeting due to Perf/Snappy workweek + FOSDEM. See Jared’s post for a &lt;a href=&quot;http://msujaws.wordpress.com/2012/02/03/firefox-performancesnappy-work-week-recap/&quot;&gt;summary&lt;/a&gt; of the workweek, I’ll mention the rest below.&lt;/p&gt;
&lt;p&gt;We figured out a strategy for avoiding blocking DOM Storage IO (use scriptblocker to async preload relevant dom storage. Do async writeback to commit). We have a plan for cancellable SQL queries, &lt;a href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=722243&quot;&gt;bug 722243&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;SetTimeouts/30s telemetry landed in bug &lt;a href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=715953&quot;&gt;715953&lt;/a&gt;, I attached result of that in bug &lt;a href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=715376&quot;&gt;715376&lt;/a&gt;. Persistent telemetry was backed out while Nathan investigates problems, &lt;a href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=707320&quot;&gt;bug 707320&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Brian Bondy has been fixing our usage of Windows APIs:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;bug &lt;a href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=722225&quot;&gt;722225 &lt;/a&gt;- Firefox startup opt on Windows by optimizing D3D10CreateDevice1 (pending review)&lt;/li&gt;
&lt;li&gt;bug &lt;a href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=722315&quot;&gt;722315 &lt;/a&gt;- Firefox startup opt on Windows by lazy loading CLSID_DragDropHelper (landed)&lt;/li&gt;
&lt;li&gt;bug &lt;a href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=692255&quot;&gt;692255 &lt;/a&gt;- Find a way to get rid of prefetch files on Windows for faster startup (pending review)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;We spent the weekend at FOSDEM. I re-presented my Plumbers talk on why Linux &lt;a href=&quot;http://people.mozilla.com/%7Etglek/lpc2011&quot;&gt;sucks &lt;/a&gt;for starting big apps. I also did a &lt;a href=&quot;http://people.mozilla.com/%7Etglek/fosdem2012/&quot;&gt;Telemetry talk&lt;/a&gt;. The audience was great.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Help Wanted&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;To my great regret, I forgot to mention that Mozilla is &lt;a href=&quot;http://www.mozilla.com/en-US/about/careers.html&quot;&gt;hiring&lt;/a&gt; in my talks. In particular, I’m looking for more performance hackers. If enjoy spending quality time with stack traces,writing profilers or analyzing performance logs leave a comment or send me an email. Compiler toolchain and/or kernel hacking experience would be a great bonus.&lt;/p&gt;</description>
	<pubDate>Wed, 08 Feb 2012 00:52:06 +0000</pubDate>
	<dc:creator>tglek</dc:creator>
</item>
<item>
	<title>Blog of Metrics: Some Results for Memshrink</title>
	<guid isPermaLink="false">http://blog.mozilla.com/metrics/?p=5321</guid>
	<link>http://blog.mozilla.com/metrics/2012/02/07/memshrinkmetrics/</link>
	<description>&lt;p&gt;As the website ( &lt;a href=&quot;https://wiki.mozilla.org/Performance/MemShrink&quot; title=&quot;https://wiki.mozilla.org/Performance/MemShrink&quot;&gt;https://wiki.mozilla.org/Performance/MemShrink&lt;/a&gt; ) describes, MemShrink is a project to reduce Firefox memory consumption. Summary (taken from the webpage) is&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Speed&lt;/strong&gt;. Firefox will be faster due to less cache pressure, less paging, and fewer/smaller GC and CC pauses. Changes that reduce memory consumption but make Firefox slower are not desirable.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Stability&lt;/strong&gt;. Firefox will suffer fewer aborts/crashes due to virtual or physical memory exhaustion. The former is mostly a problem on 32-bit Windows builds with a 2GB or 4GB virtual memory limit, the latter is mostly a problem on mobile devices that lack swap space.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The engineers working on MemShrink asked the Metrics team to help discover and quantify what variables affect variables that related to MemShrink. Key among these is RESIDENT_MEMORY which is the resident memory that Firefox occupies. For a given installation, multiple measurements are taken before the data is submitted. The data, for a given installation, is recorded as a histogram (so we dont have serial correlations between observations …), and the final value used in modeling is the weighted mean.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;The Data Set&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;We already have some variables at our disposal, them being&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;version :: the version of Firefox (10,11 or 12)&lt;/li&gt;
&lt;li&gt;number of addons&lt;/li&gt;
&lt;li&gt;does the installation have Firebug? (Yes/No)&lt;/li&gt;
&lt;li&gt;memory size&lt;/li&gt;
&lt;li&gt;Number of CPUs&lt;/li&gt;
&lt;li&gt;RESIDENT_MEMORY&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The data set was a 70% sample taken from the Hbase Telemetry table from 2012-01-01 to 2012-01-31. With those variables, we first looked at QQ Plots ( see &lt;a href=&quot;http://en.wikipedia.org/wiki/Q-Q_plot&quot; title=&quot;http://en.wikipedia.org/wiki/Q-Q_plot&quot;&gt;http://en.wikipedia.org/wiki/Q-Q_plot&lt;/a&gt; ) to see the distribution for variable transformations (e.g. truncation? log transformation?). After that, the sample was further randomly sampled 1000 12.5% samples of the 70% sample. ANOVA was run across each of these samples and the quantiles of the residuals, the parameters and adjusted R squareds were taken.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Results&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;The following diagrams are scatter plots of some of the covariates vs. RESIDENT_MEMORY. This is used to consider interactions or transformations.&lt;/p&gt;
&lt;p&gt;In the following graphs, Y vs X implies Y on the vertical axis and X on the horizontal. ‘log(A,2)’ is the log of A with respect to base 2.&lt;/p&gt;
&lt;div class=&quot;wp-caption aligncenter&quot; id=&quot;attachment_5323&quot; style=&quot;width: 310px;&quot;&gt;&lt;a href=&quot;http://blog.mozilla.com/metrics/files/2012/02/addon.png&quot;&gt;&lt;img alt=&quot;log(RESIDENT_MEMORY,2) vs. Log(# of Addons,2) by Version&quot; class=&quot;size-medium wp-image-5323 &quot; height=&quot;135&quot; src=&quot;http://blog.mozilla.com/metrics/files/2012/02/addon-300x135.png&quot; title=&quot;log(RESIDENT_MEMORY,2)  vs. Log(# of Addons,2) by Version&quot; width=&quot;300&quot; /&gt;&lt;/a&gt;&lt;p class=&quot;wp-caption-text&quot;&gt;1a). log(RESIDENT_MEMORY in bytes,2) vs. Log(# of Addons,2) by Version&lt;/p&gt;&lt;/div&gt;
&lt;div class=&quot;wp-caption aligncenter&quot; id=&quot;attachment_5325&quot; style=&quot;width: 310px;&quot;&gt;&lt;a href=&quot;http://blog.mozilla.com/metrics/files/2012/02/memsize.png&quot;&gt;&lt;img alt=&quot;log(RESIDENT_MEMORY,2) vs. Log(Memsize,2) by Version&quot; class=&quot;size-medium wp-image-5325 &quot; height=&quot;143&quot; src=&quot;http://blog.mozilla.com/metrics/files/2012/02/memsize-300x143.png&quot; title=&quot;log(RESIDENT_MEMORY,2)  vs. Log(Memsize,2) by Version&quot; width=&quot;300&quot; /&gt;&lt;/a&gt;&lt;p class=&quot;wp-caption-text&quot;&gt;1b) log(RESIDENT_MEMORY in bytes ,2) vs. Log(Memsize in bytes,2) by Version&lt;/p&gt;&lt;/div&gt;
&lt;div class=&quot;wp-caption aligncenter&quot; id=&quot;attachment_5324&quot; style=&quot;width: 310px;&quot;&gt;&lt;a href=&quot;http://blog.mozilla.com/metrics/files/2012/02/hasfb.png&quot;&gt;&lt;img alt=&quot;log(RESIDENT_MEMORY,2) vs. HasFireBug by Version&quot; class=&quot;size-medium wp-image-5324 &quot; height=&quot;147&quot; src=&quot;http://blog.mozilla.com/metrics/files/2012/02/hasfb-300x147.png&quot; title=&quot;log(RESIDENT_MEMORY,2)  vs. HasFireBug by Version&quot; width=&quot;300&quot; /&gt;&lt;/a&gt;&lt;p class=&quot;wp-caption-text&quot;&gt;1c) log(RESIDENT_MEMORY bytes,2) vs. HasFireBug by Version&lt;/p&gt;&lt;/div&gt;
&lt;div class=&quot;wp-caption aligncenter&quot; id=&quot;attachment_5330&quot; style=&quot;width: 310px;&quot;&gt;&lt;a href=&quot;http://blog.mozilla.com/metrics/files/2012/02/resmem.png&quot;&gt;&lt;img alt=&quot;Quantiles of Resident Memory (log_2) by Version&quot; class=&quot;size-medium wp-image-5330 &quot; height=&quot;142&quot; src=&quot;http://blog.mozilla.com/metrics/files/2012/02/resmem-300x142.png&quot; title=&quot;Quantiles of Resident Memory (log_2) by Version&quot; width=&quot;300&quot; /&gt;&lt;/a&gt;&lt;p class=&quot;wp-caption-text&quot;&gt;1d) Quantiles of log(Resident Memory bytes,2)  by Version&lt;/p&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;Note, there doesn’t seem to be interaction with version except for a feeble one in (1c)&lt;/li&gt;
&lt;li&gt;1d) is also called the Empirical Cumulative Distribution Function.. If the distribution were uniform, it would be  a diagonal at 45 degrees.  The panel for ’12′ indicates that 60% of the obs. are less than 2^18 bytes .&lt;/li&gt;
&lt;li&gt;In summary, he data set is extremely noisy. Though the assumptions of modeling are met (independence etc)&lt;br /&gt;
the variables only explain 35% of the variation (not even 50) as seen from the ANOVA R^2.s&lt;br /&gt;
&lt;strong&gt;1a)&lt;/strong&gt; definite increasing trend with log(addon+1) but there is so much variation! and no difference across versions.&lt;br /&gt;
&lt;strong&gt;1b&lt;/strong&gt;)   same as (2) except that in 12 the flattening happens earlier though flattens at a higher value than 10,11. I expect some flattening to happen, why would RESIDENT_MEMORY increase continuously  just because memory size is bigger?&lt;br /&gt;
&lt;strong&gt;1c)&lt;/strong&gt; – marginal difference, but again so much noise.&lt;strong&gt;&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;1d)&lt;/strong&gt; the distribution of RESIDENT_MEMORY  is almost same for 10,11,12 with a slight upward shift for 12.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;We cannot expect a great fit with these variables. The next is a panel display of QQ plots of 100 random ANOVA residuals. Statistical inference in in this particular case study requires that the residuals be Gaussian distributed. Here ‘normal’ means  the Normal distribution. They aren’t perfectly Normal, but the departure looks acceptable.  Not included are the other displays such Scale-Location plots, though upon inspection they show no relation between scale and location (i.e. variances does not depend on mean).&lt;/p&gt;
&lt;div class=&quot;wp-caption aligncenter&quot; id=&quot;attachment_5328&quot; style=&quot;width: 310px;&quot;&gt;&lt;a href=&quot;http://blog.mozilla.com/metrics/files/2012/02/qq1.png&quot;&gt;&lt;img alt=&quot;QQ Plots for Residuals for a Random 25&quot; class=&quot;size-medium wp-image-5328&quot; height=&quot;282&quot; src=&quot;http://blog.mozilla.com/metrics/files/2012/02/qq1-300x282.png&quot; title=&quot;QQ Plots for Residuals for a Random 25&quot; width=&quot;300&quot; /&gt;&lt;/a&gt;&lt;p class=&quot;wp-caption-text&quot;&gt;QQ Plots for Residuals for a Random 25&lt;/p&gt;&lt;/div&gt;
&lt;p&gt;&lt;strong&gt;Interpretation&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Averaging the coefficients of 1000 regression produces the following parameter table. Though the estimates are precise the R squared itself is not the highest – a lot of explanation is required. Explanation of the table follows below it. The model is log(RESIDENT_MEMORY,2) ~ version + log(addon+1,2) + hasFirebug(fb) + log(memorysize,2) .&lt;/p&gt;
&lt;p&gt;The first column of numbers is the left end of the 95% confidence interval of the  coefficient, and the 3rd column is the upper end of the 95% CI.&lt;/p&gt;
&lt;pre&gt;                          2.5    mean coef     97.5
(Intercept)       13.85290273 13.89114640 13.92939007
version11         -0.02897665 -0.01986893 -0.01076121
version12          0.09062749  0.10488013  0.11913277
log(addon + 1, 2)  0.28370203  0.28668868  0.28967534
fbTRUE             0.08945122  0.11898676  0.14852230
log(cpu, 2)        0.06480277  0.06965200  0.07450124
memsize            0.23214017  0.23590406  0.23966795&lt;/pre&gt;
&lt;p&gt;What this means is that, (‘keeping everything else fixed’)&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;version 11 reduces memory consumption about 2% (on average, but keep in mind there is a lot of variation) over v.10&lt;/li&gt;
&lt;li&gt;version 12 ups it by about 11% over v.10 (see the distribution at top of log of RESIDENT_MEMORY by version)&lt;/li&gt;
&lt;li&gt;Presence of Firebug extension causes a slight increase (on average of 12%)&lt;/li&gt;
&lt;li&gt;if one doubles the number of addons (and add 1 to this)  the RESIDENT_MEMORY increases ~ by 33%&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Future&lt;/strong&gt;:&lt;/p&gt;
&lt;p&gt;The thing with large data is that even the smallest difference can be called ‘significant’. What is true that 12 seems to use more memory. And that the difference between using Firebug or not decreases for 12. But equally importantly the collection of variables explains only 36% of the variance  – so though the estimates are precise, there is a lot of variance around any estimate. Results should be taken with caution.&lt;/p&gt;
&lt;p&gt;All the computation and analysis was done using RHIPE (see https://github.com/saptarshiguha/RHIPE ). We have only covered some variables we thought might affect RESIDENT_MEMORY. There are however 215 variables captured by the Telemetry project and we could well benefit doing some tree-based analysis (randomforests anyone?) to discover useful variables (that affect RESIDENT_MEMORY). More on this later.&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Sample RHIPE Code&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;This is the code producing marginal plots.&lt;/p&gt;
&lt;pre&gt;yy &amp;lt;- function(location,var,N=3){
  m &amp;lt;- ewrap({
    Var &amp;lt;- unserialize(charToRaw(Sys.getenv(&quot;varname&quot;)))
    N &amp;lt;- unserialize(charToRaw(Sys.getenv(&quot;N&quot;)))
    r &amp;lt;- r[!is.na(r$memres) &amp;amp; !is.na(r$memsize) &amp;amp; r$memres&amp;gt;-Inf &amp;amp; r$memsize&amp;gt;-Inf,]
    Y &amp;lt;- r[,&quot;memres&quot;];X &amp;lt;- r[,Var]; V &amp;lt;- as.character(r[,&quot;version&quot;])
    for(i in 1:nrow(r)){
      rhcollect(list(version=V[i],var=X[i],value=round(Y[i],N)), 1)
    }})
  mapred &amp;lt;- list(varname=rawToChar(serialize(var,NULL,ascii=TRUE)),
                 N=rawToChar(serialize(N,NULL,ascii=TRUE)))
  reduce &amp;lt;- summer
  z &amp;lt;- rhmr2(m,reduce=reduce, combine=TRUE
           ,ifo=&quot;/user/sguha/telemetry/samples/1/p*&quot;,of=location
           ,mapred=mapred)
  rhstatus(rhex(z,async=TRUE),mon.sec=5)
  z &amp;lt;- rhread(sprintf(&quot;%s/p*&quot;,location))
  library(Hmisc)
  version &amp;lt;- unlist(lapply(z,function(r) r[[1]][[1]]))
  varble &amp;lt;- unlist(lapply(z,function(r) r[[1]][[2]]))
  value &amp;lt;- unlist(lapply(z,function(r) r[[1]][[3]]))
  count &amp;lt;- unlist(lapply(z,function(r) r[[2]][[1]]))
  z1 &amp;lt;- data.frame(version=version,var=varble,value=value, count=count,
                   stringsAsFactors=FALSE)
  colnames(z1) &amp;lt;- c(&quot;version&quot;,var,&quot;value&quot;,&quot;count&quot;)
  z1 &amp;lt;- z1[order(z1$version,z1[,var],z1$value),]
  z2 &amp;lt;- do.call('rbind',lapply(split(z1,list(z1$version,z1[,var])),function(r){
    P &amp;lt;- 1:19/20
    data.frame(version=r[1,&quot;version&quot;],var=r[1,var], p=P, q= wtd.quantile(r$value,r$count, P),stringsAsFactors=FALSE)
  }))
  colnames(z2) &amp;lt;- c(&quot;version&quot;,var,&quot;p&quot;,&quot;q&quot;)
  z2
}

library(lattice)
library(latticeExtra)

###############################
## Plot of memres vs addons
###############################
addons &amp;lt;- yy(&quot;/user/sguha/telemetry/tmp/b&quot;,&quot;addon&quot;)
pdf(&quot;~/addons.pdf&quot;)
asTheEconomist(
              xyplot(q~log(addon,2)|version, type='p',
              main='Quantiles of Log(RESIDENT_MEMORY,2) vs. Log(addon,2)'
                     ,data=addons,pch=1, cex=0.3,col='#00000030'
                     ,layout=c(3,1),aspect=1,ylab='Log(RESIDENT_MEMORY,2)'
                     ,panel=function(x,y,subscripts,...){
                       panel.grid(h=-1,v=-1,lwd=0.5)
                       panel.xyplot(x,y,...)
                       panel.loess(x,y,col='red',lwd=0.7,type='l')
                     })
               ,type='p',pch=16, cex=0.7,col='#00000060')
dev.off() ##cut at 6
#############################&lt;/pre&gt;</description>
	<pubDate>Wed, 08 Feb 2012 00:38:13 +0000</pubDate>
	<dc:creator>Saptarshi Guha</dc:creator>
</item>
<item>
	<title>Sean McArthur: Chrome for Android</title>
	<guid isPermaLink="true">http://seanmonstar.com/post/17232530088</guid>
	<link>http://seanmonstar.com/post/17232530088</link>
	<description>&lt;a href=&quot;http://chrome.blogspot.com/2012/02/introducing-chrome-for-android.html&quot;&gt;Chrome for Android&lt;/a&gt;: &lt;p&gt;Exciting news for Android. It’s always been a wonder why the stock Browser wasn’t Chrome, and now it is. And it really rocks. The tab interface is fun to use.&lt;/p&gt;

&lt;p&gt;However, since it uses an updated version of the webkit rendering engine, it should need to load that library upon initialization. The standard engine is always in memory, something that’s held back Firefox for Android. Yet, Chrome doesn’t seem to suffer from this.&lt;/p&gt;

&lt;p&gt;Perhaps the mobile Firefox engineers already know, but I can think of 3 possibilities:&lt;/p&gt;

&lt;ul&gt;&lt;li&gt;There’s a way to keep the new libraries in memory.&lt;/li&gt;
&lt;li&gt;There’s a way to replace the default engine&lt;/li&gt;
&lt;li&gt;Or they just handle the loading in a better way.&lt;/li&gt;
&lt;/ul&gt;&lt;p&gt;Whichever it is, hopefully mobile Firefox can find a way to improve their loading to be close to equivalent to Chrome’s loading.&lt;/p&gt;</description>
	<pubDate>Tue, 07 Feb 2012 23:28:35 +0000</pubDate>
</item>
<item>
	<title>Mozilla Add-ons Blog: SF Meetup: Add-ons Made Easy with Builder and SDK</title>
	<guid isPermaLink="false">http://blog.mozilla.com/addons/?p=4226</guid>
	<link>http://blog.mozilla.com/addons/2012/02/07/sf-meetup-add-ons-made-easy-with-builder-and-sdk/</link>
	<description>&lt;p&gt;If you’re in the Bay Area, we invite you to &lt;a href=&quot;http://www.meetup.com/addons/events/51321652/&quot; target=&quot;_blank&quot;&gt;join us&lt;/a&gt; at our San Francisco office on &lt;strong&gt;Tuesday, February 21&lt;/strong&gt;, for an evening of food, drinks and good company!&lt;/p&gt;
&lt;p&gt;Come and see how easy it is to create add-ons for Firefox with &lt;a href=&quot;https://addons.mozilla.org/developers/&quot; target=&quot;_blank&quot;&gt;Add-on Builder&lt;/a&gt; and the &lt;a href=&quot;https://addons.mozilla.org/developers/&quot; target=&quot;_blank&quot;&gt;Add-on SDK&lt;/a&gt;. If you’re a Web developer and know HTML, JavaScript and CSS, you already have what it takes to make great add-ons.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;One lucky raffle winner will receive an Android tablet!&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Date:&lt;/strong&gt; Tuesday, February 21, 2012&lt;br /&gt;
&lt;strong&gt;Time:&lt;/strong&gt; 6:00 – 8:00pm&lt;br /&gt;
&lt;strong&gt;Location:&lt;/strong&gt; Mozilla SF – 2 Harrison Street, 7th Floor&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot;&gt;&lt;strong&gt;** &lt;a href=&quot;http://www.meetup.com/addons/events/51321652/&quot; target=&quot;_blank&quot;&gt;Reserve your spot now!&lt;/a&gt; **&lt;/strong&gt;&lt;/p&gt;</description>
	<pubDate>Tue, 07 Feb 2012 22:35:42 +0000</pubDate>
	<dc:creator>Amy Tsay</dc:creator>
</item>
<item>
	<title>David Boswell: Now we can say Mozilla is a world-wide community</title>
	<guid isPermaLink="false">http://davidwboswell.wordpress.com/?p=2979</guid>
	<link>http://davidwboswell.wordpress.com/2012/02/07/now-we-can-say-mozilla-is-a-world-wide-community/</link>
	<description>&lt;p&gt;With the launch of &lt;a href=&quot;http://mozilla-antarctica.org/&quot;&gt;Mozilla Antarctica&lt;/a&gt; today, we can truly say that Mozilla is a world-wide community.  Check out the &lt;a href=&quot;http://www.mozilla.org/contribute/local/&quot;&gt;maps of local Mozilla communities&lt;/a&gt; around the world to see all of the cool stuff going on.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://davidwboswell.files.wordpress.com/2012/02/regional_maps.jpg&quot;&gt;&lt;img alt=&quot;&quot; class=&quot;aligncenter size-full wp-image-2982&quot; height=&quot;389&quot; src=&quot;http://davidwboswell.files.wordpress.com/2012/02/regional_maps.jpg?w=450&amp;amp;h=389&quot; title=&quot;regional_maps&quot; width=&quot;450&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Now that we have all of the ground covered, we’ll need to reach out to the residents of the &lt;a href=&quot;http://www.nasa.gov/mission_pages/station/main/index.html&quot;&gt;International Space Station&lt;/a&gt; to see if they’re interested in forming a local Mozilla community…&lt;/p&gt;
&lt;br /&gt;  &lt;a href=&quot;http://feeds.wordpress.com/1.0/gocomments/davidwboswell.wordpress.com/2979/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/comments/davidwboswell.wordpress.com/2979/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/godelicious/davidwboswell.wordpress.com/2979/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/delicious/davidwboswell.wordpress.com/2979/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gofacebook/davidwboswell.wordpress.com/2979/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/facebook/davidwboswell.wordpress.com/2979/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gotwitter/davidwboswell.wordpress.com/2979/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/twitter/davidwboswell.wordpress.com/2979/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gostumble/davidwboswell.wordpress.com/2979/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/stumble/davidwboswell.wordpress.com/2979/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/godigg/davidwboswell.wordpress.com/2979/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/digg/davidwboswell.wordpress.com/2979/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/goreddit/davidwboswell.wordpress.com/2979/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/reddit/davidwboswell.wordpress.com/2979/&quot; /&gt;&lt;/a&gt; &lt;img alt=&quot;&quot; border=&quot;0&quot; height=&quot;1&quot; src=&quot;http://stats.wordpress.com/b.gif?host=davidwboswell.wordpress.com&amp;amp;blog=1079368&amp;amp;post=2979&amp;amp;subd=davidwboswell&amp;amp;ref=&amp;amp;feed=1&quot; width=&quot;1&quot; /&gt;</description>
	<pubDate>Tue, 07 Feb 2012 21:10:17 +0000</pubDate>
	<dc:creator>davidwboswell</dc:creator>
</item>
<item>
	<title>Ben Hearsum: Release Automation – Part 1: Bootstrap</title>
	<guid isPermaLink="false">http://blog.mozilla.com/bhearsum/?p=204</guid>
	<link>https://blog.mozilla.com/bhearsum/archives/204</link>
	<description>&lt;p&gt;One of the first tasks I had as a full-time employee of Mozilla was getting the Bootstrap Release framework working with Firefox 3.0 Beta releases. Now, just over 4 years later, our Release Automation has changed dramatically in many ways: primary language, supported platforms, scope and extent, reliability, and versatility. I thought it made be interesting to trace the path from there to here, and talk about what’s in store for the future, too. Throughout all of this work there’s been two overarching goals: 1) Lower the time it takes to go from “go to build” to “updates available for testing” – which we call “end2end time”, and 2) Remove the number of machines we have to log into, commands we have to run, and active time we have to spend on a release – known as “manual touchpoints”. I’ll be referencing these a lot throughout this series.&lt;/p&gt;
&lt;p&gt;This post will talk about what I know of Bootstrap and my work porting it to Firefox 3.0.&lt;/p&gt;
&lt;p&gt;In its earliest form Bootstrap was a simple scripted version of much of the previously manual release process. The processes for tagging VCS repositories, creating deliverables (source packages, en-US and localized builds, updates), and some verifications were encapsulated into its scripts. This was a big improvement over the 100% manual, cut+paste-from-a-wiki, process. Instead of logging into many machines and running many commands, the release engineer had to log in to many machines and run a few, very simple commands. The very first release that was Bootstrap-aided was Firefox 1.5.0.9, built on December 6th, 2006. This was before my time, but a former release engineer, &lt;a href=&quot;http://rhelmer.org/&quot;&gt;Rob Helmer&lt;/a&gt;, told me that the end2end time back then could be multiple days, and countless touchpoints.&lt;/p&gt;
&lt;p&gt;Over time, more parts of the release process were automated with Bootstrap, further reducing the burden on the release engineer. Even with these big improvements some classes of things were still not codified: which machines to run which commands on, when and in what order to run things, who to notify about what. Enter: Buildbot. Integrating Bootstrap into Buildbot was the next logical step in the process. It would handle scheduling and status, while Bootstrap would remain responsible for all of implementation. With this, the release engineer only had to log in to a few machines and run a few, very simple commands. Another big improvement! The first release to benefit from this was Firefox 2.0.0.8, built on October 10th, 2007. This work was largely done by Rob Helmer.&lt;/p&gt;
&lt;p&gt;Around this time we were gearing up to start shipping the first Firefox 3.0 Beta release and had never tested Bootstrap against that development branch. I was tasked with making whatever changes were necessary to Bootstrap and our Buildbot to make it work. The Buildbot side was largely simple, because of it being at such a high abstraction layer, but back in these days we still had single purpose Buildbot masters, so it involved adding several hundred lines of config code.&lt;/p&gt;
&lt;p&gt;The Bootstrap side was far more interesting. Until this point, there was a lot of built-in assumptions based on what the 1.8 branch looked like, including:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Releases are done from CVS branches (explicitly _not_ trunk)&lt;/li&gt;
&lt;li&gt;Windows build machines run Cygwin&lt;/li&gt;
&lt;li&gt;Linux packages are in .gz format&lt;/li&gt;
&lt;li&gt;The crash reporting system Talkback is always shipped&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;By themselves, none of these things are too challenging to deal with, but as a very new hire, the combination took me about a month to find solutions to and fully test, with many rounds of feedback and guidance along the way. With all of that done and landed, we managed to use the new automation to build Firefox 3.0b2 on December 10, 2007. At this point, the end2end time was around 24h and there were about 20 manual touchpoints.&lt;/p&gt;
&lt;p&gt;Over the next 8 months or so there were a few major improvements of note. Firstly, &lt;a href=&quot;http://blog.mozilla.com/nthomas/&quot;&gt;Nick Thomas&lt;/a&gt; fixed &lt;a href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=409394&quot;&gt;bug 409394 (Support for long version names)&lt;/a&gt; allowed us to start shipping releases with nicer looking filenames like “Firefox Setup 3.0 Beta 4″. Not a crucial thing, but much nicer from the user perspective. &lt;a href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=422235&quot;&gt;bug 422235 (enable fast patcher for release automation)&lt;/a&gt; was a massive improvement in update generation, written by &lt;a href=&quot;http://twitter.com/schrep&quot;&gt;schrep&lt;/a&gt;. With this work, we went from taking 6-8 hours to generate updates, down to ~1h — an incredible savings in time. Finally, &lt;a href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=428063&quot;&gt;bug 428063 (Support major releases &amp;amp; quit using rc in overloaded ways)&lt;/a&gt; (also fixed by Nick) enabled us to build RCs with Bootstrap. While it may sound simple, there’s a lot of things in release automation that depend on filename, and catching them all can be difficult. As well as making it possible to build these, this bug also renamed the internal “rc” notion to “build”, to avoid situations where we’d have things like “3.0 RC1 rc1″, which was utterly confusing.&lt;/p&gt;
&lt;hr /&gt;
&lt;p&gt;So, in the early days there were tons of improvement quickly: Bootstrap itself sped things up and lowered the possibility of error through reducing manual touchpoints. Buildbot + Bootstrap did so again, through the same methods. We also had pure speed-ups through things such as fast patcher. Having these things allowed us to maintain the 2.0.0.x and 3.0.x branches more more easily, and get chemspill releases out quickly and simultaneously. All of this work had to be done incrementally too, because we had to continue shipping releases while the work was happening. It’s hard to find good data for releases done with this version of the automation, but I guesstimate that the end2end time was around 12-14 hours and the number of manual touchpoints was still around 20 for a release without major issues.&lt;/p&gt;
&lt;p&gt;Next up….Release Automation on Mercurial, v1.&lt;/p&gt;</description>
	<pubDate>Tue, 07 Feb 2012 20:14:25 +0000</pubDate>
	<dc:creator>bhearsum</dc:creator>
</item>
<item>
	<title>Boris Zbarsky: Vendor interactions with the CSS working group and product secrecy</title>
	<guid isPermaLink="true">http://weblogs.mozillazine.org/bz/archives/2012/02/vendor_interactions_with_the_c.html</guid>
	<link>http://weblogs.mozillazine.org/bz/archives/2012/02/vendor_interactions_with_the_c.html</link>
	<description>&lt;p&gt;&lt;a href=&quot;http://lists.w3.org/Archives/Public/www-style/2012Feb/0313.html&quot;&gt;The minutes from yesterday's CSSWG face-to-face meeting&lt;/a&gt; are a very interesting read in all sorts of ways.  I was somewhat struck by this part:&lt;/p&gt;
&lt;pre&gt;  tantek: I think if you're working on open standards, you should propose
          your features before you implement them and discuss that here.
  smfr: We can't do that.
  sylvaing: We can't do that either.
&lt;/pre&gt; 
&lt;p&gt;Those are the Apple and Microsoft representatives replying to Tantek.&lt;/p&gt;
&lt;p&gt;Now I won't claim that Mozilla always does this, or that it's even always desirable; it's often better to have a prototype and then discuss the standard than discuss standardization in a completely theoretical way.  But this is not about prototypes; this is about not being able to talk about a feature until there's a more or less complete implementation, which is when Microsoft and Apple tend to announce new features.  I knew that both Microsoft and Apple had longstanding policies of refusing to discuss future plans, but hadn't really thought about the negative effect this blanket policy has on standardization efforts...&lt;/p&gt;</description>
	<pubDate>Tue, 07 Feb 2012 18:50:18 +0000</pubDate>
	<dc:creator>bzbarsky</dc:creator>
</item>
<item>
	<title>Crystal Beasley: How People *Think* Facebook Connect Log‑in and Log‑out Work</title>
	<guid isPermaLink="false">http://skinnywhitegirl.com/blog/?p=861</guid>
	<link>http://skinnywhitegirl.com/blog/how-people-think-facebook-connect-login-logout-work/861/</link>
	<description>&lt;p&gt;&lt;a href=&quot;http://skinnywhitegirl.com/blog/wp-content/uploads/2012/02/facebook-connect1.png&quot;&gt;&lt;img alt=&quot;&quot; class=&quot;alignnone size-large wp-image-888&quot; height=&quot;113&quot; src=&quot;http://skinnywhitegirl.com/blog/wp-content/uploads/2012/02/facebook-connect1-600x113.png&quot; title=&quot;facebook-connect-login&quot; width=&quot;600&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;As part of my work on the &lt;a href=&quot;http://identity.mozilla.com/&quot;&gt;Identity project&lt;/a&gt; at Mozilla, I’ve been taking a look into how the average person thinks about single sign-on. It’s a complex system, so not surprisingly, it’s most often misunderstood at a fundamental level.&lt;/p&gt;
&lt;p&gt;I ran an unmoderated user test with &lt;a href=&quot;http://usertesting.com&quot;&gt;usertesting.com&lt;/a&gt; with five users. Their task was to go to &lt;a href=&quot;http://Buyosphere.com&quot;&gt;Buyosphere&lt;/a&gt;, a site that implements Facebook Connect, create an account, then log out. Then I asked them a series of questions. All five indicated they had used Facebook to log into sites before.&lt;/p&gt;
&lt;p&gt;“When you log out of Buyosphere, do you think it logs you out of Facebook also? Why or why not and how would you tell for sure?” Incorrect answers are red and bold.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;span style=&quot;color: #800000;&quot;&gt;&lt;strong&gt;User 1)&lt;/strong&gt;&lt;/span&gt; “i believe that once i log out of buyosphere, i am also logged out of facebook. once i am logged out i cannot see any more information regarding my account after logging out.”&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;color: #800000;&quot;&gt;&lt;strong&gt;User 2)&lt;/strong&gt;&lt;/span&gt; “I think it does log me out because it gave me connect with Facebook, thus it mean it is not recognizing that I have a Facebook account. I’d tell if I am or not by opening up Facebook in a new tab and seeing if it is automatically logged in or not.”&lt;/li&gt;
&lt;li&gt;User 3) “No, I told facebook to remember me. I would open my facebook page in a different browser window? I don’t normally tell it to log me out, so that is only a guess.”&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;color: #800000;&quot;&gt;&lt;strong&gt;User 4)&lt;/strong&gt;&lt;/span&gt; “Yes. I do not see a separate window for my facebook site so I would assume that Buyosphere would have set it up to log me out when I’m done on their site. I think I can check to see if I’m logged out by opening facebook and seeing if the login boxes come up or if it takes me straight to my FB page. I will try it right now….I was wrong it didn’t log me out. I am surprised by that. That makes the process of logging off take longer if I have to log out of this site and then go to FB to log out of that site separately.”&lt;/li&gt;
&lt;li&gt;User 5) “I don’t think it would log me out. I have used other sites through facebook and usually the log in and log outs are separate. I can tell for sure by checking my facebook page which I just did and I am logged in.”&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The goal of this research was to determine if users had a mental model that would allow them to correctly log out of a single sign-on system in places where there are security concerns like a shared computer or public terminal. The answer is no. &lt;em&gt;Disclaimer: Do not be tempted to extrapolate that this means 60% of people would get this question wrong. This is qualitative research, not quantitative and should not be regarded as having statistical significance.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;The last little gut-wrenching nugget comes from the last 20 seconds of one test. Watch and weep.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;You caught it, right? She believes she could use her Facebook user and password to log into this site. *sigh* It’s horrifying how easily a bad actor could build a honeypot to collect Facebook credentials.&lt;/p&gt;
&lt;p&gt;In addition to confusion over when/where/how to log-in and log-out, we know that sites have big percentages of users with multiple accounts. This video clearly illustrates how that can happen.&lt;/p&gt;
&lt;p&gt;What are sites to do? I don’t think there is a good answer. As much as your business case allows, use only one identity provider. If you’re using Facebook Connect, don’t have a standard log-in. Too often, two log-in systems are less than the sum of their parts. &lt;a href=&quot;http://uxdesign.smashingmagazine.com/2011/08/22/new-approaches-to-designing-login-forms/&quot;&gt;LukeW’s article&lt;/a&gt; details experiments to mitigate these problems. Some of them have security concerns that wouldn’t fly with many sites. I’m not confident any of them work massively better than only supporting one way of logging in. However, many site will feel it necessary to have a standard log-in plus Facebook Connect. Clearly more thinking and testing needs to be done in this direction.&lt;/p&gt;
&lt;p&gt;Of course, my biased view is that we can build &lt;a href=&quot;http://identity.mozilla.com/&quot;&gt;better solutions for single sign-on&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://skinnywhitegirl.com/blog/how-people-think-facebook-connect-login-logout-work/861/&quot;&gt;How People *Think* Facebook Connect Log‑in and Log‑out Work&lt;/a&gt; is a post from: &lt;a href=&quot;http://skinnywhitegirl.com/blog&quot;&gt;Crystal Beasley, UX Designer at Mozilla&lt;/a&gt;&lt;/p&gt;</description>
	<pubDate>Tue, 07 Feb 2012 17:59:17 +0000</pubDate>
	<dc:creator>Crystal Beasley</dc:creator>
        <enclosure url="http://dc2.usertesting.com/videos/255685-1.mp4" length="531062" type="video/mp4"/>
</item>
<item>
	<title>Mitchell Baker: Resurfacing</title>
	<guid isPermaLink="false">http://blog.lizardwrangler.com/?p=3171</guid>
	<link>http://blog.lizardwrangler.com/2012/02/07/resurfacing/</link>
	<description>&lt;p&gt;I’ve been sort of invisible online for a few weeks.    Sunday night we &lt;em&gt;finally&lt;/em&gt; got moved out of our old, beat-up house.  By “beat-up” I mean foundation damage, and water and silt flowing into the downstairs rooms, making them uninhabitable.  It’s a wreck, but it’s big.  So we had a decade of stuff crammed into a zillion storage spaces.  I though getting ourselves moved into the temporary living spot during remodeling was the big job, but then my husband started pulling stuff out from the truly hidden storage spots, and that took another week of evenings and weekends to finish up.&lt;/p&gt;
&lt;p&gt;Now we’re living in a space about 1/3 the size, with tons of stuff in storage (do we even want it back)?  and am back to the normal focus on Mozilla, online life, etc.    Funny have the luxury of a stable life well above subsistence level leads to the accumulation of so much stuff that seems meaningful at first but then becomes a burden.&lt;/p&gt;
&lt;p&gt;More shortly.  &lt;/p&gt;</description>
	<pubDate>Tue, 07 Feb 2012 16:41:17 +0000</pubDate>
	<dc:creator>mitchell</dc:creator>
</item>
<item>
	<title>Breaking the egg: About Toggling Tabs on Top...</title>
	<guid isPermaLink="true">http://breakingtheegg.tumblr.com/post/17210480692</guid>
	<link>http://breakingtheegg.tumblr.com/post/17210480692</link>
	<description>&lt;p&gt;&lt;a href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=644169&quot;&gt;Tabs on top&lt;/a&gt; is scheduled to land in Thunderbird 11, and we’re pretty excited.&lt;/p&gt;
&lt;p&gt;A few folks on Bugzilla have been wondering about how they can switch back to Tabs on Bottom, and have been shocked to find that such a toggle is missing. &lt;a href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=724213&quot;&gt;A bug was filed&lt;/a&gt; by a concerned user, asking us to put the toggle in. They were concerned that we were restricting customization and flexibility by not allowing them to change the tabs UI.&lt;/p&gt;
&lt;p&gt;However, this lack of a toggle was a conscious decision, and was not made lightly.&lt;/p&gt;
&lt;p&gt;I gave our reasoning in the bug, and I thought I’d include a copy here as well. Here goes:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Hey all,&lt;/p&gt;
&lt;p&gt;So I’m going to talk a bit about the decision to move tabs in Thunderbird above the mail toolbar - and, more specifically, the decision to leave the UI toggle to move the tabs back to below the toolbar out.&lt;/p&gt;
&lt;p&gt;When it comes to UI stuff, I can get pretty hand-wave-y and long-winded. In a departure from this, I’m going to try to be succinct here - please don’t interpret this as rudeness or brusqueness! :D&lt;/p&gt;
&lt;p&gt;In Firefox, you have a back button, a forward button, and a URL bar to tell you where you are. With these rudimentary tools, the toolbar is easily generalizable to the act of navigation. This works for Firefox, because this is what Firefox *is* - a tool for navigating around the web.  A high percentage of the things that you can do in Firefox involve navigation. Even in the Add-ons Manager, or Bookmarks Manager, the browser toolbar could make sense as a navigation interface (though we don’t seem to make those available - in fact, in the Add-ons Manager, we’ve created *new* back and forward buttons for navigation).&lt;/p&gt;
&lt;p&gt;Where the browser toolbar *doesn’t* make sense, is in a place where navigation has less meaning.  I’m going to pick on the Downloads Manager, for example.  Firefox does not have the browser toolbar as part of the Downloads Manager, and outside of an add-on, such a customization is not really possible.&lt;/p&gt;
&lt;p&gt;The reasoning behind this is obvious - having a back/forward/URL tools in the Downloads Manager makes very little sense.&lt;/p&gt;
&lt;p&gt;So, the conclusion we can draw from this is:  a shared toolbar makes sense in contexts that share the primary activity of that toolbar.  This is why Firefox can get away with tabs-on-bottom for most of their UI.&lt;/p&gt;
&lt;p&gt;Now, on to Thunderbird.&lt;/p&gt;
&lt;p&gt;The rationale behind tabs-on-top in Thunderbird is somewhat different from Firefox’s.  In Thunderbird, a tab can be many other things than just another Inbox tab.&lt;/p&gt;
&lt;p&gt;Lightning, for example, gives us a tab that becomes a full-blown Calendering client. Unfortunately, they’ve had to deal with tabs-on-bottom, and have therefore been forced to shoehorn Calendering UI into the mail toolbar. If you’ve used Lightning, you know what I’m talking about.&lt;/p&gt;
&lt;p&gt;This is not unique to Lightning.  When viewing a content tab in Thunderbird, the mail toolbar above the content really makes very little sense - just like having the browser navigation bar in the Downloads Manager would make very little sense.&lt;/p&gt;
&lt;p&gt;This is also quite restrictive.  Thunderbird’s UI trajectory is tending towards more tab types (Search, Instant Messaging, eventually Compose in a tab, eventually Address Book in a tab).  Having the toolbar exist *within* the tabs allows us a separation between these functions - and allows for a greater degree of customization *within* those tabs.&lt;/p&gt;
&lt;p&gt;So I don’t think it’s fair to say that preventing tabs-on-bottom is making Thunderbird less configurable. On the contrary, I suggest that enforcing tabs-on-top is an investment that *ensures* greater flexibility and customization in the future.&lt;/p&gt;
&lt;p&gt;All the best,&lt;/p&gt;
&lt;p&gt;-Mike&lt;/p&gt;

&lt;/blockquote&gt;</description>
	<pubDate>Tue, 07 Feb 2012 15:05:55 +0000</pubDate>
</item>
<item>
	<title>Michelle Thorne: Feature Requests for Webmakers</title>
	<guid isPermaLink="false">http://michellethorne.cc/?p=1448</guid>
	<link>http://michellethorne.cc/2012/02/feature-requests-for-webmakers/</link>
	<description>&lt;p&gt;&lt;img alt=&quot;&quot; class=&quot;aligncenter size-full wp-image-1450&quot; height=&quot;293&quot; src=&quot;http://michellethorne.cc/wp-content/uploads/hackjam-dundee.png&quot; title=&quot;hackjam dundee&quot; width=&quot;441&quot; /&gt;&lt;/p&gt;

&lt;p&gt;As part of the on-going efforts to help webmakers the world over build &amp;amp; learn together, &lt;strong&gt;we’re collecting specs for event infrastructure.&lt;/strong&gt; The &lt;a href=&quot;http://michellethorne.cc/2012/01/mozilla-event-menu-lite/&quot;&gt;Mozilla event menu&lt;/a&gt; is a piece of this, guiding community members to the event formats that best suit their needs and interests.&lt;/p&gt;

&lt;p&gt;Once they’ve decided on an event type, organizers need a simple way to write up the event, spread the word, communicate with participants, and track outcomes.&lt;/p&gt;

&lt;h3&gt;Feature Requests&lt;/h3&gt;

&lt;p&gt;&lt;img alt=&quot;&quot; class=&quot;aligncenter size-full wp-image-1453&quot; height=&quot;333&quot; src=&quot;http://michellethorne.cc/wp-content/uploads/hackjam-dundee3.jpg&quot; title=&quot;hackjam dundee3&quot; width=&quot;500&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Thanks to conversations with Ben Simon, Jess Klein, Ross Bruniges, Matt Thompson, and others, &lt;strong&gt;we’re getting crisper on what features are essential to the Mozilla event infrastructure.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;As an initial strawman, I proposed these features:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;super simple event creation &amp;amp; categorization &lt;/li&gt;
&lt;li&gt;localization-friendly&lt;/li&gt;
&lt;li&gt;easy &amp;amp; secure data portability &lt;/li&gt;
&lt;li&gt;good developer APIs &lt;/li&gt;
&lt;li&gt;participant email capture and ability to mail them&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;I also think &lt;strong&gt;payment support&lt;/strong&gt; is important, but not essential. At first, I argued strongly for it, because some organizers may need to recoup costs. But perhaps this is addressed by clearer sponsorship options and encouragement to use additional payment services, rather than a core requirement of our event infrastructure.&lt;/p&gt;

&lt;p&gt;Another bonus feature is if the tools are already &lt;strong&gt;widely used&lt;/strong&gt; and familiar to our communities. I think this is important for ease-of-use and discovery. For example, my friend Johannes uses Lanyrd to explore interesting upcoming events. Just yesterday he booked tickets to a festival he just discovered on Lanyrd that day. This suggests that if we don’t use popular listing sites, we miss out on potential participants. At the very least, strategic cross-posting should be encouraged.&lt;/p&gt;

&lt;p&gt;Ben Simon has written an &lt;a href=&quot;https://engagingopenly.wordpress.com/2012/02/06/the-infrastructure-for-self-organizing/&quot;&gt;excellent post&lt;/a&gt; in response to the feature requests strawman. In it, he argues for these additional functions:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Ability for event organizers to organize over time:&lt;/strong&gt; Communicate with participants before &amp;amp; after an event, plus allow sign-ups for single instances &amp;amp; repeated events&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Groups:&lt;/strong&gt; Search &amp;amp; find relevant events by geography, theme, skill level, etc.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Both of these are right on the money in terms of what we want our event infrastructure to support.&lt;/p&gt;

&lt;h3&gt;Prioritizing&lt;/h3&gt;

&lt;p&gt;&lt;img alt=&quot;&quot; class=&quot;aligncenter size-full wp-image-1459&quot; height=&quot;333&quot; src=&quot;http://michellethorne.cc/wp-content/uploads/hackjam-dundee4.jpg&quot; title=&quot;hackjam dundee4&quot; width=&quot;500&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Big questions we have now are:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Are the above features the most important?&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Are we missing any?&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;And, once the list looks right, &lt;strong&gt;how to we deploy/build the infrastructure?&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Over the coming weeks, I’m hoping to chat with people who’ve already organized events like the talented Heather Payne in Toronto (check out her upcoming &lt;a href=&quot;https://torontoyouthhackjam.eventbrite.com/&quot;&gt;Hive Toronto Pop-Up&lt;/a&gt;), Mozilla Kenyans Cliff Argwings &amp;amp; Alex Wafula and Product Dundee’s Jon Rogers &amp;amp; Mike Shorter, as well as people who’ve expressed interested in hosting something like Nick Doiron from CodeforAmerica, Christian Villum from Platform4, and Henrik Sandklef from FSCONS.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;I’d like to get feedback on whether we’re prioritizing the right features and what would be helpful for them in future events.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;There is also a big effort at the Mozilla Corporation to improve their event infrastructure, and we should definitely sync up &amp;amp; share solutions as much as possible.&lt;/p&gt;

&lt;h3&gt;3rd Party Audit&lt;/h3&gt;

&lt;p&gt;In parallel, we’re preparing for &lt;strong&gt;an audit of 3rd party event sites.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Considering there are companies that spend all of their time building event platforms, I argue that we should use those services, insofar they meet our needs, rather than coding something from scratch and maxing the bandwidth of our software team.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Ideally, the 3rd party site will feed into make.mozilla.org, a yet-to-be-coded aggregator for all the Mozilla webmaker activities.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;On the list to investigate:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Lanyrd&lt;/li&gt;
&lt;li&gt;Eventbrite&lt;/li&gt;
&lt;li&gt;Meetup&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.350.org/&quot;&gt;350.org&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.controlshiftlabs.com/&quot;&gt;Controlshift&lt;/a&gt; (still being built)&lt;/li&gt;
&lt;li&gt;BlueStateDigital (which we currently use for some events and for Mozilla’s membership program)&lt;/li&gt;
&lt;li&gt;also the Mozilla wiki, &lt;a href=&quot;https://developer.mozilla.org/en-US/events&quot;&gt;Where is Mozilla?&lt;/a&gt; and other in-house solutions&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;What other event sites do you really like? What do you use or see other people using well?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;img alt=&quot;&quot; class=&quot;aligncenter size-full wp-image-1452&quot; height=&quot;333&quot; src=&quot;http://michellethorne.cc/wp-content/uploads/hackjam-dundee2.jpg&quot; title=&quot;hackjam dundee2&quot; width=&quot;500&quot; /&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Images by &lt;a href=&quot;https://mozillalabs.com/conceptseries/2011/06/03/knight-mozilla-initiative-round-up-of-the-uk-mojo-tour-dundee-london-manchester/&quot;&gt;Cyberdees from the Knight-Mozilla Hack Jam in Dundee&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;</description>
	<pubDate>Tue, 07 Feb 2012 14:01:29 +0000</pubDate>
	<dc:creator>thornet</dc:creator>
</item>
<item>
	<title>Laura Hilliger: More System Thinking (at a Micro-Level)</title>
	<guid isPermaLink="false">http://www.zythepsary.com/?p=1206</guid>
	<link>http://www.zythepsary.com/techie/more-system-thinking-at-a-micro-level/</link>
	<description>&lt;p&gt;We’re still working on the &lt;a class=&quot;zem_slink&quot; href=&quot;http://mozilla.org&quot; rel=&quot;wikipedia&quot; target=&quot;_blank&quot;&gt;Mozilla&lt;/a&gt;/&lt;a href=&quot;http://p2pu.org&quot; target=&quot;_blank&quot;&gt;P2PU&lt;/a&gt; Challenges for running an event. We’ve been through a number of iterations and are, at the moment, settling on a 1-2-3 format in which participants can access planning materials and sample content for any of the three types of events Mozilla champions. &lt;a href=&quot;https://twitter.com/#!/thornet&quot; target=&quot;_blank&quot;&gt;Michelle Thorne&lt;/a&gt; has created an Event Menu Lite that explains the event types, and we’re using the &lt;a href=&quot;http://labs.toolness.com/temp/hackasaurus-pdfs/hacktivity_kit.pdf&quot; target=&quot;_blank&quot;&gt;Hackasaurus Hacktivity Kit&lt;/a&gt; as a model for the “how to run a Learning Lab” portion of the Challenges.&lt;/p&gt;&lt;p&gt;Based on my &lt;a href=&quot;http://www.zythepsary.com/wp-content/uploads/2012/02/detail.png?8ef408&quot; target=&quot;_blank&quot;&gt;system thinking chart&lt;/a&gt;, the event kit should include the three types of curriculum (ice breaker, instruction, design challenge), regardless of the type of event. The trick is defining each piece in a way that is broad enough that each event type &lt;em&gt;can &lt;/em&gt;be included.&lt;/p&gt;&lt;p&gt;I’m thinking around this problem like this:&lt;/p&gt;&lt;table cellpadding=&quot;4&quot; cellspacing=&quot;0&quot; style=&quot;border: 1px dotted #333;&quot; width=&quot;100%&quot;&gt;&lt;colgroup&gt;&lt;col width=&quot;64*&quot; /&gt;&lt;col width=&quot;64*&quot; /&gt;&lt;col width=&quot;64*&quot; /&gt;&lt;col width=&quot;64*&quot; /&gt;&lt;/colgroup&gt;&lt;tbody&gt;&lt;tr valign=&quot;TOP&quot;&gt;&lt;td style=&quot;border: 1px dotted #333;&quot; width=&quot;25%&quot;&gt;&lt;/td&gt;&lt;td style=&quot;border: 1px dotted #333;&quot; width=&quot;25%&quot;&gt;&lt;strong&gt;Meetup&lt;/strong&gt;&lt;/td&gt;&lt;td style=&quot;border: 1px dotted #333;&quot; width=&quot;25%&quot;&gt;&lt;strong&gt;Learning Lab&lt;/strong&gt;&lt;/td&gt;&lt;td style=&quot;border: 1px dotted #333;&quot; width=&quot;25%&quot;&gt;&lt;strong&gt;Hackjam&lt;/strong&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr valign=&quot;TOP&quot;&gt;&lt;td style=&quot;border: 1px dotted #333;&quot; width=&quot;25%&quot;&gt;&lt;strong&gt;Ice Breaker&lt;/strong&gt;&lt;/td&gt;&lt;td style=&quot;border: 1px dotted #333;&quot; width=&quot;25%&quot;&gt;Show and Tell. Discuss Concepts and Problems.&lt;/td&gt;&lt;td style=&quot;border: 1px dotted #333;&quot; width=&quot;25%&quot;&gt;Show and Tell. Explain Concepts.&lt;/td&gt;&lt;td style=&quot;border: 1px dotted #333;&quot; width=&quot;25%&quot;&gt;Show and Tell. Define Problems.&lt;/td&gt;&lt;/tr&gt;&lt;tr valign=&quot;TOP&quot;&gt;&lt;td style=&quot;border: 1px dotted #333;&quot; width=&quot;25%&quot;&gt;&lt;strong&gt;Instruction&lt;/strong&gt;&lt;/td&gt;&lt;td style=&quot;border: 1px dotted #333;&quot; width=&quot;25%&quot;&gt;Definition of the group’s goals.&lt;/td&gt;&lt;td style=&quot;border: 1px dotted #333;&quot; width=&quot;25%&quot;&gt;Introduce Targeted Learning Objectives.&lt;/td&gt;&lt;td style=&quot;border: 1px dotted #333;&quot; width=&quot;25%&quot;&gt;Crash Courses&lt;/td&gt;&lt;/tr&gt;&lt;tr valign=&quot;TOP&quot;&gt;&lt;td style=&quot;border: 1px dotted #333;&quot; width=&quot;25%&quot;&gt;&lt;strong&gt;Design Challenge&lt;/strong&gt;&lt;/td&gt;&lt;td style=&quot;border: 1px dotted #333;&quot; width=&quot;25%&quot;&gt;Make a plan to expand conceptual ideas from the Ice Breaker. Make a plan to reach goals defined in the Instruction.&lt;/td&gt;&lt;td style=&quot;border: 1px dotted #333;&quot; width=&quot;25%&quot;&gt;Make using acquired knowledge from the Ice Breaker. Make using acquired skills from the Instruction.&lt;/td&gt;&lt;td style=&quot;border: 1px dotted #333;&quot; width=&quot;25%&quot;&gt;Make by working to solve defined problems from the Ice Breaker. Make using acquired skills from the Instruction.&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;p&gt;From a didactic standpoint, there are a couple of types of knowledge that are addressed in the three event types. A meetup could likely be categorized as “orientative knowledge” because participants are learning the connection between the chosen topic and their own lives (meetups are basically discussions). Learning Labs would likely be the next evolution with “instructional knowledge” because participants are receiving targeted lessons with specific learning objectives. A hackjam, then, serves to transfer “practical knowledge” as a participant will use pre-acquired knowledge to solve problems.&lt;/p&gt;&lt;p&gt;None of this is to say that one event type can’t or won’t transfer other types of knowledge, it’s simply a way to distinguish the learning goals of each event type. Understanding the overarching knowledge types will help us create curriculum that fits into each event type. This will allow us to be more efficient in our content creation, which means we will be able to create more content.&lt;/p&gt;&lt;p&gt;As always, comments are welcome and appreciated.&lt;/p&gt;&lt;h4 class=&quot;zemanta-related-title&quot;&gt;Related articles&lt;/h4&gt;&lt;ul class=&quot;zemanta-article-ul&quot;&gt;&lt;li class=&quot;zemanta-article-ul-li&quot;&gt;&lt;a href=&quot;http://www.zythepsary.com/techie/system-thinking/&quot; target=&quot;_blank&quot;&gt;System Thinking&lt;/a&gt; (zythepsary.com)&lt;/li&gt;&lt;/ul&gt;&lt;div class=&quot;zemanta-pixie&quot;&gt;&lt;a class=&quot;zemanta-pixie-a&quot; href=&quot;http://www.zemanta.com/&quot; title=&quot;Enhanced by Zemanta&quot;&gt;&lt;img alt=&quot;Enhanced by Zemanta&quot; class=&quot;zemanta-pixie-img&quot; src=&quot;http://img.zemanta.com/zemified_e.png?x-id=311511a3-e259-4c71-b6c4-23e19d21260e&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;tweetthis&quot; style=&quot;text-align: left;&quot;&gt;&lt;p&gt; &lt;a class=&quot;tt&quot; href=&quot;http://twitter.com/intent/tweet?text=More+System+Thinking+%28at+a+Micro-Level%29+http%3A%2F%2Fis.gd%2FQXjj5b&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot; title=&quot;Post to Twitter&quot;&gt;&lt;img alt=&quot;Post to Twitter&quot; class=&quot;nothumb&quot; src=&quot;http://www.zythepsary.com/wp-content/plugins/tweet-this/icons/en/twitter/tt-twitter-big1.png?8ef408&quot; /&gt;&lt;/a&gt; &lt;a class=&quot;tt&quot; href=&quot;http://www.facebook.com/share.php?u=http://www.zythepsary.com/techie/more-system-thinking-at-a-micro-level/&amp;amp;t=More+System+Thinking+%28at+a+Micro-Level%29&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot; title=&quot;Post to Facebook&quot;&gt;&lt;img alt=&quot;Post to Facebook&quot; class=&quot;nothumb&quot; src=&quot;http://www.zythepsary.com/wp-content/plugins/tweet-this/icons/en/facebook/tt-facebook-big1.png?8ef408&quot; /&gt;&lt;/a&gt; &lt;a class=&quot;tt&quot; href=&quot;http://reddit.com/submit?url=http://www.zythepsary.com/techie/more-system-thinking-at-a-micro-level/&amp;amp;title=More+System+Thinking+%28at+a+Micro-Level%29&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot; title=&quot;Post to Reddit&quot;&gt;&lt;img alt=&quot;Post to Reddit&quot; class=&quot;nothumb&quot; src=&quot;http://www.zythepsary.com/wp-content/plugins/tweet-this/icons/en/reddit/tt-reddit-big1.png?8ef408&quot; /&gt;&lt;/a&gt; &lt;a class=&quot;tt&quot; href=&quot;http://stumbleupon.com/submit?url=http://www.zythepsary.com/techie/more-system-thinking-at-a-micro-level/&amp;amp;title=More+System+Thinking+%28at+a+Micro-Level%29&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot; title=&quot;Post to StumbleUpon&quot;&gt;&lt;img alt=&quot;Post to StumbleUpon&quot; class=&quot;nothumb&quot; src=&quot;http://www.zythepsary.com/wp-content/plugins/tweet-this/icons/en/su/tt-su-big1.png?8ef408&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;/div&gt;</description>
	<pubDate>Tue, 07 Feb 2012 13:12:54 +0000</pubDate>
	<dc:creator>laura</dc:creator>
</item>
<item>
	<title>Identity at Mozilla: ID provider support now live on BrowserID</title>
	<guid isPermaLink="true">http://identity.mozilla.com/post/17207734786</guid>
	<link>http://identity.mozilla.com/post/17207734786</link>
	<description>&lt;p&gt;Last week we pushed out a BrowserID feature that gets us closer to the decentralized identity system we envision for the Web. But more than that, it enables a truly awesome user experience—registration flows go from 8 screens to one simple sign-in. Seriously! 
See for yourself:&lt;/p&gt;



&lt;p&gt;&lt;br /&gt;&lt;/p&gt;

&lt;h3&gt;Chicken or egg&lt;/h3&gt;

&lt;p&gt;Some context: Building a distributed system is a chicken and egg problem
 - you have to design a system that can demonstrate the power of your idea and the advantages of a distributed architecture while you bring in participants who will become actual nodes in the system.  That’s why, so far, BrowserID has operated with scaffolding that uses the BrowserID service itself to vouch for email addresses.&lt;/p&gt;

&lt;p&gt;With our latest update, however, we’re setting aside some of that scaffolding and allowing a fully decentralized system to emerge: Identity providers can become full-fledged participants in BrowserID and directly vouch for their users’ email addresses.&lt;/p&gt;

&lt;h3&gt;What’s changed and what you need to know&lt;/h3&gt;

&lt;p&gt;If you’re a website that’s already implemented BrowserID, you don’t have to do a thing: BrowserID is just better for you! Up to this point, Browser ID has been vouching for users’ email addresses on behalf of participating websites. Now email providers can directly vouch for their users, eliminating the need for an email confirmation step or a BrowserID password.&lt;/p&gt;

&lt;p&gt;Note that this change only takes effect when the email provider for a given address implements BrowserID support. Other email addresses continue to work in the same way they do today, with an email confirmation and password from the BrowserID service.&lt;/p&gt;

&lt;p&gt;With ID provider support, users will have a better, faster, smoother registration experience.&lt;/p&gt;

&lt;h3&gt;Give it a spin.&lt;/h3&gt;

&lt;p&gt;Attention email providers large or small: whether you’re an enterprise, an ISP, a  university or institution, you owe it to your users to check out this key new feature of BrowserID. Now it’s easy and incredibly simple for any email provider to become an identity provider for their users.&lt;/p&gt;

&lt;p&gt;Try out our demo ID provider at &lt;a href=&quot;https://eyedee.me/&quot;&gt;eyedee.me&lt;/a&gt; and your @eyedee.me address on any BrowserID site. Take a look at our &lt;a href=&quot;https://github.com/lloyd/eyedee.me&quot;&gt;code&lt;/a&gt; and &lt;a href=&quot;https://github.com/mozilla/browserid/blob/dev/docs/PRIMARY_PROTOCOL.md&quot;&gt;documentation&lt;/a&gt;. Let us know what you think via our &lt;a href=&quot;https://lists.mozilla.org/listinfo/dev-identity&quot;&gt;mailing list&lt;/a&gt;, IRC channel, or via the Twitter hashtag #browserid.&lt;/p&gt;</description>
	<pubDate>Tue, 07 Feb 2012 13:04:00 +0000</pubDate>
</item>
<item>
	<title>Dan Sinker: The Knight-Mozilla Partnership Evolves</title>
	<guid isPermaLink="true">http://sinker.tumblr.com/post/17207538743</guid>
	<link>http://sinker.tumblr.com/post/17207538743</link>
	<description>&lt;a href=&quot;http://mozillaopennews.org/&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://mozillaopennews.org/media/img/ONlogotype_wide2.png&quot; /&gt;&lt;/a&gt;
&lt;p&gt;Change is awesome—it’s a necessary component to anything remaining vital and a required ingredient to facilitate organic growth. And so it’s with real excitement that today I’m announcing changes to the &lt;a href=&quot;http://mozillaopennews.org/&quot; target=&quot;_blank&quot;&gt;Knight-Mozilla News Technology Partnership&lt;/a&gt;. 

&lt;/p&gt;&lt;p&gt;Before we get to the changes, some quick background: Conversations around the original Partnership began in 2010, with the program launching at the start of 2011. That means that the program design, by necessity, reflected 2010’s problem-sets. Two years is an eternity on the internet—it was time to rethink and retool for today. 

&lt;/p&gt;&lt;p&gt;The community around code in journalism is vastly different today than in 2010: There are a number of app teams in some of the world’s best news organizations that &lt;a href=&quot;http://sinker.tumblr.com/post/15050642729/hacker-journalism-2011-a-year-of-show-your-work&quot; target=&quot;_blank&quot;&gt;embrace the “show your work” philosophy&lt;/a&gt; of open-source; organizations like &lt;a href=&quot;http://hackshackers.com/&quot; target=&quot;_blank&quot;&gt;Hacks/Hackers&lt;/a&gt;, &lt;a href=&quot;http://ire.org/nicar/database-library/&quot; target=&quot;_blank&quot;&gt;NICAR&lt;/a&gt;, the &lt;a href=&quot;http://journalists.org/&quot; target=&quot;_blank&quot;&gt;Online News Association&lt;/a&gt;, and others are embracing the idea of hackfests and code-driven collaboration; and independent developers are starting to become interested in hacking journalism in earnest. These are awesome developments—this community is vital and growing.

&lt;/p&gt;&lt;p&gt;The changes to the &lt;a href=&quot;http://mozillaopennews.org/&quot; target=&quot;_blank&quot;&gt;Knight-Mozilla Partnership&lt;/a&gt; for 2012 engage this larger community in meaningful ways: 
&lt;/p&gt;&lt;ul&gt;&lt;li&gt;We’re helping to sponsor and organize more than a dozen hackdays around the world this year. Hackdays are one of the best ways to get developers from all over to experiment with the idea of coding for journalism, and a great way to get some open-source code back into the community.
&lt;/li&gt;&lt;li&gt;We’ll be increasing the opportunities for online learning that address the needs of the high-end developers we want to get interested in journalism, as well as a separate track for journalists who want to start becoming webmakers. 
&lt;/li&gt;&lt;li&gt;We’re also developing a stand-alone site, &lt;i&gt;Source,&lt;/i&gt; dedicated to shining a spotlight on the vital work going on in the journalism code community through case studies, walkthroughs, tutorials, code snippets, and much more.
&lt;/li&gt;&lt;li&gt;Of course, the biggest element of the Partnership, our Knight-Mozilla Fellowships, stays a vital center to the program. And in 2012 it grows—from five year-long fellowships to eight. There are some other changes in store for the Fellowships as well—that’ll be a topic for a blog post of its own soon.
&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;These aren’t small changes—they alter what we’re doing in a lot of exciting ways. In fact, they’re big enough that we decided a new name and identity was in order. So the Knight-Mozilla News Technology Partnership, also known as MoJo, is no longer—&lt;a href=&quot;http://mozillaopennews.org/&quot; target=&quot;_blank&quot;&gt;welcome to Knight-Mozilla OpenNews&lt;/a&gt;. A new year starts right now. &lt;/p&gt;</description>
	<pubDate>Tue, 07 Feb 2012 12:55:00 +0000</pubDate>
</item>
<item>
	<title>Bogomil Shopov: Why the heck we need marketing guys at our perfect IT company?</title>
	<guid isPermaLink="false">http://talkweb.eu/?p=1142</guid>
	<link>http://talkweb.eu/openweb/1142</link>
	<description>&lt;p&gt;I am sure you know this modern company structure scheme:&lt;/p&gt;
&lt;p&gt;&lt;img alt=&quot;modern company structure&quot; src=&quot;http://a7.sphotos.ak.fbcdn.net/hphotos-ak-ash4/215078_10150721837825346_405922250345_19463359_5102593_n.jpg&quot; /&gt;&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;пидорась == faggot&lt;br /&gt;
IT отдел == IT crowd/department/section&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;&lt;strong&gt;The past&lt;/strong&gt;&lt;br /&gt;
I remember when I was younger and I was writing some bytes for living. I still know that there are just 10 types of people in the world: Those who understand binary, and those who don’t.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;WTF?&lt;/strong&gt;&lt;br /&gt;
I was wondering all my life why the heck we need a marketing and community management droids at our team. We create a kick-ass products that we can sell them via our web-page using 33 lines of HTML code an an Paypal account.&lt;/p&gt;
&lt;p&gt;I am on the dark side of the force now and I know why.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;The truth in 5 points*&lt;br /&gt;
&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;If there is &lt;span style=&quot;text-decoration: underline;&quot;&gt;no marketing&lt;/span&gt; droids:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Less people know about us&lt;/strong&gt; – our clients are our friends and peers and visitors from Google are welcomed too.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;1 = Less money&lt;/strong&gt; – well, I don’t have to explain this, do I?&lt;/li&gt;
&lt;li&gt;2 = &lt;strong&gt;No salary++&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;3 = No beer money NOR I just &lt;strong&gt;got an invitation&lt;/strong&gt; to work for another company that has a great marketing department.&lt;/li&gt;
&lt;li&gt;R.I.P  GPWGFTCCW (Great Product with great functionalities that can change the world.)&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;If there is &lt;span style=&quot;text-decoration: underline;&quot;&gt;no community management&lt;/span&gt; guys:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;No&lt;/strong&gt; community around us = We have to test our product by ourselves in any possible OS, CPU, RAM, ….&lt;/li&gt;
&lt;li&gt;No &lt;strong&gt;community&lt;/strong&gt; around us = How to know what to improve and what the clients really need from our products?&lt;/li&gt;
&lt;li&gt;No community &lt;strong&gt;around&lt;/strong&gt; us = How to get ideas for new products?&lt;/li&gt;
&lt;li&gt;No community around &lt;strong&gt;us&lt;/strong&gt; = How to find someone that will tell you honestly “You’re wrong”&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;No community around us&lt;/strong&gt; = How to find someone who will help you with documentation, bug hunting, beer drinking, and to cheer you up – “You’re good. I love your product.”&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;*&lt;em&gt; I am so sorry, but someone should change the ordered list to start from 0/zero/. Starting from 1 is so lame.&lt;/em&gt;&lt;/p&gt;</description>
	<pubDate>Tue, 07 Feb 2012 10:26:30 +0000</pubDate>
	<dc:creator>Bogo</dc:creator>
</item>
<item>
	<title>Jet Villegas: How to get started hacking the Firefox browser engine</title>
	<guid isPermaLink="true">http://www.junglecode.net/?p=119</guid>
	<link>http://www.junglecode.net/?p=119</link>
	<description>&lt;p&gt;One of the &lt;a href=&quot;http://en.wikipedia.org/wiki/Gecko_%28layout_engine%29&quot; title=&quot;Gecko Layout&quot;&gt;Gecko&lt;/a&gt; Layout &amp;amp; Rendering team’s main responsibilities is the continuing development of &lt;a href=&quot;http://en.wikipedia.org/wiki/Cascading_Style_Sheets&quot; title=&quot;CSS wikipedia&quot;&gt;CSS&lt;/a&gt; in Firefox. I recently &lt;a href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=511909&quot; title=&quot;allow @-rules inside of @media and @-moz-document&quot;&gt;modified the CSS style system to allow nested rule parsing&lt;/a&gt;. This &lt;a href=&quot;https://bugzilla.mozilla.org/attachment.cgi?id=580586&amp;amp;action=diff&quot; title=&quot;code change&quot;&gt;bug fix&lt;/a&gt; taught me a lot about the CSS parser and how styles cascade through the rest of the Layout engine. It took me a little while to &lt;a href=&quot;https://developer.mozilla.org/En/Simple_Firefox_build&quot; title=&quot;MDN build instructions&quot;&gt;set up a dev environment&lt;/a&gt;, understand the bug, &lt;a href=&quot;https://bug511909.bugzilla.mozilla.org/attachment.cgi?id=580247&quot; title=&quot;HTML test cases&quot;&gt;write tests&lt;/a&gt;, get the code written, reviewed, and checked in. I now have a much better understanding of what it takes to move code through the Mozilla source trunk.&lt;/p&gt;
&lt;p&gt;I suspect that there are other programmers out there currently lurking around the Mozilla community, intimidated by the scale of the source tree, and wondering where to start hacking on Firefox. I highly recommend starting with the &lt;a href=&quot;https://wiki.mozilla.org/Gecko:Overview&quot; title=&quot;Gecko Overview&quot;&gt;Gecko Overview&lt;/a&gt; started by &lt;a href=&quot;http://dbaron.org/&quot; title=&quot;David Baron's weblog&quot;&gt;L.David Baron&lt;/a&gt;, Mozilla Principal Software Engineer, to help beginners understand the browser engine. Thanks, David!&lt;/p&gt;</description>
	<pubDate>Tue, 07 Feb 2012 09:58:53 +0000</pubDate>
	<dc:creator>jet</dc:creator>
</item>
<item>
	<title>hacks.mozilla.org: Using the Battery API – Part of WebAPI</title>
	<guid isPermaLink="false">http://hacks.mozilla.org/?p=11229</guid>
	<link>http://hacks.mozilla.org/2012/02/using-the-battery-api-part-of-webapi/</link>
	<description>&lt;p&gt;Detecting battery level in a device or computer can help you inform the user of the current status. Within &lt;a href=&quot;https://wiki.mozilla.org/WebAPI&quot;&gt;Mozilla’s WebAPI&lt;/a&gt;, we have the &lt;a href=&quot;https://wiki.mozilla.org/WebAPI/BatteryAPI&quot;&gt;Battery API&lt;/a&gt; to offer that possibility.&lt;/p&gt;
&lt;p&gt;&lt;span id=&quot;more-11229&quot;&gt;&lt;/span&gt;&lt;/p&gt;
&lt;h3&gt;Accessing the battery&lt;/h3&gt;
&lt;p&gt;First, it’s a matter of accessing the battery object:&lt;/p&gt;
&lt;p&gt;&lt;code&gt;var battery = navigator.mozBattery;&lt;/code&gt;&lt;/p&gt;
&lt;h3&gt;Properties&lt;/h3&gt;
&lt;p&gt;There are a few properties offered to detect the charging level of the battery in the device: &lt;/p&gt;
&lt;dl&gt;
&lt;dt&gt;Battery level&lt;/dt&gt;
&lt;dd&gt;Check the currenty battery level. Returns a value between 0 and 1.&lt;/dd&gt;
&lt;dt&gt;Battery charging&lt;/dt&gt;
&lt;dd&gt;A boolean, returning if the device/computer is currently being charged.&lt;/dd&gt;
&lt;dt&gt;Battery chargingTime&lt;/dt&gt;
&lt;dd&gt;Time left in seconds until it is fully charged. Available when charging.&lt;/dd&gt;
&lt;dt&gt;Battery dischargingTime&lt;/dt&gt;
&lt;dd&gt;Time left in seconds until it is discharged. Available when not charging.&lt;/dd&gt;
&lt;/dl&gt;
&lt;p&gt;&lt;code&gt;// Get battery level in percentage&lt;br /&gt;
    var batteryLevel = battery.level * 100 + &quot;%&quot;;&lt;/code&gt;&lt;/p&gt;&lt;code&gt;
&lt;p&gt;    // Get whether device is charging or not&lt;br /&gt;
    var chargingStatus = battery.charging;&lt;/p&gt;
&lt;p&gt;    // Time until the device is fully charged&lt;br /&gt;
    var batteryCharged = battery.chargingTime;&lt;/p&gt;
&lt;/code&gt;&lt;p&gt;&lt;code&gt;    // Time until the device is discharged&lt;br /&gt;
    var batteryDischarged = battery.dischargingTime;&lt;br /&gt;
&lt;/code&gt;&lt;/p&gt;
&lt;h3&gt;Events&lt;/h3&gt;
&lt;p&gt;There are four events available for detecting changes to the battery’s status:&lt;/p&gt;
&lt;dl&gt;
&lt;dt&gt;levelchange&lt;/dt&gt;
&lt;dd&gt;If the battery level changes.&lt;/dd&gt;
&lt;dt&gt;chargingchange&lt;/dt&gt;
&lt;dd&gt;Detect if the device went from being charged to unplugged, or vice versa.&lt;/dd&gt;
&lt;dt&gt;chargingtimechange&lt;/dt&gt;
&lt;dd&gt;When the device’s charging time changes (when plugged in)&lt;/dd&gt;
&lt;dt&gt;dischargingtimechange&lt;/dt&gt;
&lt;dd&gt;When the device’s discharging time changed (when unplugged)&lt;/dd&gt;
&lt;/dl&gt;
&lt;pre&gt;&lt;code&gt;battery.addEventLister(&quot;levelchange&quot;, function () {
    // Device's battery level changed
}, false);

battery.addEventListener(&quot;chargingchange&quot;, function () {
    // Device got plugged in to power, or unplugged
}, false);

battery.addEventListener(&quot;chargingtimechange&quot;, function () {
    // Device's charging time changed
}, false);

battery.addEventListener(&quot;dischargingtimechange&quot;, function () {
    // Device's discharging time changed
}, false);&lt;/code&gt;&lt;/pre&gt;
&lt;h3&gt;Device support&lt;/h3&gt;
&lt;p&gt;Battery API is supported in &lt;a href=&quot;http://www.mozilla.org/firefox/beta/&quot;&gt;Firefox Beta&lt;/a&gt; on:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Android (&lt;a href=&quot;http://www.mozilla.org/firefox/aurora/&quot;&gt;Firefox Aurora&lt;/a&gt; only, for now)&lt;/li&gt;
&lt;li&gt;Windows&lt;/li&gt;
&lt;li&gt;Linux (for those distros that have &lt;a href=&quot;http://upower.freedesktop.org/&quot;&gt;UPower&lt;/a&gt; installed – bundled with most nowadays)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Right now we don’t have anyone working on the Mac OS X implemementation, so if you have the skills, &lt;a href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=696045&quot;&gt;we’d love to see you contribute&lt;/a&gt;!&lt;/p&gt;
&lt;h3&gt;Demo and code&lt;/h3&gt;
&lt;p&gt;I’ve put together a basic &lt;a href=&quot;http://robnyman.github.com/battery/&quot;&gt;demo of the Battery API&lt;/a&gt; and code is also available in the &lt;a href=&quot;https://github.com/robnyman/robnyman.github.com/tree/master/battery&quot;&gt;Battery API repository on GitHub&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;If you don’t experience the expected results on your device, please &lt;a href=&quot;https://bugzilla.mozilla.org/enter_bug.cgi&quot;&gt;file a bug&lt;/a&gt; and we can look into it. This feature is experimental at this time, and may not be ready for production use just yet.&lt;/p&gt;</description>
	<pubDate>Tue, 07 Feb 2012 09:03:06 +0000</pubDate>
	<dc:creator>Robert Nyman</dc:creator>
</item>
<item>
	<title>Bonjour Mozilla: Tim Taubert et Felipe Gomes</title>
	<guid isPermaLink="false">urn:md5:9c87717dfccdfb0abe14d22e168a0e26</guid>
	<link>http://bonjourmozilla.fr/?post/2012/02/03/Joyeux-lurons</link>
	<description>&lt;p&gt;&lt;a href=&quot;http://www.flickr.com/photos/autonome/6800564297/in/photostream&quot; hreflang=&quot;en&quot;&gt;&lt;img alt=&quot;tim+felipe&quot; src=&quot;http://bonjourmozilla.fr/public/.tim_felipe_m.jpg&quot; title=&quot;tim+felipe, fév. 2012&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;em&gt;(Photo : autonome)&lt;/em&gt;&lt;/p&gt;
&lt;p lang=&quot;fr&quot;&gt;La semaine dernière, en préambule du Fosdem, l’équipe performance et une partie de l’équipe frontend de Firefox étaient en goguette à Bruxelles. Enfin… en goguette… Nos vaillants développeurs se sont astreints à une difficile semaine de travail (&lt;a href=&quot;http://www.youtube.com/watch?v=AjHKGdzfe2s&amp;amp;feature=youtu.be&amp;amp;hd=1&quot; hreflang=&quot;en&quot;&gt;une vidéo ici&lt;/a&gt;), entrecoupée de moments de détente. Comme ici, &lt;a href=&quot;http://timtaubert.de/&quot; hreflang=&quot;en&quot;&gt;Tim Taubert&lt;/a&gt; et Felipe Gomes. Tous deux travaillent sur l’interface utilisateur de Firefox. &lt;/p&gt;
&lt;p lang=&quot;fr&quot;&gt;Depuis Berlin, où il réside, Tim a pour habitude de coder en musique. Il conjugue ainsi ses 2 passions : le son, et le code. Tim est libriste affirmé, contributeur à Gentoo, ainsi qu’au noyau Linux… avant de rejoindre le Panda Roux qu’il décrit comme un “compagnon loyal”. Bonjour Mozilla vous conseille de lire son &lt;a href=&quot;http://timtaubert.de/2012/01/how-i-became-a-firefox-contributor/&quot; hreflang=&quot;en&quot;&gt;billet&lt;/a&gt; sur la façon dont il est devenu un contributeur Firefox, très instructif.&lt;/p&gt;
&lt;p lang=&quot;fr&quot;&gt;De son côté, &lt;a href=&quot;http://felipe.wordpress.com/&quot; hreflang=&quot;en&quot;&gt;Felipe Gomes&lt;/a&gt; est un jeune développeur, tout juste diplômé, qui n’a qu’une ambition: “aider Mozilla à rendre le Web meilleur”. Jeune diplômé, donc, mais contributeur de longue date, et nouvel embauché. Felipe a fait le code initial pour gérer le multi-touches dans Mobile, alors qu’il était stagiaire. Aujourd’hui, le voici donc dans l’équipe frontend, où sa bonne humeur est très appréciée !&lt;/p&gt;
&lt;p lang=&quot;fr&quot;&gt;Bonjour Tim, et bonjour Felipe ! &lt;/p&gt;
&lt;p lang=&quot;fr&quot;&gt;&lt;em&gt;PS : et merci à Mike Hommey (Glandium) pour son aide !&lt;/em&gt;&lt;/p&gt;
&lt;hr style=&quot;width: 50%;&quot; /&gt;
&lt;p lang=&quot;en&quot;&gt;Last week, as a preamble to Fosdem, the Firefox performance team and a part of the frontend team were gallivanting in Brussels. Well, not exactly… Our brave developers compelled themselves to a hard work week (&lt;a href=&quot;http://www.youtube.com/watch?v=AjHKGdzfe2s&amp;amp;feature=youtu.be&amp;amp;hd=1&quot;&gt;a video here&lt;/a&gt;), interrupted by some recreation times. Like here &lt;a href=&quot;http://timtaubert.de/&quot; hreflang=&quot;en&quot;&gt;Tim Taubert&lt;/a&gt; and Felipe Gomes. Both are working on Firefox user interface.&lt;/p&gt;
&lt;p lang=&quot;en&quot;&gt;From Berlin, where he lives, Tim is used to listening music while he writes code. He combines his two passions as well: sound and code. Tim is a Free Software advocate. He contributed to Gentoo, and to the Linux kernel… before joining the Red Panda which he describes as a “loyal companion”. Bonjour Mozilla advises you to read &lt;a href=&quot;http://timtaubert.de/2012/01/how-i-became-a-firefox-contributor/&quot;&gt;his post&lt;/a&gt; about how he became a Firefox contributor: very informative.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://felipe.wordpress.com/&quot; hreflang=&quot;en&quot;&gt;Felipe Gomes&lt;/a&gt;, on the other hand, is a young, recent graduate  developer, whos one and one ambition is to “help Mozilla make the Web better.” Recent graduate, then, but long-time contributor and new employee. Felipe created ​​the initial code to handle multi-touch in Mobile when he was an intern. Today, he is part of the frontend team, where his good humor is much appreciated!&lt;/p&gt;
&lt;p lang=&quot;en&quot;&gt;Bonjour Tim, and good morning Felipe!&lt;/p&gt;
&lt;p lang=&quot;en&quot;&gt;&lt;em&gt;PS: thank you to Mike Hommey (Glandium) for helping!&lt;/em&gt;&lt;/p&gt;</description>
	<pubDate>Tue, 07 Feb 2012 09:00:00 +0000</pubDate>
	<dc:creator>clarista</dc:creator>
</item>
<item>
	<title>Paul Rouget: Bugzilla Activity Report</title>
	<guid isPermaLink="false">http://paulrouget.come/bzreport</guid>
	<link>http://paulrouget.com/e/bzreport</link>
	<description>&lt;p&gt;Bugzilla has an interesting feature: &lt;a href=&quot;https://bugzilla.mozilla.org/page.cgi?id=user_activity.html&quot;&gt;User Activity Report&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;I didn't know about it until someone mentioned it on IRC yesterday. It's quite useful if you keep track of your daily/weekly
work.&lt;/p&gt;

&lt;p&gt;Also, if you want a prettier output, here is a script that will help. Run it in Scratchpad (Shift-F4):&lt;/p&gt;</description>
	<pubDate>Tue, 07 Feb 2012 08:00:00 +0000</pubDate>
	<dc:creator>Paul Rouget</dc:creator>
</item>
<item>
	<title>Gian-Carlo Pascutto: New SafeBrowsing backend</title>
	<guid isPermaLink="false">tag:blogger.com,1999:blog-5232577621384962517.post-1496360096712860523</guid>
	<link>http://www.morbo.org/2012/02/new-safebrowsing-backend.html</link>
	<description>Today, the &lt;a href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=673470&quot;&gt;SafeBrowsing rewrite&lt;/a&gt; me and Dave Camp have been working on for several months finally landed in the Mozilla Nightlies, and it should be part of the Firefox 13 release, narrowly having missed Firefox 12. It reduces the disk footprint of our anti-phishing and malware protection from about 40-50Mb to 5-6Mb, changes all related I/O from pure random access to a single serial read, and refactors a single 4000+ line C++ file into a bunch of modules. An earlier part of this work landed in Firefox 9 and reduced the memory footprint from potentially up to 40-100M to 1.2M, as well as removing the need to do some random I/O on every page load.&lt;br /&gt;Aside from the performance gains, the reduced footprint is an essential step to enable us to extend our SafeBrowsing protection to Mobile devices, which is why we undertook this in the first place.&lt;br /&gt;&lt;br /&gt;It was an interesting assignment, and being my first real project for Mozilla, a bit more involved than we thought at first. I blogged in July last year about our plans for this feature. Some of the optimizations we had in mind didn't work out, while others did end up being implemented. &lt;br /&gt;&lt;br /&gt;&lt;b&gt;Eliminating the host keys&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;One of the things touched upon in the &lt;a href=&quot;http://www.morbo.org/2011/07/bringing-safebrowsing-to-mobile-devies.html&quot;&gt;previous blog post&lt;b&gt; &lt;/b&gt;&lt;/a&gt;was that we used to store 2 32-bit hash prefixes for every blocked entry: one encoding only the host and the other encoding the full URL. Strictly speaking, we only need the full URL part. The old SQLite based code used the host key to SELECT and load all keys for a certain domain at once, but our new in-memory prefix-trie based approach has no such needs. However, as Justin Lebar alread &lt;a href=&quot;http://www.morbo.org/2011/07/bringing-safebrowsing-to-mobile-devies.html?showComment=1312385493979#c2560968459163438363&quot;&gt;touched upon in the previous blog&lt;/a&gt;, this does significantly increase the likelihood that we get a false positive. We now expect to have a false positive for every 7000 URLs visited. This will not cause us to block out any legitimate sites, as any positive hit in the local database is queried against the full, 256-bit hash at a remote server (hosted by Google, who provides the SafeBrowsing data). &lt;br /&gt;&lt;br /&gt;This does mean we will increase the traffic to this remote server by a large factor. Scary as it may sound, some back-of-the-envelope estimates shows its not really that bad: say there are about 420M Firefox users, browsing for 8h/day. They load on average 1 URL per second. This means about 140M URL loads per second, causing about 20000 hash requests per second to Google. Google confirmed they can handle this with ease.&lt;br /&gt;&lt;br /&gt;Now, there is still a problem when doing this: any collision will appear for all users on exactly the same URLs. This means that if you're unlucky enough to be a a site owner that has an URL that happens to collide, every visitor to your site will have a slightly slower browsing experience. Even worse, should you get linked in a popular forum, or be in the news, there will be a storm of false positives to the server all at once. We thought this to be problematic enough that we implemented a workaround: every user will generate a unique randomization key and re-randomize all his hashes with it. Collisions will happen on a different URL for every user, and consequently also be much better spread through time.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Eliminating chunk numbers&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;After some discussion, it turned out eliminating the chunk numbers isn't as easy as hoped. First of all, the observation in the previous blog posts that chunk expires only seem to happen when the chunks are in fact old, doesn't hold after observing the protocol for a longer time. It also happens very regularly that a chunk is added, deleted, and added back again, particularly in the malware list. In those cases, it is important to know which add chunk a delete is referring to, so it won't delete the later add. It would still be possible to deal with that if the server recalculates the prefixes to send for every client, but this is less efficient on the server side compared to the bigger, more static downloads that the server can point to now, and which are easily mirrored on Google's network.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Sub prefixes compress harder&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;In line with the previous paragraph, it happens that we receive sub prefixes for add prefixes we never received. These must be kept around until we receive an expire for them, as we can't know if the add they belong to is outdated or just not downloaded yet. Note also that we usually receive updates backwards, i.e. the most recent data will be sent to the clients first, as it's the one believed to be most relevant. Because sub prefixes contain both an add and a sub chunk, they are also bigger than add prefixes. This causes the eventual size of the database to be a bit more than the minimum guessed in the previous blog post, which more or less ignored sub prefixes entirely. If you peek in your profile, you can see that the goog-malware-shavar.sbstore will tend to be the biggest file: this is exactly due the many sub prefixes in the malware list.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Detection performance&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;It should be noted that these improvements are purely focused on the footprint of the feature. They will improve the resource usage of the browser, but they do not change the detection performance in any way.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;NSS Labs Report&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;In what is somewhat of a funny coincidence, the same day I am writing this blog NSS Labs published a &lt;a href=&quot;http://www.nsslabs.com/assets/noreg-reports/Did%20Google%20pull%20a%20fast%20one%20on%20Firefox%20and%20Safari%20users_.pdf&quot;&gt;report &quot;Did Google pull a fast one on Firefox and Safari users?&quot;&lt;/a&gt;. The main points of this report shouldn't be much news as I pointed out over half a year ago the discrepancy between Chrome, and Firefox and Safari in my &lt;a href=&quot;http://www.morbo.org/2011/08/note-on-malware-detection-performance.html&quot;&gt;previous blog post, as well the reason&lt;/a&gt; (&quot;Performance differences between Firefox, Chrome and Safari&quot;). &lt;br /&gt;&lt;br /&gt;I have two remarks to the report: one, as I've already pointed out in the past, false positive control is an important part of effective malware detection. Internet Explorer flags many malware sites, but it also&lt;a href=&quot;http://forums.dropbox.com/topic.php?id=52107&quot;&gt; flags legitimate sites&lt;/a&gt;, undermining the true effectiveness.&lt;br /&gt;&lt;br /&gt;Secondly, the problem isn't so much that the &quot;new&quot; SafeBrowsing protocol is proprietary or non-documented; it's implemented in Chrome and Chromium is open source, so at the very worst we can go study that code to see how to implement it. The problem is that permission is required to use Google's SafeBrowsing servers, and &lt;strike&gt;Firefox does NOT have permission to use the download protection list&lt;/strike&gt;. Edit: Please see the statement from Ian Fette below.&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img alt=&quot;&quot; height=&quot;1&quot; src=&quot;https://blogger.googleusercontent.com/tracker/5232577621384962517-1496360096712860523?l=www.morbo.org&quot; width=&quot;1&quot; /&gt;&lt;/div&gt;</description>
	<pubDate>Tue, 07 Feb 2012 07:45:35 +0000</pubDate>
	<author>noreply@blogger.com (Gian-Carlo Pascutto)</author>
</item>
<item>
	<title>Smokey Ardisson: Dear Apple</title>
	<guid isPermaLink="false">http://www.ardisson.org/afkar/?p=791</guid>
	<link>http://www.ardisson.org/afkar/2012/02/07/dear-apple/</link>
	<description>&lt;p&gt;Someday—in my lifetime—will you please make the current, native, recommended &lt;code&gt;.sdef&lt;/code&gt; scripting definition format less &lt;a href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=557057#c21&quot;&gt;buggy&lt;/a&gt; than the old, less powerful, and implicitly not recommended &lt;code&gt;.scriptSuite&lt;/code&gt; / &lt;code&gt;.scriptTerminology&lt;/code&gt; format?&lt;/p&gt;
&lt;p&gt;Thank you.  That is all.&lt;/p&gt;</description>
	<pubDate>Tue, 07 Feb 2012 07:34:06 +0000</pubDate>
	<dc:creator>Smokey</dc:creator>
</item>
<item>
	<title>Gen Kanai: Mozilla Myanmar at Barcamp Mandalay</title>
	<guid isPermaLink="false">http://blog.mozilla.com/gen/?p=722</guid>
	<link>http://blog.mozilla.com/gen/2012/02/07/mozilla-myanmar-at-barcamp-mandalay/</link>
	<description>&lt;p&gt;Chit and Thanyawzinmin (Tin Aung Lin) from the Mozilla community in Myanmar recently represented Mozilla at BarCamp Mandalay. Please go over to Chit’s blog to read all about it!&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;https://ahkeno.wordpress.com/2012/02/06/mozilla-myanmar-at-barcamp-mandalay/&quot;&gt;https://ahkeno.wordpress.com/2012/02/06/mozilla-myanmar-at-barcamp-mandalay/&lt;/a&gt;&lt;/p&gt;</description>
	<pubDate>Tue, 07 Feb 2012 06:11:29 +0000</pubDate>
	<dc:creator>Gen Kanai</dc:creator>
</item>
<item>
	<title>Jess Klein: Storytelling- Day One of Design Sprint &quot;Webmaking for Journalists&quot;</title>
	<guid isPermaLink="false">tag:blogger.com,1999:blog-25558782.post-6449647738025351323</guid>
	<link>http://jessicaklein.blogspot.com/2012/02/storytelling-day-one-of-design-sprint.html</link>
	<description>&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;Today was the first day of the Open News - Webmaking 101 design sprint. Thanks to &lt;a href=&quot;http://explorecreateshare.org/&quot;&gt;Hive NYC &lt;/a&gt;member &lt;a href=&quot;http://peoplesproductionhouse.org/&quot;&gt;Peoples Production House&lt;/a&gt; for graciously volunteering to host us! The team for our sprint includes:&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;http://1.bp.blogspot.com/-fxovPADGXCw/TzCkenX6bdI/AAAAAAAABC8/bmiLHWGzGR0/s1600/crew.jpg&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;316&quot; src=&quot;http://1.bp.blogspot.com/-fxovPADGXCw/TzCkenX6bdI/AAAAAAAABC8/bmiLHWGzGR0/s640/crew.jpg&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;i&gt;pictured: erin knight, chris lawrence, michelle levesque, dan sinker, atul varma, brian brennan, jess klein and mark surman (not included are some top secret special guests who shall be named later this week!)&lt;/i&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt; We started the day airing out our joint concerns about the direction of the project. It turns out, I wasn't the only one who was concerned about the tool not making sense within the range of potential tools that we might be developing at Mozilla. We all discussed what a journalist would want to make- and agreed that a journalist would want to use the web to tell their story. While this might sound simplistic, this is a topic that I am much more comfortable developing a project around compared to something like Webmaking 101 for Journalists. As I talked about in my last post, here is an example of a potential user who has a deep interest and motivation to make something (a story) using the web- and thus there is the opportunity to embed learning into this moment. Also, I think that the idea of storytelling has the potential to reach different kinds of learners (although it could certainly appeal to journalists)- including filmmakers, poets, youth etc. &lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;http://2.bp.blogspot.com/-TFD6ZWxSaz4/TzCaN_bbISI/AAAAAAAABCs/Lir1M22XMQM/s1600/Screen+Shot+2012-02-06+at+10.27.22+PM.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;286&quot; src=&quot;http://2.bp.blogspot.com/-TFD6ZWxSaz4/TzCaN_bbISI/AAAAAAAABCs/Lir1M22XMQM/s320/Screen+Shot+2012-02-06+at+10.27.22+PM.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;We came up with a few goals for the week, including:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;create a dirty working prototype- it doesn't have to be pretty, just having some functionality&lt;/li&gt;&lt;li&gt;designing some badges for the prototype &lt;/li&gt;&lt;/ul&gt;After determining our goals, we set to work reviewing the learning objectives for the project. This is a key thing for us to to review, because we wanted to make sure that the project fell within the &lt;a href=&quot;http://rwxweb.wordpress.com/2012/01/30/web-literacy-skills-now-in-diagram-form/&quot;&gt;scope of web literacies that are being defined for Mozilla.  &lt;/a&gt;We had a good conversation about what could be included and what was out of scope for the project. Here is a little venn diagram that shows the domains within Mozilla's web literacies that this particular project will be addressing.&lt;br /&gt;&lt;br /&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;http://2.bp.blogspot.com/-edQvjLrhKXA/TzCeg3HQeOI/AAAAAAAABC0/QWjMEUvCdao/s1600/Screen+Shot+2012-02-06+at+10.45.50+PM.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;412&quot; src=&quot;http://2.bp.blogspot.com/-edQvjLrhKXA/TzCeg3HQeOI/AAAAAAAABC0/QWjMEUvCdao/s640/Screen+Shot+2012-02-06+at+10.45.50+PM.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;Essentially, there are 6 clusters/modules/ steps that we will be exploring through this exercise in helping people to tell their story through the web (below). While we will offer the skills in a series, ideally the user will have the opportunity to take these modules out of any particular sequence.&lt;br /&gt;&lt;ol&gt;&lt;li&gt;All about Tags&lt;/li&gt;&lt;li&gt;Style Your Stuff&lt;/li&gt;&lt;li&gt;Images&lt;/li&gt;&lt;li&gt;Links and the Open Web&lt;/li&gt;&lt;li&gt;Embedding and Beyond&lt;/li&gt;&lt;li&gt;Sharing&lt;/li&gt;&lt;/ol&gt;In our first brainstorm, we discussed using these 6 modules as guides for badge distribution within the context of the prototype.&lt;br /&gt;&lt;br /&gt;Tomorrow we will be mapping these modules and learning objectives to storyboards for the instructional overlays and starting to work on developing out the content and copy for that section. I am really excited with the direction that this project is going and with our re-envisioning of the learning objectives as well as scope. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img alt=&quot;&quot; height=&quot;1&quot; src=&quot;https://blogger.googleusercontent.com/tracker/25558782-6449647738025351323?l=jessicaklein.blogspot.com&quot; width=&quot;1&quot; /&gt;&lt;/div&gt;</description>
	<pubDate>Tue, 07 Feb 2012 04:12:51 +0000</pubDate>
	<author>noreply@blogger.com (Jess)</author>
</item>
<item>
	<title>Meeting Notes from the Mozilla community: Mozilla Project Meeting Minutes: 2012-02-06</title>
	<guid isPermaLink="false">https://blog.mozilla.com/meeting-notes/archives/763</guid>
	<link>http://blog.mozilla.com/meeting-notes/archives/763</link>
	<description>&lt;div&gt;
&lt;h3&gt;WeeklyUpdates/2012-02-06&lt;/h3&gt;
&lt;div&gt;&lt;span class=&quot;subpages&quot;&gt;&amp;lt; &lt;a href=&quot;https://wiki.mozilla.org/WeeklyUpdates&quot; title=&quot;WeeklyUpdates&quot;&gt;WeeklyUpdates&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href=&quot;https://wiki.mozilla.org/WeeklyUpdates/2012-01-30&quot; title=&quot;WeeklyUpdates/2012-01-30&quot;&gt;« previous week&lt;/a&gt; | &lt;a href=&quot;https://wiki.mozilla.org/WeeklyUpdates&quot; title=&quot;WeeklyUpdates&quot;&gt;index&lt;/a&gt; | &lt;a class=&quot;new&quot; href=&quot;https://wiki.mozilla.org/index.php?title=WeeklyUpdates/2012-02-13&amp;amp;action=edit&amp;amp;redlink=1&quot; title=&quot;WeeklyUpdates/2012-02-13 (page does not exist)&quot;&gt;next week »&lt;/a&gt;
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt; &lt;a href=&quot;https://wiki.mozilla.org/Teleconferencing&quot; title=&quot;Teleconferencing&quot;&gt;Dial-in&lt;/a&gt;: conference# 8600&lt;p&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt; US/International: +1 650 903 0800 x92 Conf# 8600&lt;p&gt;&lt;/p&gt;
&lt;/li&gt;&lt;li&gt; US toll free: +1 800 707 2533 (pin 369) Conf# 8600
&lt;/li&gt;&lt;li&gt; Canada: +1 416 848 3114 x92 Conf# 8600
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;table class=&quot;toc&quot; id=&quot;toc&quot;&gt;
&lt;tbody&gt;&lt;tr&gt;
&lt;td&gt;
&lt;div&gt;
&lt;h4&gt;Contents&lt;/h4&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li class=&quot;toclevel-1 tocsection-1&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/WeeklyUpdates/2012-02-06#Friends_of_the_Tree&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;1&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Friends of the Tree&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-1 tocsection-2&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/WeeklyUpdates/2012-02-06#Upcoming_Events&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;2&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Upcoming Events&lt;/span&gt;&lt;/a&gt;
&lt;ul&gt;
&lt;li class=&quot;toclevel-2 tocsection-3&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/WeeklyUpdates/2012-02-06#This_Week&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;2.1&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;This Week&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-2 tocsection-4&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/WeeklyUpdates/2012-02-06#Monday.2C_06_February&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;2.2&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Monday, 06 February&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-2 tocsection-5&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/WeeklyUpdates/2012-02-06#Tuesday.2C_07_February&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;2.3&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Tuesday, 07 February&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-2 tocsection-6&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/WeeklyUpdates/2012-02-06#Wednesday.2C_08_February&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;2.4&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Wednesday, 08 February&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-2 tocsection-7&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/WeeklyUpdates/2012-02-06#Thursday.2C_09_February&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;2.5&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Thursday, 09 February&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-2 tocsection-8&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/WeeklyUpdates/2012-02-06#Friday.2C_10_February&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;2.6&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Friday, 10 February&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-2 tocsection-9&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/WeeklyUpdates/2012-02-06#Next_Week&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;2.7&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Next Week&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li class=&quot;toclevel-1 tocsection-10&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/WeeklyUpdates/2012-02-06#Product_Status_Updates&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;3&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Product Status Updates&lt;/span&gt;&lt;/a&gt;
&lt;ul&gt;
&lt;li class=&quot;toclevel-2 tocsection-11&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/WeeklyUpdates/2012-02-06#Firefox_Desktop&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;3.1&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Firefox Desktop&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-2 tocsection-12&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/WeeklyUpdates/2012-02-06#Firefox_Android&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;3.2&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Firefox Android&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-2 tocsection-13&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/WeeklyUpdates/2012-02-06#Thunderbird&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;3.3&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Thunderbird&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-2 tocsection-14&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/WeeklyUpdates/2012-02-06#Older_Branch_Work&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;3.4&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Older Branch Work&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-2 tocsection-15&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/WeeklyUpdates/2012-02-06#Drumbeat&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;3.5&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Drumbeat&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-2 tocsection-16&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/WeeklyUpdates/2012-02-06#Identity&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;3.6&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Identity&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li class=&quot;toclevel-1 tocsection-17&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/WeeklyUpdates/2012-02-06#Speakers&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;4&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Speakers&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-1 tocsection-18&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/WeeklyUpdates/2012-02-06#Status_Updates_By_Team&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;5&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Status Updates By Team&lt;/span&gt;&lt;/a&gt;
&lt;ul&gt;
&lt;li class=&quot;toclevel-2 tocsection-19&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/WeeklyUpdates/2012-02-06#Firefox&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;5.1&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Firefox&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-2 tocsection-20&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/WeeklyUpdates/2012-02-06#Platform&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;5.2&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Platform&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-2 tocsection-21&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/WeeklyUpdates/2012-02-06#Messaging&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;5.3&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Messaging&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-2 tocsection-22&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/WeeklyUpdates/2012-02-06#Mobile&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;5.4&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Mobile&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-2 tocsection-23&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/WeeklyUpdates/2012-02-06#IT&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;5.5&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;IT&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-2 tocsection-24&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/WeeklyUpdates/2012-02-06#Release_Engineering&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;5.6&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Release Engineering&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-2 tocsection-25&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/WeeklyUpdates/2012-02-06#QA&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;5.7&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;QA&lt;/span&gt;&lt;/a&gt;
&lt;ul&gt;
&lt;li class=&quot;toclevel-3 tocsection-26&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/WeeklyUpdates/2012-02-06#Test_Execution&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;5.7.1&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Test Execution&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-3 tocsection-27&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/WeeklyUpdates/2012-02-06#WebQA&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;5.7.2&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;WebQA&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-3 tocsection-28&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/WeeklyUpdates/2012-02-06#QA_Community&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;5.7.3&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;QA Community&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-3 tocsection-29&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/WeeklyUpdates/2012-02-06#Automation_Services&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;5.7.4&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Automation Services&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li class=&quot;toclevel-2 tocsection-30&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/WeeklyUpdates/2012-02-06#Automation_.26_Tools&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;5.8&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Automation &amp;amp; Tools&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-2 tocsection-31&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/WeeklyUpdates/2012-02-06#Security&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;5.9&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Security&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-2 tocsection-32&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/WeeklyUpdates/2012-02-06#Engagement&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;5.10&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Engagement&lt;/span&gt;&lt;/a&gt;
&lt;ul&gt;
&lt;li class=&quot;toclevel-3 tocsection-33&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/WeeklyUpdates/2012-02-06#PR&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;5.10.1&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;PR&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-3 tocsection-34&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/WeeklyUpdates/2012-02-06#Events&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;5.10.2&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Events&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-3 tocsection-35&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/WeeklyUpdates/2012-02-06#Creative_Team&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;5.10.3&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Creative Team&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-3 tocsection-36&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/WeeklyUpdates/2012-02-06#Community_Marketing&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;5.10.4&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Community Marketing&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li class=&quot;toclevel-2 tocsection-37&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/WeeklyUpdates/2012-02-06#Support&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;5.11&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Support&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-2 tocsection-38&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/WeeklyUpdates/2012-02-06#Metrics&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;5.12&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Metrics&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-2 tocsection-39&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/WeeklyUpdates/2012-02-06#Evangelism&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;5.13&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Evangelism&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-2 tocsection-40&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/WeeklyUpdates/2012-02-06#Labs&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;5.14&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Labs&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-2 tocsection-41&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/WeeklyUpdates/2012-02-06#Apps&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;5.15&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Apps&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-2 tocsection-42&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/WeeklyUpdates/2012-02-06#Developer_Tools&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;5.16&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Developer Tools&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-2 tocsection-43&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/WeeklyUpdates/2012-02-06#Add-ons&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;5.17&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Add-ons&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-2 tocsection-44&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/WeeklyUpdates/2012-02-06#Webdev&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;5.18&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Webdev&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-2 tocsection-45&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/WeeklyUpdates/2012-02-06#L10n&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;5.19&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;L10n&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-2 tocsection-46&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/WeeklyUpdates/2012-02-06#People_Team&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;5.20&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;People Team&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-2 tocsection-47&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/WeeklyUpdates/2012-02-06#WebFWD&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;5.21&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;WebFWD&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li class=&quot;toclevel-1 tocsection-48&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/WeeklyUpdates/2012-02-06#Introducing_New_Hires&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;6&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Introducing New Hires&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-1 tocsection-49&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/WeeklyUpdates/2012-02-06#Introducing_New_Interns&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;7&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Introducing New Interns&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-1 tocsection-50&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/WeeklyUpdates/2012-02-06#Foundation_Updates&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;8&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Foundation Updates&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li class=&quot;toclevel-1 tocsection-51&quot;&gt;&lt;a href=&quot;https://wiki.mozilla.org/WeeklyUpdates/2012-02-06#Roundtable&quot;&gt;&lt;span class=&quot;tocnumber&quot;&gt;9&lt;/span&gt; &lt;span class=&quot;toctext&quot;&gt;Roundtable&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;
&lt;p&gt;
&lt;/p&gt;
&lt;h4&gt; &lt;span class=&quot;mw-headline&quot;&gt; Friends of the Tree &lt;a class=&quot;image&quot; href=&quot;https://wiki.mozilla.org/File:Tree.gif&quot; title=&quot;Friends of the Tree&quot;&gt;&lt;/a&gt; &lt;/span&gt;&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt; Aleksej, gaby2300, lcamacho, Swarnava for triaging the most Firefox 11 bugs during QA’s Firefox 11.0b1 testday last Friday&lt;p&gt;&lt;/p&gt;
&lt;/li&gt;&lt;li&gt; Ed Morley for all around awesomeness.
&lt;/li&gt;&lt;/ul&gt;
&lt;h4&gt; &lt;span class=&quot;mw-headline&quot;&gt; Upcoming Events &lt;/span&gt;&lt;/h4&gt;
&lt;h5&gt; &lt;span class=&quot;mw-headline&quot;&gt; This Week &lt;/span&gt;&lt;/h5&gt;
&lt;h5&gt; &lt;span class=&quot;mw-headline&quot;&gt; Monday, 06 February &lt;/span&gt;&lt;/h5&gt;
&lt;h5&gt; &lt;span class=&quot;mw-headline&quot;&gt; Tuesday, 07 February &lt;/span&gt;&lt;/h5&gt;
&lt;h5&gt; &lt;span class=&quot;mw-headline&quot;&gt; Wednesday, 08 February &lt;/span&gt;&lt;/h5&gt;
&lt;h5&gt; &lt;span class=&quot;mw-headline&quot;&gt; Thursday, 09 February &lt;/span&gt;&lt;/h5&gt;
&lt;h5&gt; &lt;span class=&quot;mw-headline&quot;&gt; Friday, 10 February &lt;/span&gt;&lt;/h5&gt;
&lt;h5&gt; &lt;span class=&quot;mw-headline&quot;&gt; Next Week &lt;/span&gt;&lt;/h5&gt;
&lt;h4&gt; &lt;span class=&quot;mw-headline&quot;&gt; Product Status Updates &lt;/span&gt;&lt;/h4&gt;
&lt;h5&gt; &lt;span class=&quot;mw-headline&quot;&gt; Firefox Desktop &lt;/span&gt;&lt;/h5&gt;
&lt;p&gt;&lt;i&gt;Speaker Location: Toronto (johnath)&lt;/i&gt;
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt; Firefox 10 went out last week, with addons compatible by default&lt;p&gt;&lt;/p&gt;
&lt;/li&gt;&lt;li&gt; Dig Lawrence’s &lt;a class=&quot;external text&quot; href=&quot;http://lawrencemandel.com/2012/02/03/improving-the-firefox-update-experience/&quot; rel=&quot;nofollow&quot;&gt;blog post about silent updates&lt;/a&gt;, most of which has already landed
&lt;/li&gt;&lt;li&gt; Then check out Jared’s &lt;a class=&quot;external text&quot; href=&quot;http://msujaws.wordpress.com/2012/02/03/firefox-performancesnappy-work-week-recap/&quot; rel=&quot;nofollow&quot;&gt;performance work week recap&lt;/a&gt;
&lt;/li&gt;&lt;li&gt; And then try out the &lt;a class=&quot;new&quot; href=&quot;https://wiki.mozilla.org/index.php?title=Firefox/Features/New_Tab_Page_new_tab_page&amp;amp;action=edit&amp;amp;redlink=1&quot; title=&quot;Firefox/Features/New Tab Page new tab page (page does not exist)&quot;&gt;Firefox/Features/New_Tab_Page new tab page&lt;/a&gt; (&lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=455553&quot; rel=&quot;nofollow&quot;&gt;bug 455553&lt;/a&gt;) on nightly.
&lt;/li&gt;&lt;li&gt; Oh, and gcp just &lt;a class=&quot;external text&quot; href=&quot;http://www.morbo.org/2012/02/new-safebrowsing-backend.html&quot; rel=&quot;nofollow&quot;&gt;replaced the safebrowsing database with a flat file&lt;/a&gt; (&lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=673470&quot; rel=&quot;nofollow&quot;&gt;bug 673470&lt;/a&gt;), resulting in better IO performance and reducing the DB from 60MB to 6MB.
&lt;/li&gt;&lt;li&gt; &lt;i&gt;I thought I told you that we won’t stop.&lt;/i&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;h5&gt; &lt;span class=&quot;mw-headline&quot;&gt; Firefox Android &lt;/span&gt;&lt;/h5&gt;
&lt;p&gt;&lt;i&gt;Speaker Location: Toronto (johnath)&lt;/i&gt;
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt; Beta build with Native UI should happen this week&lt;p&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt; It’ll be en-US only while we figure out the best way to package/distribute multiple locales
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;h5&gt; &lt;span class=&quot;mw-headline&quot;&gt; Thunderbird &lt;/span&gt;&lt;/h5&gt;
&lt;p&gt;&lt;i&gt;Speaker Location:&lt;/i&gt; Toronto (bwinton)
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt; Thunderbird team is having a meet-up in the Toronto office this week.&lt;p&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt; Come and say Hi if you’re in the area.
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt; Thunderbird 10 and Thunderbird 10 ESR released last week
&lt;/li&gt;&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;http://blog.mozilla.com/thunderbird/2012/01/31/using-thunderbird-3-1-its-time-for-a-change/&quot; rel=&quot;nofollow&quot;&gt;3.1.x end of life&lt;/a&gt; announced for 24th April.
&lt;/li&gt;&lt;/ul&gt;
&lt;h5&gt; &lt;span class=&quot;mw-headline&quot;&gt; Older Branch Work &lt;/span&gt;&lt;/h5&gt;
&lt;p&gt;&lt;i&gt;Speaker Location:&lt;/i&gt;
&lt;/p&gt;
&lt;h5&gt; &lt;span class=&quot;mw-headline&quot;&gt; Drumbeat &lt;/span&gt;&lt;/h5&gt;
&lt;ul&gt;
&lt;li&gt; No voice update this week&lt;p&gt;&lt;/p&gt;
&lt;/li&gt;&lt;li&gt; Check out Chris Heilmann’s awesome &lt;a class=&quot;external text&quot; href=&quot;http://christianheilmann.com/2012/02/02/web-enabled-video-at-newsrewired/&quot; rel=&quot;nofollow&quot;&gt;post &amp;amp; presentation&lt;/a&gt; on &lt;a class=&quot;external text&quot; href=&quot;http://mozillapopcorn.org/&quot; rel=&quot;nofollow&quot;&gt;Mozilla Popcorn&lt;/a&gt; and the future of web-enabled video. From London’s &lt;a class=&quot;external free&quot; href=&quot;news:rewired&quot; rel=&quot;nofollow&quot;&gt;news:rewired&lt;/a&gt;.
&lt;/li&gt;&lt;/ul&gt;
&lt;h5&gt; &lt;span class=&quot;mw-headline&quot;&gt; Identity &lt;/span&gt;&lt;/h5&gt;
&lt;p&gt;&lt;i&gt;Speaker Location:&lt;/i&gt;
&lt;/p&gt;
&lt;h4&gt; &lt;span class=&quot;mw-headline&quot;&gt; Speakers &lt;/span&gt;&lt;/h4&gt;
&lt;p&gt;The limit is 3 minutes per speaker.  It’s like a lightning talk, but don’t feel that you have to have slides in order to make a presentation.
&lt;/p&gt;
&lt;table class=&quot;fullwidth-table&quot;&gt;
&lt;tbody&gt;&lt;tr&gt;
&lt;th&gt;  Title
&lt;/th&gt;
&lt;th&gt;  Presenter
&lt;/th&gt;
&lt;th&gt;  Topic
&lt;/th&gt;
&lt;th&gt;  Media
&lt;/th&gt;
&lt;th&gt;  More Details&lt;br /&gt;
&lt;/th&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt; SCL3
&lt;/td&gt;
&lt;td&gt; IT/Infra &amp;amp; Ops &lt;i&gt;(no intro needed, video speaks for itself)&lt;/i&gt;
&lt;/td&gt;
&lt;td&gt; Mozilla’s Santa Clara data center
&lt;/td&gt;
&lt;td&gt; &lt;a class=&quot;external text&quot; href=&quot;http://cf.cdn.vid.ly/2s7x7e/webm.webm&quot; rel=&quot;nofollow&quot;&gt;The Video&lt;/a&gt;
&lt;/td&gt;
&lt;td&gt; &lt;a class=&quot;external text&quot; href=&quot;http://blog.mozilla.com/it/tag/project-scl3/&quot; rel=&quot;nofollow&quot;&gt;Project: SCL3 blog&lt;/a&gt;&lt;br /&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;h4&gt; &lt;span class=&quot;mw-headline&quot;&gt; Status Updates By Team &lt;/span&gt;&lt;/h4&gt;
&lt;h5&gt; &lt;span class=&quot;mw-headline&quot;&gt; Firefox &lt;/span&gt;&lt;/h5&gt;
&lt;h5&gt; &lt;span class=&quot;mw-headline&quot;&gt; Platform &lt;/span&gt;&lt;/h5&gt;
&lt;h5&gt; &lt;span class=&quot;mw-headline&quot;&gt; Messaging &lt;/span&gt;&lt;/h5&gt;
&lt;h5&gt; &lt;span class=&quot;mw-headline&quot;&gt; Mobile &lt;/span&gt;&lt;/h5&gt;
&lt;h5&gt; &lt;span class=&quot;mw-headline&quot;&gt; IT &lt;/span&gt;&lt;/h5&gt;
&lt;h5&gt; &lt;span class=&quot;mw-headline&quot;&gt; Release Engineering &lt;/span&gt;&lt;/h5&gt;
&lt;h5&gt; &lt;span class=&quot;mw-headline&quot;&gt; QA &lt;/span&gt;&lt;/h5&gt;
&lt;h6&gt; &lt;span class=&quot;mw-headline&quot;&gt; Test Execution &lt;/span&gt;&lt;/h6&gt;
&lt;h6&gt; &lt;span class=&quot;mw-headline&quot;&gt; WebQA &lt;/span&gt;&lt;/h6&gt;
&lt;ul&gt;
&lt;li&gt;Affiliates&lt;p&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt; Successful push, &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=722478&quot; rel=&quot;nofollow&quot;&gt;bug 722478&lt;/a&gt;&lt;p&gt;&lt;/p&gt;
&lt;/li&gt;&lt;li&gt; Rajeev [:rshetty] led the release. Transitioning in as the QA lead on the project.
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt; AMO
&lt;ul&gt;
&lt;li&gt; AMO 6.4.0 is going live on 02/03&lt;p&gt;&lt;/p&gt;
&lt;/li&gt;&lt;li&gt; Paypal Contribution test is merged
&lt;/li&gt;&lt;li&gt; MPL2 license is merged
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt; Engagement
&lt;ul&gt;
&lt;li&gt; Careers is blocked on one bug, waiting for ckoehler&lt;p&gt;&lt;/p&gt;
&lt;/li&gt;&lt;li&gt; DTPT Phase II is complete
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt; Mozilla.com
&lt;ul&gt;
&lt;li&gt; shipped bugs for Firefox 10.0 release on 01/31
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt; MDN
&lt;ul&gt;
&lt;li&gt; shipped milestone &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/buglist.cgi?list_id=2249372&amp;amp;resolution=FIXED&amp;amp;classification=Other&amp;amp;query_format=advanced&amp;amp;target_milestone=2.1&amp;amp;product=Mozilla%20Developer%20Network&quot; rel=&quot;nofollow&quot;&gt;2.1&lt;/a&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt; Socorro
&lt;ul&gt;
&lt;li&gt; Successful 2.4.1 milestone released – &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=723185&quot; rel=&quot;nofollow&quot;&gt;bug 723185&lt;/a&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt; SUMO
&lt;ul&gt;
&lt;li&gt; 1/31 release went out, 25% of users are currently on Elastic search&lt;p&gt;&lt;/p&gt;
&lt;/li&gt;&lt;li&gt; 2/7 release in process
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt; Case Conductor
&lt;ul&gt;
&lt;li&gt; Working towards feature parity with new django build, aiming for early February
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;h6&gt; &lt;span class=&quot;mw-headline&quot;&gt; QA Community &lt;/span&gt;&lt;/h6&gt;
&lt;h6&gt; &lt;span class=&quot;mw-headline&quot;&gt; Automation Services &lt;/span&gt;&lt;/h6&gt;
&lt;ul&gt;
&lt;li&gt; Blog post: &lt;a class=&quot;external text&quot; href=&quot;http://www.hskupin.info/2012/02/03/mozmill-crowd-0-1-5-released/&quot; rel=&quot;nofollow&quot;&gt;Mozmill Crowd 0.1.5 released&lt;/a&gt;&lt;p&gt;&lt;/p&gt;
&lt;/li&gt;&lt;li&gt; Blog post: &lt;a class=&quot;external text&quot; href=&quot;http://caseconductor.wordpress.com/2012/02/03/i-guess-we-could-document-it/&quot; rel=&quot;nofollow&quot;&gt;Case Conductor: I guess we could document it…&lt;/a&gt;
&lt;/li&gt;&lt;li&gt; Blog post: &lt;a class=&quot;external text&quot; href=&quot;http://blargon7.com/2012/02/automating-browserid-with-selenium/&quot; rel=&quot;nofollow&quot;&gt;Automating BrowserID with Selenium&lt;/a&gt;
&lt;/li&gt;&lt;li&gt; Blog post: &lt;a class=&quot;external text&quot; href=&quot;http://www.hskupin.info/2012/02/06/fosdem-2012-add-on-sdk-and-slides-for-mozmill-ci/&quot; rel=&quot;nofollow&quot;&gt;FOSDEM 2012, Add-on SDK, and slides for Mozmill CI&lt;/a&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;h5&gt; &lt;span class=&quot;mw-headline&quot;&gt; Automation &amp;amp; Tools &lt;/span&gt;&lt;/h5&gt;
&lt;ul&gt;
&lt;li&gt; Worked with QA team to bring up automated testing of top 100 addons for default to compatible. Results &lt;a class=&quot;external text&quot; href=&quot;http://mozmill-release.blargon7.com/#/addons/reports&quot; rel=&quot;nofollow&quot;&gt;are here&lt;/a&gt;. Still looking through failures, nothing unexpected at this time.&lt;p&gt;&lt;/p&gt;
&lt;/li&gt;&lt;li&gt; &lt;a class=&quot;external text&quot; href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=723939&quot; rel=&quot;nofollow&quot;&gt;Much closer to working fennec arm v6 build&lt;/a&gt;
&lt;/li&gt;&lt;li&gt; Marionette-gaia tests (b2g) are &lt;a class=&quot;external text&quot; href=&quot;http://brasstacks.mozilla.com/autolog/?tree=b2g&amp;amp;source=autolog&quot; rel=&quot;nofollow&quot;&gt;now running green&lt;/a&gt;
&lt;/li&gt;&lt;li&gt; First pass of &lt;a class=&quot;external text&quot; href=&quot;http://k0s.org/mozilla/hg/jetperf&quot; rel=&quot;nofollow&quot;&gt;Talos + Jetpack (jetperf)&lt;/a&gt; is moving into its beta stage.
&lt;/li&gt;&lt;li&gt; More &lt;a class=&quot;external text&quot; href=&quot;https://wiki.mozilla.org/Auto-tools/Meetings/2012-02-06&quot; rel=&quot;nofollow&quot;&gt;news here&lt;/a&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;h5&gt; &lt;span class=&quot;mw-headline&quot;&gt; Security &lt;/span&gt;&lt;/h5&gt;
&lt;ul&gt;
&lt;li&gt; security team Work Week in Santa Cruz, no reviews this week.
&lt;/li&gt;&lt;/ul&gt;
&lt;h5&gt; &lt;span class=&quot;mw-headline&quot;&gt; Engagement &lt;/span&gt;&lt;/h5&gt;
&lt;h6&gt; &lt;span class=&quot;mw-headline&quot;&gt; PR &lt;/span&gt;&lt;/h6&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a class=&quot;external text&quot; href=&quot;http://www.pcworld.com/businesscenter/article/249357/as_firefox_11_hits_beta_work_begins_on_push_notifications_for_the_web.html&quot; rel=&quot;nofollow&quot;&gt;As Firefox 11 Hits Beta, Work Begins on Push Notifications for the Web&lt;/a&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a class=&quot;external text&quot; href=&quot;http://download.cnet.com/8301-2007_4-57371517-12/mozilla-preps-the-web-to-push/&quot; rel=&quot;nofollow&quot;&gt;Mozilla preps the Web to push&lt;/a&gt; &lt;p&gt;&lt;/p&gt;
&lt;/li&gt;&lt;li&gt;&lt;a class=&quot;external text&quot; href=&quot;http://arstechnica.com/business/news/2012/02/mozilla-developing-web-push-notification-system-for-firefox.ars&quot; rel=&quot;nofollow&quot;&gt;Mozilla developing Web push notification system for Firefox&lt;/a&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a class=&quot;external text&quot; href=&quot;http://www.pcmag.com/article2/0,2817,2399625,00.asp&quot; rel=&quot;nofollow&quot;&gt;Firefox 10 Now Available for Download&lt;/a&gt; &lt;p&gt;&lt;/p&gt;
&lt;/li&gt;&lt;li&gt;&lt;a class=&quot;external text&quot; href=&quot;http://www.computerworld.com/s/article/9223925/Firefox_10_Arrives_Today_with_Extended_Support_for_Businesses&quot; rel=&quot;nofollow&quot;&gt;Firefox 10 Arrives Today with Extended Support for Businesses&lt;/a&gt;
&lt;/li&gt;&lt;li&gt;&lt;a class=&quot;external text&quot; href=&quot;http://www.eweek.com/c/a/Application-Development/Mozillas-Firefox-10-Muscles-Up-on-Developer-Tools-477285/&quot; rel=&quot;nofollow&quot;&gt;Mozilla’s Firefox 10 Muscles Up on Developer Tools&lt;/a&gt;
&lt;/li&gt;&lt;li&gt;&lt;a class=&quot;external text&quot; href=&quot;http://www.webmonkey.com/2012/02/firefox-10-arrives-with-new-dev-tools-and-full-screen-api/&quot; rel=&quot;nofollow&quot;&gt;Firefox 10 Arrives With New Dev Tools and Full-Screen API&lt;/a&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;h6&gt; &lt;span class=&quot;mw-headline&quot;&gt; Events &lt;/span&gt;&lt;/h6&gt;
&lt;p&gt;A call for participation from paid staff will be sent out on February 10th. Volunteer invitations will also be sent out on this day. Please email knaszradi@mozilla.com if you have any questions.
&lt;/p&gt;
&lt;h6&gt; &lt;span class=&quot;mw-headline&quot;&gt; Creative Team &lt;/span&gt;&lt;/h6&gt;
&lt;h6&gt; &lt;span class=&quot;mw-headline&quot;&gt; Community Marketing &lt;/span&gt;&lt;/h6&gt;
&lt;h5&gt; &lt;span class=&quot;mw-headline&quot;&gt; Support &lt;/span&gt;&lt;/h5&gt;
&lt;h5&gt; &lt;span class=&quot;mw-headline&quot;&gt; Metrics &lt;/span&gt;&lt;/h5&gt;
&lt;h5&gt; &lt;span class=&quot;mw-headline&quot;&gt; Evangelism &lt;/span&gt;&lt;/h5&gt;
&lt;h5&gt; &lt;span class=&quot;mw-headline&quot;&gt; Labs &lt;/span&gt;&lt;/h5&gt;
&lt;h5&gt; &lt;span class=&quot;mw-headline&quot;&gt; Apps &lt;/span&gt;&lt;/h5&gt;
&lt;ul&gt;
&lt;li&gt; Demo Apps lining up for MWC&lt;p&gt;&lt;/p&gt;
&lt;/li&gt;&lt;li&gt; Apps Showcase launched Friday at noon in MV see &lt;a href=&quot;https://wiki.mozilla.org/Apps/ShowAndTells&quot; title=&quot;Apps/ShowAndTells&quot;&gt;Apps/ShowAndTells&lt;/a&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;h5&gt; &lt;span class=&quot;mw-headline&quot;&gt; Developer Tools &lt;/span&gt;&lt;/h5&gt;
&lt;h5&gt; &lt;span class=&quot;mw-headline&quot;&gt; Add-ons &lt;/span&gt;&lt;/h5&gt;
&lt;h5&gt; &lt;span class=&quot;mw-headline&quot;&gt; Webdev &lt;/span&gt;&lt;/h5&gt;
&lt;h5&gt; &lt;span class=&quot;mw-headline&quot;&gt; L10n &lt;/span&gt;&lt;/h5&gt;
&lt;h5&gt; &lt;span class=&quot;mw-headline&quot;&gt; People Team &lt;/span&gt;&lt;/h5&gt;
&lt;h5&gt; &lt;span class=&quot;mw-headline&quot;&gt; WebFWD &lt;/span&gt;&lt;/h5&gt;
&lt;p&gt;We just launched our Affiliates Program &amp;gt; become one (we’re listed under “Mozilla” at &lt;a class=&quot;external free&quot; href=&quot;http://blog.webfwd.org/post/17155951369/become-a-webfwd-affiliate&quot; rel=&quot;nofollow&quot;&gt;http://blog.webfwd.org/post/17155951369/become-a-webfwd-affiliate&lt;/a&gt;)!
&lt;/p&gt;
&lt;h4&gt; &lt;span class=&quot;mw-headline&quot;&gt; Introducing New Hires &lt;/span&gt;&lt;/h4&gt;
&lt;table class=&quot;fullwidth-table&quot;&gt;
&lt;tbody&gt;&lt;tr&gt;
&lt;th&gt;  New Hire
&lt;/th&gt;
&lt;th&gt;  Introduced by
&lt;/th&gt;
&lt;th&gt;  Speaker location
&lt;/th&gt;
&lt;th&gt;  Will be working on&lt;br /&gt;
&lt;/th&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt; &lt;i&gt;Who is the new hire?&lt;/i&gt;
&lt;/td&gt;
&lt;td&gt; &lt;i&gt;Who will be introducing that person?&lt;/i&gt;
&lt;/td&gt;
&lt;td&gt; &lt;i&gt;From which office will that introduction be transmitted?&lt;/i&gt;
&lt;/td&gt;
&lt;td&gt; &lt;i&gt;What will the new person be working on?&lt;/i&gt;&lt;br /&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Joel Aguilera
&lt;/td&gt;
&lt;td&gt;Jill Van De Ven
&lt;/td&gt;
&lt;td&gt;Mt. View
&lt;/td&gt;
&lt;td&gt;Payroll Administrator&lt;br /&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Bonnie Surender
&lt;/td&gt;
&lt;td&gt;Johnny Stenback
&lt;/td&gt;
&lt;td&gt;Mt. View
&lt;/td&gt;
&lt;td&gt;WebAPI team&lt;br /&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Cody Brocious
&lt;/td&gt;
&lt;td&gt;Faramarz Rashed
&lt;/td&gt;
&lt;td&gt;New York
&lt;/td&gt;
&lt;td&gt;System Engineer B2G&lt;br /&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Wesley Kocher
&lt;/td&gt;
&lt;td&gt;David Mason
&lt;/td&gt;
&lt;td&gt;Dakota City, IA
&lt;/td&gt;
&lt;td&gt;Bug Master/Release Engineer&lt;br /&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Trevor Norris
&lt;/td&gt;
&lt;td&gt;Gilbert FitzGerald
&lt;/td&gt;
&lt;td&gt;Mt. View
&lt;/td&gt;
&lt;td&gt;Metrics Engineer&lt;br /&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;h4&gt; &lt;span class=&quot;mw-headline&quot;&gt; Introducing New Interns &lt;/span&gt;&lt;/h4&gt;
&lt;table class=&quot;fullwidth-table&quot;&gt;
&lt;tbody&gt;&lt;tr&gt;
&lt;th&gt;  New Intern
&lt;/th&gt;
&lt;th&gt;  Introduced by
&lt;/th&gt;
&lt;th&gt;  Speaker location
&lt;/th&gt;
&lt;th&gt;  Will be working on&lt;br /&gt;
&lt;/th&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt; &lt;i&gt;Who is the new intern?&lt;/i&gt;
&lt;/td&gt;
&lt;td&gt; &lt;i&gt;Who will be introducing that person?&lt;/i&gt;
&lt;/td&gt;
&lt;td&gt; &lt;i&gt;From which office will that introduction be transmitted?&lt;/i&gt;
&lt;/td&gt;
&lt;td&gt; &lt;i&gt;What will the new person be working on?&lt;/i&gt;&lt;br /&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;h4&gt; &lt;span class=&quot;mw-headline&quot;&gt; Foundation Updates &lt;/span&gt;&lt;/h4&gt;
&lt;h4&gt; &lt;span class=&quot;mw-headline&quot;&gt; Roundtable &lt;/span&gt;&lt;/h4&gt;
&lt;div class=&quot;printfooter&quot;&gt;
Retrieved from “&lt;a href=&quot;https://wiki.mozilla.org/WeeklyUpdates/2012-02-06&quot;&gt;https://wiki.mozilla.org/WeeklyUpdates/2012-02-06&lt;/a&gt;“&lt;/div&gt;
&lt;div class=&quot;catlinks catlinks-allhidden&quot;&gt;&lt;/div&gt;
&lt;div class=&quot;visualClear&quot;&gt;&lt;/div&gt;
&lt;p&gt;&lt;/p&gt;&lt;/div&gt;</description>
	<pubDate>Tue, 07 Feb 2012 04:00:04 +0000</pubDate>
	<dc:creator>Jesper Kristensen</dc:creator>
        <enclosure url="http://cf.cdn.vid.ly/2s7x7e/webm.webm" length="16119171" type="video/webm"/>
</item>
<item>
	<title>Firefox Support Blog: What’s Up With SUMO – Feb. 6</title>
	<guid isPermaLink="false">http://blog.mozilla.com/sumo/?p=2049</guid>
	<link>http://blog.mozilla.com/sumo/2012/02/06/what%e2%80%99s-up-with-sumo-%e2%80%93-feb-6/</link>
	<description>&lt;p&gt;&lt;br /&gt;
&lt;video controls=&quot;controls&quot; height=&quot;360&quot; width=&quot;640&quot;&gt;&lt;br /&gt;
	&lt;source src=&quot;http://blip.tv/file/get/MichaelVerdi-WUWSFeb6mp4346.m4v&quot; type=&quot;video/mp4&quot; /&gt;&lt;br /&gt;
	&lt;source src=&quot;http://blip.tv/file/get/MichaelVerdi-WUWSFeb6webm957.webm&quot; type=&quot;video/webm&quot; /&gt;&lt;br /&gt;
	&lt;img alt=&quot;What's Up With SUMO - Feb. 6&quot; height=&quot;360&quot; src=&quot;http://blog.mozilla.com/sumo/files/2012/02/feb6.jpg&quot; title=&quot;No video playback capabilities, please download the video below&quot; width=&quot;640&quot; /&gt;&lt;br /&gt;
	&lt;br /&gt;
&lt;/video&gt;&lt;/p&gt;
&lt;p&gt;
	&lt;strong&gt;Download video:&lt;/strong&gt; &lt;a href=&quot;http://blip.tv/file/get/MichaelVerdi-WUWSFeb6mp4346.m4v&quot;&gt;MP4 format&lt;/a&gt; | &lt;a href=&quot;http://blip.tv/file/get/MichaelVerdi-WUWSFeb6webm957.webm&quot;&gt;WebM format&lt;/a&gt;
&lt;/p&gt;
&lt;h3&gt;Big things this week&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Next SUMO meeting – &lt;a href=&quot;https://wiki.mozilla.org/Support/Weekly_Meetings/Notes_2012-02-13&quot;&gt; Monday, Feb. 13th (call in details &amp;amp; meeting notes)&lt;/a&gt; at 9am PST. Please add your comments, questions and updates to the wiki. You can also participate in &lt;a href=&quot;https://www.mibbit.com/?server=irc.mozilla.org&amp;amp;channel=%23sumo&quot;&gt; #sumo&lt;/a&gt; during the meeting. We’re going to record and post a video of the meeting.&lt;/li&gt;
&lt;li&gt;Next SUMO release – &lt;a href=&quot;http://moxie.jamessocol.com/bugstats/sumo/2012-02-07&quot;&gt; Tuesday, Feb. 7th&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://youtu.be/Mh_Wxgrl3g4&quot;&gt;Video of the SUMO meeting&lt;/a&gt; (embeded below).&lt;/li&gt;
&lt;li&gt;Our new search engine is serving 50% of our searches.&lt;/li&gt;
&lt;li&gt;UX work is ongoing. We’ll be testing a new information architecture with users soon.&lt;/li&gt;
&lt;li&gt;Home page experiment is working well. We got rid of lots of questions that were already answered by an article.&lt;/li&gt;
&lt;li&gt;Cheng is working with Engineering and UX to do something about search hijacking.
&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;https://wiki.mozilla.org/Support/Weekly_Meetings/Notes_2012-02-06&quot;&gt;Notes from this SUMO meeting.&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;/p&gt;</description>
	<pubDate>Tue, 07 Feb 2012 03:09:02 +0000</pubDate>
	<dc:creator>Verdi</dc:creator>
</item>
<item>
	<title>Mozilla Add-ons Blog: Add-on SDK 1.4.3 Released</title>
	<guid isPermaLink="false">http://blog.mozilla.com/addons/?p=4181</guid>
	<link>http://blog.mozilla.com/addons/2012/02/06/add-on-sdk-1-4-3-released-2/</link>
	<description>&lt;p&gt;We have identified a serious bug in the 1.4.* releases, and have made a hotfix release of the Add-on SDK. The hotfix release is version 1.4.3.&lt;/p&gt;
&lt;p&gt;&lt;em&gt;If you are potentially affected by the bug, then you will need to take action to recover from it.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;This note explains:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;how to work out whether you are potentially affected&lt;/li&gt;
&lt;li&gt;what the impact is&lt;/li&gt;
&lt;li&gt;how to recover from the bug&lt;/li&gt;
&lt;li&gt;what went wrong&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Are You Affected?&lt;/h3&gt;
&lt;p&gt;You are potentially affected by this bug if you meet &lt;strong&gt;&lt;em&gt;ALL THREE OF&lt;/em&gt;&lt;/strong&gt; the following conditions:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Your add-on uses any of the following SDK modules: &lt;em&gt;simple-storage&lt;/em&gt;, &lt;em&gt;passwords&lt;/em&gt;, &lt;em&gt;simple-prefs&lt;/em&gt;&lt;/strong&gt;. Using &lt;em&gt;passwords&lt;/em&gt; is only a problem if you’re using it to store passwords specific to your add-on, rather than just web site passwords).&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;You did not explicitly specify an ID for your add-on&lt;/strong&gt;This means: you didn’t edit your “package.json” file to set your add-on’s ID, so the first time you ran `cfx`, it generated an ID for you in “package.json”.If you’re not sure about this, open your add-on’s “package.json” file and examine its “id” entry. If it does not contain “@”, and is not in the form: “{xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx}”, then it is an auto-generated ID and you meet this condition. For example:
&lt;pre&gt;    &quot;id&quot;: &quot;jid1-MKxcan0H26wiRw&quot;&lt;/pre&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;You have ever built and distributed your add-on using the 1.4, 1.4.1 or 1.4.2 releases of the SDK &lt;/strong&gt;This means either:
&lt;ul&gt;
&lt;li&gt;you initially built your add-on with 1.4, 1.4.1 or 1.4.2&lt;/li&gt;
&lt;li&gt;you initially built your add-on using 1.3 or an earlier release, but rebuilt it using 1.4, 1.4.1, or 1.4.2.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3&gt;What’s the Impact?&lt;/h3&gt;
&lt;p&gt;The impact of this is:&lt;/p&gt;
&lt;p&gt;1. suppose your add-on was originally built and distributed using a version of the SDK earlier than 1.4. People use it, and store data with it, using the simple-storage or passwords modules. Then you rebuild using SDK 1.4/1.4.1/1.4.2. Now, any data which users had previously stored in simple-storage, and any add-on-specific passwords stored using passwords, will seem to have disappeared. You must upgrade to 1.4.3 to recover this data.&lt;/p&gt;
&lt;p&gt;2. suppose your add-on is built using SDK 1.4/1.4.1/1.4.2. People use it, and store data with it, using &lt;em&gt;simple-storage&lt;/em&gt;, &lt;em&gt;simple-prefs&lt;/em&gt;, or &lt;em&gt;passwords&lt;/em&gt;. Then you upgrade to version 1.4.3. Now, this data will apparently disappear. You must take steps to recover this data.&lt;/p&gt;
&lt;h3&gt;How To Recover&lt;/h3&gt;
&lt;p&gt;First, upgrade your add-on to use 1.4.3. After this, data entered using releases of the SDK before 1.4 will reappear.&lt;/p&gt;
&lt;p&gt;Next, you’ll have to recover any data that users entered using the 1.4/1.4.1/1.4.2 versions.&lt;/p&gt;
&lt;p&gt;To help with this we’ve written a module called “recovery.js”. This module won’t ship with the SDK itself, though.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;If you’re using the Add-on SDK, download “recovery.js” from &lt;a href=&quot;https://gist.github.com/1733262&quot;&gt;https://gist.github.com/1733262 &lt;/a&gt;and save it in your add-on’s “lib” directory.&lt;/li&gt;
&lt;li&gt;If you’re using the Add-on Builder, move your mouse over “Libraries” in the left-hand sidebar until a plus sign appears next to it, then click the plus sign. Then in the dialog type “recovery” and select “recovery by gozala” to add it to your project:&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;img alt=&quot;screenshot of adding recovery library&quot; src=&quot;http://blog.mozilla.com/addons/files/2012/02/add-recovery-library.png&quot; /&gt;&lt;/p&gt;
&lt;p&gt;You need to import the recovery module in the normal way:&lt;/p&gt;

&lt;div class=&quot;wp_syntax&quot;&gt;&lt;div class=&quot;code&quot;&gt;&lt;pre class=&quot;javascript&quot; style=&quot;font-family: monospace;&quot;&gt;&lt;span style=&quot;color: #003366; font-weight: bold;&quot;&gt;var&lt;/span&gt; recovery &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; require&lt;span style=&quot;color: #009900;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #3366CC;&quot;&gt;'recovery'&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;)&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;The recovery module contains any data that was written using &lt;em&gt;simple-storage&lt;/em&gt;, &lt;em&gt;simple-prefs&lt;/em&gt;, and &lt;em&gt;passwords&lt;/em&gt; while your add-on was built with the 1.4, 1.4.1, or 1.4.2 releases of the SDK. The data is stored as three properties, one for each module:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;recovery.storage&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;recovery.prefs&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;recovery.passwords&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;You’ll need to merge these properties with the data stored in &lt;em&gt;simple-storage&lt;/em&gt;, &lt;em&gt;simple-prefs&lt;/em&gt;, and &lt;em&gt;passwords&lt;/em&gt; in whichever way makes sense for your add-on. &lt;/p&gt;
&lt;p&gt;The files at &lt;a href=&quot;https://gist.github.com/1733262&quot;&gt;https://gist.github.com/1733262 &lt;/a&gt; include some examples of performing this merge using the recovery module.&lt;/p&gt;
&lt;h3&gt;What Went Wrong&lt;/h3&gt;
&lt;p&gt;SDK-based add-ons have an ID, which is used for, among other things, figuring out which stored data belongs to this add-on. The ID is stored in the add-on’s “package.json” file. If you do not specify an ID for your add-on by editing “package.json” directly, then the SDK generates one for you automatically.&lt;/p&gt;
&lt;p&gt;This auto-generated ID in “package.json” looks something like “jid1-y1AFbAhD9jXVcg”. The SDK takes this value and appends “@jetpack” to it, and uses the result as an ID. So if you call:&lt;/p&gt;

&lt;div class=&quot;wp_syntax&quot;&gt;&lt;div class=&quot;code&quot;&gt;&lt;pre class=&quot;javascript&quot; style=&quot;font-family: monospace;&quot;&gt;console.&lt;span style=&quot;color: #660066;&quot;&gt;log&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;(&lt;/span&gt;require&lt;span style=&quot;color: #009900;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #3366CC;&quot;&gt;&quot;self&quot;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;)&lt;/span&gt;.&lt;span style=&quot;color: #660066;&quot;&gt;id&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;)&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;…you’ll see something like:&lt;/p&gt;

&lt;div class=&quot;wp_syntax&quot;&gt;&lt;div class=&quot;code&quot;&gt;&lt;pre class=&quot;js&quot; style=&quot;font-family: monospace;&quot;&gt; info: jid1-y1AFbAhD9jXVcg@jetpack&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;This value is then used as a key for data stored using &lt;em&gt;simple-storage&lt;/em&gt;, &lt;em&gt;simple-prefs&lt;/em&gt;, and certain data in &lt;em&gt;passwords&lt;/em&gt; (specifically, passwords that are associated with your add-on rather than a web site).&lt;/p&gt;
&lt;p&gt;In 1.4 we broke the code that appends “@jetpack” to the ID. This means that a 1.4/1.4.1/1.4.2 add-on will look for data using just “jid1-y1AFbAhD9jXVcg”, and won’t find any data that was entered using an add-on built against an earlier version of the SDK.&lt;/p&gt;
&lt;p&gt;In 1.4.3 we are reverting that change: so a 1.4.3 add-on will look for data using “jid1 y1AFbAhD9jXVcg@jetpack”. This means that a 1.4.3-based add-on it will find data which was entered using an add-on built using pre-1.4 release of the SDK. However, a 1.4.3 based add-on *will not* find data entered using an add-on built against 1.4/1.4.1/1.4.2. That’s why you have to recover that data explicitly.&lt;/p&gt;
&lt;p&gt;We considered making the 1.4.3 release perform automatic recovery, looking for data stored under “my-jid”, and if it finds any, automatically updating the version stored under “my-jid@jetpack”. But the structure of stored data is very specific to an add-on, and we decided that there was a significant risk that automatic update would break some add-ons, so it’s safer if each add-in implements its own recovery.&lt;/p&gt;
&lt;h3&gt;Getting In Touch&lt;/h3&gt;
&lt;p&gt;As always we’d love to hear from you about your experiences. And we are always available to help with issues you may encounter. You can contact us in a variety of ways:&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://groups.google.com/group/mozilla-labs-jetpack&quot;&gt;post to our discussion group&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;http://mibbit.com/?channel=%23jetpack&amp;amp;server=irc.mozilla.org&quot;&gt;chat with us on irc.mozilla.org #jetpack&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;https://bugzilla.mozilla.org/enter_bug.cgi?product=Add-on%20SDK&amp;amp;component=General&quot;&gt;report a bug&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;http://github.com/mozilla/addon-sdk/&quot;&gt;check out the source&lt;/a&gt; and contribute bug fixes, enhancements, or documentation&lt;/p&gt;</description>
	<pubDate>Mon, 06 Feb 2012 23:03:50 +0000</pubDate>
	<dc:creator>Dave Mason</dc:creator>
</item>
<item>
	<title>Ben Simon: The infrastructure for self-organizing</title>
	<guid isPermaLink="false">http://engagingopenly.wordpress.com/?p=234</guid>
	<link>http://engagingopenly.wordpress.com/2012/02/06/the-infrastructure-for-self-organizing/</link>
	<description>&lt;p&gt;One of the more exciting tasks that I’m working on at Mozilla is figuring out the challenge of getting people around the world to participate in the project of going from using the web to making the web — &lt;strong&gt;&lt;a href=&quot;http://commonspace.wordpress.com/2011/11/22/mozilla-2012-plan/&quot; target=&quot;_blank&quot;&gt;building a generation of webmakers&lt;/a&gt;&lt;/strong&gt; — but doing it together, at events. Briefly, the idea is to try and apply something akin to the &lt;strong&gt;&lt;a href=&quot;http://neworganizing.com/toolbox/&quot; target=&quot;_blank&quot;&gt;offline, engagement organizing models&lt;/a&gt;&lt;/strong&gt; normally used in successful grassroots political campaigns to our learning/webmaking initiatives.&lt;/p&gt;
&lt;div class=&quot;wp-caption alignnone&quot; style=&quot;width: 490px;&quot;&gt;&lt;a href=&quot;http://commonspace.wordpress.com/2012/01/29/hackascratchsaurus/&quot;&gt;&lt;img alt=&quot;Learning event!&quot; height=&quot;285&quot; src=&quot;http://commonspace.files.wordpress.com/2012/01/2012-01-25.jpg?w=480&amp;amp;h=285&quot; title=&quot;Woo learning events!&quot; width=&quot;480&quot; /&gt;&lt;/a&gt;&lt;p class=&quot;wp-caption-text&quot;&gt;Mozilla Japan Scratch/Hackasaurus Pop up. Photo from Mark Surman&lt;/p&gt;&lt;/div&gt;
&lt;p&gt;Michelle Thorne has already done a bunch of thinking about how this maps across our events — her &lt;a href=&quot;http://michellethorne.cc/2012/01/mozilla-event-menu-lite/&quot; target=&quot;_blank&quot;&gt;&lt;span style=&quot;text-decoration: underline;&quot;&gt;&lt;strong&gt;event menu is here&lt;/strong&gt;&lt;/span&gt;&lt;/a&gt; — and I’m trying to think about what type of infrastructure we’ll need to set up to get people to organize these types of things on their own (with our support, or course).&lt;/p&gt;
&lt;p&gt;There are some pretty clear functionalities that are needed, which Michelle has laid out elsewhere, beyond simple event creation &amp;amp; categorization — localization, data portability &amp;amp; access, good developer APIs, participant email capture, and more.&lt;/p&gt;
&lt;p&gt;In addition to those, there are a couple that seem necessary to me to be reasonably effective:&lt;/p&gt;
&lt;p&gt;–&lt;strong&gt;Ability for event organizers to organize over time:&lt;/strong&gt; This means an ability to create an event (on one or many days or several events in a series) and have the ability to directly communicate, over time (so both before and after the event) with the people who sign up to take part.&lt;/p&gt;
&lt;p&gt;Most tools — even those with something like this — seem to lack either the ability to communicate with attendees at all, or, even if they have that, lack the ability to do so over time and across events. Example: I want to start a weekly meetup. Within the Mozilla event infrastructure, I should be able to create an event once and set it to happen every week at Time X. I should be able to change the event time of a given week. People should be able to sign up for one/all/some of those events. And I should be able to communicate with all the attendees (who have opted in to communications, of course) both before and after the events.&lt;/p&gt;
&lt;p&gt;–&lt;strong&gt;Groups:&lt;/strong&gt; Part of this whole thing needs to be people easily finding and joining groups of people they’d want to talk to — that could be based on geography, ability, program, interest, whatever. These should be easy to search for, find, and join, and allow people to discuss things and move forward in their own way. This could be anything from glorified listservs to something more Facebook-y, but it’s definitely important for fostering an engaged core of people doing this stuff.&lt;/p&gt;
&lt;p&gt;Now, there are examples of organizations doing things like this — or at least setting up infrastructure close to it — quite successfully. From &lt;a href=&quot;http://www.actionhub.org/&quot; target=&quot;_blank&quot;&gt;&lt;span style=&quot;text-decoration: underline;&quot;&gt;&lt;strong&gt;Rebuild the Dream&lt;/strong&gt;&lt;/span&gt;&lt;/a&gt; to &lt;a href=&quot;http://www.meetup.com/codeyear/&quot; target=&quot;_blank&quot;&gt;&lt;span style=&quot;text-decoration: underline;&quot;&gt;&lt;strong&gt;Code Year&lt;/strong&gt;&lt;/span&gt;&lt;/a&gt; to &lt;a href=&quot;http://www.ted.com/tedx&quot; target=&quot;_blank&quot;&gt;&lt;span style=&quot;text-decoration: underline;&quot;&gt;&lt;strong&gt;Tedx&lt;/strong&gt;&lt;/span&gt;&lt;/a&gt; and a whole lot more, they’re out there, but generally there’s something making each not quite what we need, or not quite what would work in this context.&lt;/p&gt;
&lt;p&gt;So the questions are as follows:&lt;/p&gt;
&lt;p&gt;1) Is the description of needed functionality above correct? Are there gaping holes, or things that aren’t necessary?&lt;br /&gt;
2) How should we create that infrastructure?&lt;/p&gt;
&lt;p&gt;There are platforms out there which meet some, but not all, needs. There’s &lt;strong&gt;&lt;a href=&quot;http://www.meetup.com/everywhere/&quot; target=&quot;_blank&quot;&gt;Meetup Everywhere&lt;/a&gt;&lt;/strong&gt;, but what’s really needed is a combo of Meetup Everywhere with the richer functionality you can have as an individual user of Meetup. &lt;a href=&quot;http://www.350.org/&quot; target=&quot;_blank&quot;&gt;&lt;strong&gt;350.org&lt;/strong&gt;&lt;/a&gt; is building its own tool in the open, which could potentially be forked for our needs — &lt;a href=&quot;https://github.com/350org/localpower&quot; target=&quot;_blank&quot;&gt;&lt;strong&gt;https://github.com/350org/localpower&lt;/strong&gt;&lt;/a&gt;. There are tools that don’t yet exist (ex: &lt;a href=&quot;http://www.controlshiftlabs.com/&quot; target=&quot;_blank&quot;&gt;&lt;strong&gt;http://www.controlshiftlabs.com/&lt;/strong&gt;&lt;/a&gt;) and then there’s the better known tools from BSD to Action Kit to EventBrite to Lanyrd and more. BSD is what we use for other things, but their event tool unfortunately wouldn’t localize too well. Otherwise it would have almost everything else.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;So, what say you, techies, organizers, people who care?&lt;/strong&gt; Please chime in with thoughts on any of this — or thoughts on anyone else I should try and talk with — in comments. Thanks!&lt;/p&gt;
&lt;p&gt;Also, many thanks to, among others, &lt;strong&gt;&lt;a href=&quot;https://twitter.com/dr_pugh&quot; target=&quot;_blank&quot;&gt;Jim Pugh&lt;/a&gt;&lt;/strong&gt; &amp;amp; &lt;a href=&quot;https://twitter.com/woodhull&quot; target=&quot;_blank&quot;&gt;&lt;strong&gt;Nathan Woodhull&lt;/strong&gt;&lt;/a&gt; for recent discussions that have helped crystallize my thinking enough to get to where I currently find it.&lt;/p&gt;
&lt;br /&gt;  &lt;a href=&quot;http://feeds.wordpress.com/1.0/gocomments/engagingopenly.wordpress.com/234/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/comments/engagingopenly.wordpress.com/234/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/godelicious/engagingopenly.wordpress.com/234/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/delicious/engagingopenly.wordpress.com/234/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gofacebook/engagingopenly.wordpress.com/234/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/facebook/engagingopenly.wordpress.com/234/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gotwitter/engagingopenly.wordpress.com/234/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/twitter/engagingopenly.wordpress.com/234/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gostumble/engagingopenly.wordpress.com/234/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/stumble/engagingopenly.wordpress.com/234/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/godigg/engagingopenly.wordpress.com/234/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/digg/engagingopenly.wordpress.com/234/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/goreddit/engagingopenly.wordpress.com/234/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/reddit/engagingopenly.wordpress.com/234/&quot; /&gt;&lt;/a&gt; &lt;img alt=&quot;&quot; border=&quot;0&quot; height=&quot;1&quot; src=&quot;http://stats.wordpress.com/b.gif?host=engagingopenly.wordpress.com&amp;amp;blog=27500256&amp;amp;post=234&amp;amp;subd=engagingopenly&amp;amp;ref=&amp;amp;feed=1&quot; width=&quot;1&quot; /&gt;</description>
	<pubDate>Mon, 06 Feb 2012 22:35:20 +0000</pubDate>
	<dc:creator>Ben Simon</dc:creator>
</item>
<item>
	<title>Robert Accettura: How To Fix Broken about:home Search In Firefox</title>
	<guid isPermaLink="false">http://robert.accettura.com/?p=7415</guid>
	<link>http://robert.accettura.com/blog/2012/02/06/how-to-fix-broken-abouthome-search-in-firefox/</link>
	<description>&lt;p&gt;Not that I recommend it, well actually &lt;a href=&quot;http://robert.accettura.com/blog/2006/05/03/cleaning-a-firefox-profile/&quot;&gt;I have, and do&lt;/a&gt; for “advanced” users (I will update that at some point), but occasionally cleaning out your Firefox profile can be a good thing.  Every so often I clean the cruft out of mine.  Here’s a little quirk however.  The new-ish browser start page won’t perform a search when localStorage is cleaned out.  It will manifest by simply doing nothing when you try to search.  The form goes nowhere.  If you look for errors in the console you’ll see:&lt;/p&gt;
&lt;pre&gt;&quot;gSearchEngine is null&quot;
&lt;/pre&gt;
&lt;p&gt;The best solution I’ve found to fixing this is to go into &lt;code&gt;about:config&lt;/code&gt; and reset (right click -&amp;gt; reset) these properties and restart:&lt;/p&gt;
&lt;pre&gt;browser.startup.homepage_override.buildID
browser.startup.homepage_override.mstone
&lt;/pre&gt;
&lt;p&gt;I suspect it’s just &lt;code&gt;buildID&lt;/code&gt;, however neither should be harmful.  Restart and they will be recreated.
&lt;/p&gt;&lt;div id=&quot;rja_commentCountImage&quot;&gt;&lt;a href=&quot;http://robert.accettura.com/?p=7415#comments&quot;&gt;&lt;img alt=&quot;Comment Count&quot; src=&quot;http://i.robert.accettura.com/wp-content/commentCount/2012/02/e261489.gif&quot; style=&quot;border: 0;&quot; /&gt;&lt;/a&gt;&lt;/div&gt;</description>
	<pubDate>Mon, 06 Feb 2012 22:11:14 +0000</pubDate>
	<dc:creator>Robert</dc:creator>
</item>
<item>
	<title>Matt Thompson: Mozilla DML Science Fair: prepping for blast off</title>
	<guid isPermaLink="false">http://openmatt.wordpress.com/?p=3642</guid>
	<link>http://openmatt.wordpress.com/2012/02/06/mozilla-dml-science-fair-prepping-for-blast-off/</link>
	<description>&lt;p&gt;&lt;img alt=&quot;&quot; class=&quot;alignnone&quot; height=&quot;237&quot; src=&quot;https://wiki.mozilla.org/images/9/97/Mozilla_DML_Science_Fair_--_low_res_logo.jpg&quot; title=&quot;Mozilla DML Science Fair&quot; width=&quot;410&quot; /&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Mozilla is hosting a giant “&lt;a href=&quot;https://wiki.mozilla.org/DML_science_fair_2012&quot;&gt;Science Fair&lt;/a&gt;” at the March 1 &lt;a href=&quot;http://dml2012.dmlcentral.net/&quot;&gt;“Digital Media and Learning” conference&lt;/a&gt; in San Francisco&lt;/strong&gt;. Our mission: gather folks doing amazing work at the intersection of learning, youth and the web, have them set up 20+ booths and interactive show-and-tell stations, then invite educators, youth and local SF VIPs to all mingle, chat and get their hands dirty.&lt;/p&gt;
&lt;p&gt;You can &lt;a href=&quot;https://wiki.mozilla.org/DML_science_fair_2012&quot;&gt;learn more or have a look&lt;/a&gt; at how the DML Science Fair is coming together here.&lt;/p&gt;
&lt;p&gt;&lt;img alt=&quot;&quot; class=&quot;alignnone&quot; height=&quot;326&quot; src=&quot;http://commonspace.files.wordpress.com/2012/02/2012-01-22-11-13-36.jpg?w=416&amp;amp;h=326&amp;amp;h=326&quot; title=&quot;exhibitor whiteboard&quot; width=&quot;416&quot; /&gt;&lt;/p&gt;
&lt;h3&gt;Cool re-usable “open branding” elements for all our events&lt;/h3&gt;
&lt;p&gt;As &lt;a href=&quot;http://commonspace.wordpress.com/2012/02/02/eventbrandin/&quot;&gt;Mark wrote last week&lt;/a&gt;, we were blown away by the terrific job the Mozilla Japan team did in creating a fun physical presence for the &lt;a href=&quot;https://wiki.mozilla.org/Japan/Events/MozillaVision2012&quot;&gt;Vision 2012&lt;/a&gt; event. So we want to try and replicate their work for the Science Fair.&lt;/p&gt;
&lt;p&gt;Mozilla Japan’s &lt;strong&gt;Tetsuya Kosaka&lt;/strong&gt; was kind enough to send us their original assets, and we’ve simply tweaked the language on them for the event (below). We’re hoping to re-use and re-purpose them at other upcoming events.&lt;/p&gt;
&lt;p&gt;I like the way these signs contain clear Mozilla branding, but also open whiteboard space for exhibitors and friends to decorate and put their own stamp on it. Feels very Mozilla — like “open branding.” Plus a lot more versatile and re-usable.&lt;/p&gt;
&lt;p&gt;We may eventually update the visual language beyond the “space” theme, but for now it seems great and very “Science Fair-ish.”&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://wiki.mozilla.org/DML_science_fair_2012&quot;&gt;Have a look at the DML 2012 Science Fair wiki page&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://videos-origin.mozilla.org/serv/webmademovies/dmlscience.webm&quot; rel=&quot;nofollow&quot;&gt;Check out video from last year’s Mozilla Science Fair at DML&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://katehudsondesign.com/uploads/mozilla/For_Review-Mozilla_Science_Fair_Design.zip&quot;&gt;PDF versions of all designs in this post&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div class=&quot;wp-caption alignnone&quot; id=&quot;attachment_3644&quot; style=&quot;width: 510px;&quot;&gt;&lt;a href=&quot;http://openmatt.files.wordpress.com/2012/02/1_whiteboards.png&quot;&gt;&lt;img alt=&quot;&quot; class=&quot;size-full wp-image-3644&quot; height=&quot;692&quot; src=&quot;http://openmatt.files.wordpress.com/2012/02/1_whiteboards.png?w=500&amp;amp;h=692&quot; title=&quot;1_whiteboards&quot; width=&quot;500&quot; /&gt;&lt;/a&gt;&lt;p class=&quot;wp-caption-text&quot;&gt;Science Fair exhibitor whiteboard&lt;/p&gt;&lt;/div&gt;
&lt;div class=&quot;wp-caption alignnone&quot; id=&quot;attachment_3645&quot; style=&quot;width: 510px;&quot;&gt;&lt;a href=&quot;http://openmatt.files.wordpress.com/2012/02/exhibitor-whiteboards.png&quot;&gt;&lt;img alt=&quot;&quot; class=&quot;size-full wp-image-3645&quot; height=&quot;94&quot; src=&quot;http://openmatt.files.wordpress.com/2012/02/exhibitor-whiteboards.png?w=500&amp;amp;h=94&quot; title=&quot;Exhibitor whiteboards&quot; width=&quot;500&quot; /&gt;&lt;/a&gt;&lt;p class=&quot;wp-caption-text&quot;&gt;...in six different versions&lt;/p&gt;&lt;/div&gt;
&lt;div class=&quot;wp-caption alignnone&quot; style=&quot;width: 379px;&quot;&gt;&lt;img alt=&quot;&quot; height=&quot;212&quot; src=&quot;http://commonspace.files.wordpress.com/2012/02/2012-01-22-10-46-56.jpg?w=369&amp;amp;h=212&amp;amp;h=212&quot; title=&quot;Stand-up elements&quot; width=&quot;369&quot; /&gt;&lt;p class=&quot;wp-caption-text&quot;&gt;Plus cool little stand-up elements like these&lt;/p&gt;&lt;/div&gt;
&lt;div class=&quot;wp-caption alignnone&quot; style=&quot;width: 510px;&quot;&gt;&lt;a href=&quot;http://openmatt.files.wordpress.com/2012/02/small-elements.png&quot;&gt;&lt;img alt=&quot;&quot; height=&quot;343&quot; src=&quot;http://openmatt.files.wordpress.com/2012/02/small-elements.png?w=500&amp;amp;h=343&quot; title=&quot;small elements&quot; width=&quot;500&quot; /&gt;&lt;/a&gt;&lt;p class=&quot;wp-caption-text&quot;&gt;...in the same six versions&lt;/p&gt;&lt;/div&gt;
&lt;div class=&quot;wp-caption alignnone&quot; id=&quot;attachment_3646&quot; style=&quot;width: 510px;&quot;&gt;&lt;a href=&quot;http://openmatt.files.wordpress.com/2012/02/mozilla-science-fair-generic-sign.png&quot;&gt;&lt;img alt=&quot;&quot; class=&quot;size-full wp-image-3646&quot; height=&quot;646&quot; src=&quot;http://openmatt.files.wordpress.com/2012/02/mozilla-science-fair-generic-sign.png?w=500&amp;amp;h=646&quot; title=&quot;mozilla science fair generic sign&quot; width=&quot;500&quot; /&gt;&lt;/a&gt;&lt;p class=&quot;wp-caption-text&quot;&gt;Generic Mozilla whiteboard sign&lt;/p&gt;&lt;/div&gt;
&lt;div class=&quot;wp-caption alignnone&quot; id=&quot;attachment_3647&quot; style=&quot;width: 510px;&quot;&gt;&lt;a href=&quot;http://openmatt.files.wordpress.com/2012/02/mozilla-science-fair-wayfinders.png&quot;&gt;&lt;img alt=&quot;&quot; class=&quot;size-full wp-image-3647&quot; height=&quot;121&quot; src=&quot;http://openmatt.files.wordpress.com/2012/02/mozilla-science-fair-wayfinders.png?w=500&amp;amp;h=121&quot; title=&quot;mozilla science fair wayfinders&quot; width=&quot;500&quot; /&gt;&lt;/a&gt;&lt;p class=&quot;wp-caption-text&quot;&gt;11 x 17&quot; wayfinder signs&lt;/p&gt;&lt;/div&gt;
&lt;div class=&quot;wp-caption alignnone&quot; id=&quot;attachment_3649&quot; style=&quot;width: 510px;&quot;&gt;&lt;a href=&quot;http://openmatt.files.wordpress.com/2012/02/name-badge.png&quot;&gt;&lt;img alt=&quot;&quot; class=&quot;size-full wp-image-3649&quot; height=&quot;308&quot; src=&quot;http://openmatt.files.wordpress.com/2012/02/name-badge.png?w=500&amp;amp;h=308&quot; title=&quot;name badge&quot; width=&quot;500&quot; /&gt;&lt;/a&gt;&lt;p class=&quot;wp-caption-text&quot;&gt;Name badge stickers for presenters&lt;/p&gt;&lt;/div&gt;
&lt;br /&gt;  &lt;a href=&quot;http://feeds.wordpress.com/1.0/gocomments/openmatt.wordpress.com/3642/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/comments/openmatt.wordpress.com/3642/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/godelicious/openmatt.wordpress.com/3642/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/delicious/openmatt.wordpress.com/3642/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gofacebook/openmatt.wordpress.com/3642/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/facebook/openmatt.wordpress.com/3642/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gotwitter/openmatt.wordpress.com/3642/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/twitter/openmatt.wordpress.com/3642/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gostumble/openmatt.wordpress.com/3642/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/stumble/openmatt.wordpress.com/3642/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/godigg/openmatt.wordpress.com/3642/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/digg/openmatt.wordpress.com/3642/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/goreddit/openmatt.wordpress.com/3642/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/reddit/openmatt.wordpress.com/3642/&quot; /&gt;&lt;/a&gt; &lt;img alt=&quot;&quot; border=&quot;0&quot; height=&quot;1&quot; src=&quot;http://stats.wordpress.com/b.gif?host=openmatt.wordpress.com&amp;amp;blog=9743556&amp;amp;post=3642&amp;amp;subd=openmatt&amp;amp;ref=&amp;amp;feed=1&quot; width=&quot;1&quot; /&gt;</description>
	<pubDate>Mon, 06 Feb 2012 22:01:09 +0000</pubDate>
	<dc:creator>openmatt</dc:creator>
        <enclosure url="http://videos-origin.mozilla.org/serv/webmademovies/dmlscience.webm" length="16038722" type="video/webm"/>
</item>
<item>
	<title>Tim Taubert: Status Update [:ttaubert] – 2012-02-06</title>
	<guid isPermaLink="false">http://timtaubert.de/?p=674</guid>
	<link>http://timtaubert.de/2012/02/status-update-ttaubert-2012-02-06/</link>
	<description>&lt;p&gt;&lt;br /&gt;
&lt;strong&gt;New patches:&lt;/strong&gt;&lt;br /&gt;
* &lt;a href=&quot;http://bugzil.la/720838&quot;&gt;bug 720838&lt;/a&gt; – [Page Thumbnails] Use canvas.mozFetchAsStream()&lt;br /&gt;
* &lt;a href=&quot;http://bugzil.la/720697&quot;&gt;bug 720697&lt;/a&gt; – Provide internal API to get canvas image data as nsIInputStream&lt;br /&gt;
* &lt;a href=&quot;http://bugzil.la/669603&quot;&gt;bug 669603&lt;/a&gt; – large sessionStorage data causes session restore to block the UI&lt;br /&gt;
* &lt;a href=&quot;http://bugzil.la/666538&quot;&gt;bug 666538&lt;/a&gt; – Use Telemetry to collect Panorama usage/perf data&lt;br /&gt;
* &lt;a href=&quot;http://bugzil.la/721019&quot;&gt;bug 721019&lt;/a&gt; – [Page Thumbnails] Add telemetry probes&lt;br /&gt;
* &lt;a href=&quot;http://bugzil.la/722479&quot;&gt;bug 722479&lt;/a&gt; – browser/components/thumbnails/test/ tests leak chrome://global/content/mozilla.xhtml&lt;br /&gt;
* &lt;a href=&quot;http://bugzil.la/716532&quot;&gt;bug 716532&lt;/a&gt; – [New Tab Page] Remove “site strip” at the top and re-style buttons&lt;br /&gt;
* &lt;a href=&quot;http://bugzil.la/722663&quot;&gt;bug 722663&lt;/a&gt; – open a new tab from Panorama view should reference gWindow.BROWSER_NEW_TAB_URL&lt;br /&gt;
* &lt;a href=&quot;http://bugzil.la/723852&quot;&gt;bug 723852&lt;/a&gt; – Use a runnable for canvas.mozFetchAsStream()&lt;br /&gt;
* &lt;a href=&quot;http://bugzil.la/723102&quot;&gt;bug 723102&lt;/a&gt; – [New Tab Page] Can’t Hide/Show New Tab Page when closing left tab&lt;br /&gt;
* &lt;a href=&quot;http://bugzil.la/721417&quot;&gt;bug 721417&lt;/a&gt; – Can’t drag and drop URL into about:newtab&lt;br /&gt;
* &lt;a href=&quot;http://bugzil.la/695705&quot;&gt;bug 695705&lt;/a&gt; – Intermittent TEST-UNEXPECTED-FAIL | browser/base/content/test/tabview/browser_tabview_bug628061.js&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Filed bugs:&lt;/strong&gt;&lt;br /&gt;
* &lt;a href=&quot;http://bugzil.la/722650&quot;&gt;bug 722650&lt;/a&gt; – [New Tab Page] Long hang when first enabled in a profile&lt;br /&gt;
* &lt;a href=&quot;http://bugzil.la/723852&quot;&gt;bug 723852&lt;/a&gt; – Use a runnable for canvas.mozFetchAsStream()&lt;br /&gt;
* &lt;a href=&quot;http://bugzil.la/724225&quot;&gt;bug 724225&lt;/a&gt; – Lots of reflows and flickering when using IRCCloud&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Feedback and review:&lt;/strong&gt;&lt;br /&gt;
* &lt;a href=&quot;http://bugzil.la/722100&quot;&gt;bug 722100&lt;/a&gt; – Use ondblclick instead of hard-coded time interval to detect double clicks on ui.js&lt;br /&gt;
* &lt;a href=&quot;http://bugzil.la/722460&quot;&gt;bug 722460&lt;/a&gt; – gBrowserThumbnails uninit sets a property that has only a getter&lt;br /&gt;
* &lt;a href=&quot;http://bugzil.la/388079&quot;&gt;bug 388079&lt;/a&gt; – Deleting multiple cookies deletes wrong ones and/or not all selected&lt;br /&gt;
* &lt;a href=&quot;http://bugzil.la/722663&quot;&gt;bug 722663&lt;/a&gt; – open a new tab from Panorama view should reference gWindow.BROWSER_NEW_TAB_URL&lt;br /&gt;
* &lt;a href=&quot;http://bugzil.la/723515&quot;&gt;bug 723515&lt;/a&gt; – Add telemetry probe for the opening time of the Firefox app menu&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Landed&lt;/strong&gt;&lt;br /&gt;
* &lt;a href=&quot;http://bugzil.la/721087&quot;&gt;bug 721087&lt;/a&gt; – [New Tab Page] Cells should have an outline to indicate their positions&lt;br /&gt;
* &lt;a href=&quot;http://bugzil.la/716538&quot;&gt;bug 716538&lt;/a&gt; – [New Tab Page] Set to enabled by default on Nightly&lt;br /&gt;
* &lt;a href=&quot;http://bugzil.la/720697&quot;&gt;bug 720697&lt;/a&gt; – Provide internal API to get canvas image data as nsIInputStream&lt;br /&gt;
* &lt;a href=&quot;http://bugzil.la/707862&quot;&gt;bug 707862&lt;/a&gt; – Reset childCount on SHEntry when all children have been removed&lt;br /&gt;
* &lt;a href=&quot;http://bugzil.la/721019&quot;&gt;bug 721019&lt;/a&gt; – [Page Thumbnails] Add telemetry probes&lt;br /&gt;
* &lt;a href=&quot;http://bugzil.la/722479&quot;&gt;bug 722479&lt;/a&gt; – browser/components/thumbnails/test/ tests leak chrome://global/content/mozilla.xhtml&lt;br /&gt;
* &lt;a href=&quot;http://bugzil.la/722663&quot;&gt;bug 722663&lt;/a&gt; – open a new tab from Panorama view should reference gWindow.BROWSER_NEW_TAB_URL&lt;br /&gt;
* &lt;a href=&quot;http://bugzil.la/723852&quot;&gt;bug 723852&lt;/a&gt; – Use a runnable for canvas.mozFetchAsStream()&lt;br /&gt;
* &lt;a href=&quot;http://bugzil.la/723102&quot;&gt;bug 723102&lt;/a&gt; – [New Tab Page] Can’t Hide/Show New Tab Page when closing left tab&lt;/p&gt;
&lt;p&gt;* Merge Fx-Team and UX branches&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Next:&lt;/strong&gt;&lt;br /&gt;
* &lt;a href=&quot;http://bugzil.la/720838&quot;&gt;bug 720838&lt;/a&gt; – [Page Thumbnails] Use canvas.mozFetchAsStream()&lt;br /&gt;
* &lt;a href=&quot;http://bugzil.la/669603&quot;&gt;bug 669603&lt;/a&gt; – large sessionStorage data causes session restore to block the UI&lt;br /&gt;
* &lt;a href=&quot;http://bugzil.la/721019&quot;&gt;bug 721019&lt;/a&gt; – [New Tab Page] Add telemetry probes&lt;br /&gt;
* &lt;a href=&quot;http://bugzil.la/716532&quot;&gt;bug 716532&lt;/a&gt; – [New Tab Page] Remove “site strip” at the top and re-style buttons&lt;br /&gt;
* &lt;a href=&quot;http://bugzil.la/721417&quot;&gt;bug 721417&lt;/a&gt; – Can’t drag and drop URL into about:newtab&lt;br /&gt;
* and other various New Tab Page bugs&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Coordination:&lt;/strong&gt;&lt;br /&gt;
* Returned from Performance work week and FOSDEM&lt;br /&gt;
&lt;/p&gt;</description>
	<pubDate>Mon, 06 Feb 2012 20:08:35 +0000</pubDate>
	<dc:creator>Tim Taubert</dc:creator>
</item>
<item>
	<title>Lawrence Mandel: Firefox Engineering Program Management 4Q 2011 Summary</title>
	<guid isPermaLink="false">http://lawrencemandel.com/?p=235</guid>
	<link>http://lawrencemandel.com/2012/02/06/firefox-engineering-program-management-4q-2011-summary/</link>
	<description>&lt;p&gt;The Firefox engineering program management team formed at the end of 3Q 2011. The team is currently comprised of Sheila Mooney (smooney – our fearless leader), Martin Best (mbest), Erin Lancaster (elancaster), and me (Lawrence Mandel – lmandel). Our first whole quarter as a team was 4Q 2011. Looking back over the last three months, I find it quite amazing how far the reach of the team has expanded in this time. Here’s a short summary of the efforts in which the team was involved in 4Q 2011. You can also track our team against our &lt;a href=&quot;https://wiki.mozilla.org/Program_Management/Firefox/2011-Q4-Goals&quot; title=&quot;Firefox engineering program management 4Q 2011 goals&quot;&gt;4Q goals&lt;/a&gt;.&lt;/p&gt;
&lt;h3&gt;Mobile&lt;/h3&gt;
&lt;p&gt;Back in October &lt;a href=&quot;http://groups.google.com/group/mozilla.dev.planning/msg/1f6bd0f8f044a33d&quot;&gt;it was decided&lt;/a&gt; to rewrite the Firefox mobile UI as a native Android application. This is no small feat. Erin stepped up as the project manager for this effort and has been doing an amazing job. If you haven’t seen the progress that this team has made in 3 months check out the latest &lt;a href=&quot;http://nightly.mozilla.org/&quot;&gt;Nightly&lt;/a&gt; or &lt;a href=&quot;http://www.mozilla.org/en-US/firefox/aurora/&quot;&gt;Aurora&lt;/a&gt; builds. I can’t wait to see this effort reach the first release of the new native Android application early in 2012.&lt;/p&gt;
&lt;h3&gt;Silent Update&lt;/h3&gt;
&lt;p&gt;Transforming the Firefox update experience into a &lt;a href=&quot;http://lawrencemandel.com/2012/02/03/improving-the-firefox-update-experience/&quot; title=&quot;Improving the Firefox update experience&quot;&gt;silent update experience&lt;/a&gt; is another big task that requires changes to the way the browser handles update related prompting including restart, Windows user account control (UAC), and information pages, the update operation itself, and add-on compatibility. Lawrence has been managing this effort, which landed changes for the restart prompt, the what’s new page, and add-ons default to compatible in Q4. The remaining changes are slated to land in 1Q 2012 with all features being released in the 1H 2012.&lt;/p&gt;
&lt;h3&gt;Bugzilla Anthropology&lt;/h3&gt;
&lt;p&gt;In an effort to better understand our project’s use of bugzilla, Martin conducted a series of interviews with Mozilla contributors on various teams. The goal of this project is to understand how people use bugzilla. Martin put together a good &lt;a href=&quot;http://blog.mozilla.com/mbest/2011/12/20/introducing-the-bugzilla-anthropology-project-2/&quot;&gt;blog post&lt;/a&gt; that provides details about this important project.&lt;/p&gt;
&lt;h3&gt;Crashkill&lt;/h3&gt;
&lt;p&gt;Sheila continued to run the ever important &lt;a href=&quot;https://wiki.mozilla.org/CrashKill&quot;&gt;Crashkill program&lt;/a&gt; that monitors and acts on Firefox stability issues. Along with supporting Firefox desktop, the Crashkill program has been actively contributing crash reports to the new mobile native UI rewrite.&lt;/p&gt;
&lt;h3&gt;Telemetry&lt;/h3&gt;
&lt;p&gt;Lawrence picked up management of &lt;a href=&quot;http://hacks.mozilla.org/2011/09/firefox-7-telemetry/&quot;&gt;Telemetry&lt;/a&gt; with the immediate goals of improving the Telemetry adoption rate, improving the consumability of the Telemetry dashboard, and increasing adoption of the framework by the implementation of more probes. 4Q saw the release of v2 of the Telemetry dashboard and the initial efforts to improve adoption of this data collection framework among the users on the various Firefox channels. 1Q 2012 will see an improved Telemetry adoption rate, continued work on the dashboard, and even more probes.&lt;/p&gt;
&lt;h3&gt;Snappy&lt;/h3&gt;
&lt;p&gt;In October Firefox &lt;a href=&quot;http://lawrencemandel.com/2011/11/15/update-on-multi-process-firefox-electrolysis-development/&quot;&gt;project leadership made a decision&lt;/a&gt; to put the electrolysis effort on hold to focus resources on short term responsiveness gains. The result of this is &lt;a href=&quot;https://wiki.mozilla.org/Performance/Snappy&quot;&gt;project Snappy&lt;/a&gt;, which kicked off late in 4Q. Lawrence is managing Snappy, which includes broad membership from various front-end and platform teams. In 1Q we plan to move from investigation to solutions. Look for changes to start landing as early as 1Q.&lt;/p&gt;
&lt;h3&gt;HTML5 Games&lt;/h3&gt;
&lt;p&gt;Martin kicked off a new effort late in the 4Q to make Firefox an awesome platform for HTML5 based game development. There is lots more coming in 1Q on this active effort. You can follow along on the &lt;a href=&quot;https://wiki.mozilla.org/HTML5_Games&quot;&gt;HTML5 games&lt;/a&gt; wiki page.&lt;/p&gt;
&lt;br /&gt; Tagged: &lt;a href=&quot;http://lawrencemandel.com/tag/firefox/&quot;&gt;firefox&lt;/a&gt;, &lt;a href=&quot;http://lawrencemandel.com/tag/mozilla/&quot;&gt;mozilla&lt;/a&gt;, &lt;a href=&quot;http://lawrencemandel.com/tag/program-management/&quot;&gt;program management&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gocomments/lawrencemandel.wordpress.com/235/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/comments/lawrencemandel.wordpress.com/235/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/godelicious/lawrencemandel.wordpress.com/235/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/delicious/lawrencemandel.wordpress.com/235/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gofacebook/lawrencemandel.wordpress.com/235/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/facebook/lawrencemandel.wordpress.com/235/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gotwitter/lawrencemandel.wordpress.com/235/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/twitter/lawrencemandel.wordpress.com/235/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gostumble/lawrencemandel.wordpress.com/235/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/stumble/lawrencemandel.wordpress.com/235/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/godigg/lawrencemandel.wordpress.com/235/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/digg/lawrencemandel.wordpress.com/235/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/goreddit/lawrencemandel.wordpress.com/235/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/reddit/lawrencemandel.wordpress.com/235/&quot; /&gt;&lt;/a&gt; &lt;img alt=&quot;&quot; border=&quot;0&quot; height=&quot;1&quot; src=&quot;http://stats.wordpress.com/b.gif?host=lawrencemandel.com&amp;amp;blog=8148745&amp;amp;post=235&amp;amp;subd=lawrencemandel&amp;amp;ref=&amp;amp;feed=1&quot; width=&quot;1&quot; /&gt;</description>
	<pubDate>Mon, 06 Feb 2012 19:51:20 +0000</pubDate>
	<dc:creator>Lawrence Mandel</dc:creator>
</item>
<item>
	<title>Marco Zehe: If you use the WAI-ARIA role “application”, please do so wisely!</title>
	<guid isPermaLink="false">http://www.marcozehe.de/?p=319</guid>
	<link>http://www.marcozehe.de/2012/02/06/if-you-use-the-wai-aria-role-application-please-do-so-wisely/</link>
	<description>&lt;p&gt;This goes out to all web developers out there reading this blog and implementing widgets and other rich content in HTML, CSS and JavaScript! If you think of using the WAI-ARIA role “application” in your code, please do so with caution and care! And here’s why:&lt;/p&gt;
&lt;h3&gt;What is it?&lt;/h3&gt;
&lt;p&gt;“application” is one of the WAI-ARIA landmark roles. If you’d like to read up on landmarks, &lt;a href=&quot;http://www.marcozehe.de/2009/10/31/easy-aria-tip-4-landmarks/&quot;&gt;please go here&lt;/a&gt;.  It is used to denote a region of a web application that is to be treated like a desktop application, not like a regular web page. In other words, if you use something that is not part of standard HTML, like a mashup widget, and your page has no resemblance to a classic document in, roughly, over 90% of its content, “application” is for you. If you, on the other hand, make up a user interface solely of elements that are part of standard HTML like selects, check boxes, text boxes etc., and in addition use only common compound widgets and lots of document-like content like hyperlinks, you will most probably not want to use “application” because browsers and assistive technologies provide a standard interaction model for these already and don’t need special support from you in that.&lt;/p&gt;
&lt;h3&gt;Why use it at all?&lt;/h3&gt;
&lt;p&gt;Traditionally, assistive technologies like screen readers for the blind convert a page’s content into a format that is easier for a person with a disability to comprehend. A two-column newspaper style text, for example, is reformatted so that the text flows from beginning to end like it would in a single-column document. Multi-column layouts of pages are streamlined so that there’s a structured flow a person who, for example, cannot see the screen, can understand.&lt;/p&gt;
&lt;p&gt;For this, screen readers especially on Windows have adopted a two-part user interaction model:&lt;/p&gt;
&lt;dl&gt;
&lt;dt&gt;virtual cursor or browse mode&lt;/dt&gt;
&lt;dd&gt;This is the mode screen readers especially on Windows operate in when the user browses a web page. The term virtual cursor has been used since its inception in 1999 because this feels to the user like a document in, for example, WordPad or MS Word. The user walks the document using the arrow keys and has the text to them read via the speech synthesizer. In addition, semantic information is spoken to indicate whether a particular piece of text is a link, graphic, form element, part of a data table structure, list etc.  In addition, several keys are captured by the assistive technology and are not processed by the browser. These allow navigation by headings, lists, links, tables, form elements and others. Usually, these are done via single letters. The visual focus may or may not follow the virtual cursor onto focusable items, depending on the assistive technology in use and its settings.&lt;/dd&gt;
&lt;dt&gt;Forms mode or focus mode&lt;/dt&gt;
&lt;dd&gt;This is a mode where the user interacts with elements that accept a form of data entry. This may be via entering text, checking a check box, selecting one of several possible radio buttons, or making a selection in a select element.  This mode is either invoked by putting the virtual or browse focus onto such an element and pressing a key (usually &lt;kbd&gt;Enter&lt;/kbd&gt;), or by the assistive technology switching to this mode automatically when the virtual focus encounters such an element. Others may only activate this mode automatically when specifically using the &lt;kbd&gt;tab&lt;/kbd&gt; key. In this mode, all keys are passed through to the browser. It is as if you were sitting in front of your browser using it with the keyboard, and don’t have a screen reader running.  Likewise, if the application focus leaves such an element that supports or requires direct keyboard interaction, if it was switched on automatically, it will be switched off and the user returned to browse/virtual mode.  &lt;strong&gt;Note&lt;/strong&gt;: Some elements like buttons and links do not require the user to switch into focus or forms mode, because for efficiency, screen readers allow activation of these elements directly from virtual/focus modes.&lt;/dd&gt;
&lt;/dl&gt;
&lt;p&gt;The challenge is that you may be creating widgets that require you to force the user into direct interaction with the browser. You know that your widget can best be used via the keyboard if the user is &lt;strong&gt;not&lt;/strong&gt; in virtual mode. In addition, you know that you have no classic document content to display, but only use widgets and provide all necessary context through them. This is what &lt;em&gt;role&lt;/em&gt; “application” is for.  It is under &lt;strong&gt;your&lt;/strong&gt; control whether the user is being thrown into focus mode once your widget gains keyboard focus.  Also, contrary to standard focus mode, if an assistive technology encounters an area that is marked up with role “application”, it is usually not so easy to manually exit out of that mode to review the surrounding content in browse mode.&lt;/p&gt;
&lt;h3&gt;So when should I use it, and when not?&lt;/h3&gt;
&lt;p&gt;You &lt;strong&gt;do not&lt;/strong&gt; use it if a set of controls only contains these widgets, that are all part of standard HTML. This also applies if you mark them up and create an interaction model using WAI-ARIA roles instead of standard HTML widgets:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;text box. This also applies to password, search, tel and other newer input &lt;em&gt;type&lt;/em&gt; derivates&lt;/li&gt;
&lt;li&gt;textarea&lt;/li&gt;
&lt;li&gt;check box&lt;/li&gt;
&lt;li&gt;button&lt;/li&gt;
&lt;li&gt;radio button (usually inside a fieldset/legend element wrapper)&lt;/li&gt;
&lt;li&gt;select + option(s)&lt;/li&gt;
&lt;li&gt;links, paragraphs, headings, and other things that are classic/native to documents on the web.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;You also do &lt;strong&gt;not&lt;/strong&gt; use the “application” role if your widget is one of the following more dynamic and non-native widgets. Screen readers and other assistive technologies that support WAI-ARIA will support switching between browse and focus modes for these by default, too:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;tree view&lt;/li&gt;
&lt;li&gt;slider&lt;/li&gt;
&lt;li&gt;table that has focusable items and is being navigated via the &lt;kbd&gt;arrow&lt;/kbd&gt; keys, for example a list of e-mail messages where you provide specific information. Other examples are interactive grids, tree grids etc.&lt;/li&gt;
&lt;li&gt;A list of tabs (tab, tablist) where the user selects tabs via the &lt;kbd&gt;left&lt;/kbd&gt; and &lt;kbd&gt;right&lt;/kbd&gt; arrow keys. Remember that &lt;strong&gt;you&lt;/strong&gt; have to implement the keyboard navigation model for this!&lt;/li&gt;
&lt;li&gt;dialog and alertdialog. These cause screen readers to go into a sort of application mode implicitly once focus moves to a control inside them. Note that for these to work best, set the &lt;em&gt;aria-describedby&lt;/em&gt; attribute of the element whose role is “dialog” to the id of the text that explains the dialog’s purpose, and set focus to the first interactive control when you open it.&lt;/li&gt;
&lt;li&gt;toolbar and toolbarbuttons, menus and menu items, and similar&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;You &lt;strong&gt;only&lt;/strong&gt; want to use role “application” if the content you’re providing consists of only interactive controls, and of those, mostly advanced widgets, that emulate a real desktop application. Note that, despite many things now being called a web application, most of the content these web applications work with are still document-based information, be it Facebook posts and comments, blogs, Twitter feeds, even accordeons that show and hide certain types of information dynamically. We primarily still deal with documents on the web, even though they may have a desktop-ish feel to them on the surface.&lt;/p&gt;
&lt;p&gt;In short: The times when you actually &lt;strong&gt;will&lt;/strong&gt; use role “applications” are probably going to be &lt;strong&gt;very rare&lt;/strong&gt; cases!&lt;/p&gt;
&lt;h3&gt;So where do I put this thing?&lt;/h3&gt;
&lt;p&gt;Put it on the closest containing element of your widget, for example the parent div of your element that is your outer most widget element. If that outer div wraps only widgets that need the application interaction model, this will make sure focus mode is switched off once the user tabs out of this widget.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Only&lt;/strong&gt; put it on the body element if your page consists solely of a widget or set of widgets that all need the focus mode to be turned on. If you have a majority of these widgets, but also have something you want the user to browse, use the &lt;em&gt;role&lt;/em&gt; “document” on the outer-most element of this document-ish part of the page. It is the counterpart to “application” and will allow you to tell the screen reader to use browse mode for this part. Also make this element tabbable by setting a &lt;em&gt;tabindex&lt;/em&gt; value on it so the user has a chance to reach it. As a rule of thumb: If your page consists of over 90 or even 95 percent of widgets, role “application” &lt;strong&gt;may be&lt;/strong&gt; appropriate. Even then, find someone knowledgeable who can actually test two versions of this: One with and one without role “application” set to see which model works best.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;NEVER&lt;/strong&gt; put it on a widely containing element such as body if your page consists mostly of traditional widgets or page elements such as links that the user does &lt;strong&gt;not&lt;/strong&gt; have to interact with in focus mode. This will cause huge headaches for any assistive technology user trying to use your site/app.&lt;/p&gt;
&lt;h3&gt;Some examples&lt;/h3&gt;
&lt;p&gt;The example that prompted me to write this is the newest version of the layout of Gmail. Gmail treats the whole thing as role “application”, causing the user to tab a zillion times before actually getting to the inbox message table. If they had used the role properly, the users could press &lt;kbd&gt;t&lt;/kbd&gt; in their screen reader once and jump to that table right away instead of tabbing 30 or 40 times.  Yes, Google do provide us with keyboard shortcuts &lt;kbd&gt;j&lt;/kbd&gt; and &lt;kbd&gt;k&lt;/kbd&gt;. Unfrortunately, aside from the fact that you have to know about them in the first place, they only work in Chrome and ChromeVox, but no other browsers.  Despite what Google themselves call it, Gmail is, below the surface, still strongly document based and thus many traditional interaction modes do still apply here.&lt;/p&gt;
&lt;p&gt;An example where roles “application” and “document” are really used wisely is the current Yahoo! mail web interface. The table where the messages are being displayed in a list is marked up to be an “application”, because the arrow keys are used to navigate between messages, &lt;kbd&gt;enter&lt;/kbd&gt; opens one etc. Once a mail is being displayed, everything around the actual mail header and text is an application, but the mail header and text are a document, so role “document” is used and initial focus is put there so the user can immediately start reading their mail in a familiar browsing fashion.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;funny disclaimer&lt;/strong&gt;: Yahoo! do not pay me for constantly calling them out as a good example of an accessible web app. They just did a bang-up job, that’s all! &lt;img alt=&quot;:-)&quot; class=&quot;wp-smiley&quot; src=&quot;http://www.marcozehe.de/wp-includes/images/smilies/icon_smile.gif&quot; /&gt; &lt;/p&gt;
&lt;h3&gt;Closing comments&lt;/h3&gt;
&lt;p&gt;If you have questions about this, feel free to post them here on the blog, I’ll do my best to answer them and also incorporate answers to updates to this post. You can also find the Google Group &lt;a href=&quot;http://groups.google.com/group/free-aria&quot;&gt;free-aria&lt;/a&gt; and discuss questions there with other web developers, standards experts and users. This is an important topic that, if done right, can provide all your users with a rich and pleasant experience, but if done wrong, can also cause headaches, complaints, and cause your web app to be less likeable by a sizeable number of users.&lt;/p&gt;
&lt;p&gt;So use role “application” only if you absolutely have to, and tests show that this provides the better interaction model! Use it wisely when you do it, it’s worth the effort!&lt;/p&gt;
&lt;h3&gt;Update February 7&lt;/h3&gt;
&lt;p&gt;I’ve incorporated comments that were posted to the original version of this blog post into the post, making the statements even stronger hopefully. Thanks to Jamie for pointing out a couple of very important points that make the point against using role “application” in most cases even stronger!&lt;/p&gt;</description>
	<pubDate>Mon, 06 Feb 2012 19:35:52 +0000</pubDate>
	<dc:creator>Marco</dc:creator>
</item>
<item>
	<title>Just Browsing: There is War!</title>
	<guid isPermaLink="false">http://www.salsitasoft.com/?p=1986</guid>
	<link>http://feedproxy.google.com/~r/justdiscourse/browsing/~3/RUkPhJ-Y9C8/</link>
	<description>&lt;p&gt;&lt;a href=&quot;http://www.salsitasoft.com/wp-content/uploads/2012/02/religious.jpg&quot;&gt;&lt;img alt=&quot;&quot; class=&quot;alignnone size-medium wp-image-1998&quot; height=&quot;208&quot; src=&quot;http://www.salsitasoft.com/wp-content/uploads/2012/02/religious-300x208.jpg&quot; title=&quot;religious&quot; width=&quot;300&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;No, I don’t want to write this article. Not at all. But I have to.&lt;/p&gt;
&lt;p&gt;I recently had to look up a phrase that didn’t mean anything to me so far, the phrase “flame war”. Wikipedia defines “flaming” as “hostile and insulting interaction between Internet users”. So when I learned the meaning of “flame wars” my first thought was: “Ok, I understand, it has something to do with religion.” Usually discussions between religions are hostile and often insulting, and in all cases they state that one party is right and the other is wrong. Regarding religions this might be the only way of discussing things, since religions don’t have solid facts that can be contributed as arguments. They are based on beliefs and opinions, and only some religions derive these rules and opinions from observations and experiences (usually the ones that don’t go into flame wars).&lt;/p&gt;
&lt;p&gt;Unfortunately the flame war I was dragged in was not about religion, it was about programming – but it was fought how only religious discussions are fought. I was pretty startled when I found myself in the middle of such a war, although I never was a religious person! Thank God(!) a wise man from a foreign country (Great Britain) knocked on my door and stopped me before someone could chop off my head, so here a short warning to you all: You can’t win with those people. Don’t get into a fight. Shrug your shoulders and mind your own business.&lt;/p&gt;
&lt;p&gt;But what was all this about? Well… let’s see.&lt;/p&gt;
&lt;p&gt;There is a very basic fear that all animals share: The fear of the unknown or the incomprehensible.&lt;/p&gt;
&lt;p&gt;If you are the father or mother of a child and you belong to a ethnic minority you might know what I’m talking about. Your child looks different. It may speak a bit different. Maybe it plays different games. Some of your child’s classmates might be curious and ask questions like “Why do you always wear these funny rings around your neck?” or “What does your name mean?”. Others (usually the ones that are more bound to instincts than to thinking) might react with rejection or even aggression. They follow their fundamental fear, and, in the case of aggression, also the rule “Kill it before it kills us”. Okay, that might be a bit strong, but basically it goes like “I don’t know what the foreign child is doing, so I don’t like it, it might be (no, it &lt;strong&gt;is&lt;/strong&gt;!) evil.” So in the end non-understanding results in rejection.&lt;/p&gt;
&lt;p&gt;And what does that have to do with programming?.&lt;/p&gt;
&lt;p&gt;Sometimes programmers behave like children — or animals, or bigots. Sad, but true. For example when they state that “their” programming language is the only language and all others are stupid. You might then ask them “And why you say feature-A of language-A is evil?”. And you get the answer — usually after some deeper digging — “Because I don’t like it”, which then (again after some discussion about the benefits of feature-A) turns out to mean “I don’t (totally) understand it”. This is sad. Not only because it doesn’t do justice to those “other languages”, but also because these people are limiting themselves and their advancement.&lt;/p&gt;
&lt;p&gt;Also a very childish behaviour is their effort to find something where other languages are not as good as their own favourite language. When they find it, they behave like children who are bullying another child with a disability. “Haha, you have to indicate the type of a variable, I can pass anything to my function! Retype, retype!” A good programmer on the other hand will always be interested in finding the best solution for his problem, and he will be excited to learn new techniques and features that allow him to get better, especially when he discovers the weaknesses of his own favourite language.&lt;/p&gt;
&lt;p&gt;All in all this kind of informatics chauvinism or IT-racism it immature, self-limiting and results in unnecessary flame wars that have no winner.&lt;/p&gt;
&lt;p&gt;To say it in religious words: The best way to get an impression of what God might really be is to have a look at as many religions as possible, because God is everything. Whenever you exclude something you won’t get the whole picture.&lt;/p&gt;
&lt;p&gt;A small joke to finish this:&lt;/p&gt;
&lt;p&gt;A priest, a minister, and a rabbi were all sitting at a table, finishing dinner and discussing theology. Suddenly an angel appeared before them. “I have been sent to grant each of you one wish,” he said. “Who will go first?”&lt;/p&gt;
&lt;p&gt;The Catholic priest stood up. “I wish for the destruction of all Protestants!”&lt;/p&gt;
&lt;p&gt;Then the Protestant minister bolted up. “I wish for the destruction of all Catholics!”&lt;/p&gt;
&lt;p&gt;The rabbi kept seated, so the angel asked, “How about you? What do you wish for, rabbi?”&lt;/p&gt;
&lt;p&gt;The rabbi answered, “Well, if you’re going to grant their wishes, I’ll just settle for another cup of coffee.”&lt;/p&gt;
&lt;img height=&quot;1&quot; src=&quot;http://feeds.feedburner.com/~r/justdiscourse/browsing/~4/RUkPhJ-Y9C8&quot; width=&quot;1&quot; /&gt;</description>
	<pubDate>Mon, 06 Feb 2012 19:33:30 +0000</pubDate>
	<dc:creator>Arne Seib</dc:creator>
</item>
<item>
	<title>Irina Sandu: Mobile Q4 2011 in review – Apple, security and privacy, Amazon</title>
	<guid isPermaLink="false">http://irinasandu.com/?p=256</guid>
	<link>http://irinasandu.com/2012/02/06/mobile-q4-2011-in-review-apple-security-and-privacy-amazon/</link>
	<description>&lt;p&gt;&lt;strong&gt;Apple&lt;/strong&gt; had an unusual quarter, which resulted in record revenues for the company, due to the discontinuation of its regular sales cycle which begins with a new iPhone version launch in Q3 of every year. The iPhone 4s release at the beginning of Q4 maximized &lt;a href=&quot;http://thenextweb.com/mobile/2012/01/27/samsung-posts-record-q4-profits-but-still-no-official-smartphone-sales-figures/&quot;&gt;results for the quarter&lt;/a&gt; by its combination with the second biggest sales period of the year: the holiday season. Rumours to the cause of the delay varied, the one with the most pick-up being that Apple had initially designed the new iPhone version to not contain an operator-provided SIM card, but have the phone take over all of its functions; a move which was rejected by carriers and compelled the fruit company to keep the old standard in place. The main innovation of the iPhone 4S is &lt;a href=&quot;http://en.wikipedia.org/wiki/Siri_%28software%29&quot;&gt;Siri&lt;/a&gt;, a new iteration for voice recognition software that has the opportunity to become a new mainstream input method as the technology strives to mature while being developed by multiple players in different tech industries. Results placed Apple as the most probable top smartphone vendor for the quarter, with 37 million iPhones sold, only an estimated 0.5 million less than its closest competitor, Samsung. For Q1 of 2012, iPhone sales are expected to follow the traditional annual slowdown after the holiday season, but we will see a spike in iPad sales, as the new version is expected towards the end of the quarter.&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot;&gt;♦&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Security and privacy&lt;/strong&gt; has always been a sensitive topic on mobile and the increase in capabilities of the average device expands the interest for and possibilities to create concerns among consumers. The profile of the mobile phone as a closely personal device  demands for strong consideration of security and privacy and raises a lot of concern when breaches are discovered. Such was the case with the discovery of the &lt;a href=&quot;http://www.engadget.com/2011/12/01/carrier-iq-what-it-is-what-it-isnt-and-what-you-need-to/&quot;&gt;Carrier IQ&lt;/a&gt; software on Android and iOS smartphones, an app which was typically installed by OEMs or carriers and had the ability to send  detailed information on phone activity to a third-party. The press coverage triggered several &lt;a href=&quot;http://arstechnica.com/tech-policy/news/2011/12/carrier-iq-hit-with-privacy-lawsuits-as-more-security-researchers-weigh-in.ars&quot;&gt;class-action lawsuits&lt;/a&gt; against phone makers and carriers and a &lt;a href=&quot;http://arstechnica.com/tech-policy/news/2012/01/mobile-device-privacy-act-would-prevent-secret-smartphone-monitoring.ars&quot;&gt;bill&lt;/a&gt; concerning the installation of monitoring software on mobile phones to be proposed in the US.&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot;&gt;♦&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Amazon&lt;/strong&gt; launched its first Android-based tablet in the US, the Kindle Fire, which achieved impressive sales of 5 to 6 million devices in the first quarter after launch. Reviews of the device were mixed and positioned the tablet as offering an average experience in capabilities and user experience for the segment. Its success is partly explained by the affordable price, a lot lower than tablets with similar hardware specifications and which causes Amazon an estimated $50 dollars net loss per each device sold. The company’s strategy to make up for the low price and turn the venture into profit is through revenue for content on the device, a strategy which is still to be proven feasible, as increase in media sales for North America for Q4 was &lt;a href=&quot;http://www.ft.com/intl/cms/s/0/43e84740-4d1c-11e1-bdd1-00144feabdc0.html#axzz1lcg7pIjl&quot;&gt;only 8%&lt;/a&gt;.&lt;/p&gt;
&lt;br /&gt;  &lt;a href=&quot;http://feeds.wordpress.com/1.0/gocomments/irinas.wordpress.com/256/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/comments/irinas.wordpress.com/256/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/godelicious/irinas.wordpress.com/256/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/delicious/irinas.wordpress.com/256/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gofacebook/irinas.wordpress.com/256/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/facebook/irinas.wordpress.com/256/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gotwitter/irinas.wordpress.com/256/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/twitter/irinas.wordpress.com/256/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gostumble/irinas.wordpress.com/256/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/stumble/irinas.wordpress.com/256/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/godigg/irinas.wordpress.com/256/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/digg/irinas.wordpress.com/256/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/goreddit/irinas.wordpress.com/256/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/reddit/irinas.wordpress.com/256/&quot; /&gt;&lt;/a&gt; &lt;img alt=&quot;&quot; border=&quot;0&quot; height=&quot;1&quot; src=&quot;http://stats.wordpress.com/b.gif?host=irinasandu.com&amp;amp;blog=6647599&amp;amp;post=256&amp;amp;subd=irinas&amp;amp;ref=&amp;amp;feed=1&quot; width=&quot;1&quot; /&gt;</description>
	<pubDate>Mon, 06 Feb 2012 17:41:00 +0000</pubDate>
	<dc:creator>irina</dc:creator>
</item>
<item>
	<title>QMO: WebQA ‘Live’ Test Day – Thursday, February 23rd, 2012</title>
	<guid isPermaLink="false">https://quality.mozilla.org/?p=40262</guid>
	<link>https://quality.mozilla.org/2012/02/webqa-live-test-day-thursday-february-23rd-2012/</link>
	<description>&lt;p&gt;We’re inviting web testers from all skill levels to our San Fransisco space to learn hands-on how we test our websites! Bring your laptop, pick a project that interests you, and work alongside our WebQA team as we push our web testing to the next level! If you’re an expert in performance testing, why not find out how we do functional testing? Even if you’re completely new to web testing, we’ll help to get you up and running. Become a Mozilla contributor and help us make the web a better place!&lt;/p&gt;
&lt;p&gt;Here are a few of the projects that we’ll be offering:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Automated mobile web testing&lt;/strong&gt; – writing WebDriver tests for mobile, using emulators, devices, and boards&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Migrating projects from Selenium RC to WebDriver&lt;/strong&gt; – find out what we’ve learned, and help us to migrate more projects&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Integrating with BrowserID&lt;/strong&gt; – A new form of online identity, as sites adopt it, we need to be able to automate with it&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Increasing our automation coverage&lt;/strong&gt; – Help us to add new tests to our &lt;a href=&quot;https://github.com/mozilla/mcom-tests&quot;&gt;mozilla.com&lt;/a&gt; and &lt;a href=&quot;https://github.com/mozilla/mdn-tests&quot;&gt;Mozilla Developer Network&lt;/a&gt; test suites&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Expand our test templates&lt;/strong&gt; – Due to the velocity of engagement projects we’ve created &lt;a href=&quot;https://github.com/mozilla/marketing-project-template&quot;&gt;automated testing templates&lt;/a&gt;, with your help we can make these even better&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Pay off technical debt&lt;/strong&gt; – Almost every project accrues a technical debt, and this is a perfect opportunity to pay some of this off&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Automated test maintenance&lt;/strong&gt; – Investigate failures with us, fix some tests, or raise bugs and mark the tests as expected to fail&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Improve documentation&lt;/strong&gt; – A project is only as good as it’s documentation&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;There will also be an opportunity to learn about the tools we use:&lt;br /&gt;NetSparker, Power Fuzzer, JMeter, Selenium, pytest (and various plugins), BeautifulSoup, git, and more!&lt;/p&gt;
&lt;p&gt;This event will be limited in space, and you will need to bring your own laptop to work on. If you’re interested in attending please RSVP to the event &lt;a href=&quot;http://www.meetup.com/The-Mountain-View-Mozilla-Meetup-Group/events/51230852/&quot;&gt;here&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;When:&lt;/strong&gt; February 23, 2012.&lt;/p&gt;</description>
	<pubDate>Mon, 06 Feb 2012 16:34:50 +0000</pubDate>
	<dc:creator>Dave Hunt</dc:creator>
</item>
<item>
	<title>hacks.mozilla.org: Tantek Çelik about the importance of Web Standards</title>
	<guid isPermaLink="false">http://hacks.mozilla.org/?p=11207</guid>
	<link>http://hacks.mozilla.org/2012/02/tantek-celik-about-the-importance-of-web-standards/</link>
	<description>&lt;p&gt;This is the fourth installment of &lt;a href=&quot;http://hacks.mozilla.org/category/missionmozilla/&quot;&gt;Mission:Mozilla&lt;/a&gt;, a series of interviews that link Mozillians, the technology they produce and the Mozilla mission. This time, We’re interviewing Tantek Çelik, a long-time Web standards contributor. He started working on web standards at Microsoft in 1998, while leading the development of Tasman, the IE Mac rendering engine, and subsequently founded independent efforts like microformats.org, BarCamp, and most recently, IndieWebCamp.org.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Tristan&lt;/strong&gt; – Hi Tantek, could you introduce yourself? (I could point our reader to &lt;a href=&quot;http://en.wikipedia.org/wiki/Tantek&quot;&gt;your Wikipedia page&lt;/a&gt;, but it seems a bit out of date).&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Tantek&lt;/strong&gt; – I’ve been passionate about web standards since being inspired at the level of collaboration among different companies, cultures, individuals at my first W3C CSS&amp;amp;PF WG meeting May 1998 in Paris. My interest in standards as building blocks started much earlier with many childhood hours spent building things with LEGOs.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Tristan&lt;/strong&gt; – Ah, LEGOs! I have fond memories of them, particularly LEGO technic! They’ve inspired so many geeks that they somehow should be credited for their work in W3C specs, don’t you think? ;-)&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Tantek&lt;/strong&gt; – Indeed I think LEGOs have inspired many an engineer. Simple pieces that could be combined in numerous ways and built into amazing unique and creative structures.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Tristan&lt;/strong&gt; – Sounds like a good description of Web technologies to me! Who was your employer back then?&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Tantek&lt;/strong&gt; – I was working for Microsoft at the time, having joined the Macintosh Internet Products Group in 1997. I started work on Macintosh Internet Explorer (MacIE) in mid 1997 with mostly bug fixes and improvements in CSS support which incrementally made their way into MacIE 4. It was soon clear though that we needed a fairly big overhaul to implement better CSS support. Soon after I joined standards discussions in the W3C.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Tristan&lt;/strong&gt; – It’s a little known fact, but IE Mac was really raising the bar when it came to CSS compliance. It was a time where few people cared about Web standards. I was at Netscape back then, and you at Microsoft. It was amazing to see a team trying to push Web standards on the other side of the fence!&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Tantek&lt;/strong&gt; – When I was made the developer lead for the MacIE rendering engine, it wasn’t immediately obvious to me what we should focus on, so I decided to interview web design firms in San Francisco and just ask: “Hi I’m with the Microsoft MacIE team. What would you like to see in terms of standards / rendering support in the next version of MacIE?” The answers were loud and clear: dependable standards support! In particular: reliable and ideally complete CSS support, “XML support” (whatever that meant), and better Javascript/DOM support. A few specifically asked for PNG support. Those interviews drove the priorities of what became &lt;em&gt;Tasman&lt;/em&gt;, the new rendering engine for MacIE5 which itself in the process got renamed to Internet Explorer 5 for Macintosh (IE5/Mac). Little did I know at the time that such a focus on getting web standards right would come as a surprise to others.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Tristan&lt;/strong&gt; – And now, a few years down the road, we’ve seen how Web standards have made the Web what it is today, but they’re also something that Web browser vendors are heavily investing on! What do you do for Mozilla today? Why should Web developers care?&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Tantek&lt;/strong&gt; – I joined Mozilla in May 2010 as Web Standards Lead and I’m excited to be working with so many people passionate about standards. In an organization with numerous talented web standards contributors, in addition to editing/iterating specifications, my role is often more of coordination and collaboration, making sure that folks who care about particular standards find each other and work together. One key thing I’ve created and driven in Mozilla is the open documentation of our standards participation, in a public place where not only we (Mozillians) can find each other, but web developers in general can see &lt;a href=&quot;https://wiki.mozilla.org/Standards&quot;&gt;how much effort Mozilla and individual Mozillians put into web standards&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Tristan&lt;/strong&gt; – I have the impression that Mozilla does not get the share of credit we deserve when it comes to our work on standards. Don’t you agree?&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Tantek&lt;/strong&gt; – As someone who’s been involved with web standards for over a decade, I’ve had a deep respect for Mozilla’s involvement with web standards for quite some time. However I do think that recognition can easily be forgotten outside of standards circles. I think the web community as a whole greatly underestimates the longevity, depth, and dedication of Mozilla’s contributions to web standards.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Tristan&lt;/strong&gt; – Where do you think Mozilla particularly shines?&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Tantek&lt;/strong&gt; – One thing that’s always impressed me about Mozilla’s commitment to web standards is the level of quality and thoroughness that Mozilla places into implementations. In my experience, historically Firefox has had the highest fidelity handling of various CSS properties for example, focusing more on getting things precisely right rather than shipping quick implementations that may only cover common or 80% cases.&lt;/p&gt;
&lt;p&gt;Second, Mozilla works far more in the open, early and often, than any other organization. For example, we do nearly all our project work on open wiki pages on &lt;a href=&quot;https://wiki.mozilla.org&quot;&gt;wiki.mozilla.org&lt;/a&gt;. I even keep my own Mozilla projects list on an open Mozilla wiki page. It makes it really easy to answer when people ask me&lt;a href=&quot;https://wiki.mozilla.org/Tantek-Mozilla-projects&quot;&gt; what am I working on these days&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Tristan&lt;/strong&gt; – I agree with you. I sense that Mozilla tends to do the right thing, rather than the thing that makes us look good. Can you give an example why do Web standards matter?&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Tantek&lt;/strong&gt; – &lt;em&gt;The browser compatibility tax&lt;/em&gt;. When the Web Standards Project started in 1998, they raised the real and painful issue of the “browser compatibility tax” that developers had to pay when developing web sites. No matter what standard a web author would use, they’d have to spend potentially 50-75% of their time purely on making their code work in multiple browsers, sometimes having to write multiple versions of their markup and style sheets and then use fragile user-agent string tests to serve different content (a bad habit that still persists to this day). Much of this was due to the abysmal standards support in 1990s browsers.&lt;/p&gt;
&lt;p&gt;Web standards are an agreement between authors and browsers: if the author writes valid code (whether HTML, CSS, or JS), the browsers agree to render and execute it predictably and according to the standards. Without standards, web authors end up wasting their time coding for one browser at a time (typically focusing on whatever is the popular browser that year), and browsers developers end up wasting their time writing code fixing one site at a time.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Tristan&lt;/strong&gt; – And if we want the Web to be the platform of choice for all kind of developers and all kinds of applications, from desktop to mobile, we need to remove this “browser compatibility tax”.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Tantek&lt;/strong&gt; – Yes. It’s up to all of us as browser implementers to provide strictly correct implementations of web standards for authors to use, and for implementers to openly propose and test innovations in web standards.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Tristan&lt;/strong&gt; – what’s your biggest concern about Web standards?&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Tantek&lt;/strong&gt; – My biggest concern about web standards can be summed up in four words: &lt;em&gt;“Best Viewed In [...]“&lt;/em&gt; where the fourth word can be filled in with a different browser nearly every year. Anything that encourages web authors to focus on a single browser (or browser engine) to the expense of other browsers hurts the web. It’s also short-sighted – next year all the browsers will change and what was “best” last year is not the same this year, even newer versions of the same browser!&lt;/p&gt;
&lt;p&gt;Worst of all is when browser vendors themselves either encourage or outright publish “best viewed in” content themselves, thus setting a bad example for web authors.&lt;/p&gt;
&lt;p&gt;Judge for yourself – whenever you see a site purporting to show-off or demonstrate web standards, if the site ever gives you an excuse like “Please use browser X to view this” then they’re misbehaving. Standards demonstrations should simply state the standards they require, and then link to test suites (developed in standards bodies) for you to check your own browser.&lt;/p&gt;
&lt;p&gt;And “Best Viewed In” is just one of several concerns.&lt;/p&gt;
&lt;p&gt;There are many difficult challenges to open web standards that we must acknowledge and continue fighting hard to overcome. Challenges like patents that may hurt Touch Events, devices that only effectively support a single browser engine, and when one or a small number of companies decide to dictate &lt;em&gt;de-facto&lt;/em&gt; standards through “delayed open” tactics.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Tristan&lt;/strong&gt; – What’s the most exciting thing going on in the world of Web standards these days?&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Tantek&lt;/strong&gt; – So many things to choose from! I think the most exciting thing about web standards these days is the unprecedented level of intense interest and collaboration across numerous companies on the open web platform built on web standards. There’s a rising culture of placing importance on the open web, and I think we have Mozilla to thank for keeping that flame alive for so long and setting an ever higher bar for how to best work openly on open web standards.&lt;/p&gt;
&lt;p&gt;The Mozilla Manifesto provides an excellent set of principles for how to do so. I think what’s particularly important is to keep evolving openness, and Mozilla encourages community members to contribute their own views on how and why to work openly. Here is some more on the subject:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://paulrouget.com/e/openness/&quot;&gt;http://paulrouget.com/e/openness/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://tantek.com/2010/281/b1/what-is-the-open-web&quot;&gt;http://tantek.com/2010/281/b1/what-is-the-open-web&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://tantek.com/2011/168/b1/practices-good-open-web-standards-development&quot;&gt;http://tantek.com/2011/168/b1/practices-good-open-web-standards-development&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Tristan&lt;/strong&gt; – Thank you very much for your time Tantek, and keep up the good (and open) work!&lt;/p&gt;</description>
	<pubDate>Mon, 06 Feb 2012 16:23:32 +0000</pubDate>
	<dc:creator>Tristan Nitot</dc:creator>
</item>
<item>
	<title>Web FWD: Become a WebFWD Affiliate!</title>
	<guid isPermaLink="true">http://blog.webfwd.org/post/17155951369</guid>
	<link>http://blog.webfwd.org/post/17155951369</link>
	<description>&lt;p&gt;To spread awareness of our growing global program, we rely largely on our &lt;a href=&quot;https://webfwd.org/about/scouts/index.html&quot;&gt;Scouts&lt;/a&gt;, &lt;a href=&quot;https://webfwd.org/about/mentors/index.html&quot;&gt;Mentors&lt;/a&gt;, &lt;a href=&quot;https://webfwd.org/about/partners/index.html&quot;&gt;Partners&lt;/a&gt; — and you! We are thrilled to announce that now &lt;b&gt;you&lt;/b&gt; can support WebFWD directly and stay connected by becoming a Mozilla WebFWD Affiliate. &lt;/p&gt;

&lt;p&gt;How does this work? Good news: it’s super easy. Just &lt;a href=&quot;https://affiliates.mozilla.org/en-US/&quot;&gt;sign up&lt;/a&gt; to become a Firefox Affiliate. Once you’re signed up (BrowserID makes this part quick and simple), you can select the WebFWD logo in the “Mozilla” category, pick the logo size that works for your blog, website or personal page, and grab the custom HTML code to add to your page.&lt;/p&gt;

&lt;p&gt;And ta-da: by adding this badge you become a WebFWD affiliate, increasing awareness of our open innovation program! The code ensures we can stay aware of all the love (and traffic) you send our way. It always comes back :) .&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://affiliates.mozilla.org/en-US/&quot;&gt;&lt;img src=&quot;http://media.tumblr.com/tumblr_lyufecW24y1qk2c1r.png&quot; /&gt;&lt;/a&gt;&lt;/p&gt;</description>
	<pubDate>Mon, 06 Feb 2012 16:00:48 +0000</pubDate>
</item>
<item>
	<title>Jess Klein: On Integrating Learning</title>
	<guid isPermaLink="false">tag:blogger.com,1999:blog-25558782.post-8705746550645091818</guid>
	<link>http://jessicaklein.blogspot.com/2012/02/on-integrating-learning.html</link>
	<description>Over this past weekend I went to an exhibition at the Brooklyn Museum of Art called &lt;a href=&quot;http://www.brooklynmuseum.org/exhibitions/hide_seek/&quot;&gt;Hide and Seek-&lt;/a&gt; it was a fantastic show exhibiting American work focusing on gender and identity. I highly recommend it. However, as I was going around the exhibition, I came upon this sign:&lt;br /&gt;&lt;br /&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;http://2.bp.blogspot.com/-80o487En3Yk/Ty_w63YtQLI/AAAAAAAABCk/bt8Gx_WpV6g/s1600/IMAG0438.jpg&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;380&quot; src=&quot;http://2.bp.blogspot.com/-80o487En3Yk/Ty_w63YtQLI/AAAAAAAABCk/bt8Gx_WpV6g/s640/IMAG0438.jpg&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;The sign marked the entry to a room devoted to didactic content related to the themes and subject matter in the exhibition. While normally I am such a huge fan of how innovative and creative the Brooklyn Museum is with providing interactive and accessible learning tools in their exhibition spaces, I was a bit put off by this. First of all, no one was entering this space (except my colleague Atul- who I think falls under that small percentage of self proclaimed &quot;information geeks&quot;). I don't think that seeing the words &quot;Educational Resource Space&quot; would compel anyone to enter that area.  The exhibition had extraordinary content with the lush and often times shockingly graphic art and photography- why didn't they exploit the opportunity right then and there? Yes, there were the typical didactic labels filled with tombstone information- however that kind of just scratched the surface of the potential conversation.&lt;br /&gt;&lt;br /&gt;This experience got me to thinking a bit about the work that I am doing at Mozilla. As I've said numerous times, I am not about hiding the learning or sugar coating it- but I am interested in integrating it into the activity that the participant and, in this case &quot;viewer&quot; is passionate about. When we build software and tools- we should be thinking about how we can embed the learning into the experience and not make it something that you need to seek out as an afterthought. This is important for many reasons- but on a very practical level the reason to do this is because you have a captive audience!&lt;br /&gt;&lt;br /&gt;As I keep&lt;a href=&quot;http://jessicaklein.blogspot.com/2012/02/instructional-overlay-for-webmaking-101.html&quot;&gt; iterating on my prototypes&lt;/a&gt; and participate in the Open News sprint this week- I am going to try to keep this in mind. But, it is something that Mozilla is committed to, by design. By design, people like Atul and I work on the same team- and we work with community members who are skilled in teaching and education. We have embedded the learning in our work structure, but now we need to constantly keep ourselves in check that &quot;learning&quot; is not something that happens just in a special space in our projects that is devoted to &quot;educational resources.&quot;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img alt=&quot;&quot; height=&quot;1&quot; src=&quot;https://blogger.googleusercontent.com/tracker/25558782-8705746550645091818?l=jessicaklein.blogspot.com&quot; width=&quot;1&quot; /&gt;&lt;/div&gt;</description>
	<pubDate>Mon, 06 Feb 2012 15:51:07 +0000</pubDate>
	<author>noreply@blogger.com (Jess)</author>
</item>
<item>
	<title>Henrik Skupin: FOSDEM 2012, Add-on SDK, and slides for Mozmill CI</title>
	<guid isPermaLink="false">http://www.hskupin.info/?p=821</guid>
	<link>http://www.hskupin.info/2012/02/06/fosdem-2012-add-on-sdk-and-slides-for-mozmill-ci/</link>
	<description>&lt;p&gt;Over the last weekend I had the pleasure to participate in the Free and Open source Software Developers’ European Meeting – aka FOSDEM – in Brussels, which is an annual conference for open source projects and their enthusiastic communities. It’s not only fascinating to listen to scheduled talks, but also to meet fellows again who I haven’t seen for mostly a year or even longer.&lt;/p&gt;
&lt;p&gt;As every year I have spent a bit of my time before the event to prepare a schedule including interesting talks and other organizational stuff. But as it has been turned out again, setting up a schedule for talks is useless for me, because I would sit most of the time in the &lt;a href=&quot;http://fosdem.org/2012/schedule/track/mozilla_devroom&quot;&gt;Mozilla DevRoom&lt;/a&gt; anyway. There are way too many interesting presentations and discussions that it is hard for me to leave.&lt;/p&gt;
&lt;p&gt;This year some bits were different. Given my cold I was not able to participate in the &lt;a href=&quot;http://fosdem.org/2012/beerevent&quot;&gt;Beer Event&lt;/a&gt; in the &lt;a href=&quot;http://www.deliriumcafe.be/&quot;&gt;Delirium Cafe&lt;/a&gt;. It’s usually the perfect initial come together of this conference to greet people and have the first conversations. I kinda missed it, but the remaining work for this week did a good job in not letting me think about if for so long. The other news we noticed with the arrival at the campus of the &lt;a href=&quot;http://www.ulb.ac.be/&quot;&gt;University Solbosch&lt;/a&gt;. Surprisingly the locations have been modified a bit to give everyone more space. The biggest change definitely was the move of the booths to another building, which wasn’t that close to the rest of the areas of interest. So I headed over only once to check our Mozilla booth. IMO we haven’t had such a great location this time but given by our staff a lot of people stopped by already. While checking the other booths I also found the one of the &lt;a href=&quot;https://jenkins-ci.org/&quot;&gt;Jenkins project&lt;/a&gt;, where &lt;a href=&quot;http://kohsuke.org/about/&quot;&gt;Kohsuke Kawaguchi&lt;/a&gt; – the creator of Jenkins (formerly Hudson) – was able to help me with all of my questions. I call this a success – thanks Kohsuke!&lt;/p&gt;
&lt;p&gt;As my personal highlight I had an own talk about &lt;a href=&quot;http://fosdem.org/2012/schedule/event/continuous_integration_with_mozmill_for_firefox&quot;&gt;Continuous Integration with Mozmill&lt;/a&gt; scheduled on Sunday at noon. It went pretty well and I got some positive feedback. If you wasn’t able to make it, you can check my slides here:&lt;/p&gt;
&lt;div id=&quot;__ss_11425955&quot; style=&quot;width: 510px;&quot;&gt; &lt;strong style=&quot;display: block; margin: 12px 0 4px;&quot;&gt;&lt;a href=&quot;http://www.slideshare.net/hskupin/continuous-integration-with-mozmill&quot; target=&quot;_blank&quot; title=&quot;Continuous Integration with Mozmill&quot;&gt;Continuous Integration with Mozmill&lt;/a&gt;&lt;/strong&gt; 
&lt;div style=&quot;padding: 5px 0 12px;&quot;&gt; View more &lt;a href=&quot;http://www.slideshare.net/&quot; target=&quot;_blank&quot;&gt;presentations&lt;/a&gt; from &lt;a href=&quot;http://www.slideshare.net/hskupin&quot; target=&quot;_blank&quot;&gt;Henrik Skupin&lt;/a&gt; &lt;/div&gt;
&lt;p&gt;&lt;/p&gt;&lt;/div&gt;
&lt;p&gt;The most impressive conversation and follow-up work happened definitely with the guys from the &lt;a href=&quot;https://addons.mozilla.org/en-US/developers/&quot;&gt;Mozilla Add-on SDK project&lt;/a&gt;. Starting from my quick question about a foreseeable support for Thunderbird, it ended-up in a lot of discussions and a final hacking session at Sunday afternoon, which I sadly wasn’t able to attend. So I’m absolutely interested in the results. Oh, and while traveling back home I have spent about an hour to contribute my &lt;a href=&quot;https://github.com/mozilla/addon-sdk/pull/336&quot;&gt;first patch&lt;/a&gt; to the project, which will let the builder add contributor names to the extensions install.rdf file.&lt;/p&gt;
&lt;p&gt;All in all it was a stunning weekend and I hope to be able to attend it next year again. So a big thanks to Benoit and the Belgian community for taking care of the organization!&lt;/p&gt;</description>
	<pubDate>Mon, 06 Feb 2012 15:40:58 +0000</pubDate>
	<dc:creator>Henrik Skupin</dc:creator>
</item>
<item>
	<title>QMO: Firefox Beta for Android Test Day – Friday, February 10th, 2012</title>
	<guid isPermaLink="false">https://quality.mozilla.org/?p=40258</guid>
	<link>https://quality.mozilla.org/2012/02/firefox-beta-for-android-test-day-friday-february-10th-2012/</link>
	<description>&lt;p&gt;This upcoming Friday, we would love for you to solicit your support towards testing and contributing to the process of qualifying the new version of Firefox Beta for Android on the Beta channel as part of our Rapid Release testing cycle.&lt;/p&gt;
&lt;p&gt;This event is open to &lt;strong&gt;all&lt;/strong&gt; those interested: newcomers, experienced testers, experienced developers, and anyone interested in testing and using Firefox on Android.&lt;/p&gt;
&lt;p&gt;We would like for you to use the new version of Firefox on your &lt;a href=&quot;https://market.android.com/details?id=org.mozilla.firefox_beta&quot;&gt;Android phone&lt;/a&gt;, and take a close look at the latest Beta product in order to assist us in identifying any noticeably major issues found, and ensure that all feature functionality that is included in this upcoming release is on its way to a feature and testing complete state. We will also be looking at website compatibility, and device compatibility. No testing experience is required.&lt;/p&gt;
&lt;p&gt;To cover the work throughout the whole day we have created an &lt;a href=&quot;https://etherpad.mozilla.org/testday-20120210&quot;&gt;EtherPad&lt;/a&gt; test-plan. Please feel free to read and use it as a companion during the testday event. There will be moderators at hand in the IRC channel: &lt;a href=&quot;http://goo.gl/ci7qp&quot;&gt;#testday&lt;/a&gt;, to answer any questions you have.&lt;/p&gt;
&lt;p&gt;Together with your help we want to make this testday a success and ensure the high quality of Firefox Beta for mobile devices for all of our users world-wide. If you have time on Friday, February 10th, 2012, please join us on IRC, we will have Mozilla community and testers on hand to help answer any of your questions.&lt;/p&gt;
&lt;p&gt;Your testing and feedback is &lt;strong&gt;highly valuable&lt;/strong&gt;, and we hope to see you attend our testday event.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;When:&lt;/strong&gt; February 10, 2012.&lt;/p&gt;</description>
	<pubDate>Mon, 06 Feb 2012 15:31:37 +0000</pubDate>
	<dc:creator>Aaron Train</dc:creator>
</item>
<item>
	<title>Henri Sivonen: Accept-Charset Is No More</title>
	<guid isPermaLink="true">http://hsivonen.iki.fi/accept-charset/</guid>
	<link>http://hsivonen.iki.fi/accept-charset/</link>
	<description>&lt;p&gt;Now that Firefox 10 has been released, &lt;del&gt;none of the major browsers send&lt;/del&gt; &lt;ins&gt;only Chrome sends&lt;/ins&gt; the &lt;code&gt;Accept-Charset&lt;/code&gt; HTTP header.&lt;/p&gt;

&lt;p&gt;During the Firefox 4 development cycle, I noticed that IE&lt;del&gt;, Chrome&lt;/del&gt; and Safari were not sending the &lt;code&gt;Accept-Charset&lt;/code&gt; HTTP header in their HTTP requests. This meant that the Web had to work even without browser sending that header.&lt;/p&gt;

&lt;p&gt;It was already obvious that &lt;code&gt;Accept-Charset&lt;/code&gt; was obsolete as a feature and was a waste of bytes in each HTTP request. If your server has the capability to vary what character encoding it uses, it could use UTF-8. All browsers support UTF-8. There is no way for any non-UTF-8 encoding to represent something more, since everything gets converted to UTF-16 internally. Thus, the browser and the server negotiating a suitable encoding is pointless.&lt;/p&gt;

&lt;p&gt;There was indication that Opera was going to drop &lt;code&gt;Accept-Encoding&lt;/code&gt; and indeed they have dropped it by now. In the case of Firefox, the change was not allowed in Firefox 4. Ms2ger removed &lt;code&gt;Accept-Charset&lt;/code&gt; and landed the code for Firefox 6.&lt;/p&gt;

&lt;p&gt;However, it turned out that Yahoo! Search and Yahoo! Babelfish malfunctioned when the browser identified itself as Firefox but did not send &lt;code&gt;Accept-Charset&lt;/code&gt;. Since the sites worked in IE&lt;del&gt;, Chrome&lt;/del&gt; and Safari, they obviously had to have code paths that functioned without &lt;code&gt;Accept-Charset&lt;/code&gt;. However, the code paths were conditional on the UA string instead of the presence of &lt;code&gt;Accept-Charset&lt;/code&gt;. Sigh.&lt;/p&gt;

&lt;p&gt;To give Yahoo! time to fix their stuff, the change was backed out before release from Firefox 6. And then Firefox 7. And Firefox 8. And Firefox 9. The change was finally shipped in Firefox 10. Yahoo! Search had been fixed. Yahoo! Babelfish is still broken as of 2012-02-06.&lt;/p&gt;

&lt;p&gt;Anyway, now none of Firefox, Opera, Safari&lt;del&gt;, Chrome&lt;/del&gt; or IE send the &lt;code&gt;Accept-Charset&lt;/code&gt; header. Yay for smaller HTTP requests.&lt;/p&gt;

&lt;h3&gt;What Can We Learn?&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;As a server talking to a browser, always use UTF-8. No exceptions. Use the &lt;code&gt;lang&lt;/code&gt; attribute for CJK disambiguation.
&lt;/li&gt;&lt;li&gt;It is hard to take cruft out of the HTTP request boilerplate. Resist the urge to put new cruft there.
&lt;/li&gt;&lt;li&gt;It is a bad idea to assume that a certain feature is present because the UA string looks a certain way. Check for the presence of the feature instead!
&lt;/li&gt;&lt;li&gt;If you defer a browser change in order to give a site the time to make a trivial adjustment, you may end up deferring the change many times.
&lt;/li&gt;&lt;/ul&gt;
&lt;h3&gt;Correction About Chrome&lt;/h3&gt;

&lt;p&gt;Contrary to what I originally wrote, Chrome still sends &lt;code&gt;Accept-Charset&lt;/code&gt; as of 2012-02-06. Right before I wrote this post, I tested something encoding-related in Chrome, thought I had tested this in Chrome, too, but it turns out I only tested this in Safari 5.1.3, IE9, Firefox 10 and Opera 11.61 and failed to test Chrome. How embarrassing. Sorry.&lt;/p&gt;</description>
	<pubDate>Mon, 06 Feb 2012 14:41:39 +0000</pubDate>
</item>
<item>
	<title>Gervase Markham: Disabling Private Browsing Mode in Firefox</title>
	<guid isPermaLink="false">http://blog.gerv.net/?p=1694</guid>
	<link>http://feedproxy.google.com/~r/HackingForChrist/~3/Ym1HWAdDLZ0/</link>
	<description>&lt;p&gt;This subject has been &lt;a href=&quot;http://blog.gerv.net/2010/11/disabling_private_browsing/&quot;&gt;discussed before&lt;/a&gt; on this blog. I support the right of parents to review what their children have been looking at, both morally in terms of my understanding of the way God has given parents authority over their children, and for the pragmatic reason that it’s likely that, with such an ability, they will give their children &lt;i&gt;greater&lt;/i&gt; access to the web than they would otherwise have. So I think it should be possible to disable PBM. However, I’m not really interested in having that discussion again – this post is about the best way to do it, not whether it’s a good idea.&lt;/p&gt;
&lt;p&gt;William Wood has written a program, “Incognito Gone”, which &lt;a href=&quot;http://wmwood.net/software/incognito-gone-get-rid-of-private-browsing/&quot;&gt;turns off private browsing or the equivalent&lt;/a&gt; in Chrome, IE and Firefox. However, his page says:&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;
Note: While Incognito Gone completely removes the private browsing function from Google Chrome and Internet Explorer, in Mozilla Firefox only the option for private browsing is removed. In other words, if you know the keyboard shortcut for private browsing in Firefox, it is still available.
&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;Technically, Chrome and IE support this disabling using a registry option and, if your Windows computer is set up correctly with user accounts for each person, then this is an effective method, and it’s what William’s program uses. For Firefox, he just drops in a userChrome.css to hide the menu item, which is clearly suboptimal.&lt;/p&gt;
&lt;p&gt;Is it possible to have an “uninstallable extension”, under the same conditions (user account separation) as IE and Chrome have “unchangeable registry entries”? If so, that seems like it would provide parity with Chrome and IE.&lt;/p&gt;
&lt;p&gt;If we added a private browsing pref, does “pref locking” still work, and could that be used? There are docs about it on the web, but no clear info as to whether it currently works and can be done in a non-defeatable manner. Are any EWG participants using it?&lt;/p&gt;
&lt;img height=&quot;1&quot; src=&quot;http://feeds.feedburner.com/~r/HackingForChrist/~4/Ym1HWAdDLZ0&quot; width=&quot;1&quot; /&gt;</description>
	<pubDate>Mon, 06 Feb 2012 13:24:56 +0000</pubDate>
	<dc:creator>gerv</dc:creator>
</item>
<item>
	<title>Dave Hunt: Automating BrowserID with Selenium</title>
	<guid isPermaLink="false">http://blargon7.com/?p=85</guid>
	<link>http://blargon7.com/2012/02/automating-browserid-with-selenium/</link>
	<description>&lt;p&gt;BrowserID is an awesome new approach to handling online identity. If you haven’t heard of it then I highly recommend reading &lt;a href=&quot;https://support.mozilla.org/en-US/kb/what-browserid-and-how-does-it-work&quot;&gt;this article&lt;/a&gt;, which explains what it is and how it works. Several Mozilla projects have already integrated with BrowserID, including &lt;a href=&quot;https://mozillians.org/&quot;&gt;Mozillians&lt;/a&gt;, &lt;a href=&quot;https://affiliates.mozilla.org/&quot;&gt;Affiliates&lt;/a&gt;, and the &lt;a href=&quot;https://developer.mozilla.org/&quot;&gt;Mozilla Developer Network&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;With all of these sites now integrating with BrowserID (and more on their way) we needed to add support to our test automation to handle the new sign in process. Initially we started to do this independently in our projects, but the thought of updating all of our projects whenever a tweak was made to BrowserID was daunting to say the least! For this reason I have created a project that contains a page object model for BrowserID. This can be included in other projects as a submodule and then updated and maintained centrally.&lt;/p&gt;
&lt;p&gt;The new project is called ‘BIDPOM’ (&lt;strong&gt;B&lt;/strong&gt;rowser&lt;strong&gt;ID&lt;/strong&gt; &lt;strong&gt;P&lt;/strong&gt;age &lt;strong&gt;O&lt;/strong&gt;bject &lt;strong&gt;M&lt;/strong&gt;odel) and can be found &lt;a href=&quot;https://github.com/davehunt/bidpom&quot;&gt;here&lt;/a&gt;. It currently only contains a page object for the Sign In page, however this currently meets the needs of the automation for projects that have integrated with BrowserID. As we have a mix of projects using Selenium’s two APIs (RC and WebDriver), it was necessary for BIDPOM to support both.&lt;/p&gt;
&lt;p&gt;By adding BIDPOM as a submodule, we can easily pull the BrowserID page objects into our automation projects and reference them in a very similar way to the main project’s page objects. We can also update the version of BIDPOM simply by updating the git link and updating the submodule. What’s even better is that our continuous test builds running in &lt;a href=&quot;http://jenkins-ci.org/&quot;&gt;Jenkins&lt;/a&gt; automatically initialise and update the submodule for us!&lt;/p&gt;
&lt;p&gt;I hope that in addition to being a dependency for our own automation projects, this page object model can be utilised by others wanting to create or maintain automated tests using Selenium against sites that adopt BrowserID. If you would like to start using BIDPOM then I have provided below a guide to adding the project as a submodule to an existing git repository.&lt;/p&gt;
&lt;p&gt;From within your project, add the BIDPOM project as a git submodule:&lt;/p&gt;

&lt;div class=&quot;wp_syntax&quot;&gt;&lt;div class=&quot;code&quot;&gt;&lt;pre class=&quot;none&quot; style=&quot;font-family: monospace;&quot;&gt;cd ~/workspace/automationproject
git submodule add git://github.com/davehunt/bidpom.git browserid&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;This will add an entry to &lt;em&gt;.gitmodules&lt;/em&gt; and clone the BIDPOM project to the &lt;em&gt;browserid&lt;/em&gt; subdirectory. It will also stage the new gitlink and &lt;em&gt;.gitmodules&lt;/em&gt; items for commit.&lt;/p&gt;
&lt;p&gt;You can now commit these changes to your project’s repository:&lt;/p&gt;

&lt;div class=&quot;wp_syntax&quot;&gt;&lt;div class=&quot;code&quot;&gt;&lt;pre class=&quot;none&quot; style=&quot;font-family: monospace;&quot;&gt;git commit -m 'Added BrowserID page object model as submodule.'&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;Before you can test the new submodule you will need to run the following command to copy the contents of &lt;em&gt;.gitmodules&lt;/em&gt; into your &lt;em&gt;.git/config&lt;/em&gt; file.&lt;/p&gt;

&lt;div class=&quot;wp_syntax&quot;&gt;&lt;div class=&quot;code&quot;&gt;&lt;pre class=&quot;none&quot; style=&quot;font-family: monospace;&quot;&gt;git submodule init&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;Now you can test the submodule by deleting the &lt;em&gt;browserid&lt;/em&gt; directory and allowing it to be recreated:&lt;/p&gt;

&lt;div class=&quot;wp_syntax&quot;&gt;&lt;div class=&quot;code&quot;&gt;&lt;pre class=&quot;none&quot; style=&quot;font-family: monospace;&quot;&gt;rm -rf browserid
git submodule update&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;The BIDPOM project should be cloned to the &lt;em&gt;browserid&lt;/em&gt; directory.&lt;/p&gt;
&lt;p&gt;You will now be able to integrate your project with BrowserID! Here follow a few examples of how to integrate your project.&lt;/p&gt;
&lt;h3&gt;Example: Short sign-in using Selenium’s RC API&lt;/h3&gt;

&lt;div class=&quot;wp_syntax&quot;&gt;&lt;table&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td class=&quot;line_numbers&quot;&gt;&lt;pre&gt;1
2
3
4
5
6
&lt;/pre&gt;&lt;/td&gt;&lt;td class=&quot;code&quot;&gt;&lt;pre class=&quot;python&quot; style=&quot;font-family: monospace;&quot;&gt;...
&lt;span style=&quot;color: black;&quot;&gt;selenium&lt;/span&gt;.&lt;span style=&quot;color: black;&quot;&gt;click&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #483d8b;&quot;&gt;'id=login'&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;)&lt;/span&gt;
&lt;span style=&quot;color: #ff7700; font-weight: bold;&quot;&gt;from&lt;/span&gt; browserid &lt;span style=&quot;color: #ff7700; font-weight: bold;&quot;&gt;import&lt;/span&gt; BrowserID
browser_id = BrowserID&lt;span style=&quot;color: black;&quot;&gt;(&lt;/span&gt;selenium&lt;span style=&quot;color: black;&quot;&gt;)&lt;/span&gt;
browser_id.&lt;span style=&quot;color: black;&quot;&gt;sign_in&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #483d8b;&quot;&gt;'testaccount@example.com'&lt;/span&gt;, &lt;span style=&quot;color: #483d8b;&quot;&gt;'password'&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;)&lt;/span&gt;
&lt;span style=&quot;color: #ff7700; font-weight: bold;&quot;&gt;assert&lt;/span&gt; selenium.&lt;span style=&quot;color: black;&quot;&gt;is_visible&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #483d8b;&quot;&gt;'id=logout'&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;)&lt;/span&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;

&lt;h3&gt;Example: Long sign-in using Selenium’s RC API&lt;/h3&gt;

&lt;div class=&quot;wp_syntax&quot;&gt;&lt;table&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td class=&quot;line_numbers&quot;&gt;&lt;pre&gt;1
2
3
4
5
6
7
8
9
10
&lt;/pre&gt;&lt;/td&gt;&lt;td class=&quot;code&quot;&gt;&lt;pre class=&quot;python&quot; style=&quot;font-family: monospace;&quot;&gt;...
&lt;span style=&quot;color: black;&quot;&gt;selenium&lt;/span&gt;.&lt;span style=&quot;color: black;&quot;&gt;click&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #483d8b;&quot;&gt;'id=login'&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;)&lt;/span&gt;
&lt;span style=&quot;color: #ff7700; font-weight: bold;&quot;&gt;from&lt;/span&gt; browserid.&lt;span style=&quot;color: black;&quot;&gt;pages&lt;/span&gt;.&lt;span style=&quot;color: black;&quot;&gt;rc&lt;/span&gt;.&lt;span style=&quot;color: black;&quot;&gt;sign_in&lt;/span&gt; &lt;span style=&quot;color: #ff7700; font-weight: bold;&quot;&gt;import&lt;/span&gt; SignIn
signin = SignIn&lt;span style=&quot;color: black;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #008000;&quot;&gt;self&lt;/span&gt;.&lt;span style=&quot;color: black;&quot;&gt;selenium&lt;/span&gt;, &lt;span style=&quot;color: #008000;&quot;&gt;self&lt;/span&gt;.&lt;span style=&quot;color: black;&quot;&gt;timeout&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;)&lt;/span&gt;
signin.&lt;span style=&quot;color: #dc143c;&quot;&gt;email&lt;/span&gt; = &lt;span style=&quot;color: #483d8b;&quot;&gt;'testaccount@example.com'&lt;/span&gt;
signin.&lt;span style=&quot;color: black;&quot;&gt;click_next&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;)&lt;/span&gt;
signin.&lt;span style=&quot;color: black;&quot;&gt;password&lt;/span&gt; = &lt;span style=&quot;color: #483d8b;&quot;&gt;'password'&lt;/span&gt;
signin.&lt;span style=&quot;color: black;&quot;&gt;click_select_email&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;)&lt;/span&gt;
signin.&lt;span style=&quot;color: black;&quot;&gt;click_sign_in&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;)&lt;/span&gt;
&lt;span style=&quot;color: #ff7700; font-weight: bold;&quot;&gt;assert&lt;/span&gt; selenium.&lt;span style=&quot;color: black;&quot;&gt;is_visible&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #483d8b;&quot;&gt;'id=logout'&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;)&lt;/span&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;

&lt;h3&gt;Example: Short sign-in using Selenium’s WebDriver API&lt;/h3&gt;

&lt;div class=&quot;wp_syntax&quot;&gt;&lt;table&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td class=&quot;line_numbers&quot;&gt;&lt;pre&gt;1
2
3
4
5
6
&lt;/pre&gt;&lt;/td&gt;&lt;td class=&quot;code&quot;&gt;&lt;pre class=&quot;python&quot; style=&quot;font-family: monospace;&quot;&gt;...
&lt;span style=&quot;color: black;&quot;&gt;selenium&lt;/span&gt;.&lt;span style=&quot;color: black;&quot;&gt;find_element_by_id&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #483d8b;&quot;&gt;'login'&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;)&lt;/span&gt;.&lt;span style=&quot;color: black;&quot;&gt;click&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;)&lt;/span&gt;
&lt;span style=&quot;color: #ff7700; font-weight: bold;&quot;&gt;from&lt;/span&gt; browserid &lt;span style=&quot;color: #ff7700; font-weight: bold;&quot;&gt;import&lt;/span&gt; BrowserID
browser_id = BrowserID&lt;span style=&quot;color: black;&quot;&gt;(&lt;/span&gt;selenium&lt;span style=&quot;color: black;&quot;&gt;)&lt;/span&gt;
browser_id.&lt;span style=&quot;color: black;&quot;&gt;sign_in&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #483d8b;&quot;&gt;'testaccount@example.com'&lt;/span&gt;, &lt;span style=&quot;color: #483d8b;&quot;&gt;'password'&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;)&lt;/span&gt;
&lt;span style=&quot;color: #ff7700; font-weight: bold;&quot;&gt;assert&lt;/span&gt; selenium.&lt;span style=&quot;color: black;&quot;&gt;find_element_by_id&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #483d8b;&quot;&gt;'logout'&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;)&lt;/span&gt;.&lt;span style=&quot;color: black;&quot;&gt;is_displayed&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;)&lt;/span&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;

&lt;h3&gt;Example: Long sign-in using Selenium’s WebDriver API&lt;/h3&gt;

&lt;div class=&quot;wp_syntax&quot;&gt;&lt;table&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td class=&quot;line_numbers&quot;&gt;&lt;pre&gt;1
2
3
4
5
6
7
8
9
10
&lt;/pre&gt;&lt;/td&gt;&lt;td class=&quot;code&quot;&gt;&lt;pre class=&quot;python&quot; style=&quot;font-family: monospace;&quot;&gt;...
&lt;span style=&quot;color: black;&quot;&gt;selenium&lt;/span&gt;.&lt;span style=&quot;color: black;&quot;&gt;find_element_by_id&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #483d8b;&quot;&gt;'login'&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;)&lt;/span&gt;.&lt;span style=&quot;color: black;&quot;&gt;click&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;)&lt;/span&gt;
&lt;span style=&quot;color: #ff7700; font-weight: bold;&quot;&gt;from&lt;/span&gt; browserid.&lt;span style=&quot;color: black;&quot;&gt;pages&lt;/span&gt;.&lt;span style=&quot;color: black;&quot;&gt;webdriver&lt;/span&gt;.&lt;span style=&quot;color: black;&quot;&gt;sign_in&lt;/span&gt; &lt;span style=&quot;color: #ff7700; font-weight: bold;&quot;&gt;import&lt;/span&gt; SignIn
signin = SignIn&lt;span style=&quot;color: black;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #008000;&quot;&gt;self&lt;/span&gt;.&lt;span style=&quot;color: black;&quot;&gt;selenium&lt;/span&gt;, &lt;span style=&quot;color: #008000;&quot;&gt;self&lt;/span&gt;.&lt;span style=&quot;color: black;&quot;&gt;timeout&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;)&lt;/span&gt;
signin.&lt;span style=&quot;color: #dc143c;&quot;&gt;email&lt;/span&gt; = &lt;span style=&quot;color: #483d8b;&quot;&gt;'testaccount@example.com'&lt;/span&gt;
signin.&lt;span style=&quot;color: black;&quot;&gt;click_next&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;)&lt;/span&gt;
signin.&lt;span style=&quot;color: black;&quot;&gt;password&lt;/span&gt; = &lt;span style=&quot;color: #483d8b;&quot;&gt;'password'&lt;/span&gt;
signin.&lt;span style=&quot;color: black;&quot;&gt;click_select_email&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;)&lt;/span&gt;
signin.&lt;span style=&quot;color: black;&quot;&gt;click_sign_in&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;)&lt;/span&gt;
&lt;span style=&quot;color: #ff7700; font-weight: bold;&quot;&gt;assert&lt;/span&gt; selenium.&lt;span style=&quot;color: black;&quot;&gt;find_element_by_id&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #483d8b;&quot;&gt;'logout'&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;)&lt;/span&gt;.&lt;span style=&quot;color: black;&quot;&gt;is_displayed&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;)&lt;/span&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;For the latest documentation on the BIDPOM project refer to the &lt;a href=&quot;https://github.com/davehunt/bidpom/wiki&quot;&gt;github wiki&lt;/a&gt;.&lt;/p&gt;</description>
	<pubDate>Mon, 06 Feb 2012 12:48:45 +0000</pubDate>
	<dc:creator>Dave</dc:creator>
</item>
<item>
	<title>Ludovic Hirlimann: Want to understand certs ? SSL and friends ?</title>
	<guid isPermaLink="false">tag:perso.hirlimann.net,2012:/~ludo//1.3368</guid>
	<link>http://perso.hirlimann.net/~ludo/blog/archives/2012/02/want-to-understand-certs-ssl-and-friends.html</link>
	<description>&lt;p&gt;My friend kaie made a very nice and explanative talk at fosdem on the subject. It's now available for reading in pdf at &lt;a href=&quot;http://kuix.de/fosdem2012/fosdem-2012-talk-kaie.pdf&quot; hreflang=&quot;en&quot; title=&quot;Understanding ssl, security and certificates&quot;&gt;http://kuix.de/fosdem2012/fosdem-2012-talk-kaie.pdf&lt;/a&gt;&lt;/p&gt;</description>
	<pubDate>Mon, 06 Feb 2012 12:26:02 +0000</pubDate>
	<dc:creator>Ludovic Hirlimann</dc:creator>
</item>
<item>
	<title>Mozilla Add-ons Blog: Mobile Add-on development using the Add-on SDK</title>
	<guid isPermaLink="false">http://blog.mozilla.com/addons/?p=4155</guid>
	<link>http://blog.mozilla.com/addons/2012/02/06/mobile-add-on-development-using-the-add-on-sdk/</link>
	<description>&lt;p&gt;&lt;em&gt;For this post, please welcome guest blogger and SDK developer &lt;a href=&quot;https://github.com/ZER0/&quot; target=&quot;_blank&quot;&gt;Matteo Ferretti&lt;/a&gt; who has been hard at work porting the SDK to work with the new native version of Mobile Firefox.&lt;/em&gt;&lt;/p&gt;
&lt;h3&gt;Getting Started&lt;/h3&gt;
&lt;p&gt;Add-on SDK version 1.5 is due to be released on February 21st, and we're pleased to announce that this version will introduce initial support for creating addons for the new native version of Firefox Mobile (codename &quot;fennec&quot;).&lt;br /&gt;
Mobile support is still experimental and is currently focused on addons using the SDK's page-mod module to alter and interact with web pages.&lt;/p&gt;
&lt;p&gt;If you're interested in trying this support out now, you can do so by checking out the ‘master’ branch of the addon-sdk repository:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;git clone git://github.com/mozilla/addon-sdk.git
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Alternatively you can just download a zip archive of the current master:&lt;/p&gt;
&lt;p&gt;https://github.com/mozilla/addon-sdk/zipball/master&lt;/p&gt;
&lt;p&gt;Developing an add-on for Firefox Mobile with the Add-on SDK is very similar to the desktop. If you're not familiar with Add-on SDK development process, you can take a look &lt;a href=&quot;https://addons.mozilla.org/en-US/developers/docs/sdk/1.4/dev-guide/addon-development/implementing-simple-addon.html&quot;&gt;here&lt;/a&gt;. It helps but is not mandatory for this tutorial.&lt;/p&gt;
&lt;h3&gt;Getting set up&lt;/h3&gt;
&lt;p&gt;In addition to having the correct version of the SDK, there are some additional requirements:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;you need to have an Android device connected to your computer via USB&lt;/li&gt;
&lt;li&gt;on the Android device, you need to install a Nightly build of Firefox Mobile.&lt;/li&gt;
&lt;li&gt;you need to download and install the Android SDK, including the SDK Tools. Specifically, the SDK requires that you have installed the 'adb' command-line tool.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Please see this detailed &lt;a href=&quot;http://aaronmt.com/?p=503&quot;&gt;tutorial&lt;/a&gt; by Aaron Train for more information on installing and configuring the Android SDK.&lt;/p&gt;
&lt;p&gt;Now you're ready to write the classic &quot;Hello World&quot; example!&lt;/p&gt;
&lt;h3&gt;Hello, Fennec!&lt;/h3&gt;
&lt;p&gt;Firstly, be sure that you have connected your device to your computer. You can check it running from a shell the following command:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;adb devices
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Then, be sure that you don't have any Firefox Mobile already running. That is important because the Add-on SDK will run your add-on using a temporary firefox profile for development, not the default one. If Firefox is already running, you can quit Firefox by opening the application menu, selecting 'More', then selecting 'Quit'.&lt;br /&gt;
Don't worry, if Firefox &lt;em&gt;is&lt;/em&gt; running the Add-on SDK will clearly warn you.&lt;/p&gt;
&lt;p&gt;Now open a shell, navigate to the Add-on SDK root directory, and execute:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;source bin/activate
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;This will activate the SDK's environment and allow you to run the cfx tool from the current shell prompt nomatter what directory you are currently in..&lt;/p&gt;
&lt;p&gt;Change to another directory and then create a directory called &lt;code&gt;hellofennec&lt;/code&gt;. Keeping your add-on code outside the SDK is good practice. Navigate to that directory and run &lt;code&gt;cfx init&lt;/code&gt; to create a new addon:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;mkdir hellofennec
cd hellofennec
cfx init
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;With a text editor or IDE of your choice, open &lt;code&gt;lib/main.js&lt;/code&gt;, and replace its contents with the following:&lt;/p&gt;

&lt;div class=&quot;wp_syntax&quot;&gt;&lt;div class=&quot;code&quot;&gt;&lt;pre class=&quot;javascript&quot; style=&quot;font-family: monospace;&quot;&gt;console.&lt;span style=&quot;color: #660066;&quot;&gt;log&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #3366CC;&quot;&gt;&quot;Hello, Fennec!&quot;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;)&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;Save it. You're ready to run it on your device using the following command:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;cfx run -a fennec-on-device -b ~/path/to/adb --mobile-app fennec --force-mobile
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;And yes, compared to the desktop version the mobile version needs more arguments. You can learn about all the cfx's arguments just run it without any parameters, but let's have a quick look about what they means in this context:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;-a, –app : specify the application that runs the add-on, in this case &quot;fennec on device&quot;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;-b, –binary : is mandatory for &lt;code&gt;fennec-on-device&lt;/code&gt; app. SDK needs to know where you have installed the adb tool that is installed with the Android SDK in order to communicate with your device. So, replace this value with the right path where you have installed the adb platform tool.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;–mobile-app : is the name of the Android intent. If you have only one Firefox Mobile version installed on your device, you can omit this option. The value for nightly is &lt;code&gt;fennec&lt;/code&gt;, for aurora this is &lt;code&gt;fennec_aurora&lt;/code&gt;, for beta this is &lt;code&gt;firefox_beta&lt;/code&gt; and for release this is &lt;code&gt;firefox&lt;/code&gt;.&lt;br /&gt;
If you have a Fennec's custom build on your device, the intent's name is &lt;code&gt;fennec_&amp;lt;your_username&amp;gt;&lt;/code&gt; by default.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;–force-mobile : this flag will be removed when the mobile's support will be stable and not experimental anymore.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;When you execute the command the first time you'll see a message like this:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;No 'id' in package.json: creating a new ID for you.
package.json modified: please re-run 'cfx run'
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Run the command again, and it will run Firefox Mobile on your device with your add-on installed.&lt;/p&gt;
&lt;p&gt;Congratulations! You have made your first step in mobile add-ons development with Add-on SDK!&lt;/p&gt;
&lt;h3&gt;Hack the web&lt;/h3&gt;
&lt;p&gt;As I said previously, Add-on SDK provide a minimal support for mobile at the moment, focused mainly on &lt;a href=&quot;https://addons.mozilla.org/en-US/developers/docs/sdk/1.4/packages/addon-kit/docs/page-mod.html&quot;&gt;page-mod&lt;/a&gt;. In short, they are add-ons that can modify any — or a specific — web pages loaded by the browser.&lt;/p&gt;
&lt;p&gt;On mobile this is very handy. For instance, you can optimize a website that it wasn't designed for mobile devices, improve the readability, or adding unique functionality.&lt;/p&gt;
&lt;p&gt;For this tutorial I made a simple add-on that &quot;mod&quot; the famous &lt;a href=&quot;http://www.penny-arcade.com/&quot;&gt;penny-arcade.com&lt;/a&gt; website. You can check it out from github:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;git clone git://github.com/ZER0/penny-arcade-comics.git
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Alternatively,  you can download it as &lt;a href=&quot;https://github.com/ZER0/penny-arcade-comics/zipball/master&quot;&gt;zip archive&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;What it does is simple: when you're on the &lt;a href=&quot;http://www.penny-arcade.com/&quot;&gt;penny-arcade.com&lt;/a&gt; homepage or reading a news post, switching from portrait to landscape will display the webcomics related to that news, without clicking a link and zooming (landscape fits more the format of penny-arcade comics than portrait, and portrait is more suitable to reading news). Switching back from landscape to portrait will hide it again.&lt;/p&gt;
&lt;h3&gt;A deeper look&lt;/h3&gt;
&lt;p&gt;So, how it works? The important files are &lt;a href=&quot;https://github.com/ZER0/penny-arcade-comics/blob/master/data/content.css&quot;&gt;data/content.css&lt;/a&gt;, &lt;a href=&quot;https://github.com/ZER0/penny-arcade-comics/blob/master/data/content.js&quot;&gt;data/content.js&lt;/a&gt; and &lt;a href=&quot;https://github.com/ZER0/penny-arcade-comics/blob/master/lib/main.js&quot;&gt;main.js&lt;/a&gt;. The first two are the files injected into &lt;a href=&quot;http://www.penny-arcade.com/&quot;&gt;penny-arcade.com&lt;/a&gt;, and the last one is our add-on entry point.&lt;br /&gt;
Let's start with &lt;a href=&quot;https://github.com/ZER0/penny-arcade-comics/blob/master/lib/main.js&quot;&gt;main.js&lt;/a&gt;.&lt;br /&gt;
Firstly, we require the Add-on SDK modules needed:&lt;/p&gt;

&lt;div class=&quot;wp_syntax&quot;&gt;&lt;div class=&quot;code&quot;&gt;&lt;pre class=&quot;javascript&quot; style=&quot;font-family: monospace;&quot;&gt;&lt;span style=&quot;color: #003366; font-weight: bold;&quot;&gt;var&lt;/span&gt; PageMod &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; require&lt;span style=&quot;color: #009900;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #3366CC;&quot;&gt;&quot;page-mod&quot;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;)&lt;/span&gt;.&lt;span style=&quot;color: #660066;&quot;&gt;PageMod&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;
&lt;span style=&quot;color: #003366; font-weight: bold;&quot;&gt;var&lt;/span&gt; data &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; require&lt;span style=&quot;color: #009900;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #3366CC;&quot;&gt;&quot;self&quot;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;)&lt;/span&gt;.&lt;span style=&quot;color: #660066;&quot;&gt;data&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;The &lt;a href=&quot;https://addons.mozilla.org/en-US/developers/docs/sdk/1.4/packages/addon-kit/docs/page-mod.html&quot;&gt;PageMod&lt;/a&gt; object allows us to create a page-mod; and &lt;a href=&quot;https://addons.mozilla.org/en-US/developers/docs/sdk/1.4/packages/addon-kit/docs/self.html#data&quot;&gt;data&lt;/a&gt; object provides an access to the &lt;code&gt;data&lt;/code&gt; directory's files.&lt;/p&gt;

&lt;div class=&quot;wp_syntax&quot;&gt;&lt;div class=&quot;code&quot;&gt;&lt;pre class=&quot;javascript&quot; style=&quot;font-family: monospace;&quot;&gt;PageMod&lt;span style=&quot;color: #009900;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;{&lt;/span&gt;
  &lt;span style=&quot;color: #006600; font-style: italic;&quot;&gt;// page-mod will added only on the homepage and news page of penny-arcade.com,&lt;/span&gt;
  &lt;span style=&quot;color: #006600; font-style: italic;&quot;&gt;// with or without www as prefix.&lt;/span&gt;
  include&lt;span style=&quot;color: #339933;&quot;&gt;:&lt;/span&gt; &lt;span style=&quot;color: #009966; font-style: italic;&quot;&gt;/^http:\/\/(www\.)?penny-arcade.com(\/|\/\d{4})?.*/&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt;
  contentScriptFile&lt;span style=&quot;color: #339933;&quot;&gt;:&lt;/span&gt; data.&lt;span style=&quot;color: #660066;&quot;&gt;url&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #3366CC;&quot;&gt;&quot;content.js&quot;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;)&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt;
  contentScriptWhen&lt;span style=&quot;color: #339933;&quot;&gt;:&lt;/span&gt; &lt;span style=&quot;color: #3366CC;&quot;&gt;&quot;ready&quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt;
  onAttach&lt;span style=&quot;color: #339933;&quot;&gt;:&lt;/span&gt; &lt;span style=&quot;color: #003366; font-weight: bold;&quot;&gt;function&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;(&lt;/span&gt;worker&lt;span style=&quot;color: #009900;&quot;&gt;)&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;{&lt;/span&gt;
    worker.&lt;span style=&quot;color: #660066;&quot;&gt;port&lt;/span&gt;.&lt;span style=&quot;color: #660066;&quot;&gt;emit&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #3366CC;&quot;&gt;&quot;init&quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt; data.&lt;span style=&quot;color: #660066;&quot;&gt;url&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #3366CC;&quot;&gt;&quot;content.css&quot;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;)&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;)&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;
  &lt;span style=&quot;color: #009900;&quot;&gt;}&lt;/span&gt;
&lt;span style=&quot;color: #009900;&quot;&gt;}&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;)&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;For the &lt;a href=&quot;https://github.com/ZER0/penny-arcade-comics/blob/master/lib/main.js&quot;&gt;main.js&lt;/a&gt;, that's all. The addon will load &lt;a href=&quot;https://github.com/ZER0/penny-arcade-comics/blob/master/data/content.js&quot;&gt;content.js&lt;/a&gt; into the page when the DOM is ready for any URL that matches the &lt;code&gt;include&lt;/code&gt; property's regular expression. When the &lt;a href=&quot;https://addons.mozilla.org/en-US/developers/docs/sdk/1.4/packages/addon-kit/docs/page-mod.html&quot;&gt;page-mod&lt;/a&gt; is &quot;attached&quot; to a document, the &lt;code&gt;onAttach&lt;/code&gt; callback will emit a custom &lt;code&gt;init&lt;/code&gt; event to the content script, passing the URL of &lt;a href=&quot;https://github.com/ZER0/penny-arcade-comics/blob/master/data/content.css&quot;&gt;content.css&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;So, what happens on the other side when the &lt;code&gt;init&lt;/code&gt; event is emitted? Let's see &lt;a href=&quot;https://github.com/ZER0/penny-arcade-comics/blob/master/data/content.js&quot;&gt;content.js&lt;/a&gt;:&lt;/p&gt;

&lt;div class=&quot;wp_syntax&quot;&gt;&lt;div class=&quot;code&quot;&gt;&lt;pre class=&quot;javascript&quot; style=&quot;font-family: monospace;&quot;&gt;self.&lt;span style=&quot;color: #660066;&quot;&gt;port&lt;/span&gt;.&lt;span style=&quot;color: #660066;&quot;&gt;on&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #3366CC;&quot;&gt;&quot;init&quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt; &lt;span style=&quot;color: #003366; font-weight: bold;&quot;&gt;function&lt;/span&gt; init&lt;span style=&quot;color: #009900;&quot;&gt;(&lt;/span&gt;cssURL&lt;span style=&quot;color: #009900;&quot;&gt;)&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;{&lt;/span&gt;
  &lt;span style=&quot;color: #006600; font-style: italic;&quot;&gt;// We're not interested in frames&lt;/span&gt;
  &lt;span style=&quot;color: #000066; font-weight: bold;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;(&lt;/span&gt;window.&lt;span style=&quot;color: #660066;&quot;&gt;frameElement&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;)&lt;/span&gt; &lt;span style=&quot;color: #000066; font-weight: bold;&quot;&gt;return&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;
  addStyleSheet&lt;span style=&quot;color: #009900;&quot;&gt;(&lt;/span&gt;cssURL&lt;span style=&quot;color: #009900;&quot;&gt;)&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;
  &lt;span style=&quot;color: #003366; font-weight: bold;&quot;&gt;var&lt;/span&gt; comicsPageURL &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; document.&lt;span style=&quot;color: #660066;&quot;&gt;querySelector&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #3366CC;&quot;&gt;&quot;.btnComic&quot;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;)&lt;/span&gt;.&lt;span style=&quot;color: #660066;&quot;&gt;href&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;
  &lt;span style=&quot;color: #003366; font-weight: bold;&quot;&gt;var&lt;/span&gt; http &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #003366; font-weight: bold;&quot;&gt;new&lt;/span&gt; XMLHttpRequest&lt;span style=&quot;color: #009900;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;)&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;
  http.&lt;span style=&quot;color: #000066;&quot;&gt;open&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #3366CC;&quot;&gt;&quot;GET&quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt; comicsPageURL&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt; &lt;span style=&quot;color: #003366; font-weight: bold;&quot;&gt;true&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;)&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;
  http.&lt;span style=&quot;color: #000066;&quot;&gt;onload&lt;/span&gt; &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; addComics&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;
  http.&lt;span style=&quot;color: #660066;&quot;&gt;send&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;)&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;
&lt;span style=&quot;color: #009900;&quot;&gt;}&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;)&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;A &lt;a href=&quot;https://addons.mozilla.org/en-US/developers/docs/sdk/1.4/packages/addon-kit/docs/page-mod.html&quot;&gt;page-mod&lt;/a&gt; is attached to every page that matches the include rule, so frames as well. We are not interested in frames, only in the main page, so with:&lt;/p&gt;

&lt;div class=&quot;wp_syntax&quot;&gt;&lt;div class=&quot;code&quot;&gt;&lt;pre class=&quot;javascript&quot; style=&quot;font-family: monospace;&quot;&gt;&lt;span style=&quot;color: #000066; font-weight: bold;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;(&lt;/span&gt;window.&lt;span style=&quot;color: #660066;&quot;&gt;frameElement&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;)&lt;/span&gt; &lt;span style=&quot;color: #000066; font-weight: bold;&quot;&gt;return&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;We avoid to execute code in that specific case.&lt;/p&gt;
&lt;p&gt;Then, we add the stylesheet given using &lt;code&gt;addStyleSheet&lt;/code&gt; function, defined in the same file, and we obtain the comics page URL by looking into the DOM.&lt;br /&gt;
Because the comic page and the news page are in the same domain, we can use &lt;a href=&quot;https://developer.mozilla.org/en/XMLHttpRequest&quot;&gt;XMLHttpRequest&lt;/a&gt; from the content script itself (content scripts follows the &lt;a href=&quot;https://developer.mozilla.org/en/Same_origin_policy_for_JavaScript&quot;&gt;Same Origin Policy&lt;/a&gt;) instead of having to delegate  this task to the Add-on code (that can perform Cross Domain requests).&lt;br /&gt;
When we receive the response, the comic page's image url is extracted and displayed in the current page. And that's all!&lt;/p&gt;
&lt;p&gt;The behavior related to hide and display the comics image is implemented in &lt;a href=&quot;https://github.com/ZER0/penny-arcade-comics/blob/master/data/content.css&quot;&gt;css file&lt;/a&gt; using &lt;a href=&quot;https://developer.mozilla.org/en/CSS/Media_queries&quot;&gt;media queries&lt;/a&gt;:&lt;/p&gt;

&lt;div class=&quot;wp_syntax&quot;&gt;&lt;div class=&quot;code&quot;&gt;&lt;pre class=&quot;css&quot; style=&quot;font-family: monospace;&quot;&gt;&lt;span style=&quot;color: #a1a100;&quot;&gt;@media (orientation:portrait) {&lt;/span&gt;
  &lt;span style=&quot;color: #cc00cc;&quot;&gt;#penny-arcade-addon-comics&lt;/span&gt; &lt;span style=&quot;color: #00AA00;&quot;&gt;{&lt;/span&gt;
    &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;display&lt;/span&gt;&lt;span style=&quot;color: #00AA00;&quot;&gt;:&lt;/span&gt; &lt;span style=&quot;color: #993333;&quot;&gt;none&lt;/span&gt;&lt;span style=&quot;color: #00AA00;&quot;&gt;;&lt;/span&gt;
  &lt;span style=&quot;color: #00AA00;&quot;&gt;}&lt;/span&gt;
&lt;span style=&quot;color: #00AA00;&quot;&gt;}&lt;/span&gt;
&lt;span style=&quot;color: #a1a100;&quot;&gt;@media (orientation:landscape) {&lt;/span&gt;
  &lt;span style=&quot;color: #cc00cc;&quot;&gt;#penny-arcade-addon-comics&lt;/span&gt; &lt;span style=&quot;color: #00AA00;&quot;&gt;{&lt;/span&gt;
    &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;display&lt;/span&gt;&lt;span style=&quot;color: #00AA00;&quot;&gt;:&lt;/span&gt; &lt;span style=&quot;color: #993333;&quot;&gt;block&lt;/span&gt;&lt;span style=&quot;color: #00AA00;&quot;&gt;;&lt;/span&gt;
  &lt;span style=&quot;color: #00AA00;&quot;&gt;}&lt;/span&gt;
&lt;span style=&quot;color: #00AA00;&quot;&gt;}&lt;/span&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;h3&gt;See the results&lt;/h3&gt;
&lt;p&gt;Navigate into the &lt;code&gt;penny-arcade-comics&lt;/code&gt; directory and run it. You should see Fennec Nightly or Aurora ( whichever you specified ) start up on your device. Next, open the Firefox menu, select 'More', then 'Addons'. You should see the list of default addons installed into Firefox, as well as two additions: 'Mobile Addon-SDK utility addon' and 'penny-arcade-comics'. &lt;/p&gt;
&lt;p&gt;You can now see how it works at first hand by opening the Penny Arcade site ( &lt;a href=&quot;http://penny-arcade.com/&quot;&gt;http://penny-arcade.com/&lt;/a&gt; ) in Firefox  Mobile:&lt;/p&gt;
&lt;h3&gt;Portrait&lt;/h3&gt;
&lt;p&gt;&lt;a href=&quot;http://blog.mozilla.com/addons/files/2012/02/SC20120126-223425.png&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;&quot; class=&quot;alignnone size-thumbnail wp-image-4170&quot; height=&quot;150&quot; src=&quot;http://blog.mozilla.com/addons/files/2012/02/SC20120126-223425-150x150.png&quot; title=&quot;Portrait&quot; width=&quot;150&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h3&gt;Landscape&lt;/h3&gt;
&lt;p&gt;&lt;a href=&quot;http://blog.mozilla.com/addons/files/2012/02/SC20120126-222905.png&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;&quot; class=&quot;alignnone size-thumbnail wp-image-4169&quot; height=&quot;150&quot; src=&quot;http://blog.mozilla.com/addons/files/2012/02/SC20120126-222905-150x150.png&quot; title=&quot;Landscape&quot; width=&quot;150&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;If you do not have an Android device to test this on, you can still see the effect by installing this addon on Firefox Desktop and re-sizing the window to trigger the media queries we've used in our customer css.&lt;/p&gt;
&lt;p&gt;When running the addon on your deivce, you will notice that your shell will be full of javascript warnings; this is because &lt;code&gt;cfx&lt;/code&gt; will dump all of Firefox's log messages there. They can be useful, but especially when you work with &lt;a href=&quot;https://addons.mozilla.org/en-US/developers/docs/sdk/1.4/packages/addon-kit/docs/page-mod.html&quot;&gt;page-mod&lt;/a&gt; it's easy lost your add-on's logging information in this flow. What I usually do instead is open a new shell, and execute a command like that:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;adb logcat | grep info:
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;So, in the shell where cfx is executing I will get all the messages, and in the other one I filtered out only the messages from the add-on.&lt;/p&gt;
&lt;h3&gt;Conclusion&lt;/h3&gt;
&lt;p&gt;We're very excited about the possibilities around mobile addons and would love any feedback you might have. Working with the Android SDK currently is a bit awkwards, admittedly. If you do get started creating your own addons for Fennec Nightly, please keep in mind that not all SDK modules work properly.&lt;br /&gt;
The modules that currently work are:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;page-mod&lt;/li&gt;
&lt;li&gt;page-worker&lt;/li&gt;
&lt;li&gt;request&lt;/li&gt;
&lt;li&gt;self&lt;/li&gt;
&lt;li&gt;simple-storage&lt;/li&gt;
&lt;li&gt;timers&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;There are additional modules that mostly work; we are currently working on providing as much support for mobile as possible and will keep you up to date on our progress.&lt;/p&gt;</description>
	<pubDate>Mon, 06 Feb 2012 12:07:44 +0000</pubDate>
	<dc:creator>Jeff Griffiths</dc:creator>
</item>
<item>
	<title>hacks.mozilla.org: FOSDEM 2012: Mozilla Labs Apps and The Future of HTML5 Games</title>
	<guid isPermaLink="false">http://hacks.mozilla.org/?p=11200</guid>
	<link>http://hacks.mozilla.org/2012/02/fosdem-2012-mozilla-labs-apps-and-the-future-of-html5-games/</link>
	<description>&lt;p&gt;&lt;em&gt;In this post I round-up my first time at FOSDEM and the two talks I gave during my time there; one on open Web apps and the other on creating games with HTML5.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;span id=&quot;more-11200&quot;&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;This past weekend I have been in Brussels at &lt;a href=&quot;http://fosdem.org/2012/&quot;&gt;FOSDEM&lt;/a&gt;, and absolutely massive free event for the open source software community. I hear there were over 5,000 people there this weekend, that’s a lot of people.&lt;/p&gt;
&lt;p&gt;Mozilla had a great presence there this year and hosted two full days of talks in the &lt;a href=&quot;http://fosdem.org/2012/schedule/track/mozilla_devroom&quot;&gt;Mozilla DevRoom&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://www.flickr.com/photos/nitot/6818119445/&quot; title=&quot;Developer engagement team @ Fosdem 2012 by nitot, on Flickr&quot;&gt;&lt;img alt=&quot;Developer engagement team @ Fosdem 2012&quot; src=&quot;http://farm8.staticflickr.com/7170/6818119445_ac4e676fc4_z.jpg&quot; width=&quot;500&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;The Developer Engagement team also had a presence this weekend and put on a variety of talks ranging from &lt;a href=&quot;http://fosdem.org/2012/schedule/event/getting_started_with_the_addon_sdk&quot;&gt;hacking the Web with Jetpack&lt;/a&gt;, to &lt;a href=&quot;http://fosdem.org/2012/schedule/event/2012_new_perspectives_for_mozilla&quot;&gt;Mozilla’s new perspectives for 2012&lt;/a&gt;, to &lt;a href=&quot;http://fosdem.org/2012/schedule/event/open_web_documentation_aimed_at_web_devs&quot;&gt;creating open Web documentation&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;All in all, FOSDEM is a pretty awesome event absolutely crammed full of developers who care immensely about open software. It is very much a Linux-fest but the talks on Web technologies seemed to go down well. And aside from a few cases of anti-Apple/Microsoft/HTML5 sentiment the event was very successful and well-behaved.&lt;/p&gt;
&lt;h3&gt;Open Web Apps and the Mozilla Labs Apps project&lt;/h3&gt;
&lt;p&gt;The first talk that I had the opportunity to give at FOSDEM was on open Web apps and the &lt;a href=&quot;https://developer.mozilla.org/en/Apps&quot;&gt;Mozilla Labs Apps project&lt;/a&gt;. It’s a very interesting topic that has been encouraging developers to think beyond the concept of Web apps being something that is just in the browser.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;h3&gt;Open Web Games with HTML5 &amp;amp; JavaScript&lt;/h3&gt;
&lt;p&gt;The second talk that I gave was on open Web game development with HTML5 &amp;amp; JavaScript. During this talk I highlighted a selection of recent events within the HTML5 game industry as well as the key technologies that are involved. I also demoed the &lt;a href=&quot;https://wiki.mozilla.org/GamepadAPI&quot;&gt;Gamepad API&lt;/a&gt; working in Firefox with a wireless xBox 360 controller.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;</description>
	<pubDate>Mon, 06 Feb 2012 10:11:43 +0000</pubDate>
	<dc:creator>Rob Hawkes</dc:creator>
</item>
<item>
	<title>Bonjour Mozilla: Serge Gautherie</title>
	<guid isPermaLink="false">urn:md5:5ba625f62ad988ce972ade5ff5efdaae</guid>
	<link>http://bonjourmozilla.fr/?post/2011/11/15/Serge-Gautherie</link>
	<description>&lt;p&gt;&lt;a href=&quot;http://www.flickr.com/photos/mozillaeu/6338305490/sizes/m/in/photostream/&quot; hreflang=&quot;fr&quot;&gt;&lt;img alt=&quot;sergegautherie&quot; src=&quot;http://bonjourmozilla.fr/public/.sergegautherie_m.jpg&quot; title=&quot;sergegautherie, nov. 2011&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p lang=&quot;fr&quot;&gt;Serge Gautherie, alias sgautherie, est un utilisateur et un contributeur de longue date. Son parcours est emblématique de celui d’un contributeur acharné, jamais découragé par les changements opérés par le Panda Roux. Serge a commencé sur Mosaic ! est passé pas Netscape 2, puis 3, puis 4… Avant d’arriver à la suite d’applications Mozilla 0.9.5 (ou quelque chose comme ça) en octobre 2001. 2002 marque le début de ses aventures sur Bugzilla : d’abord il commente un bug, puis en signale, et finalement, en 2004, il se retrouve avec son premier bug assigné ! En fait, ses contributions, dit-il, ont évolué en même temps que ses moyens (et que ses machines). Aujourd’hui, Serge multiplie les patches (pas toujours compliqués, mais souvent très, très utiles), à la grande joie des développeurs de Mozilla qui l’apprécient énormément, et il collabore également à l’assurance qualité de Firefox. Mais actuellement, ce qui lui tient vraiment à cœur est SeaMonkey… Sinon, dans la vie, Serge est ingénieur en informatique, il a travaillé 7 ans avec des technologies JEE et Oracle avant de passer à des jeux internet en PHP/MySQL. Et il possède une petite collection d’anciennes consoles et ordinateurs.&lt;/p&gt;
&lt;p lang=&quot;fr&quot;&gt;Bonjour Serge !&lt;/p&gt;
&lt;hr style=&quot;width: 50%;&quot; /&gt;
&lt;p lang=&quot;en&quot;&gt;Serge Gautherie, aka sgautherie, is a user and a long-time contributor. His career is emblematic of a hard working contributor, never discouraged by the changes made ​​by the Red Panda. Serge started on Mosaic! used Netscape 2, then 3, then 4&amp;amp;hellip; All that before coming to the Mozilla Application Suite 0.9.5 (or something like that) in October 2001. 2002 marks the beginning of his adventures on Bugzilla: first he posts a comment on a bug, then reports one, and finally, in 2004, he finds himself with his first assigned bug! In fact, his contributions, he said, have evolved along with his resources (and machines). Now, Serge makes several patches (not always complicated, but often very, very useful), to the delight of Mozilla developers who are very grateful, and he also works in quality assurance of Firefox. But now, what is the most important to him is SeaMonkey&amp;amp;hellip; Otherwise, Serge is a computer engineer, he worked 7 years with Oracle and JEE technologies before moving on to Internet games in PHP/MySQL. And he owns a small collection of old consoles and computers.
&lt;/p&gt;
&lt;p lang=&quot;en&quot;&gt;Bonjour Serge!&lt;/p&gt;</description>
	<pubDate>Mon, 06 Feb 2012 09:00:00 +0000</pubDate>
	<dc:creator>clarista</dc:creator>
</item>
<item>
	<title>Tarek Ziadé: Scaling Crypto work in Python</title>
	<guid isPermaLink="false">http://tarekziade.wordpress.com/?p=2308</guid>
	<link>http://tarekziade.wordpress.com/2012/02/06/scaling-crypto-work-in-python/</link>
	<description>&lt;p&gt;We’re building a new service at &lt;a href=&quot;https://wiki.mozilla.org/Services/&quot;&gt;Services&lt;/a&gt; called the &lt;em&gt;&lt;strong&gt;Token Server&lt;/strong&gt;&lt;/em&gt; – The idea is simple : give us a &lt;a href=&quot;https://browserid.org/&quot;&gt;Browser ID&lt;/a&gt; assertion and a service name, and the Token Server will send you back a token that’s good for 30 minutes to use for the specific service.&lt;/p&gt;
&lt;p&gt;That indirection makes our live easier to manage user authentication and resource allocation for our services . A few examples:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;when a new user wants to use Firefox Sync, we can check which server has the smallest number of allocated users, and tell the user to go there&lt;/li&gt;
&lt;li&gt;we can manage a user from a central place&lt;/li&gt;
&lt;li&gt;we can manage a user we’ve never heard about before without asking her to register specifically to each service — that’s the whole point of Browser ID&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;I won’t get into more details because that’s not the intent of this blog post. But if you are curious the full draft spec is here -&lt;a href=&quot;https://wiki.mozilla.org/Services/Sagrada/TokenServer&quot;&gt; https://wiki.mozilla.org/Services/Sagrada/TokenServer&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;What’s this post is really about is how to build this token server.&lt;/p&gt;
&lt;p&gt;The server is a single web service that gets a Browser ID assertion and does the following:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;verify the assertion&lt;/li&gt;
&lt;li&gt;create a token, which is a simple JSON mapping&lt;/li&gt;
&lt;li&gt;encrypt and sign the token&lt;/li&gt;
&lt;/ol&gt;
&lt;h3&gt;The GIL, Gevent, greenlet and the likes&lt;/h3&gt;
&lt;p&gt;Implementing this using &lt;a href=&quot;http://packages.python.org/cornice/&quot;&gt;Cornice&lt;/a&gt; and a crypto lib is quite simple, but has one major issue : the crypto work is CPU intensive, and even if the libraries we can use have C code under the hood, it seems that the GIL is not released enough to let your threads really use several cores. For example, we benched M2Crypto and it was obvious that a multi-threaded app was locked by the GIL.&lt;/p&gt;
&lt;p&gt;But we don’t use threads in our Python servers — we use Gevent workers, which are based on greenlets. But while greenlets help on I/O bound calls, it won’t help on CPU bound work : you’re tied into a single thread in this case and each greenlet that does some CPU work blocks the other ones.&lt;/p&gt;
&lt;p&gt;It’s easy to demonstrate — see &lt;a href=&quot;http://tarek.pastebin.mozilla.org/1476644&quot;&gt;http://tarek.pastebin.mozilla.org/1476644&lt;/a&gt;  If I run it on my Mac Book Air, the pure Python synchronous version is always faster (huh, the gevent version is *much* slower, not sure why..)&lt;/p&gt;
&lt;p&gt;So the sanest option is to use separate processes and set up a messaging queue between the web service that needs some crypto work to be done and specialized crypto workers.&lt;/p&gt;
&lt;p&gt;We’re back in that case to our beloved 100% I/O bound model we know how to scale using NGinx + GUnicorn + GEvent&lt;/p&gt;
&lt;p&gt;For the crypto workers, we want it to be as fast as possible, so we started to look at &lt;a href=&quot;http://cryptopp.com/&quot;&gt;Crypto++&lt;/a&gt; which seems promising because it uses CPU-specific calls in ASM. There’s the &lt;a href=&quot;https://tahoe-lafs.org/trac/pycryptopp&quot;&gt;pycryptopp&lt;/a&gt; binding that’s available to work with Crypto++ but we happen to need to do some tasks that are not available in that lib yet — like &lt;a href=&quot;http://en.wikipedia.org/wiki/HKDF&quot;&gt;HKDF&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Yeah, at that point it became obvious we’d use pure C++ for that part, and drive it from Python.&lt;/p&gt;
&lt;h3&gt;Message passing&lt;/h3&gt;
&lt;p&gt;Back to our Token server — we need to send crypto work to our workers and get back the result. The first option that comes in mind is to use &lt;a href=&quot;http://docs.python.org/library/multiprocessing.html&quot;&gt;multiprocessing&lt;/a&gt; to spawn our C++ workers and to feed them with work.&lt;/p&gt;
&lt;p&gt;The model is quite simple, but now that we have one piece in C++, it’s getting harder to use the built-in tools in multiprocessing to communicate with our workers — we need to be lower level and start to work with signals or sockets. And well, I am not sure what would be left of multiprocessing then.&lt;/p&gt;
&lt;p&gt;This is doable but a bit of a pain to do correctly (and in a portable way.) Moreover, if we want to have a robust system, we need to have things like a hearbeat, which requires more inter-process message passing.   And now I need to code it in Python &lt;em&gt;&lt;strong&gt;and&lt;/strong&gt;&lt;/em&gt; C++&lt;/p&gt;
&lt;p&gt;Hold on — Let me summarize my requirements:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;inter-process communication&lt;/li&gt;
&lt;li&gt;something less painful than signals or sockets&lt;/li&gt;
&lt;li&gt;very very very fast&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;I got tempted by &lt;a href=&quot;http://en.wikipedia.org/wiki/Memory-mapped_file&quot;&gt;Memory Mapped Files&lt;/a&gt;, but the drawbacks I’ve read here and there scared me.&lt;/p&gt;
&lt;h3&gt;ZeroMQ&lt;/h3&gt;
&lt;p&gt;It turns out &lt;a href=&quot;http://www.zeromq.org/&quot;&gt;zeromq&lt;/a&gt; is perfect for this job – there are clients in Python and C++, and defining a protocol to exchange data from the Python web server to the crypto workers is quite simple.&lt;/p&gt;
&lt;p&gt;In fact, this can be done as a reusable library that takes care of passing messages to workers and getting back results. It has been done hundreds of times, there are many examples in the zmq website, but I have failed to find any Python packaged library that would let me push some work to workers transparently, via a simple &lt;em&gt;execute()&lt;/em&gt; call — if you know one tell me!.&lt;/p&gt;
&lt;p&gt;So I am building one since it’s quite short and simple –  The project is called &lt;em&gt;&lt;strong&gt;PowerHose&lt;/strong&gt;&lt;/em&gt; and is located here :&lt;a href=&quot;https://github.com/mozilla-services/powerhose&quot;&gt; https://github.com/mozilla-services/powerhose&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Here is its descriptions/limitations:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Powerhose is based on a single master and multiple workers protocol&lt;/li&gt;
&lt;li&gt;The Master opens a socket and waits for workers to register themselves into it&lt;/li&gt;
&lt;li&gt;The worker registers itself to the master, provides the path to its own socket, and wait for some work on it.&lt;/li&gt;
&lt;li&gt;Workers are performing the work synchronously and send back the result immediatly.&lt;/li&gt;
&lt;li&gt;The master load-balances on available workers, and if all are busy waits a bit before it times out.&lt;/li&gt;
&lt;li&gt;The worker pings the master on a regular basis and exits if it’s unable to reach it. It attempts several time to reconnect to give a chance to the master to come back.&lt;/li&gt;
&lt;li&gt;Workers are language agnostic and a master could run heterogeneous workers (one in C, one in Python etc..)&lt;/li&gt;
&lt;li&gt;Powerhose is not serializing/deserializing the data – it sends plain strings. This is the responsibility of the program that uses it.&lt;/li&gt;
&lt;li&gt;Powerhose is not responsible to respawn a master or a worker that dies. I plan to use &lt;a href=&quot;http://cr.yp.to/daemontools.html&quot;&gt;daemontools&lt;/a&gt; for this, and maybe provide a script that runs all workers at once.&lt;/li&gt;
&lt;li&gt;Powerhose do not queue works and just rely on zeromq sockets.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The library implements this protocol and gives two tools to use it:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;A JobRunner class in Python, you can use to send some work to be done&lt;/li&gt;
&lt;li&gt;A Worker class in Python &lt;strong&gt;and&lt;/strong&gt; C++, you can use as a base class to implement workers&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Here’s an example of using Powerhose:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;The Server – &lt;a href=&quot;https://github.com/mozilla-services/powerhose/blob/master/examples/square_master.py&quot;&gt;https://github.com/mozilla-services/powerhose/blob/master/examples/square_master.py&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;The Python worker – &lt;a href=&quot;https://github.com/mozilla-services/powerhose/blob/master/examples/square_worker.py&quot;&gt;https://github.com/mozilla-services/powerhose/blob/master/examples/square_worker.py&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;The C++ worker (don’t look at the code &lt;img alt=&quot;:)&quot; class=&quot;wp-smiley&quot; src=&quot;http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif&quot; /&gt;  – &lt;a href=&quot;https://github.com/mozilla-services/powerhose/blob/master/examples/square_worker.cpp&quot;&gt;https://github.com/mozilla-services/powerhose/blob/master/examples/square_worker.cpp&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;For the Token server, we’ll have:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;A JobRunner in our Cornice application&lt;/li&gt;
&lt;li&gt;A C++ worker that uses Crypto++&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The first benches look fantastic — probably faster that anything I’d have implemented myself using plain sockets &lt;img alt=&quot;:)&quot; class=&quot;wp-smiley&quot; src=&quot;http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif&quot; /&gt; &lt;/p&gt;
&lt;p&gt;I’ll try to package Powerhose so other projects at Mozilla can use it. I am wondering if this could be useful to more people, since I failed to find that kind of tool.  How do &lt;em&gt;you&lt;/em&gt; scale your CPU-bound web apps ?&lt;/p&gt;
&lt;br /&gt;Filed under: &lt;a href=&quot;http://tarekziade.wordpress.com/category/mozilla/&quot;&gt;mozilla&lt;/a&gt;, &lt;a href=&quot;http://tarekziade.wordpress.com/category/python/&quot;&gt;python&lt;/a&gt;  &lt;a href=&quot;http://feeds.wordpress.com/1.0/gocomments/tarekziade.wordpress.com/2308/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/comments/tarekziade.wordpress.com/2308/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/godelicious/tarekziade.wordpress.com/2308/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/delicious/tarekziade.wordpress.com/2308/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gofacebook/tarekziade.wordpress.com/2308/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/facebook/tarekziade.wordpress.com/2308/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gotwitter/tarekziade.wordpress.com/2308/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/twitter/tarekziade.wordpress.com/2308/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gostumble/tarekziade.wordpress.com/2308/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/stumble/tarekziade.wordpress.com/2308/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/godigg/tarekziade.wordpress.com/2308/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/digg/tarekziade.wordpress.com/2308/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/goreddit/tarekziade.wordpress.com/2308/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/reddit/tarekziade.wordpress.com/2308/&quot; /&gt;&lt;/a&gt; &lt;img alt=&quot;&quot; border=&quot;0&quot; height=&quot;1&quot; src=&quot;http://stats.wordpress.com/b.gif?host=tarekziade.wordpress.com&amp;amp;blog=448161&amp;amp;post=2308&amp;amp;subd=tarekziade&amp;amp;ref=&amp;amp;feed=1&quot; width=&quot;1&quot; /&gt;</description>
	<pubDate>Mon, 06 Feb 2012 08:03:47 +0000</pubDate>
	<dc:creator>Tarek Ziadé</dc:creator>
</item>
<item>
	<title>QMO: WebQA internship opportunity, summer 2012</title>
	<guid isPermaLink="false">https://quality.mozilla.org/?p=40248</guid>
	<link>https://quality.mozilla.org/2012/02/webqa-internship-opportunity-summer-2012/</link>
	<description>&lt;p&gt;Mozilla QA is looking for passionate and talented interns to take on the challenging position of Software Engineer in Test to help us test and deliver the highest quality Mozilla products and services. In this role you will dive into functionality of Firefox and cutting edge Mozilla web technologies with the goal of developing novel ways to ensure it all works as designed for our 500+ million users.&lt;/p&gt;
&lt;p&gt;WebQA’s chief role is to ensure that Mozilla websites are running smoothly and operating flawlessly. To help us achieve that, we are looking for talented interns to be immersed in:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Developing and executing complex manual tests (using multiple browsers, and alongside a plethora of tools) that discover the hard-to-find defects of functionality, security and availability in Mozilla’s web sites such as AMO (&lt;a href=&quot;https://addons.mozilla.org&quot;&gt;https://addons.mozilla.org&lt;/a&gt;), SUMO (&lt;a href=&quot;http://support.mozilla.com&quot;&gt;http://support.mozilla.com&lt;/a&gt;) and Mozilla.org: &lt;a href=&quot;http://www.mozilla.com/firefox&quot;&gt;http://mozilla.org&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Work with the top contributors of the Selenium test framework project to develop the best automated test solutions to ensure high-quality releases of Mozilla web sites and new cutting-edge Open Web Apps (OWA) project&lt;/li&gt;
&lt;li&gt;Contributing to the design and implementation of distributed automated tests and continuous-integration frameworks, such as Hudson/&lt;a href=&quot;http://jenkins-ci.org/&quot;&gt;Jenkins&lt;/a&gt;. Along the journey, you’ll have the opportunity to involve yourself with and contribute to other great open-source projects, in true Mozilla fashion.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Understanding and extending, Python-based plugins that our team relies on for its testing infrastructure, namely Pytest-MozWebQA (&lt;a href=&quot;https://github.com/davehunt/pytest-mozwebqa&quot;&gt;https://github.com/davehunt/pytest-mozwebqa&lt;/a&gt;) and Moz-Grid-Config (&lt;a href=&quot;https://github.com/mozilla/moz-grid-config&quot;&gt;https://github.com/mozilla/moz-grid-config&lt;/a&gt;), among others&lt;/p&gt;
&lt;p&gt;Requirements:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Enrollment in a BS/MS in Computer Science or equivalent.&lt;/li&gt;
&lt;li&gt;Programming experience in one or more of the following languages; C, C++, Java, Python, JavaScript, and/or Perl.&lt;/li&gt;
&lt;li&gt;Expertise in Python and JavaScript a real plus.&lt;/li&gt;
&lt;li&gt;Exemplary oral and written communication skills&lt;/li&gt;
&lt;li&gt;Have demonstrated a high degree of initiative, self-motivation, and organizational savvy&lt;/li&gt;
&lt;li&gt;Clear analytical and problem-solving skills&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;How to Apply?&lt;/p&gt;
&lt;p&gt;Please apply online at: &lt;a href=&quot;http://bit.ly/xZQmkT&quot;&gt;http://bit.ly/xZQmkT&lt;/a&gt;&lt;/p&gt;</description>
	<pubDate>Sun, 05 Feb 2012 21:26:22 +0000</pubDate>
	<dc:creator>Stephen Donner</dc:creator>
</item>
<item>
	<title>BlueGriffon: 572 new free templates for BlueGriffon!</title>
	<guid isPermaLink="false">urn:md5:0be44aa65dd548e52471a3e58902b073</guid>
	<link>http://bluegriffon.org/post/2012/02/05/572-new-free-templates-for-BlueGriffon%21</link>
	<description>&lt;p&gt;I just added 572 new free HTML+CSS templates to the &lt;a href=&quot;http://www.bluegriffon.com/index.php?pages/One-click-Templates&quot;&gt;One-Click Templates add-on for BlueGriffon&lt;/a&gt;, for a current total of 1030 available templates !&lt;/p&gt;</description>
	<pubDate>Sun, 05 Feb 2012 10:06:00 +0000</pubDate>
	<dc:creator>BlueGriffon</dc:creator>
</item>
<item>
	<title>Andrew Sutherland: about:nosy is about:memory with charts, helps you lay blame more easily</title>
	<guid isPermaLink="false">http://www.visophyte.org/blog/?p=828</guid>
	<link>http://www.visophyte.org/blog/2012/02/04/aboutnosy-is-aboutmemory-with-charts-helps-you-lay-blame-more-easily/</link>
	<description>&lt;p&gt;about:memory and the memory reporter infrastructure that powers it are amazing.  They provide an explicit hierarchy that breaks down the memory use in the system to the subsystems and increasingly the causes of allocation.  about:memory looks like this (if you stand a few feet back from your monitor and take off your glasses):&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://www.visophyte.org/blog/wp-content/uploads/2012/02/about-memory-example.png&quot;&gt;&lt;img alt=&quot;&quot; class=&quot;alignnone size-medium wp-image-829&quot; height=&quot;300&quot; src=&quot;http://www.visophyte.org/blog/wp-content/uploads/2012/02/about-memory-example-225x300.png&quot; title=&quot;Example (non-verbose) about:memory session&quot; width=&quot;225&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;If you are going to look at about:memory, it is probably for one of two reasons:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;You are &lt;a href=&quot;http://blog.mozilla.com/nnethercote/&quot;&gt;Nicholas Nethercote&lt;/a&gt; or one of his merry band of &lt;a href=&quot;https://wiki.mozilla.org/Performance/MemShrink&quot;&gt;MemShrink&lt;/a&gt; hackers kicking ass and taking names (of inefficient uses of memory).  In this case, about:memory is exactly what you need.&lt;/li&gt;
&lt;li&gt;You suspect some tab in Firefox has gone crazy and you want to figure out which one it is and take your vengeance upon it.  Vengeance can take the form of thinking mean thoughts, closing the tab, or writing a snarky tweet.  about:memory will let you do this, but you have to look at a lot of text and you may already be too late to find the culprit!  If only there was an easier way…&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Enter about:nosy:&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://www.visophyte.org/blog/wp-content/uploads/2012/02/about-nosy-tabs-cnn.png&quot;&gt;&lt;img alt=&quot;&quot; class=&quot;alignnone size-thumbnail wp-image-832&quot; height=&quot;104&quot; src=&quot;http://www.visophyte.org/blog/wp-content/uploads/2012/02/about-nosy-tabs-cnn-600x104.png&quot; title=&quot;about:nosy showing three tabs open from cnn.com&quot; width=&quot;600&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;It can show us a list of all the open tabs and their memory usage &lt;strong&gt;sans JS&lt;/strong&gt; for now, as per the above screenshot.  If you expand the tab capsules, you get to see the list of all the inner windows/iframes that live in the hierarchy of that page.  In most cases the list is either really short and boring or really long and boring.  In the case of www.cnn.com I end up with 26 inner windows.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://www.visophyte.org/blog/wp-content/uploads/2012/02/about-nosy-origin-cnn.png&quot;&gt;&lt;img alt=&quot;&quot; class=&quot;alignnone size-thumbnail wp-image-833&quot; height=&quot;193&quot; src=&quot;http://www.visophyte.org/blog/wp-content/uploads/2012/02/about-nosy-origin-cnn-600x193.png&quot; title=&quot;about:nosy expanded origin capsule for www.cnn.com&quot; width=&quot;600&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;It can also show us memory aggregated by origin.  We do show JS for this case because JS is currently only trackable on a per-origin basis.  When &lt;a href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=650353&quot;&gt;Bug 650353&lt;/a&gt; gets fixed or the memory reporters get more specific we should be able to apportion JS usage to pages directly.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://www.visophyte.org/blog/wp-content/uploads/2012/02/about-nosy-exts.png&quot;&gt;&lt;img alt=&quot;&quot; class=&quot;alignnone size-thumbnail wp-image-834&quot; height=&quot;123&quot; src=&quot;http://www.visophyte.org/blog/wp-content/uploads/2012/02/about-nosy-exts-600x123.png&quot; title=&quot;about:nosy extensions display&quot; width=&quot;600&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;It also attempts to aggregate extension JS compartments back to their owning extension.  We ask the add-on manager for a list of the installed extensions to find their filesystem roots, ask the resource protocol to explain resource mappings, and from there are able to translate such paths.  Just keep in mind that traditional overlay-based extensions do not create their own compartments and so are invisible for tracking purposes.&lt;/p&gt;
&lt;p&gt;In the screenshot above, you can see that about:nosy keeps the charts exciting by generating a ridiculous amount of garbage all by itself.  Much of this is just the about:memory tree-building code that we are reusing.  If you refreshed about:memory once a second you would probably see similar garbage creation from the main system JS compartment.&lt;/p&gt;
&lt;p&gt;You can install a &lt;a href=&quot;https://clicky.visophyte.org/files/labs/about-nosy/about-nosy-0.2.xpi&quot;&gt;restartless XPI&lt;/a&gt; of the state of the now that will not auto-update.  It wants a recent &lt;a href=&quot;http://nightly.mozilla.org/&quot;&gt;nightly build of Firefox&lt;/a&gt; because it makes assumptions about the structure of the memory reporters in order to better serve you.&lt;/p&gt;
&lt;p&gt;You can find the &lt;a href=&quot;https://github.com/asutherland/about-nosy/&quot;&gt;source repo on github&lt;/a&gt;.  It requires the &lt;a href=&quot;https://github.com/mozilla/addon-sdk/&quot;&gt;add-on SDK&lt;/a&gt; to build.  It might seem a little overkill for just graphing memory history, but if you’re looking at the repo you will notice my goal is to use &lt;a href=&quot;http://www.cs.washington.edu/homes/burg/&quot;&gt;Brian Burg&lt;/a&gt;‘s &lt;a href=&quot;http://brrian.tumblr.com/post/10571624125/jsprobes&quot;&gt;jsprobes work&lt;/a&gt; &lt;a href=&quot;http://blog.mozilla.com/sfink/2011/09/21/js-probes/&quot;&gt;aided by Steve Fink&lt;/a&gt; and now &lt;a href=&quot;https://bitbucket.org/asuth/jsprobes-patches&quot;&gt;de-bitrotted by me&lt;/a&gt; (but still a bit crashy) to be able to graph CPU usage, including raw JS, layout/reflow, and paint (eventually, after adding probe points).  It’s also possible for those statistics to be gathered via static mechanisms, but the probes are fun and I want to see them work.&lt;/p&gt;</description>
	<pubDate>Sun, 05 Feb 2012 05:25:52 +0000</pubDate>
	<dc:creator>Andrew Sutherland</dc:creator>
</item>
<item>
	<title>Matěj Cepl: Fifth sentence meme</title>
	<guid isPermaLink="false">http://matej.ceplovi.cz/blog/?p=313</guid>
	<link>http://matej.ceplovi.cz/blog/2012/02/fifth-sentence-meme/</link>
	<description>&lt;p&gt;This is &lt;strong&gt;very&lt;/strong&gt; retro, but I like the idea. From &lt;a href=&quot;http://norman.walsh.name/2004/04/27/random&quot;&gt;Norman Walsh’s blog&lt;/a&gt;:&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;“Grab the nearest book, open it to page 23, find the 5th sentence, and post its text along with these instructions. Point back to where you got the idea so that we can follow the threads.”&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;So, I did and funny things, the nearest book was Bible (honestly!). So, it is &lt;cite lang=&quot;cs_CZ&quot;&gt;“Připravil jim hostinu, dal napéci nekvašené chleby a pojedli.”&lt;/cite&gt; For those who don’t understand my beautiful native language, it is Genesis 19:3, which is in NASB translation: &lt;cite&gt;“[…] he prepared a feast for them, and baked unleavened bread, and they ate.”&lt;/cite&gt; Nice text, thinking about it. I am getting hungry.&lt;/p&gt;</description>
	<pubDate>Sun, 05 Feb 2012 00:18:46 +0000</pubDate>
	<dc:creator>matej</dc:creator>
</item>
<item>
	<title>QMO: Results of Firefox 11.0b1 Testday</title>
	<guid isPermaLink="false">https://quality.mozilla.org/?p=40239</guid>
	<link>https://quality.mozilla.org/2012/02/results-of-firefox-11-0b1-testday/</link>
	<description>&lt;p&gt;This past Friday we had a testday for &lt;a href=&quot;https://quality.mozilla.org/2012/02/help-with-firefox-11-0-beta-1/&quot;&gt;Firefox 11.0b1&lt;/a&gt;. I would like to thank everyone who made the event a success.Throughout the day we had 8 testers and 16 moderators working hard to test, confirm bugs, and provide garbage and cycle collector data using the &lt;a href=&quot;https://addons.mozilla.org/en-US/firefox/addon/memchaser/&quot;&gt;Memchaser&lt;/a&gt; add-on. I personally want to thank Aleksej, gaby2300, lcamacho, Swarnava, and everyone else for their hard work.&lt;/p&gt;
&lt;p&gt;Stay tuned for details about next week’s Firefox 11.0b2 Mobile testday.&lt;/p&gt;</description>
	<pubDate>Sat, 04 Feb 2012 23:51:50 +0000</pubDate>
	<dc:creator>ashughes</dc:creator>
</item>
<item>
	<title>Shane Tomlinson: Experiments for Completing the User Registration Flow in BrowserID</title>
	<guid isPermaLink="false">http://www.shanetomlinson.com/?p=603</guid>
	<link>http://www.shanetomlinson.com/2012/browserid-complete-user-registration-flow-experiments/</link>
	<description>&lt;p&gt;Over the past several months BrowserID adoption by sites both inside and outside of Mozilla has started to take off. We have received a lot of feedback from site operators, some good, some bad.  Far and away the biggest complaint from site operators is that completing the new user flow in BrowserID is causing drop off in potential users converting to verified users. Because of this, our own User Researcher &lt;a href=&quot;http://blog.mozilla.com/userresearch/author/mtrombleymozilla-com/&quot;&gt;Mary Trombley&lt;/a&gt; and UX guru &lt;a href=&quot;http://skinnywhitegirl.com/blog/&quot;&gt;Crystal Beasley&lt;/a&gt; have made it their mission to make this experience as smooth as possible.&lt;/p&gt;
&lt;p&gt;Mary user tested our current sign up flow with people who had never used BrowserID. The results were eye opening. Users are doing things we suspected may cause problems, but we did not realize the extent of the confusion we were witnessing.&lt;/p&gt;
&lt;p&gt;The core problem is that users get lost once they verify their email with BrowserID. No clear indication is given for how to return to the original site being signing up to. Sometimes users close the original site, sometimes they open the verification page in a new window, sometimes they start on mobile and finish on their desktop, sometimes they do everything we expect but don’t realize the original site is still open in another tab. All users see after completing the new user flow is some text that says (paraphrased) “You have finished signing up to BrowserID…. You may now close this window.” &lt;/p&gt;
&lt;div class=&quot;thumbnail&quot;&gt;&lt;a href=&quot;https://skitch.com/set117/g6s8u/account-completion&quot;&gt;&lt;img alt=&quot;account_completion&quot; src=&quot;https://img.skitch.com/20120204-gqsna1ujr32ws7hij6bs6s61j4.preview.jpg&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;p&gt;Clearly, we have to do better.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://lloyd.io/&quot;&gt;Lloyd Hilaiel&lt;/a&gt; came up with some initial ideas outlined in the &lt;a href=&quot;https://github.com/mozilla/browserid/issues/385&quot;&gt;GitHub Tracking Issue&lt;/a&gt;. Skinny (Crystal) took these ideas and ran. She’s got UX talent. The changes she suggested were so obvious it was like “duh, how did we not think of this before?” But then again, it’s easy to say that in retrospect – the process for coming up with a smooth flow is anything but smooth.&lt;/p&gt;
&lt;p&gt;Lloyd and Skinny’s initial suggestion was to use some browser trickery to get the user back to the initial site once they have completed the verification step. &lt;/p&gt;
&lt;p&gt;If the original site is still open, we can use a window.alert to return focus to its tab. This works in Firefox, Chrome and Safari – neither Opera nor IE play nicely. Mobile browsers universally show the alert message, but fail to return the user to the correct tab. &lt;/p&gt;
&lt;p&gt;If the original site is no longer open, we can redirect the verification tab back to the original site.  Overall this offers a much better experience, but still leaves a huge hole – if we have to redirect the current tab to the original site, currently we have no way of indicating to that site that the user is now logged in. We think we have a solution to this using &lt;a href=&quot;https://github.com/mozilla/browserid/issues/912&quot;&gt;DOM events&lt;/a&gt;. I did a quick proof of concept on this last night and will post a video once something more concrete is available.&lt;/p&gt;
&lt;p&gt;These simple changes boosted our conversion rates quite a bit. Skinny then took the flow and made it even smoother. She thought “why not enter the password inside the dialog?” Brilliant – when the user opens the verification link from their email, they have no additional work to do – all they have to do is worry about logging in.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://vimeo.com/32957644&quot;&gt;BrowserID New User Verification Flow Experiments Screencast&lt;/a&gt; from &lt;a href=&quot;http://vimeo.com/user9477456&quot;&gt;Shane Tomlinson&lt;/a&gt; on &lt;a href=&quot;http://vimeo.com&quot;&gt;Vimeo&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Both of these flows can be tried with right now. This is experimental work made for user testing and feedback – these flows should not even be considered alpha quality. &lt;/p&gt;
&lt;p&gt;Flow 1 – &lt;a href=&quot;https://feature385.myfavoritebeer.org/&quot; target=&quot;_blank&quot; title=&quot;MyFavoriteBeer hooked up to feature385.hacksign.in&quot;&gt;https://feature385.myfavoritebeer.org/&lt;/a&gt; – window.alert if original site is still open or redirect to original site if closed.&lt;/p&gt;
&lt;p&gt;Flow 2 – &lt;a href=&quot;https://feature1000.myfavoritebeer.org/&quot; target=&quot;_blank&quot; title=&quot;MyFavoriteBeer hooked up to feature1000.hacksign.in&quot;&gt;https://feature1000.myfavoritebeer.org/&lt;/a&gt; – Same as flow 1 with initial password entry inside the dialog.&lt;/p&gt;
&lt;p&gt;Note, for these experiments we are using “hacksign.in” as our test version of “browserid.org” – you are not being hacked.  Both domains are running in separate environments, so you will have to create an account on each.&lt;/p&gt;
&lt;p&gt;I will be continue hacking on these flows over the next couple of weeks. Additional user tests will be done. We are going to keep refining until we get it right. Any and all feedback is welcomed and encouraged.&lt;/p&gt;
&lt;p&gt;Check it out, see what you think. &lt;/p&gt;
&lt;p&gt;Want to get involved?&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Check out the code on &lt;a href=&quot;https://github.com/mozilla/browserid&quot; target=&quot;_blank&quot;&gt;GitHub&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Message our mailing list at &lt;a href=&quot;mailto:dev-identity@lists.mozilla.org&quot;&gt;dev-identity@lists.mozilla.org&lt;/a&gt; or &lt;a href=&quot;https://lists.mozilla.org/listinfo/dev-identity&quot;&gt;sign up&lt;/a&gt; to receive daily updates.&lt;/li&gt;
&lt;li&gt;Come see what we are up to in the &lt;a href=&quot;http://identity.mozilla.com&quot;&gt;Identity&lt;/a&gt; group or visit us on IRC in the #identity channel on irc.mozilla.org.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;We’d love to hear from you about how we can make this better!&lt;/p&gt;
&lt;div class=&quot;tweetthis&quot; style=&quot;text-align: left;&quot;&gt;&lt;p&gt; &lt;a class=&quot;tt&quot; href=&quot;http://twitter.com/intent/tweet?text=Experiments+for+Completing+the+User+Registration+Flow+in+BrowserID+http%3A%2F%2Fshanetomlinson.com%2F%3Fp%3D603&quot; title=&quot;Post to Twitter&quot;&gt;&lt;img alt=&quot;Post to Twitter&quot; class=&quot;nothumb&quot; src=&quot;http://www.shanetomlinson.com/wp-content/plugins/tweet-this/icons/en/twitter/tt-twitter.png&quot; /&gt;&lt;/a&gt; &lt;a class=&quot;tt&quot; href=&quot;http://delicious.com/post?url=http://www.shanetomlinson.com/2012/browserid-complete-user-registration-flow-experiments/&amp;amp;title=Experiments+for+Completing+the+User+Registration+Flow+in+BrowserID&quot; title=&quot;Post to Delicious&quot;&gt;&lt;img alt=&quot;Post to Delicious&quot; class=&quot;nothumb&quot; src=&quot;http://www.shanetomlinson.com/wp-content/plugins/tweet-this/icons/en/delicious/tt-delicious.png&quot; /&gt;&lt;/a&gt; &lt;a class=&quot;tt&quot; href=&quot;http://digg.com/submit?url=http://www.shanetomlinson.com/2012/browserid-complete-user-registration-flow-experiments/&amp;amp;title=Experiments+for+Completing+the+User+Registration+Flow+in+BrowserID&quot; title=&quot;Post to Digg&quot;&gt;&lt;img alt=&quot;Post to Digg&quot; class=&quot;nothumb&quot; src=&quot;http://www.shanetomlinson.com/wp-content/plugins/tweet-this/icons/en/digg/tt-digg.png&quot; /&gt;&lt;/a&gt; &lt;a class=&quot;tt&quot; href=&quot;http://www.facebook.com/share.php?u=http://www.shanetomlinson.com/2012/browserid-complete-user-registration-flow-experiments/&amp;amp;t=Experiments+for+Completing+the+User+Registration+Flow+in+BrowserID&quot; title=&quot;Post to Facebook&quot;&gt;&lt;img alt=&quot;Post to Facebook&quot; class=&quot;nothumb&quot; src=&quot;http://www.shanetomlinson.com/wp-content/plugins/tweet-this/icons/en/facebook/tt-facebook.png&quot; /&gt;&lt;/a&gt; &lt;a class=&quot;tt&quot; href=&quot;http://www.google.com/buzz/post?url=http://www.shanetomlinson.com/2012/browserid-complete-user-registration-flow-experiments/&amp;amp;imageurl=&quot; title=&quot;Post to Google Buzz&quot;&gt;&lt;img alt=&quot;Post to Google Buzz&quot; class=&quot;nothumb&quot; src=&quot;http://www.shanetomlinson.com/wp-content/plugins/tweet-this/icons/en/gbuzz/tt-gbuzz.png&quot; /&gt;&lt;/a&gt; &lt;a class=&quot;tt&quot; href=&quot;http://reddit.com/submit?url=http://www.shanetomlinson.com/2012/browserid-complete-user-registration-flow-experiments/&amp;amp;title=Experiments+for+Completing+the+User+Registration+Flow+in+BrowserID&quot; title=&quot;Post to Reddit&quot;&gt;&lt;img alt=&quot;Post to Reddit&quot; class=&quot;nothumb&quot; src=&quot;http://www.shanetomlinson.com/wp-content/plugins/tweet-this/icons/en/reddit/tt-reddit.png&quot; /&gt;&lt;/a&gt; &lt;a class=&quot;tt&quot; href=&quot;http://slashdot.org/bookmark.pl?url=http://www.shanetomlinson.com/2012/browserid-complete-user-registration-flow-experiments/&amp;amp;title=Experiments+for+Completing+the+User+Registration+Flow+in+BrowserID&quot; title=&quot;Post to Slashdot&quot;&gt;&lt;img alt=&quot;Post to Slashdot&quot; class=&quot;nothumb&quot; src=&quot;http://www.shanetomlinson.com/wp-content/plugins/tweet-this/icons/en/slashdot/tt-slashdot.png&quot; /&gt;&lt;/a&gt; &lt;a class=&quot;tt&quot; href=&quot;http://stumbleupon.com/submit?url=http://www.shanetomlinson.com/2012/browserid-complete-user-registration-flow-experiments/&amp;amp;title=Experiments+for+Completing+the+User+Registration+Flow+in+BrowserID&quot; title=&quot;Post to StumbleUpon&quot;&gt;&lt;img alt=&quot;Post to StumbleUpon&quot; class=&quot;nothumb&quot; src=&quot;http://www.shanetomlinson.com/wp-content/plugins/tweet-this/icons/en/su/tt-su.png&quot; /&gt;&lt;/a&gt; &lt;a class=&quot;tt&quot; href=&quot;http://technorati.com/faves?add=http://www.shanetomlinson.com/2012/browserid-complete-user-registration-flow-experiments/&quot; title=&quot;Post to Technorati&quot;&gt;&lt;img alt=&quot;Post to Technorati&quot; class=&quot;nothumb&quot; src=&quot;http://www.shanetomlinson.com/wp-content/plugins/tweet-this/icons/en/technorati/tt-technorati.png&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;/div&gt;</description>
	<pubDate>Sat, 04 Feb 2012 21:25:43 +0000</pubDate>
	<dc:creator>Shane Tomlinson</dc:creator>
</item>
<item>
	<title>Gregory Jost: Tablets have so much potential, we’re only just scratching...</title>
	<guid isPermaLink="true">http://www.temporarylull.com/post/17040033592</guid>
	<link>http://www.temporarylull.com/post/17040033592</link>
	<description>&lt;br /&gt;&lt;br /&gt;&lt;p&gt;Tablets have so much potential, we’re only just scratching the surface…&lt;/p&gt;</description>
	<pubDate>Sat, 04 Feb 2012 18:11:08 +0000</pubDate>
</item>
<item>
	<title>Gregory Jost: Timelapse, London, Ontario.</title>
	<guid isPermaLink="true">http://www.temporarylull.com/post/17038025370</guid>
	<link>http://www.temporarylull.com/post/17038025370</link>
	<description>&lt;br /&gt;&lt;br /&gt;&lt;p&gt;Timelapse, London, Ontario.&lt;/p&gt;</description>
	<pubDate>Sat, 04 Feb 2012 17:33:31 +0000</pubDate>
</item>
<item>
	<title>Bogomil Shopov: #Fosdem 2012 – what’s going on.</title>
	<guid isPermaLink="false">http://talkweb.eu/?p=1127</guid>
	<link>http://talkweb.eu/openweb/1127</link>
	<description>&lt;p&gt;&lt;a href=&quot;http://fosdem.org/2012/schedule/track/mozilla_devroom&quot;&gt;Mozilla’s schedule&lt;/a&gt; for FOSDEM is quite busy:&lt;/p&gt;
&lt;p&gt;1. There is an online streaming that can be &lt;a href=&quot;https://air.mozilla.org/&quot;&gt;watched from here&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;2. Follow &lt;a href=&quot;https://twitter.com/#!/search/%23mozilla&quot;&gt;#mozilla tag&lt;/a&gt; to follow what is going on right now at Fosdem – including nice quotes, slides and some hacks like this one:&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;Hacking the &lt;a href=&quot;https://twitter.com/#%21/search?q=%23Fosdem&quot; rel=&quot;nofollow&quot; title=&quot;#Fosdem&quot;&gt;&lt;s&gt;#&lt;/s&gt;&lt;strong&gt;Fosdem&lt;/strong&gt;&lt;/a&gt;‘s “O” – Hack it and tag it with &lt;a href=&quot;https://twitter.com/#%21/search?q=%23fosdem&quot; rel=&quot;nofollow&quot; title=&quot;#fosdem&quot;&gt;&lt;s&gt;#&lt;/s&gt;&lt;strong&gt;fosdem&lt;/strong&gt;&lt;/a&gt;-hack and get nice &lt;a href=&quot;https://twitter.com/#%21/search?q=%23Mozilla&quot; rel=&quot;nofollow&quot; title=&quot;#Mozilla&quot;&gt;&lt;s&gt;#&lt;/s&gt;&lt;strong&gt;Mozilla&lt;/strong&gt;&lt;/a&gt; t-shirt (draw). – See &lt;a href=&quot;https://twitter.com/#!/bogomep/status/165816700619587585&quot;&gt;more here&lt;/a&gt;&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;3. if you are here, please stop by our booth and get some buttons and join our effort to make the web better.&lt;/p&gt;</description>
	<pubDate>Sat, 04 Feb 2012 16:15:55 +0000</pubDate>
	<dc:creator>Bogo</dc:creator>
</item>
<item>
	<title>Bonjour Mozilla: Fosdem 2012 : Mozilla vous attend</title>
	<guid isPermaLink="false">urn:md5:593893e962639f474e602af4f798ca79</guid>
	<link>http://bonjourmozilla.fr/?post/2012/02/04/Fosdem-2012-%3A-Mozilla-vous-attend</link>
	<description>&lt;p&gt;&lt;a href=&quot;http://www.flickr.com/photos/46009999@N06/6817104981/sizes/m/in/photostream/&quot; hreflang=&quot;en&quot;&gt;&lt;img alt=&quot;fosdem2012stand&quot; src=&quot;http://bonjourmozilla.fr/public/.fosdem2012stand_m.jpg&quot; title=&quot;fosdem2012stand, fév. 2012&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p lang=&quot;fr&quot;&gt;Le Fosdem a ouvert ses portes, dans la joie et la bonne humeur. Et Mozilla a dressé son stand… Pas à l’emplacement habituel. Alors, armez-vous de courage, mettez votre bonnet et votre écharpe (et des bonnes chaussures pour affronter la neige gelée), et venez nous retrouver au bâtiment K. On vous attend avec plein de jolis goodies :-)&lt;/p&gt;
&lt;p lang=&quot;fr&quot;&gt;Bonjour le Fosdem !&lt;/p&gt;
&lt;hr style=&quot;width: 50%;&quot; /&gt;
&lt;p lang=&quot;en&quot;&gt;&lt;span class=&quot;&quot; id=&quot;result_box&quot; lang=&quot;en&quot;&gt;&lt;span class=&quot;hps&quot;&gt;Fosdem opened, amongst joy and happiness. And Mozilla set up its booth… Not at the usual location. So be courageous, put your hat and your scarf (and good shoes to face the frozen snow), and come find us in the K building. We are waiting for you with lots of nice swag :-)&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p lang=&quot;en&quot;&gt;Bonjour Fosdem!&lt;/p&gt;</description>
	<pubDate>Sat, 04 Feb 2012 15:19:00 +0000</pubDate>
	<dc:creator>clarista</dc:creator>
</item>
<item>
	<title>Tristan Nitot: Mozilla awards grants to six international non-profit organizations</title>
	<guid isPermaLink="false">urn:md5:7bf5718448d6531bef819c2bc9004b52</guid>
	<link>http://standblog.org/blog/post/2012/02/04/Mozilla-awards-grants-to-six-international-non-profit-organizations</link>
	<description>&lt;p&gt;&lt;a href=&quot;http://farm8.staticflickr.com/7173/6816923159_11fd418437_b.jpg&quot;&gt;&lt;img alt=&quot;Fosdem 2012, under the snow&quot; src=&quot;http://farm8.staticflickr.com/7173/6816923159_11fd418437.jpg&quot; /&gt;&lt;/a&gt;&lt;/p&gt;


&lt;p&gt;&lt;em&gt;&lt;a href=&quot;http://www.flickr.com/photos/nitot/6816923159/in/photostream&quot;&gt;Fosdem 2012, under the snow&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;


&lt;p&gt;Earlier today, in &lt;a href=&quot;http://fosdem.org/&quot; hreflang=&quot;en&quot;&gt;FOSDEM&lt;/a&gt; in Brussels, a series of grants by Mozilla to non-profit organizations and aimed at Europe have been announced. Here is the announcement:&lt;/p&gt;


&lt;h3&gt;Mozilla awards grants to six international non-profit organizations&lt;/h3&gt;


&lt;p&gt;We are pleased to announce that Mozilla awards six international non-profit organizations in Europe and the US with grants for projects that will further strengthen open web, free and open source technologies  and user sovereignty on the Web in Europe. Grant recipients are:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://www.april.org/&quot; hreflang=&quot;fr&quot;&gt;April&lt;/a&gt;: April is the main French  advocacy association devoted to promote and protect Free/Libre Software. It is a major player in spreading the word of free software and open  standards to the general public, professionals and institutions in  France. It also acts as a watchdog on digital freedoms, warning the public about the dangers of private interests keeping an exclusive stranglehold on information and knowledge.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://fosdem.org/&quot; hreflang=&quot;en&quot;&gt;FOSDEM&lt;/a&gt;: The Belgium-based FOSDEM team  organizes the free and non-commercial Free and Open source  Software Developers' European Meeting (FOSDEM) event to promote the widespread use of Free and Open Source software and provide FOSS projects with a platform to meet, exchange, and collaborate.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.framasoft.net/&quot; hreflang=&quot;fr&quot;&gt;Framasoft&lt;/a&gt;: Framasoft is one of the most prominent voices of FLOSS (Free, Libre, Open Source Software) in France and other French-speaking countries.  The organization’s aim is to educate users about the importance of open software.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://fsfe.org/&quot;&gt;Free Software Foundation Europe&lt;/a&gt;: Free  Software Foundation Europe works across Europe for freedom in the information society by promoting Free Software and Open Standards in politics, business, law, education,  and society at large.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://nowoczesnapolska.org.pl/&quot; hreflang=&quot;pl&quot;&gt;Nowoczesna Polska&lt;/a&gt;: the Modern Poland Foundation consequently cares for modern education and  development of information society in Poland.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://pculture.org/&quot; hreflang=&quot;en&quot;&gt;Participatory Culture Foundation&lt;/a&gt;: The US-based organization is dedicated to creating open and decentralized  video tools and services. The grant is earmarked for Universal Subtitles, a project of Participatory Culture Foundation that makes web video accessible through a collaborative platform for captioning and translation of video.  Mozilla has collaborated on this open-source project since its creation.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Mozilla has a history of awarding grants to projects that are aligned  with its mission. The funds for this round came from Mozilla Europe. Going forward all grant applications, including those for Europe, will  go through the Mozilla foundation. Details can be found here:  http://www.mozilla.org/grants/ (Once the page has been updated, that is &lt;img alt=&quot;;-)&quot; class=&quot;smiley&quot; src=&quot;http://standblog.org/dotclear2/themes/default/smilies/wink.png&quot; /&gt; )&lt;/p&gt;</description>
	<pubDate>Sat, 04 Feb 2012 10:20:00 +0000</pubDate>
	<dc:creator>Tristan</dc:creator>
</item>
<item>
	<title>Daniel Glazman: 25% rebate on BlueGriffon add-ons *today*</title>
	<guid isPermaLink="false">urn:md5:50aa72aaad618bd72b44db0254ce8df1</guid>
	<link>http://www.glazman.org/weblog/dotclear/index.php?post/2012/02/04/25-rebate-on-BlueGriffon-add-ons-today</link>
	<description>&lt;p&gt;During 24 hours only starting right now, get a 25% rebate on BlueGriffon add-ons with coupon code MICHEL on &lt;a href=&quot;http://www.bluegriffon.com&quot;&gt;www.bluegriffon.com&lt;/a&gt;.&lt;/p&gt;</description>
	<pubDate>Sat, 04 Feb 2012 07:58:00 +0000</pubDate>
	<dc:creator>glazou</dc:creator>
</item>

</channel>
</rss>

