<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>Binary Sunrise &#187; Mozilla</title>
	<atom:link href="http://kix.in/category/mozilla/feed/" rel="self" type="application/rss+xml" />
	<link>http://kix.in</link>
	<description>Anant Narayanan</description>
	<lastBuildDate>Tue, 14 May 2013 21:10:17 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='kix.in' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://1.gravatar.com/blavatar/fe2b4310ec3ff0f887a6c109a484981e?s=96&#038;d=http%3A%2F%2Fs2.wp.com%2Fi%2Fbuttonw-com.png</url>
		<title>Binary Sunrise &#187; Mozilla</title>
		<link>http://kix.in</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://kix.in/osd.xml" title="Binary Sunrise" />
	<atom:link rel='hub' href='http://kix.in/?pushpress=hub'/>
		<item>
		<title>A new beginning</title>
		<link>http://kix.in/2012/11/25/a-new-beginning/</link>
		<comments>http://kix.in/2012/11/25/a-new-beginning/#comments</comments>
		<pubDate>Sun, 25 Nov 2012 21:22:58 +0000</pubDate>
		<dc:creator>Anant</dc:creator>
				<category><![CDATA[Firebase]]></category>
		<category><![CDATA[Life]]></category>
		<category><![CDATA[Mozilla]]></category>
		<category><![CDATA[People]]></category>
		<category><![CDATA[Startups]]></category>
		<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://kix.in/?p=1603</guid>
		<description><![CDATA[After a nice relaxing thanksgiving week, with almost no e-mail to read (I can&#8217;t stress enough how nice this was) &#8211; I&#8217;m incredibly excited to start my first day at Firebase tomorrow! If you haven&#8217;t heard of them before, it&#8217;s because they&#8217;re a startup And they&#8217;re in the business of building a scalable, real-time backend [&#8230;]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kix.in&#038;blog=12909480&#038;post=1603&#038;subd=12ghosts&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p>After a nice relaxing thanksgiving week, with almost no e-mail to read (I can&#8217;t stress enough <em>how nice</em> this was) &#8211; I&#8217;m incredibly excited to start my first day at <a href="http://www.firebase.com">Firebase</a> tomorrow! If you haven&#8217;t heard of them before, it&#8217;s because they&#8217;re a startup <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  And they&#8217;re in the business of building a scalable, real-time backend for apps.</p>
<p style="text-align:center;"><a href="http://www.firebase.com"><img class="wp-image-1605 aligncenter" title="Firebase Logo" alt="" src="http://12ghosts.files.wordpress.com/2012/11/logo.png?w=228&#038;h=45" height="45" width="228" /></a></p>
<p>When I joined Mozilla, it was very hard for me to envision any better job than the one I had. In fact, I still think that&#8217;s true, but when I met and spoke with the folks from Firebase, I knew I had found another job that could be just as good! The team is small (7 including me), consists of really intelligent and likeable people, all of whom are engineers, and they&#8217;re working in a space I have a deep academic and professional interest in.</p>
<p>But why a startup? In the words of Cobb, from <a href="http://www.imdb.com/title/tt1375666/quotes">Inception</a>:</p>
<blockquote><p>What is the most resilient parasite? Bacteria? A virus? An intestinal worm? An idea. Resilient&#8230; highly contagious. Once an idea has taken hold of the brain it&#8217;s almost impossible to eradicate. An idea that is fully formed &#8211; fully understood &#8211; that sticks; right in there somewhere.</p></blockquote>
<p>And somewhere along the way, the thought of what it would be like to work at a startup entered my head. Maybe it was the near constant buzz about startups around me, or my daily reading of <a href="http://news.ycombinator.com/">hacker news</a>. Maybe Cobb and crew planted the idea when I was unconscious on a plane. I don&#8217;t know. But there it was&#8230;</p>
<p>I normally ignore emails from recruiters, since most of them are poorly written and ill-researched (my friends have had <a href="http://zpao.com/posts/this-is-bad-recruiting/">similar experiences</a>), but this particular email was well crafted and it had to do with start-ups. I was already pretty curious, and finding out more couldn&#8217;t hurt, right? Here we are!</p>
<p>I&#8217;m really looking forward to this roller-coaster ride, as one of the founders put it. In addition to <a href="http://github.com/anantn">writing code</a>, which I love, I&#8217;ve also <a href="http://kix.in/talks/">always enjoyed</a> talking to others about my work. At Firebase, I&#8217;m going to be doing a bit of both, so you&#8217;ll most certainly hear more about my adventures as they unfold.</p>
<p>Wish me luck!</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/12ghosts.wordpress.com/1603/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/12ghosts.wordpress.com/1603/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kix.in&#038;blog=12909480&#038;post=1603&#038;subd=12ghosts&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://kix.in/2012/11/25/a-new-beginning/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/07849b3424ed76e574037f8818829138?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">kix</media:title>
		</media:content>

		<media:content url="http://12ghosts.files.wordpress.com/2012/11/logo.png" medium="image">
			<media:title type="html">Firebase Logo</media:title>
		</media:content>
	</item>
		<item>
		<title>My last week at Mozilla</title>
		<link>http://kix.in/2012/11/12/my-last-week-at-mozilla/</link>
		<comments>http://kix.in/2012/11/12/my-last-week-at-mozilla/#comments</comments>
		<pubDate>Tue, 13 Nov 2012 00:37:05 +0000</pubDate>
		<dc:creator>Anant</dc:creator>
				<category><![CDATA[FOSS]]></category>
		<category><![CDATA[FOSS.IN]]></category>
		<category><![CDATA[Life]]></category>
		<category><![CDATA[Mozilla]]></category>

		<guid isPermaLink="false">http://kix.in/?p=1568</guid>
		<description><![CDATA[tl;dr: My last day as a full-time employee of the Mozilla Corporation will be Friday, November 16. Almost 5 years ago at FOSS.IN, I met a group of friendly folks, who despite having to endure the effects of an extremely long journey into a crowded city with less-than-ideal weather, patiently explained how the one-of-a-kind world [&#8230;]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kix.in&#038;blog=12909480&#038;post=1568&#038;subd=12ghosts&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p>tl;dr: My last day as a full-time employee of the Mozilla Corporation will be Friday, November 16.</p>
<p>Almost 5 years ago at <a href="http://foss.in">FOSS.IN</a>, I met a group of friendly folks, who despite having to endure the effects of an extremely long journey into a crowded city with less-than-ideal weather, patiently explained how the one-of-a-kind world of Mozilla worked. I had no idea what kind of impact those few days would have on my life, or that it would lead to a rewarding career writing open source software. In fact, it still boggles my mind when I think about the series of fortunate events that had to transpire to bring me where I am today.</p>
<p><a href="https://secure.flickr.com/photos/firefox_community/2092392207/"><img class="alignleft" title="My first meeting with fellow Mozillians" alt="" src="https://farm3.staticflickr.com/2280/2092392207_9fcdba103a_n.jpg" height="240" width="320" /></a></p>
<p>A lot of things had to happen for my <a href="https://hg.mozilla.org/mozilla-central/rev/11c2ca9ce3a5">first patch</a> to be committed. <a href="http://mykzilla.blogspot.com/">Myk</a> spent hours teaching me how to build mozilla-central, taught me how to make a patch and put it on a bug, and explained how the review process worked. Of course, I was a total n00b back then, but I was also extremely lucky to have <a href="https://twitter.com/bz_moz/">bz</a> review my patch. As you can see on <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=393002">the bug</a>, bz is the epitome of patience and kindness.</p>
<p>I got very lucky again a few months later, when I interviewed for an internship at Mozilla, and despite my (in my view) somewhat mediocre performance during the phone screen, Mozilla decided to take a chance on me anyway!</p>
<p><a href="https://secure.flickr.com/photos/firefox_community/2108727321"><img class="alignright" title="Enjoying some Indian street food with choffman, myk and prasad" alt="" src="https://farm3.staticflickr.com/2327/2108727321_ceaf562fc1_n.jpg" height="240" width="320" /></a>I spent the summer working on <a href="https://blog.mozilla.org/labs/2007/12/introducing-weave/">Weave</a> with <a href="https://twitter.com/thunder">Dan Mills </a>and the rest of the Labs crew, and made my first significant contribution in terms of code to Mozilla. At the time Labs was led by the amazing <a href="https://twitter.com/cbeard">Chris Beard</a>, and consisted of <a href="http://toolness.com">Atul Varma</a>, <a href="http://jonoscript.wordpress.com/">Jono Xia</a> (his last name was still DiCarlo back then!) and <a href="http://www.azarask.in/blog/">Aza Raskin</a>, who had all arrived from <a href="http://www.humanized.com/">Humanized</a> earlier that year, and Myk. Dan was instrumental in moulding me from an amateur enthusiast into a professional programmer. It wasn&#8217;t until the end of that summer that I really believed I could write code for a living. I owe much of my life today to Chris, Dan and Myk. I had a blast that summer with the most awesome group of interns, and left determined to come back and be a Mozillian for life.</p>
<p>I could go on and on about all my Mozilla memories (the two <a href="http://kix.in/2008/08/03/of-bears-landslides-powercuts-and-cancelled-flights/">summits</a> in Whistler, the numerous all-hands, office pranks, nerf ball wars, <a href="http://www.flickr.com/photos/whimboo/sets/72157626442137484/">trip to Las Vegas</a>, &#8230;) and all the cool projects I got to work on (<a href="https://blog.mozilla.org/blog/2010/05/26/firefox-home-coming-soon-to-the-iphone/">Firefox Home</a>, <a href="https://wiki.mozilla.org/Jetpack">Jetpack</a>, <a href="https://mozillalabs.com/en-US/rainbow/">Rainbow</a>, <a href="http://www.mozilla.org/en-US/apps/">Apps</a>, <a href="http://webrtc.org">WebRTC</a>&#8230;) but the gist of it is that my life has completely revolved around Mozilla for the last 4 years, and has fundamentally changed me as a person. I think it is very rare to find such a high concentration of splendid folks who are passionate, crazy smart, and have a sense of humour in one place.</p>
<p><a href="http://www.flickr.com/photos/gen/4784616005/"><img class="alignleft" title="Mozilla Summit 2010 Group Photo" alt="" src="http://farm5.staticflickr.com/4101/4784616005_0fe9c15c9b.jpg" height="333" width="500" /></a>The highlight of my stay at Mozilla has definitely been the fantastic opportunity to work with some amazing people. Authors of the very same books I read as a student, people whose technical prowess leaves me in awe, folks who wrote the software I use on a daily basis, people who invented technology in use by billions, people who have taught me more in a few months than all my previous teachers put together, and people who I could only dream I&#8217;d meet some day, let alone work with. That wasn&#8217;t all &#8211; I had the chance to work with so many unsung heroes &#8211; hardworking, humble and brilliant people who day-after-day managed to amaze me with their <del>awesome</del> splendid nature.</p>
<p>But I didn&#8217;t just have the chance to work with amazing Mozillians. Being a part of the organization also gave me the opportunity to meet other people with similar qualities from around the world. Through work with standards bodies like the <a href="http://w3.org">W3C</a> and <a href="http://ietf.org">IETF</a>, and community events like <a href="http://kix.in/?s=mozcamp&amp;submit=Search">MozCamp</a>, I had the chance to visit various parts of the world to soak in different cultures and ideas. I learned so much about life, food, love, etiquette, physics and everything else worth knowing, just by being a part of the community.</p>
<p style="text-align:left;"><a href="http://12ghosts.files.wordpress.com/2012/11/raumzeitgeist_720x240.jpg"><img class="aligncenter  wp-image-1588" title="Places I got to visit thanks to Mozilla!" alt="" src="http://12ghosts.files.wordpress.com/2012/11/raumzeitgeist_720x240.jpg?w=720&#038;h=240" height="240" width="720" /></a></p>
<p style="text-align:left;">And so, even though it is cliché, it could not be truer that the decision to leave Mozilla has been one of the hardest in my life. Thankfully, I will always be a Mozillian, which I think is the best perk of being part of an open, community-oriented organization. <a href="https://twitter.com/johnolilly">John Lilly</a> (who I had the fortune to meet, again, thanks to Mozilla) has written about how a person&#8217;s <a href="http://john.jubjubs.net/2011/05/20/recruiting-dna/">first few years</a> in their career goes on to define how they approach problems much later in life. I couldn&#8217;t be prouder or happier that my first job has been with Mozilla. A very high bar has been set, and there is no doubt that I will continue to carry their watermark with me wherever I go.</p>
<p style="text-align:left;">Thanks Mozilla, for the best 4 years yet.</p>
<p style="text-align:left;">As for what&#8217;s next, more soon!</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/12ghosts.wordpress.com/1568/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/12ghosts.wordpress.com/1568/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kix.in&#038;blog=12909480&#038;post=1568&#038;subd=12ghosts&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://kix.in/2012/11/12/my-last-week-at-mozilla/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/07849b3424ed76e574037f8818829138?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">kix</media:title>
		</media:content>

		<media:content url="https://farm3.staticflickr.com/2280/2092392207_9fcdba103a_n.jpg" medium="image">
			<media:title type="html">My first meeting with fellow Mozillians</media:title>
		</media:content>

		<media:content url="https://farm3.staticflickr.com/2327/2108727321_ceaf562fc1_n.jpg" medium="image">
			<media:title type="html">Enjoying some Indian street food with choffman, myk and prasad</media:title>
		</media:content>

		<media:content url="http://farm5.staticflickr.com/4101/4784616005_0fe9c15c9b.jpg" medium="image">
			<media:title type="html">Mozilla Summit 2010 Group Photo</media:title>
		</media:content>

		<media:content url="http://12ghosts.files.wordpress.com/2012/11/raumzeitgeist_720x240.jpg" medium="image">
			<media:title type="html">Places I got to visit thanks to Mozilla!</media:title>
		</media:content>
	</item>
		<item>
		<title>MozCamp EU 2012: Mobilize Mozilla</title>
		<link>http://kix.in/2012/09/16/mozcamp-eu-2012-mobilize-mozilla/</link>
		<comments>http://kix.in/2012/09/16/mozcamp-eu-2012-mobilize-mozilla/#comments</comments>
		<pubDate>Mon, 17 Sep 2012 05:04:10 +0000</pubDate>
		<dc:creator>Anant</dc:creator>
				<category><![CDATA[Conferences]]></category>
		<category><![CDATA[Mozilla]]></category>
		<category><![CDATA[People]]></category>
		<category><![CDATA[Places]]></category>
		<category><![CDATA[internet]]></category>
		<category><![CDATA[mozilla community]]></category>
		<category><![CDATA[technology]]></category>
		<category><![CDATA[warsaw poland]]></category>

		<guid isPermaLink="false">http://kix.in/?p=1535</guid>
		<description><![CDATA[A group of around 200 Mozillians gathered in Warsaw, Poland last week for the European MozCamp of 2012. My last MozCamp was the one in Prague back in 2009, so it was wonderful to be able to participate and meet with the European community after so long. There was a mix of familiar and new [&#8230;]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kix.in&#038;blog=12909480&#038;post=1535&#038;subd=12ghosts&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p><a href="http://12ghosts.files.wordpress.com/2012/09/mozcamp_mobilize_2400x1600.png"><img class="alignleft size-medium wp-image-1536" title="Mobilize Mozilla" src="http://12ghosts.files.wordpress.com/2012/09/mozcamp_mobilize_2400x1600.png?w=300&#038;h=200" alt="" width="300" height="200" /></a>A group of around 200 Mozillians gathered in Warsaw, Poland last week for the European MozCamp of 2012. My last MozCamp was the one in <a href="http://kix.in/2009/10/01/heading-to-prague/">Prague back in 2009</a>, so it was wonderful to be able to participate and meet with the European community after so long. There was a mix of familiar and new faces, a great sign of a growing and vibrant community!</p>
<p>The theme of the weekend was <em>Mobilize Mozilla</em>, which to me meant rallying the Mozilla community around our various mobile efforts which includes <a href="https://play.google.com/store/apps/details?id=org.mozilla.firefox">Firefox for Android</a> and <a href="http://www.mozilla.org/en-US/b2g/">FirefoxOS</a>. For years, Firefox on Desktop has been and still remains Mozilla&#8217;s flagship product, but there was never a doubt that Mozilla&#8217;s mission was much larger than Firefox. The opening keynote was by <a href="https://blog.mozilla.org/beyond-the-code/">Tristan</a> and <a href="https://blog.lizardwrangler.com/">Mitchell</a>, which covered some general updates on various Mozilla activities around the world and specifically Europe, but also some inspiring comments on why our priorities at Mozilla are the way they are. I especially liked Mitchell&#8217;s emphasis on building quality products that people love to use. As Mozillians, we&#8217;re clear on what our values are, but no piece of software can perfectly represent them. Even Firefox isn&#8217;t perfect, which is why we&#8217;re improving the security and privacy it can offer with every release. What matters is that we&#8217;re taking small steps, each one bringing us closer to the <em>&#8220;perfect product&#8221;</em>. Now that we&#8217;re building mobile products, we&#8217;re going to be challenged with some decisions that may be hard to make. In times like this, it&#8217;s important to keep the big picture in mind; Mozilla can&#8217;t do any good if it becomes obsolete!</p>
<div class="alignright" style="margin-left:22px;"><span class='embed-youtube' style='text-align:center; display: block;'><iframe class='youtube-player' type='text/html' width='550' height='340' src='http://www.youtube.com/embed/_HRiLIkzvFQ?version=3&#038;rel=1&#038;fs=1&#038;showsearch=0&#038;showinfo=1&#038;iv_load_policy=1&#038;wmode=transparent' frameborder='0'></iframe></span></div>
<p style="text-align:left;">The second keynote was by <a href="https://twitter.com/jaysullivan">Jay Sullivan</a>, who gave us an overview of where we are with all our products currently, and what&#8217;s coming up in the future. There were some pretty cool demos as well, and I had the wonderful opportunity to showcase <a href="https://developer.mozilla.org/en-US/demos/detail/bananabread">BananaBread</a>, a 3D FPS built by <a href="http://mozakai.blogspot.com/">azakai</a> and several other Mozillians, using only HTML5 &#8211; no plug-ins. It uses <a href="https://github.com/kripken/emscripten/wiki">emscripten</a> to convert the open source Cube2 game engine <em><a href="http://sauerbraten.org/">&#8220;Sauerbraten&#8221;</a></em> from C++ to JavaScript, and the performance is pretty smooth. As a gamer, I must say that I&#8217;m very impressed!</p>
<p style="text-align:left;">This was followed by a demo of the latest features in Firefox for Android by <a href="https://twitter.com/DigDug2K">Wesley Johnston</a>. He showed us how smooth scrolling is (no more checker-boarding!) and some of the latest WebAPIs and CSS3 transitions in action. My favourite new feature is the <a href="http://lucasr.org/2012/09/03/reader-mode-in-firefox-beta-for-android/">reader mode</a>, now available on the Beta &#8211; go check it out! <a href="https://twitter.com/davilagrau">Andres Martinez</a> from Telefonica then gave us a good look at the new FirefoxOS on a real device. The Gaia UI has come a long way, he showed us the task switcher, music player, the browser and a game. It was nice to see music still playing in the background throughout the demo. <a href="http://gavinsharp.com">Gavin Sharp</a> gave us a preview of the new <a href="https://wiki.mozilla.org/Labs/SocialAPI">Social API</a> that&#8217;s landing in the nightlies. The Labs folks had been working on it for a while, and it&#8217;s very close to actually landing in Firefox, thanks to a bunch of effort by Gavin &amp; team. We tried to follow that with a <a href="http://webrtc.org">WebRTC</a> demo, unfortunately, we ran into technical difficulties while on stage <img src='http://s1.wp.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' />  Thankfully, we were able to successfully repeat the demo later in the day, during a <a href="https://wiki.mozilla.org/MozCampEU2012/WebRTC-demystified">session on WebRTC</a> that <a href="http://people.xiph.org/~tterribe/">Timothy Terriberry</a> and I ran. <a href="http://paulrouget.com/">Paul Rouget</a> then took the stage and showed us some of the new developer tools hotness, including <a href="https://hacks.mozilla.org/2011/07/tilt-visualize-your-web-page-in-3d/">tilt</a> and the <a href="https://hacks.mozilla.org/2012/08/new-firefox-command-line-helps-you-develop-faster/">command line</a>.</p>
<p style="text-align:left;">The morning session had two more keynotes in store, David Slater gave us an overview of Marketing at Mozilla. He also revealed our top secret plan for marketing Firefox on desktop &#8211; more t-shirts! This was followed by caution that the strategy for mobile will have to differ, and a glimpse of what&#8217;s in store. Check out about:home in your Firefox for a cute little Android animation! He then invited community members to come forth with their crazy ideas, we&#8217;re going to need them to compete with other industry giants with piles of cash! Get in touch with <a href="https://blog.mozilla.org/gen/">Gen Kanai</a>, he&#8217;ll patiently listen, no matter how crazy the idea <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  The final keynote of the day was by <a href="http://commonspace.wordpress.com/about/">Mark Surman</a>, who gave us an update on various efforts by the Foundation, and <a href="http://kix.in/2012/08/26/mozilla-at-campusparty-12-and-berlin-2/">like at CampusParty</a>, made a case for building a generation of <a href="http://www.mozilla.org/en-US/webmaker/">WebMakers</a>. The <a href="http://www.youtube.com/watch?v=UPI6g_XG7ck">Chad Vader Friday parody</a> was played again, and good times were had!</p>
<p style="text-align:left;">We rounded off the morning session with a showcasing of the <a href="http://community.doesthings.com/quilt/quilt.html">community quilt</a> &#8211; a 90 second lightning talk by one representative from each community. I learnt a lot about how our community operates on the ground, what challenges they&#8217;re facing and what they&#8217;re most proud of. The rest of MozCamp was filled with sessions and fun activities, but I won&#8217;t get into the details of them all or this post will get way too long! However, I will mention that I loved the <a href="https://wiki.mozilla.org/MozCampEU2012/Buddyprogram">buddy</a> program at this MozCamp. My buddy was Anas El Husseini, who does localization in Arabic, among other things; and we had a great time swapping stories. It&#8217;s just awesome to part of a community that&#8217;s so wide and diverse.</p>
<p style="text-align:left;">If you ever get a chance to attend a MozCamp, I&#8217;d highly encourage it &#8211; it&#8217;s a blast!</p>
<p style="text-align:left;">P.S. Slides from our WebRTC session <a href="http://proness.kix.in/talks/mozcamp12-webrtc.pdf">are here</a>, if you&#8217;re interested.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/12ghosts.wordpress.com/1535/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/12ghosts.wordpress.com/1535/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kix.in&#038;blog=12909480&#038;post=1535&#038;subd=12ghosts&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://kix.in/2012/09/16/mozcamp-eu-2012-mobilize-mozilla/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/07849b3424ed76e574037f8818829138?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">kix</media:title>
		</media:content>

		<media:content url="http://12ghosts.files.wordpress.com/2012/09/mozcamp_mobilize_2400x1600.png?w=300" medium="image">
			<media:title type="html">Mobilize Mozilla</media:title>
		</media:content>
	</item>
		<item>
		<title>Mozilla at CampusParty &#8217;12 and Berlin</title>
		<link>http://kix.in/2012/08/26/mozilla-at-campusparty-12-and-berlin-2/</link>
		<comments>http://kix.in/2012/08/26/mozilla-at-campusparty-12-and-berlin-2/#comments</comments>
		<pubDate>Sun, 26 Aug 2012 22:49:44 +0000</pubDate>
		<dc:creator>Anant</dc:creator>
				<category><![CDATA[Conferences]]></category>
		<category><![CDATA[FOSS]]></category>
		<category><![CDATA[Fun]]></category>
		<category><![CDATA[Mozilla]]></category>
		<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://kix.in/?p=1495</guid>
		<description><![CDATA[I had the wonderful opportunity to participate at CampusParty Europe in Berlin over the last few days. I had never been to a CampusParty before, but I had a great time! It is definitely one of the more unique tech conferences out there, if you can even call it that. The most amazing thing about this event [&#8230;]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kix.in&#038;blog=12909480&#038;post=1495&#038;subd=12ghosts&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p><a href="http://12ghosts.files.wordpress.com/2012/08/img_20120824_115851.jpg"><img class="alignright" title="Facebook &amp; Twitter are buddies!" src="http://12ghosts.files.wordpress.com/2012/08/img_20120824_115851.jpg?w=450&#038;h=340" alt="" width="450" height="340" /></a>I had the wonderful opportunity to participate at <a href="https://www.campus-party.eu/2012/index.html">CampusParty Europe</a> in Berlin over the last few days. I had never been to a CampusParty before, but I had a great time! It is definitely one of the more unique tech conferences out there, if you can even call it that. The most amazing thing about this event was that it was hosted at an old airport, <a href="http://en.wikipedia.org/wiki/Berlin_Tempelhof_Airport">Berlin Tempelhof</a>, and a lot of the interiors are still intact. For instance, you can still see conveyor belts, signs like &#8220;Passport Control&#8221; and all the gate numbers. The talks themselves were located in a large hangar-like structure, which made for some odd acoustics, but the talks went surprisingly well considering 8 of them ran in parallel under a (very large) roof. Another adjacent hangar was reserved for a bunch of tents where participants chose to camp out through the entire event.</p>
<p><a href="http://12ghosts.files.wordpress.com/2012/08/img_20120824_141127.jpg"><img class="alignleft  wp-image-1497" title="Camping at CampusParty" src="http://12ghosts.files.wordpress.com/2012/08/img_20120824_141127.jpg?w=440&#038;h=330" alt="" width="440" height="330" /></a></p>
<p>My primary focus at the event was to support the <a href="http://www.campus-labs.com/webapp/reto/ver/FirefoxOSChallenge">Firefox OS Challenge</a> held by Telefonica. I spoke to a few developers on how to go about writing an app for Firefox OS, and some of the common pitfalls encountered when a website is converted into an app. I think the reception was pretty positive and it was great to meet folks who were pretty excited about Firefox OS. I was also extremely pleased that my Samusng Galaxy SII with FirefoxOS worked flawlessly through all the demos (yes, even the WiFi)!</p>
<p>You can find slides from my presentation <a href="http://proness.kix.in/talks/campus12-apps.pdf">here</a>.</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p><a href="http://commonspace.wordpress.com/">Mark Surman</a>, the executive director of the Mozilla Foundation had a talk scheduled at the &#8220;free software&#8221; track.  His talk was about the Mozilla Foundation&#8217;s vision for promoting openness, innovation and opportunity on the web, with some interesting ideas on how to achieve that in the long run, over the next century. What I found particularly interesting was the notion of building a generation of <a href="http://www.mozilla.org/en-US/webmaker/"><em>Webmakers</em></a>, i.e. ordinary people who know how the web works and are &#8220;literate&#8221; enough to write or hack a web page. This knowledge is mostly limited to computer programmers or engineers  these days, but Mark&#8217;s argument is that because the Internet is so vital and fundamental to human society, it is important that we educate the next generation about the web, just like we do with reading, writing and mathematics. The Webmaker project, along with tools like <a href="https://thimble.webmaker.org/en-US/">Thimble</a>, <a href="http://hackasaurus.org/en-US/goggles/">X-Ray Goggles</a>, and <a href="http://mozillapopcorn.org/">Popcorn</a> are all steps in this direction. <a href="http://www.youtube.com/watch?v=UPI6g_XG7ck">Chad Vader&#8217;s remix of Rebecca&#8217;s Black &#8220;Friday&#8221;</a> was played at full volume during the talk, and at one point there was a caped man on stage. &#8217;nuff said.</p>
<p>Next up was the charismatic <a href="http://christianheilmann.com/">Christian Heilmann</a>, who spoke about Mozilla, the web and <em>you</em>. The talk covered a wide range of topics, with a focus on Mozilla&#8217;s latest efforts in the Mobile space, specifically Firefox OS. There was also a shout out to <a href="http://webrtc.org/">WebRTC</a>, one of the projects really close to my heart, woo! Christian&#8217;s talks are always very entertaining, he has a blog post with links to slides and the recorded talk, <a href="http://christianheilmann.com/2012/08/25/mozilla-the-web-and-you-at-campus-party-europe/">which you should check out</a>!</p>
<p><a href="http://12ghosts.files.wordpress.com/2012/08/img_20120824_165741.jpg"><img class="alignleft  wp-image-1519" title="Bernauer Straße Memorial" src="http://12ghosts.files.wordpress.com/2012/08/img_20120824_165741.jpg?w=400&#038;h=290" alt="" width="400" height="290" /></a>I also got the chance to visit the venue of our future MozSpace in Berlin. <a href="http://www.mozilla.org/en-US/about/mozilla-spaces/">Mozilla Spaces</a> is a project whose aim is to set up places around the world where the Mozilla community can come together to hack, design, research and all the other things Mozillians do to keep the web open. The tech scene in Berlin is pretty hot right now, and given the strength of our existing community there, it seemed like a fairly natural place to open up a MozSpace. The space is right on the historic <em><a href="http://en.wikipedia.org/wiki/Bernauer_Stra%C3%9Fe">Bernauer Straße</a></em>, overlooking the memorial. There&#8217;s a lot of history behind the area, and the locality is filled with offices and co-working spaces for many other interesting startups. The San Francisco MozSpace has some serious competition with both the Paris and Berlin projects underway!</p>
<p><a href="http://12ghosts.files.wordpress.com/2012/08/img_20120824_163432.jpg"><img class="alignright size-medium wp-image-1520" title="Firefox Ad at Alexanderplatz" src="http://12ghosts.files.wordpress.com/2012/08/img_20120824_163432.jpg?w=300&#038;h=225" alt="" width="300" height="225" /></a>While strolling around Alexanderplatz, the city&#8217;s <em>U-Bahn</em> (subway) center and generally a very busy plaza, I was delighted to see Firefox Advertisements all over the walls. We did a small advertising campaign in San Francisco at the <a href="http://www.caltrain.com/about/doingbusiness/Advertising/trainads/Station_Saturation.html">Caltrain station</a> and the <a href="http://www.flickr.com/photos/fligtar/sets/72157626249531015/with/5569324504/">US-101</a> a few months ago, and this appears to be a continuation of that effort. Germany is known for its emphasis on Privacy (both Google &amp; Facebook have had tussles with the German Government on such issues), so I hope the various messages resonated with the public. I don&#8217;t speak German, but I&#8217;m told the phrases were rather eloquent!</p>
<p>&nbsp;</p>
<p>It&#8217;s been a while since I&#8217;ve been to a MozCamp (my last one was at <a href="http://kix.in/2009/10/01/heading-to-prague/">Prague</a>), and so I&#8217;m really looking forward to attending <a href="https://wiki.mozilla.org/MozCampEU2012">MozCamp EU in Warsaw</a>. <a href="http://people.xiph.org/~tterribe/">Tim Terriberry</a> and I will be <a href="https://wiki.mozilla.org/MozCampEU2012/WebRTC-demystified">talking about WebRTC</a>, and I hope to see some of you there!</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/12ghosts.wordpress.com/1495/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/12ghosts.wordpress.com/1495/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kix.in&#038;blog=12909480&#038;post=1495&#038;subd=12ghosts&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://kix.in/2012/08/26/mozilla-at-campusparty-12-and-berlin-2/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/07849b3424ed76e574037f8818829138?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">kix</media:title>
		</media:content>

		<media:content url="http://12ghosts.files.wordpress.com/2012/08/img_20120824_115851.jpg" medium="image">
			<media:title type="html">Facebook &#38; Twitter are buddies!</media:title>
		</media:content>

		<media:content url="http://12ghosts.files.wordpress.com/2012/08/img_20120824_141127.jpg" medium="image">
			<media:title type="html">Camping at CampusParty</media:title>
		</media:content>

		<media:content url="http://12ghosts.files.wordpress.com/2012/08/img_20120824_165741.jpg?w=300" medium="image">
			<media:title type="html">Bernauer Straße Memorial</media:title>
		</media:content>

		<media:content url="http://12ghosts.files.wordpress.com/2012/08/img_20120824_163432.jpg?w=300" medium="image">
			<media:title type="html">Firefox Ad at Alexanderplatz</media:title>
		</media:content>
	</item>
		<item>
		<title>Mozilla at Mobile World Congress 2012</title>
		<link>http://kix.in/2012/03/05/mozilla-at-mobile-world-congress-2012/</link>
		<comments>http://kix.in/2012/03/05/mozilla-at-mobile-world-congress-2012/#comments</comments>
		<pubDate>Tue, 06 Mar 2012 01:23:58 +0000</pubDate>
		<dc:creator>Anant</dc:creator>
				<category><![CDATA[Conferences]]></category>
		<category><![CDATA[Fun]]></category>
		<category><![CDATA[Mozilla]]></category>
		<category><![CDATA[Places]]></category>
		<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://kix.in/?p=1440</guid>
		<description><![CDATA[The Mobile World Congress at Barcelona this year was the first trade show that Mozilla has participated in. This is new territory for us, but given that 2012 marks the year where mobile devices will far outnumber desktops &#38; laptops, it was clear that Mozilla has to play a central role in promoting an open [&#8230;]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kix.in&#038;blog=12909480&#038;post=1440&#038;subd=12ghosts&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p>The Mobile World Congress at Barcelona this year was the first trade show that Mozilla has participated in. This is new territory for us, but given that 2012 marks the year where mobile devices will far outnumber desktops &amp; laptops, it was clear that Mozilla has to play a central role in promoting an open ecosystem for mobile devices. However, we&#8217;re a small, community-driven software company, so putting on a professional face at a trade show like MWC to tell the world that we&#8217;re serious about our enacting our mission in the mobile space can be very intimidating. Especially when you&#8217;re sharing the floor with established industry giants; Huawei, for example, had a whole city block reserved for their &#8220;booth&#8221;. Other carriers, OEMs, and hardware manufacturers had an equally large presence at the show. At the beginning of the week, what we mostly hoped for was to sneak in, show our wares and gauge interest. What we actually got exceeded our wildest expectations.</p>
<p><a href="http://12ghosts.files.wordpress.com/2012/03/2012-02-28_01-57-27_721.jpg"><img class=" wp-image-1441 alignleft" title="Mozilla Booth at MWC" src="http://12ghosts.files.wordpress.com/2012/03/2012-02-28_01-57-27_721.jpg?w=465&#038;h=261" alt="" width="465" height="261" /></a>We setup our booth at <a href="http://www.mobileworldcongress.com/app-planet-overview.html">App Planet</a> to showcase many of our products that are relevant to the mobile space: <a href="http://wiki.mozilla.org/B2G">Boot 2 Gecko</a>, <a href="http://mozilla.org/mobile/">Firefox on Android</a>, the <a href="http://mozilla.org/apps/">Mozilla Marketplace</a>, and <a href="http://mozilla.org/persona/">Mozilla Persona</a>. There was a continuous stream of people, on all four days, interested in checking out demos of our various products, which meant non-stop talking for booth staff! One of the things we&#8217;re really proud of is that our booth was manned by Mozilla staff who directly work on the very same products we were show-casing. This made for some very authentic demos, and we left no question unanswered.</p>
<h2></h2>
<h2>Boot 2 Gecko</h2>
<p><a href="http://12ghosts.files.wordpress.com/2012/03/2012-02-29_08-42-58_676.jpg"><img class="wp-image-1444 alignright" title="Open Web Devices" src="http://12ghosts.files.wordpress.com/2012/03/2012-02-29_08-42-58_676.jpg?w=440&#038;h=247" alt="" width="440" height="247" /></a>On the first day, we made an <a href="https://blog.mozilla.com/blog/2012/02/27/mozilla-in-mobile-the-web-is-the-platform/">announcement</a> that we would be partnering with <a class="zem_slink" title="Telefónica" href="http://www.forbes.com/companies/telefonica/" rel="forbes" target="_blank">Telefónica</a> to release an <em><a href="http://openwebdevice.com/">open web device</a></em>, a phone based fully on HTML5, powered by <a href="https://wiki.mozilla.org/B2G">Boot 2 Gecko</a>. This really resonated with almost everyone at the event, and set the tone for the following week. I had several people come up to me at our (rather modest, what I thought would be almost unfindable) booth and ask for a B2G demo, which kicked ass (and was only finished on Sunday night, most of us only saw the working phone on the first day of the show!). One gentleman from the press even commented that it was the only news worth writing about.</p>
<p>This is the kind of response that really energizes the entire team and validates a lot of our thinking in the mobile space. In a world that is dominated and controlled by vertical silos like those built around iOS and Android, our call for a more open eco-system is something that many at MWC were able to understand as being important, and potentially disruptive. Imagine being able to install apps from not just one marketplace, but several, or even just being able to navigate to a web page to install an app, without a gatekeeper or a middleman.</p>
<p>Everyone (including myself) was blown away with the performance of B2G on the demo phones, running apps like <a href="http://cuttherope.ie/">Cut the Rope</a> (<a href="http://www.cuttherope.ie/dev/">which was recently ported to HTML, CSS &amp; JS</a>, thanks to Microsoft) just as smoothly as the native counterpart. Our demo had a little view source button, which you could press when you were on the home screen, the dialer app, or anywhere else; and it always put a smile on the audience&#8217;s face. This is really a phone made of the web, for the web.</p>
<h2>Mozilla Marketplace</h2>
<p><a href="http://12ghosts.files.wordpress.com/2012/03/2012-02-29_08-44-00_134.jpg"><img class="alignleft  wp-image-1457" title="Mozilla Marketplace" src="http://12ghosts.files.wordpress.com/2012/03/2012-02-29_08-44-00_134.jpg?w=512&#038;h=288" alt="" width="512" height="288" /></a>The natural transition from the B2G demo happens when someone asks &#8220;how do users get apps on the phone?&#8221;. Mozilla is going to be running a <a href="http://marketplace.mozilla.org/">marketplace</a> for apps written using HTML5 technologies. Our marketplace is already open for developer submissions, and we hope to have a consumer beta ready sometime by the end of Q2 this year. We showcased some of our partner apps that have been submitted to the marketplace, running on a variety of different platforms: Android phones, tablets; Mac and Windows computers.</p>
<p>We&#8217;re going to have an awesome, community-driven app store (built on the same principles, and even the same code-base as our <a href="http://addons.mozilla.org/">add-on marketplace</a>), but it will by no means be the only HTML5 app store in town. We encourage, and even support, other companies wanting to setup their own stores; and developers are always free to self-publish apps on their own websites (adding an &#8216;install&#8217; button to your website is really simple!). We&#8217;re going to be supporting paid apps on our marketplace, and also provide an in-app purchase API (credit cards supported via PayPal, and we&#8217;re also trying to support carrier billing in some countries); but because apps are built using the same web technologies used for building websites, developers are always free to setup their own payment systems.</p>
<p>It&#8217;s a really open eco-system, bringing the flexibility and distributed nature of the web to the app world. If you&#8217;re interested in the technical details of how this all works, I wrote a post sometime ago <a href="http://kix.in/2011/12/15/behind-the-mozilla-apps-developer-preview/">explaining it all</a>. A very common question I received was &#8220;is there an SDK I can use?&#8221;, or &#8220;are there standard UI widgets we&#8217;re expected to use?&#8221;. The answer is that, this is not just another app store, developers will use the same technologies as they do today to build websites, with a few tweaks here and there (to support multiple screen sizes, and to support offline usage, etc.) to make an app. You can use any of your favorite JS frameworks, UI widgets and server side frameworks to build an app. Again, an app marketplace made of the web, for the web.</p>
<h2>Firefox on Android</h2>
<p><a href="http://12ghosts.files.wordpress.com/2012/03/2012-02-29_08-44-23_429.jpg"><img class="alignright  wp-image-1458" title="Firefox on Android" src="http://12ghosts.files.wordpress.com/2012/03/2012-02-29_08-44-23_429.jpg?w=440&#038;h=247" alt="" width="440" height="247" /></a>We also had lots of visitors to our booth who were either fans of Firefox and just wanted to say thanks (we love you all!) or were former Firefox users who now use a different browser (we love you too!).</p>
<p>The original version for Firefox on Android was built using the same front-end code (XUL) as on the desktop and had some performance problems. We&#8217;ve since re-written the entire UI to be much more smoother, and really focused on improving startup speed. We had some amazing demos of Firefox on Android phones and tablets that showcased all of these improvements, and more.</p>
<p>We also had a chance to demo some of the cool new WebAPIs that we&#8217;ve introduced (many of them driven by the needs of B2G!): such as camera access, accelerometer, vibration, etc. I think most of our visitors were very pleased with how far Firefox on mobile has come, with competitive performance and a smooth browsing experience. We look forward to pushing the latest nightly version into the Google Market on Android as soon as possible so everyone can get their hands on them! (If you&#8217;re an impatient daredevil, just head to the <a href="http://nightly.mozilla.org/">nightly page</a> to download the latest &amp; greatest).</p>
<h2>That&#8217;s not all</h2>
<p><a href="http://mozilla.org/persona/">Mozilla Persona</a> came up a lot in conversations, as identity is the binding glue for all our projects. Enabling a really simple sign-in process on not just websites but also devices like B2G phones; while respecting user privacy and choice, is a high priority for us. We were able to do demos of a Persona based login to the Apps marketplace but also explain to everyone interested about how this is not just another login system like Facebook Connect, but rather a federated and distributed system for identity. Keep up with the latest developments in this space on the <a href="http://identity.mozilla.com/">Mozilla Identity blog</a>!</p>
<p>During the same week as MWC, <a href="http://blog.ted.com/2012/02/28/meet-collusion-announced-today-onstage-at-ted-u/">Gary announced</a> <a href="https://www.mozilla.org/en-US/collusion/">Collusion</a> at TED U, an add-on that lets you discover who’s tracking you online. With the recent debate around user privacy, especially in the mobile space, it wasn&#8217;t surprising that there were quite a few people who were interested in Collusion at MWC. I was able to give a few demos of the add-on in action on the desktop computers, but unfortunately we didn&#8217;t have a version working on our Mobile browsers (something we hope to fix in the near future). It was awesome to be able to demo this at MWC and show to the world that user privacy comes foremost at Mozilla (Firefox was also the first browser to implement <a href="http://donottrack.us/">Do Not Track</a>).</p>
<p>All in all, this past week has been pretty exciting for all of us. Firefox brought openness to the web almost a decade ago and played a key role in shaping the web to where it is today. However, as the world is changing and becoming more mobile, we&#8217;d like to bring the same values and principles with us into this new realm. At MWC, we showed the world that Mozilla is a serious player in the mobile space. We made a lot of promises, and we loved the response; now is the time to execute. I hope that at the next mobile world congress, we will have lived up to all our promises and have a pretty compelling demonstration of what we accomplished in 2012.</p>
<p><strong>The web is the platform. And Mozilla is leading the charge. Onward!</strong></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/12ghosts.wordpress.com/1440/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/12ghosts.wordpress.com/1440/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kix.in&#038;blog=12909480&#038;post=1440&#038;subd=12ghosts&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://kix.in/2012/03/05/mozilla-at-mobile-world-congress-2012/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/07849b3424ed76e574037f8818829138?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">kix</media:title>
		</media:content>

		<media:content url="http://12ghosts.files.wordpress.com/2012/03/2012-02-28_01-57-27_721.jpg" medium="image">
			<media:title type="html">Mozilla Booth at MWC</media:title>
		</media:content>

		<media:content url="http://12ghosts.files.wordpress.com/2012/03/2012-02-29_08-42-58_676.jpg" medium="image">
			<media:title type="html">Open Web Devices</media:title>
		</media:content>

		<media:content url="http://12ghosts.files.wordpress.com/2012/03/2012-02-29_08-44-00_134.jpg" medium="image">
			<media:title type="html">Mozilla Marketplace</media:title>
		</media:content>

		<media:content url="http://12ghosts.files.wordpress.com/2012/03/2012-02-29_08-44-23_429.jpg" medium="image">
			<media:title type="html">Firefox on Android</media:title>
		</media:content>
	</item>
		<item>
		<title>PIPA/SOPA: Not good for anybody&#8217;s health</title>
		<link>http://kix.in/2012/01/17/pipasopa-not-good-for-anybodys-health/</link>
		<comments>http://kix.in/2012/01/17/pipasopa-not-good-for-anybodys-health/#comments</comments>
		<pubDate>Wed, 18 Jan 2012 07:26:37 +0000</pubDate>
		<dc:creator>Anant</dc:creator>
				<category><![CDATA[Mozilla]]></category>
		<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://kix.in/?p=1402</guid>
		<description><![CDATA[Wikipedia, Google, Reddit and several other major sites are protesting the PIPA/SOPA legislation by either completely blacking out their sites or by modifying their front pages to inform their visitors of this harmful legislation that the MPAA is trying get the U.S. Congress to pass. I&#8217;m proud that Mozilla will be also be participating in [&#8230;]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kix.in&#038;blog=12909480&#038;post=1402&#038;subd=12ghosts&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p>Wikipedia, Google, Reddit and several other major sites are <a href="http://sopastrike.com/">protesting the PIPA/SOPA legislation</a> by either completely blacking out their sites or by modifying their front pages to inform their visitors of this harmful legislation that the <a href="http://mpaa.org/contentprotection/roguewebsites">MPAA </a>is trying get the U.S. Congress to pass. I&#8217;m proud that Mozilla will be also be <a href="https://blog.mozilla.com/blog/2012/01/17/mozilla-to-join-tomorrows-virtual-protests-of-pipasopa/">participating</a> in the &#8216;internet strike&#8217; tomorrow!</p>
<p>I&#8217;ve rarely discussed politics on my blog, and as an Indian citizen I am particularly helpless to do anything about U.S. legislation. <a href="http://blog.lizardwrangler.com/2012/01/17/pipasopa-and-why-you-should-care/">Mitchell</a> and many others have already posted level-headed arguments on why PIPA/SOPA isn&#8217;t going to help anyone. However, <a href="http://arstechnica.com/tech-policy/news/2012/01/sopa-livesand-mpaa-calls-protests-an-abuse-of-power.ars">this response</a> from the MPAA&#8217;s chief executive Chris Dodd (who is, notably, a former US Senator) really irks me:</p>
<blockquote><p>Only days after the White House and chief sponsors of the legislation responded to the major concern expressed by opponents and then called for all parties to work cooperatively together, some technology business interests are resorting to stunts that punish their users or turn them into their corporate pawns, rather than coming to the table to find solutions to a problem that all now seem to agree is very real and damaging.</p>
<p>It is an irresponsible response and a disservice to people who rely on them for information and use their services. It is also an abuse of power given the freedoms these companies enjoy in the marketplace today. It’s a dangerous and troubling development when the platforms that serve as gateways to information intentionally skew the facts to incite their users in order to further their corporate interests.</p>
<p>A so-called “blackout” is yet another gimmick, albeit a dangerous one, designed to punish elected and administration officials who are working diligently to protect American jobs from foreign criminals. It is our hope that the White House and the Congress will call on those who intend to stage this “blackout” to stop the hyperbole and PR stunts and engage in meaningful efforts to combat piracy.</p></blockquote>
<p>The MPAA has, in the past, used its &#8220;power&#8221; to enact legislation that makes it illegal to manufacture DVD players that allow lawful, paying consumers to skip the FBI warning shown at the beginning of DVDs. The MPAA is now using that very same &#8220;power&#8221; and political clout to enact PIPA/SOPA. It is plainly hypocritical that the MPAA would call Google and Wikipedia irresponsible for displaying accurate information <em>on their own websites</em>.</p>
<p>Furthermore, the MPAA calls out for &#8220;co-operation&#8221; from technology companies on the matter of piracy. I am at a loss to understand why Google or any other technology company should spend even a cent of their hard-earned money on solving a problem for the MPAA. Why didn&#8217;t the MPAA use its enormous cash pile on technology that would enable them to profit from evolving technology instead of spending it all on lobbying a bill that threatens the Internet&#8217;s very existence?</p>
<p>The retort from the MPAA is that they&#8217;re not against the Internet, just piracy. However, that&#8217;s exactly where the problem lies. The PIPA/SOPA bills as currently drafted would give the MPAA (a private entity, mind you) the overarching power to shut down <em>any website, without legal recourse</em>, all in the name of combating piracy. Even if I trust the executives at the MPAA to not abuse that power, I do not fool myself into thinking that there will be no mistakes at all. Taking down a website for no real legal reason, even temporarily, is<em> just not worth it</em> &#8211; especially when the end goal is to let the MPAA make an extra million dollars.</p>
<p>Thankfully, the Internet is not designed to let any single entity obtain that much power (one could note that it is that distributed nature of the Internet that makes it so successful). Even if the bill is enacted, it will not prevent people from being able to reach these &#8220;rogue&#8221; websites that publish pirated content. Consumers will still be able to reach websites not hosted in the U.S. (as most of them are) via their direct IP address, and site owners can always be a step ahead by registering new domain names if they choose to. Not to mention, the <a href="https://en.wikipedia.org/wiki/Streisand_effect">Streisand Effect</a> is likely to swing into action, further fueling the trend of people visiting rogue websites for pirated content. For example, it is trivial to write an <a href="https://addons.mozilla.org/en-US/firefox/addon/mafiaafire-redirector/">add-on for Firefox</a> and other browsers that would bypass the DNS &#8220;blacklisting&#8221; technique PIPA and SOPA propose to implement. There is no way that the MPAA, the U.S. Government, or any single entity for that matter, can stay on top of thousands of such work-arounds.</p>
<p>The <a href="https://www.google.com/landing/takeaction/">technology companies</a> and <a href="https://www.eff.org/deeplinks/2011/12/internet-inventors-warn-against-sopa-and-pipa">architects of the internet</a> have openly informed the MPAA about the fallacies of the bill (something that they couldn&#8217;t figure out for themselves); for the MPAA to expect any more &#8220;co-operation&#8221; from them is futile.</p>
<p>Nobody in their right mind has ever said that piracy is not a problem. However, the benefits that the Internet brings to humanity is far too much to let a private corporation endanger it just so it can continue to profit. In the long run, for any corporation to stay in business, it must adapt to evolving technology. Digital goods are just not the same as physical objects, <a href="http://ansuz.sooke.bc.ca/entry/23">bits have no colour</a>. The companies that realize this fundamental, unchangeable truth and try to capitalize on technology are the ones who will ultimately succeed, not the ones who try to fight it. In the physical realm, we don&#8217;t outlaw things that brings a lot more good to society even if you are able to do a few bad things with it (though increasingly governments seem to punish the masses in the name of fighting a few bad apples; which is also no doubt a very troubling phenomenon). I hope the MPAA will use its power and money to figure out how it can profit from technology in a way that preserves the founding principles of the internet, for its own sake, or it won&#8217;t be too long before someone who does replaces them.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/12ghosts.wordpress.com/1402/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/12ghosts.wordpress.com/1402/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kix.in&#038;blog=12909480&#038;post=1402&#038;subd=12ghosts&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://kix.in/2012/01/17/pipasopa-not-good-for-anybodys-health/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/07849b3424ed76e574037f8818829138?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">kix</media:title>
		</media:content>
	</item>
		<item>
		<title>Behind the Mozilla Apps Developer Preview</title>
		<link>http://kix.in/2011/12/15/behind-the-mozilla-apps-developer-preview/</link>
		<comments>http://kix.in/2011/12/15/behind-the-mozilla-apps-developer-preview/#comments</comments>
		<pubDate>Thu, 15 Dec 2011 21:30:04 +0000</pubDate>
		<dc:creator>Anant</dc:creator>
				<category><![CDATA[FOSS]]></category>
		<category><![CDATA[Mozilla]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://kix.in/?p=1346</guid>
		<description><![CDATA[On Tuesday, we launched a developer preview of the Mozilla Apps project, something I&#8217;ve been working on for the better part of the year. We released a suite of tools and documentation aimed at helping developers write, deploy and sell apps built using modern web technologies like HTML5, CSS and JavaScript. Many others have already [&#8230;]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kix.in&#038;blog=12909480&#038;post=1346&#038;subd=12ghosts&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p>On Tuesday, we launched a <a href="https://awesomeness.mozilla.org/pub/sf/FormLink?_ri_=X0Gzc2X%3DUQpglLjHJlTQTtQyTQ7c8QABQHAzeQGQ2Q8GJVXMtX%3DUQpglLjHJlTQTtQyTQ7c8QUKQHAzeQzgQaQzg9X&amp;_ei_=.">developer preview</a> of the <a href="https://apps.mozillalabs.com/">Mozilla Apps</a> project, something I&#8217;ve been working on for the better part of the year. We released a suite of tools and documentation aimed at helping developers write, deploy and sell apps built using modern web technologies like HTML5, CSS and JavaScript. Many others have already covered the question of <em>&#8220;why&#8221;</em> we are doing this: all the major app ecosystems out there are closed, tied to a single vendor, and could certainly use a healthy dose of the openness. There are many great things about Apps, and many great things about the Web, and we want to <a href="http://blog.lizardwrangler.com/2011/08/09/the-app-model-and-the-web/">bring them together</a>. [<strong>UPDATE</strong>: <a href="http://lists.w3.org/Archives/Public/public-webapps/2012JanMar/0464.html">Tim Berners-Lee agrees!</a>]</p>
<p>In this post, I want to cover the <em>&#8220;how&#8221;</em>. If you&#8217;re interested in writing apps, I would point you to the <a href="https://developer.mozilla.org/en/Apps">documentation</a> we have on how to build them. On the other hand, if you&#8217;re curious to learn about how the system works as a whole, read on! A lot of different pieces of technology had to come together to get where we are today.</p>
<h2>App Manifest</h2>
<p>A fundamental building block of the system is the app manifest. Every app in the system is represented by this JSON file, <a href="https://developer.mozilla.org/en/Apps/The_Manifest">documented here</a>, which essentially contains a set of metadata about your app: name, icons, localized descriptions and so on. This manifest file is hosted at the same domain as your app. An app is uniquely identified by the domain it is hosted at, and this manifest must be served off the very same domain (at any path), with the <tt>Content-Type</tt> header set to <tt>application/x-web-app-manifest+json</tt>. We&#8217;ve received a lot of feedback stating that this is limiting, but unfortunately almost every security knob in browsers is tuned to the domain of a given page. Because we anticipate that apps will, at some point, be able to request access to elevated privileges (to use the computer&#8217;s web camera, for example), we must restrict ourselves to one app per domain. Note that <tt>app1.example.org</tt> and <tt>app2.example.org</tt> are different domains but <tt>example.org/app1</tt> and <tt>example.org/app2</tt> are not.</p>
<p style="text-align:center;"><a href="http://12ghosts.files.wordpress.com/2011/12/manifest.png"><img class="aligncenter  wp-image-1384" title="App Manifest" src="http://12ghosts.files.wordpress.com/2011/12/manifest.png?w=576&#038;h=452" alt="App Manifest" width="576" height="452" /></a></p>
<p>There are many other specifications that express ideas similar to this concept of a manifest (W3C Widgets, Chrome Web Store, etc.), and we are definitely very keen to standardize the format.</p>
<h2>API: mozApps</h2>
<p>The next piece we introduce are a set of new DOM APIs, present under the <tt>navigator</tt> namespace. The API offers a few different functions, but the most important one is <tt>navigator.mozApps.install</tt>. This function allows a web page to initiate the &#8220;installation&#8221; process for an app, which is identified by the URL to its manifest (explained previously). Any page is able to invoke this function, so you can self-publish your apps! Just add an &#8220;Install&#8221; button to your site and call this function with the right arguments. The API also provides a function that can tell if your app is currently installed (<tt>amInstalled</tt>).</p>
<p>There is another set of APIs under the <tt>navigator.mozApps.mgmt</tt> namespace. These &#8220;management&#8221; functions are only available to certain privileged domains, and are able to query the DOM for a list of all apps the user has installed, launch any given one, and uninstall an app. This API is expected to be used only by web pages that the user has explicitly authorized as being able to manage their apps on their behalf. We call such web pages &#8220;Dashboards&#8221;, and we built a default one into the system (which I shall explain shortly).</p>
<p>The mozApps API is fully <a href="https://developer.mozilla.org/en/Apps/Apps_JavaScript_API">documented</a>, but you should note that as with any early DOM API (that we hope to standardize), it is subject to change. In fact, we&#8217;re already thinking about how we can further simplify the API and make it more standards-friendly. Join the discussion!</p>
<h2>HTML5 App Runtime</h2>
<p>Now, what actually happens when somebody calls a function described in the <em>mozApps</em> API? We&#8217;d like for users to be able to look for, install and launch apps from any standards-compliant browser without having to do anything special. So, we&#8217;ve built a fully in-content implementation of the <em>mozApps</em> API, provided by <em><a href="https://myapps.mozillalabs.com/jsapi/include.js">include.js</a> </em>that is served off the <em>myapps.mozillalabs.com</em> domain (the reason for that will become apparent when we discuss dashboards). Just include that JS file in any page that uses the <em>mozApps</em> API and you should be good to go! This applies to self-published apps as well as stores.</p>
<p>Now, whenever the install method from the <em>mozApps</em> API is invoked, the user is greeted with a dialog asking them to confirm if they&#8217;d like to install the app:</p>
<p><a href="http://12ghosts.files.wordpress.com/2011/12/html5.png"><img class="aligncenter" title="HTML5 App Runtime" src="http://12ghosts.files.wordpress.com/2011/12/html5.png?w=562&#038;h=390" alt="" width="562" height="390" /></a></p>
<h2>The Dashboard</h2>
<p>Let&#8217;s say the user confirms the installation, what next? After a set of sanity checks against the manifest of the app, it is officially installed into the users collection of apps, which we call a <em>repo</em>. A Dashboard is the piece of software that is responsible for letting the user manage their <em>repo</em>, by allowing them to launch and uninstall their apps. Recall that the <em>mozApps.mgmt</em> set of APIs allow a dashboard to do this, and currently the <a href="https://myapps.mozillalabs.com/"><em>myapps.mozillalabs.com</em></a> domain is white-listed. In the future we expect people to write dashboards (which is essentially an app to manage apps!) that users can authorize. When a user visits the default Mozilla Labs dashboard, they look at something like this:</p>
<p><img class="aligncenter" title="App Dashboard" src="https://addons.cdn.mozilla.net/img/uploads/previews/full/65/65680.png" alt="" width="554" height="392" /></p>
<p>We implemented a touch friendly dashboard that works on both mobile devices and the desktop, to let you re-arrange your app icons and organize them in pages. This part of the dashboard is implemented using the wonderful <a href="http://mozilla.github.com/icongrid/">icongrid</a> library, which you are more than welcome to re-use while writing your own dashboard!</p>
<p>Clicking on an icon will <em>launch</em> that app. What does launching mean? In the HTML5 app runtime, it means it will open up the app in a new browser tab. However, we&#8217;ve also been experimenting with how we can improve this experience, which we will discuss next.</p>
<h2>App Runtime for Firefox</h2>
<p>For Firefox users, we have the opportunity to provide enhancements to the whole app installation and launch process while we wait for the API to get standardized. We&#8217;ve written an <a href="https://addons.mozilla.org/en-US/firefox/addon/app-runtime/">add-on</a> that implements the <em>mozApps</em> API, which will override the <em>include.js </em>HTML5 runtime version (so stores are encouraged to continue including the include.js version to provide the most portable experience for their users). If you have this add-on installed and install an app from any page or store, you will be greeted with a doorhanger that asks you confirm if you really intend to install this app:</p>
<p><img class="aligncenter" title="App Runtime Doorhanger" src="https://addons.cdn.mozilla.net/img/uploads/previews/full/65/65681.png" alt="" width="588" height="414" /></p>
<p>Note that there&#8217;s an extra option in there that asks if you want to install the &#8220;native&#8221; app version or not. On Windows and Mac, this means that we will automatically generate a .EXE or .APP that wraps your web application into a shell that looks and feels like a real app! For example, on the Mac, we will create a menu bar and dock icon for you:</p>
<p><img class="aligncenter" title="Native App on Mac" src="https://addons.cdn.mozilla.net/img/uploads/previews/full/65/65682.png" alt="" width="560" height="399" /></p>
<p>Cool? Sounds pretty familiar to the <a href="https://mozillalabs.com/prism/">Prism</a> experiment, right?</p>
<p>In addition to this style of &#8220;native&#8221; launching, users can also use the dashboard from before as usual. Launching from the dashboard will open it in an <em>app tab</em>, a nifty little Firefox feature.</p>
<h2>App Runtime for Android</h2>
<p>An important feature of Apps written using web technologies is that they can work on a variety of different devices. We want users to be able to buy an app only once and use it not only on their desktop, but also on their tablets and phones. We&#8217;re going to start out with Android (iOS has its own set of tricky technical and policy problems to deal with), by introducing an App Runtime (codename &#8220;Soup&#8221;).</p>
<p>The App Runtime for Android is a native Android application that lets users install, launch and manage their apps just like on the desktop:</p>
<p style="text-align:center;"><a href="http://12ghosts.files.wordpress.com/2011/12/store.png"><img class="aligncenter" title="Android App Marketplace" src="http://12ghosts.files.wordpress.com/2011/12/store.png?w=384&#038;h=682" alt="Mozilla App Marketplace on Android" width="384" height="682" /></a></p>
<p>Installing an app on Android using Soup will create an icon in your home screen, tapping on it will launch the app using our embedded web runtime. Well built web applications can now look and feel just like native android apps!</p>
<p style="text-align:center;"><a href="http://12ghosts.files.wordpress.com/2011/12/roundball.png"><img class=" wp-image-1369 aligncenter" title="Roundball on Android" src="http://12ghosts.files.wordpress.com/2011/12/roundball.png?w=384&#038;h=682" alt="Roundball on Android" width="384" height="682" /></a></p>
<p>In addition, apps that you installed on the desktop can be automatically synchronized to your phone (and all your other devices) using our Sync functionality, which we will discuss next.</p>
<h2>Sync</h2>
<p>Users shouldn&#8217;t have to install apps on every device they own once they&#8217;ve purchased it. We&#8217;ve developed an AppSync solution for the HTML5 runtime, Firefox runtime as well as Android. In all three environments, you should be prompted to login with your <a href="https://browserid.org/">BrowserID </a>(Mozilla&#8217;s new federated &amp; distributed Identity system) when you visit the dashboard:</p>
<p><a href="http://12ghosts.files.wordpress.com/2011/12/login1.png"><img class="aligncenter  wp-image-1380" title="Login for AppSync" src="http://12ghosts.files.wordpress.com/2011/12/login1.png?w=576&#038;h=454" alt="Login for AppSync" width="576" height="454" /></a></p>
<p>Once you&#8217;ve logged into your dashboard, your apps from all your devices should start automatically synchronizing!</p>
<h2 style="text-align:left;">App Marketplace</h2>
<p>Search is a great tool for the web, and we expect that many users will discover apps using search engines. However, directories have their place and are an invaluable tool to create a community around apps. Mozilla has been running <a href="http://addons.mozilla.org/">addons.mozilla.org</a> (AMO) for a while now, an easy place to find, install and review add-ons for Firefox. We want to build a similar store for Apps, and as part of the developer preview, we launched <a href="http://apps-preview.mozilla.org/">apps-preview.mozilla.org</a>. This preview of our &#8220;app store&#8221; lets developers submit an app by telling us the link to their manifest (the process is very similar to how you submit an add-on for inclusion on AMO). Once the application is accepted into the store users can find, install, review and provide ratings for apps. This store uses the same <em>mozApps</em> install APIs we discussed earlier, and we expect that others will build their own stores. We want competition in the app store market too!</p>
<p>Supporting developers who want to sell apps is also important to us. We&#8217;re testing integration with Paypal as part of the developer preview, which will allow developers to sell apps across the world at various price tiers.</p>
<h2>Receipts</h2>
<p>How do we balance the need for developers to be able to charge for their apps, while allowing users to use an app they&#8217;ve already paid for across all their compatible devices? We&#8217;ve <a href="https://wiki.mozilla.org/Apps/WebApplicationReceipt">devised a receipt format</a> that helps achieve this. When a user completes the payment process on a given store, the store will generate a receipt of this format and pass it to the <em>mozApps</em> API as part of the <em>install data </em>provided to the <tt>install</tt> call. The implementation responsible for providing the API will stash the receipt along with the app itself (and all devices the app is synced to).</p>
<p>At launch time, the app can ask for the receipt associated with itself using the <tt>amInstalled</tt> API call, do an integrity check, and send it over the original store that issued the receipt. The store can then verify that the receipt is indeed valid and notify the app, at which point the app can decide whether to let the user run it or not. We&#8217;ve provided a utility function <tt>verifyReceipt</tt> to help the app developer do all of this.</p>
<p>Do note, however, that this whole scheme is merely intended to help developers who don&#8217;t want to setup their own payment systems. Developers are free to write apps that use their own (or 3rd party) payment or subscription services. You could, for example, sell your app for free on the AMO store, but ask users to login when the app is launched, or implement your own in-app purchasing system. We will do what we can to help, but in the end, you&#8217;re in full control of what your users see when they launch your apps!</p>
<h2>What&#8217;s next?</h2>
<p>This is just the beginning, we have a lot more work to do before we can realize a flourishing and open app ecosystem for the web. Here are just some of thing we have planned for the next few months:</p>
<ul>
<li>Building out a &#8220;Web Runtime&#8221;, or <a href="https://wiki.mozilla.org/Apps/WebRT">WebRT</a>. We&#8217;ve built an initial prototype of how such a runtime might work in the add-on for Firefox, and we want this to extend this to a more robust system with auto-updates and deeper OS integration.</li>
<li>Capabilities. In conjunction with the <a href="https://wiki.mozilla.org/WebAPI">WebAPI </a>project, we want to provide apps with more device APIs and capabilities than regular web pages, while giving the user an easy way to control and hand out permissions. This includes things like camera access, filesystem APIs and more.</li>
<li>Web Activities. A while ago we release a prototype of the apps extension that supported what we call <a href="https://mozillalabs.com/blog/2011/07/web-apps-update-experiments-in-web-activities-app-discovery/">web activities</a>, a way for apps to communicate with each other safely and easily. You could use this, for example, to upload a picture to a site from your favorite photo service, or to share a link from an app to all your friends using your favorite social network. The<a href="https://addons.mozilla.org/en-US/firefox/addon/firefox-share-alpha/"> Firefox Share add-on</a> already relies on web activities to do the latter.</li>
<li>Push sync &amp; notifications. We want users to be able to &#8220;push&#8221; apps to any of their devices directly from an app store.</li>
<li>Standardization. It is critical for the health of the web for all of these app related APIs to be standardized and supported by all interested parties.</li>
</ul>
<p>Most importantly, we want you to <a href="https://groups.google.com/group/mozilla-apps">get involved</a> and help us build!</p>
<h2>Show me the code</h2>
<p>I&#8217;ll end this post with a brief description of all the code behind the various pieces in hopes of attracting contributors <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  All of our code is hosted on Github and licensed under the MPL/GPL/LGPL tri-license.</p>
<p>The main repository for the Apps project can be <a href="https://github.com/mozilla/openwebapps">found here</a>. It contains the source code for the <a href="https://github.com/mozilla/openwebapps/tree/develop/site/jsapi">HTML5 App Runtime</a> (include.js and trusted.js are the important pieces), the <a href="https://github.com/mozilla/openwebapps/tree/develop/addons/jetpack">App Runtime for Firefox</a> and the <a href="https://github.com/mozilla/openwebapps/tree/develop/site">Dashboard</a> that is currently deployed on <a href="https://myapps.mozillalabs.com/">myapps.mozillalabs.com</a>. The Dashbaord was built using <a href="http://mozilla.github.com/icongrid/">IconGrid</a>, a JavaScript library to build touch friendly scrollable pages. The App Runtime for Firefox is written using the <a href="https://addons.mozilla.org/en-US/developers/builder">Add-on SDK</a> and shares a few common files with the HTML5 runtime (repo.js, urlparse.js, manifest.js and sync.js).</p>
<p>Source code for the Android App Runtime (codenamed &#8216;Soup&#8217;) can be <a href="https://github.com/mozilla/soup">found here</a>. It is a regular Android application written in Java with an embedded <a href="http://phonegap.com/">PhoneGap</a> instance to support the marketplace and app launching.</p>
<p>On the server side of things, <a href="https://github.com/mozilla/zamboni">Zamboni</a> is the code that powers <a href="https://addons.mozilla.org/">addons.mozilla.org</a>, and was extended to support <a href="https://apps-preview.mozilla.org">apps-preview.mozilla.org</a>. It is built on <a href="https://www.djangoproject.com/">Django</a>. The <a href="https://github.com/mozilla/appsync">AppSync </a>server is also written in Python (using <a href="https://github.com/mozilla-services/cornice">Cornice</a>) and is what powers app synchronization across all three runtimes (HTML5, Firefox and Android). The AppSync server in turn talks to <a href="https://github.com/mozilla/sauropod">Sauropod</a>, written in node.js and backed by <a href="https://hbase.apache.org/">HBase</a>. Sauropod is a Mozilla Labs experiment aimed at building a <a href="https://wiki.mozilla.org/Sauropod">secure storage system</a> for user data. Tarek Ziadé has a more <a href="https://tarekziade.wordpress.com/2011/12/14/mozilla-apps-server-side/">comprehensive overview</a> of how all the server side pieces fit together, which you should go read!</p>
<p style="text-align:center;"><a href="http://12ghosts.files.wordpress.com/2011/12/chart1.png"><img class="wp-image-1389 aligncenter" title="Apps Overview" src="http://12ghosts.files.wordpress.com/2011/12/chart1.png?w=576&#038;h=282" alt="" width="576" height="282" /></a></p>
<p>Don&#8217;t hesitate to participate and ask questions on our <a href="https://groups.google.com/group/mozilla.dev.webapps/topics?pli=1">mailing list</a>. We encourage you to play around with the system and file any bugs that you may find <a href="https://bugzilla.mozilla.org/enter_bug.cgi?product=Web%20Apps">here</a>. Together, we can make an open, healthy app ecosystem for the web a reality. We look forward to hearing from you!</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/12ghosts.wordpress.com/1346/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/12ghosts.wordpress.com/1346/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kix.in&#038;blog=12909480&#038;post=1346&#038;subd=12ghosts&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://kix.in/2011/12/15/behind-the-mozilla-apps-developer-preview/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/07849b3424ed76e574037f8818829138?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">kix</media:title>
		</media:content>

		<media:content url="http://12ghosts.files.wordpress.com/2011/12/manifest.png" medium="image">
			<media:title type="html">App Manifest</media:title>
		</media:content>

		<media:content url="http://12ghosts.files.wordpress.com/2011/12/html5.png" medium="image">
			<media:title type="html">HTML5 App Runtime</media:title>
		</media:content>

		<media:content url="https://addons.cdn.mozilla.net/img/uploads/previews/full/65/65680.png" medium="image">
			<media:title type="html">App Dashboard</media:title>
		</media:content>

		<media:content url="https://addons.cdn.mozilla.net/img/uploads/previews/full/65/65681.png" medium="image">
			<media:title type="html">App Runtime Doorhanger</media:title>
		</media:content>

		<media:content url="https://addons.cdn.mozilla.net/img/uploads/previews/full/65/65682.png" medium="image">
			<media:title type="html">Native App on Mac</media:title>
		</media:content>

		<media:content url="http://12ghosts.files.wordpress.com/2011/12/store.png" medium="image">
			<media:title type="html">Android App Marketplace</media:title>
		</media:content>

		<media:content url="http://12ghosts.files.wordpress.com/2011/12/roundball.png" medium="image">
			<media:title type="html">Roundball on Android</media:title>
		</media:content>

		<media:content url="http://12ghosts.files.wordpress.com/2011/12/login1.png" medium="image">
			<media:title type="html">Login for AppSync</media:title>
		</media:content>

		<media:content url="http://12ghosts.files.wordpress.com/2011/12/chart1.png" medium="image">
			<media:title type="html">Apps Overview</media:title>
		</media:content>
	</item>
		<item>
		<title>Why should you encrypt user data?</title>
		<link>http://kix.in/2011/08/02/why-should-you-encrypt-user-data/</link>
		<comments>http://kix.in/2011/08/02/why-should-you-encrypt-user-data/#comments</comments>
		<pubDate>Tue, 02 Aug 2011 23:34:44 +0000</pubDate>
		<dc:creator>Anant</dc:creator>
				<category><![CDATA[Mozilla]]></category>
		<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://kix.in/?p=1290</guid>
		<description><![CDATA[One of the things I like most about Firefox Sync is that all my browsing data is encrypted before anything leaves my computer. This wasn&#8217;t easy to do, there is a ton of engineering effort involved in scaling servers, maintaining all the crypto code for the client, and most of all, in making the experience [&#8230;]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kix.in&#038;blog=12909480&#038;post=1290&#038;subd=12ghosts&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p>One of the things I like most about <a href="https://www.mozilla.com/en-US/mobile/sync/">Firefox Sync</a> is that all my browsing data is <a href="http://kix.in/2009/10/11/how-does-weave-use-cryptography/">encrypted</a> before anything leaves my computer. This wasn&#8217;t easy to do, there is a <strong>ton</strong> of engineering effort involved in scaling servers, maintaining all the crypto code for the client, and most of all, in making the experience smooth and inclusive of all types of users. The last one is especially hard since average users find it hard to grok the concept of two passwords (one that the server knows and another that only they know, which means if they lose or forget the latter we really can&#8217;t help them). I can&#8217;t think of any major services out there that offer the same feature (it is clear now that Dropbox does not encrypt user data in an irrecoverable manner <strong>EDIT</strong>: Peter points out in the comments that Chrome does allow you to <a href="https://www.google.com/support/chrome/bin/answer.py?answer=1181035&amp;hl=en-US">encrypt your passwords</a>), and for good reason: it is damn hard to pull off. All the more reason to be very proud of the Mozilla Services team.</p>
<p>The question of why we should bother doing all this has come up now and then. Users readily trust a lot of services with their personal data. Google could read your email if they wanted to, but they have a reputation to maintain and therefore have strict internal policies on who has access to what. Every other service that allows access to your data via a web interface operates in the same way. Surely, Mozilla is just as <a href="https://www.mozilla.org/about/">trustworthy, (if not more)</a> than all of them. Why not get rid of client-side encryption to make the user experience really awesome and save many valuable hours of engineering and operations effort?</p>
<p>Additionally, if programs on the server-side (not humans) had access to unencrypted browser data, there are many more interesting services one could offer. If these services are compelling enough, until <a href="http://research.microsoft.com/apps/pubs/default.aspx?id=148825">homomorphic encryption</a> becomes usable commercially, they are a good argument for why you may not want to encrypt user data in a way that not even the server can read it. However, doing this also has some drawbacks&#8230;</p>
<blockquote class='twitter-tweet tw-align-center' lang='en'><p>between PSN and Dropbox, lots of reminders about why Firefox Sync feels like the solution we want to provide</p>&mdash; <br />Mike Connor (@mconnor) <a href='http://twitter.com/#!/mconnor/status/63094507889106944' data-datetime='2011-04-27T04:17:57+00:00'>April 27, 2011</a></blockquote>
<p>Running production-quality servers is no walk in the park. There are so many ways in which a small misconfiguration can open up your service to all sorts of attacks. But what makes it even harder is a 0-day exploit in the web/application server you happen to be using, because then you have to wait for upstream to fix it. And then you have to make a judgement call, do you take your service down until a fix is released? Many would blame Sony&#8217;s technical &#8220;incompetence&#8221; for the <a href="http://arstechnica.com/gaming/news/2011/04/sony-admits-utter-psn-failure-your-personal-data-has-been-stolen.ars">PSN data leaks</a>, but the fact remains that servers are run by humans, and<em> humans make mistakes</em>.</p>
<p>Keeping the user&#8217;s data encrypted provides everyone with an extra layer of protection. Not from the folks running the service, users probably already trust them, but from everyone else. And that doesn&#8217;t just include groups like Lulzsec or Anonymous.</p>
<p>Unfortunately, whether we like it or not, it is ridiculously easy for the government to strong-arm a technology company (especially one that isn&#8217;t giant enough to generate press) into releasing data for individuals, even for frivolous reasons. There has certainly been a lot of precedent for these kinds of &#8220;requests&#8221; from the government, and not all companies (Twitter, most famously) respond to them with user data, but that is harder to do for companies that don&#8217;t have that much money to spend on lawyers. In the real world, there are laws that require the government to obtain a search warrant before they are able to gain access to your physical belongings, and until we have the equivalent of a search warrant for an individual&#8217;s digital data; encryption provides a fine compromise.</p>
<p>If you can make your application work entirely client-side, using the cloud merely as a storage mechanism, you should. It&#8217;s worth the extra week you put into working out the crypto. JS is rapidly becoming fast enough to do a lot client-side, and with things like <a href="http://mozilla.ddahl.com/domcrypt/demos/demo.html">DOMCrypt</a>, this realm is poised to get better with time.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/12ghosts.wordpress.com/1290/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/12ghosts.wordpress.com/1290/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kix.in&#038;blog=12909480&#038;post=1290&#038;subd=12ghosts&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://kix.in/2011/08/02/why-should-you-encrypt-user-data/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/07849b3424ed76e574037f8818829138?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">kix</media:title>
		</media:content>
	</item>
		<item>
		<title>Apps</title>
		<link>http://kix.in/2011/03/04/apps/</link>
		<comments>http://kix.in/2011/03/04/apps/#comments</comments>
		<pubDate>Fri, 04 Mar 2011 07:08:47 +0000</pubDate>
		<dc:creator>Anant</dc:creator>
				<category><![CDATA[FOSS]]></category>
		<category><![CDATA[Mozilla]]></category>
		<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://kix.in/?p=842</guid>
		<description><![CDATA[The word of the year in 2010 was &#8220;app&#8221;. Everyone is talking about it now, but both you and me have been using apps ever since we first used a personal computer. What has changed is the prevalence of mobile devices that are particularly good at doing at one thing at a time. The desktop [&#8230;]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kix.in&#038;blog=12909480&#038;post=842&#038;subd=12ghosts&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p>The <a href="http://www.post-gazette.com/pg/11008/1116515-51.stm">word of the year</a> in 2010 was &#8220;app&#8221;. Everyone is talking about it now, but both you and me have been using apps ever since we first used a personal computer. What has changed is the prevalence of mobile devices that are particularly good at doing at one thing at a time. The desktop computer (or laptop) on the other hand, has evolved from being able to do only one thing at a time to the multitasking beast it is today. Yet, the fact remains that as humans <a href="http://www.azarask.in/blog/post/you-cant-multitask/">we can&#8217;t really multitask</a>, though we can fake it by doing really fast context switching (just like a computer!). I think this is the main reason behind why apps are so successful on mobile devices.</p>
<p>Apple, as usual, knocked it out of the park with their mobile app  store. And since then we&#8217;ve seen a landslide of app stores open up on several different platforms with varying degrees of success. Linux has had &#8216;package  managers&#8217; for more than a decade, there are even some with fancy  GUI front-ends that many consider to be an app store. But they lack the  (semi-)curated nature of Apple&#8217;s store, and not to mention shiny icons. Users like the shiny stuff.  No doubt, apps are here to stay.</p>
<h2>The role of Statefulness</h2>
<p>As a result, we’ve been thinking a lot about how this model translates to the  web. It used to be that the web was just a very large collection of (mostly) static pages. Large parts of the web still are (eg.  Wikipedia), but we also observe another breed of content on the web that  is highly personalized (eg. Facebook). This changes the nature of  something fundamental about the web, and what a hyperlink means. A decade ago, when you linked to a web page you expected the recipient to  see more or less what you saw; but today that may not be true. In many cases the recipient will experience a &#8216;personalized&#8217; version of the same  content, and in cases like Gmail, hyperlinks don’t even make sense  because the entire website is for your consumption only.</p>
<p>The web is now more stateful than ever (even though the underlying protocols haven&#8217;t changed to reflect this &#8211; but that is a topic for another blog post) and I think web apps are a great way to capture the essence of such stateful websites. I certainly recognize that traditional web pages aren&#8217;t going anywhere; but that the web has simply evolved to serve several different use-cases. There are times when all I want to do is just read an article, watch a video or post an anonymous comment (haven&#8217;t we all done that!). But, a lot of the time I am using the web in a very personal way and apps are a great way for me encapsulate that activity.</p>
<h2>Open Web Applications</h2>
<p>Today, we made an <a href="http://mozillalabs.com/blog/2011/03/first-developer-release-of-web-apps-project/">integration release</a> of the <a href="http://apps.mozillalabs.com/">Open Web Applications project</a>; which, in its most basic form, is a culmination of our answer to the question: &#8220;What is a open web app?&#8221;. We define the term as <em>applications that run on any device, and can be distributed through any store or directly by the developer</em>. But that is just the tip of the iceberg &#8212; formulating a way for web applications to present themselves to the user agent is just the first step. Here are a few ideas on what we think might have great impact on the ways in which users interact with web content:</p>
<ul>
<li><strong>Dynamic service discovery</strong>: Web applications should be able register themselves with the browser as being able to provide one or more services, which, after authorization by the user, could be used by another web application. In this scheme, the browser plays the role of the mediator between two web applications and the user; providing a greater level of flexibility and modularity in the flow of user data than the web has ever seen. <a href="http://open-mike.org/">Mike Hanson</a> has <a href="http://www.open-mike.org/entry/using-web-applications-for-service-discovery">discussed this idea</a> in detail before, and you should read that blog post to understand the why and the how.</li>
<li><strong>Deeper OS integration</strong>: HTML, JavaScript and CSS have proven to be versatile technologies that so many developers have been using to do <a href="https://demos.mozilla.org/en-US/">amazing things</a> with. There is no reason for these technologies to not be the preferred choice for application developers to bring content to users on a variety of platforms, both on desktop and mobile. Web applications are poised to be treated as first class applications by operating systems. The ability to register Pandora as my default music player and use keyboard shortcuts as usual to control it even while it is in the background is something I really want. Dare I say that this is the return of &#8216;write once, run everywhere&#8217;? <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  <a href="https://apps.mozillalabs.com/gallery/">The UI concept gallery</a> from the integration release discusses some of these aspects.</li>
<li><strong>Wherever you go, the web follows</strong>: <a href="https://www.mozilla.com/en-US/mobile/sync/">Firefox Sync</a> allows you to carry your browser data with you, but we can extend this even further by synchronizing application state. The web application framework provides a great way for developers to specify what the best user experience for someone using their application across multiple devices in succession should be. This reminds me of the old Hutch ads (a mobile network in India, now Vodafone); where the web is your <a href="http://www.youtube.com/watch?v=7zqO8mQXCO4">metaphorical pug</a> that <a href="http://www.youtube.com/watch?v=vqsjXh5yNLQ">follows you</a> wherever you go <img src='http://s1.wp.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </li>
</ul>
<p>These are just some of the ideas that we&#8217;ve come up with so far, and I am sure there are many possibilities we haven&#8217;t even thought of yet. If you are considering writing an application and are targeting multiple environments (say, Mac, Windows, Linux, the iOS and Android based devices), we think web technologies make a very compelling choice. We would <a href="https://groups.google.com/group/mozilla-labs">love to know</a> what Mozilla can do make the &#8216;app experience&#8217; much richer for both users and developers!</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/12ghosts.wordpress.com/842/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/12ghosts.wordpress.com/842/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kix.in&#038;blog=12909480&#038;post=842&#038;subd=12ghosts&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://kix.in/2011/03/04/apps/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/07849b3424ed76e574037f8818829138?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">kix</media:title>
		</media:content>
	</item>
		<item>
		<title>My third first week at Mozilla</title>
		<link>http://kix.in/2010/10/12/my-third-first-week-at-mozilla/</link>
		<comments>http://kix.in/2010/10/12/my-third-first-week-at-mozilla/#comments</comments>
		<pubDate>Tue, 12 Oct 2010 06:59:44 +0000</pubDate>
		<dc:creator>Anant</dc:creator>
				<category><![CDATA[FOSS]]></category>
		<category><![CDATA[Life]]></category>
		<category><![CDATA[Mozilla]]></category>
		<category><![CDATA[People]]></category>

		<guid isPermaLink="false">http://kix.in/?p=726</guid>
		<description><![CDATA[After two years of juggling graduate school and Mozilla, I finally joined Labs last week to work on amazing projects full-time! Couldn&#8217;t have asked for a better transition to the &#8220;real world&#8221; I&#8217;m very excited, and I think it&#8217;s a great sign that on my first day of work I could start hacking right away. [&#8230;]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kix.in&#038;blog=12909480&#038;post=726&#038;subd=12ghosts&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p>After two years of juggling graduate school and Mozilla, I finally joined <a href="http://mozillalabs.com/">Labs</a> last week to work on amazing projects full-time! Couldn&#8217;t have asked for a better transition to the &#8220;real world&#8221; <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>I&#8217;m very excited, and I think it&#8217;s a great sign that on my first day of work I could start hacking right away. I&#8217;m indeed very fortunate to be working with some of the most brilliant people I&#8217;ve ever met; on a very meaningful mission of building an open web for the public benefit through innovation.</p>
<p>Stay tuned for more! Oh, and, have you installed the Firefox beta on your <a href="http://www.mozilla.com/en-US/m/beta">Android/Maemo</a> device yet?</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/12ghosts.wordpress.com/726/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/12ghosts.wordpress.com/726/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kix.in&#038;blog=12909480&#038;post=726&#038;subd=12ghosts&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://kix.in/2010/10/12/my-third-first-week-at-mozilla/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/07849b3424ed76e574037f8818829138?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">kix</media:title>
		</media:content>
	</item>
	</channel>
</rss>