<?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</title>
	<atom:link href="http://kix.in/feed/" rel="self" type="application/rss+xml" />
	<link>http://kix.in</link>
	<description>Anant Narayanan</description>
	<lastBuildDate>Mon, 07 May 2012 18:58:31 +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</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>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 [...]<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="size-full 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=550&#038;h=309" alt="" width="550" height="309" /></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=550&#038;h=309" alt="" width="550" height="309" /></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 size-full wp-image-1457" title="Mozilla Marketplace" src="http://12ghosts.files.wordpress.com/2012/03/2012-02-29_08-44-00_134.jpg?w=550&#038;h=309" alt="" width="550" height="309" /></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.</p>
<p>We showcased some of our awesome partner apps that have already 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 size-full wp-image-1458" title="Firefox on Android" src="http://12ghosts.files.wordpress.com/2012/03/2012-02-29_08-44-23_429.jpg?w=550&#038;h=309" alt="" width="550" height="309" /></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> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/12ghosts.wordpress.com/1440/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/12ghosts.wordpress.com/1440/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/12ghosts.wordpress.com/1440/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/12ghosts.wordpress.com/1440/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/12ghosts.wordpress.com/1440/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/12ghosts.wordpress.com/1440/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/12ghosts.wordpress.com/1440/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/12ghosts.wordpress.com/1440/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/12ghosts.wordpress.com/1440/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/12ghosts.wordpress.com/1440/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/12ghosts.wordpress.com/1440/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/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 [...]<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> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/12ghosts.wordpress.com/1402/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/12ghosts.wordpress.com/1402/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/12ghosts.wordpress.com/1402/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/12ghosts.wordpress.com/1402/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/12ghosts.wordpress.com/1402/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/12ghosts.wordpress.com/1402/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/12ghosts.wordpress.com/1402/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/12ghosts.wordpress.com/1402/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/12ghosts.wordpress.com/1402/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/12ghosts.wordpress.com/1402/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/12ghosts.wordpress.com/1402/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/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 [...]<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://static-cdn.addons.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://static-cdn.addons.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://static-cdn.addons.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> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/12ghosts.wordpress.com/1346/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/12ghosts.wordpress.com/1346/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/12ghosts.wordpress.com/1346/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/12ghosts.wordpress.com/1346/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/12ghosts.wordpress.com/1346/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/12ghosts.wordpress.com/1346/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/12ghosts.wordpress.com/1346/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/12ghosts.wordpress.com/1346/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/12ghosts.wordpress.com/1346/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/12ghosts.wordpress.com/1346/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/12ghosts.wordpress.com/1346/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/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://static-cdn.addons.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://static-cdn.addons.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://static-cdn.addons.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>11/11/11</title>
		<link>http://kix.in/2011/11/11/111111/</link>
		<comments>http://kix.in/2011/11/11/111111/#comments</comments>
		<pubDate>Fri, 11 Nov 2011 19:13:15 +0000</pubDate>
		<dc:creator>Anant</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://kix.in/?p=1342</guid>
		<description><![CDATA[Given I haven&#8217;t updated my blog in a while, I thought I&#8217;d take this rare opportunity to chronicle a special, once-in-a-century repunit palindrome day. Folks in 2111 will have us beat though with two consecutive palindrome days, 11/11/11 and 11/12/2111!<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kix.in&#038;blog=12909480&#038;post=1342&#038;subd=12ghosts&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Given I haven&#8217;t updated my blog in a while, I thought I&#8217;d take this rare opportunity to chronicle a special, once-in-a-century repunit palindrome day.</p>
<p>Folks in 2111 will have us beat though with two consecutive palindrome days, 11/11/11 and 11/12/2111!</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/12ghosts.wordpress.com/1342/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/12ghosts.wordpress.com/1342/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/12ghosts.wordpress.com/1342/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/12ghosts.wordpress.com/1342/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/12ghosts.wordpress.com/1342/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/12ghosts.wordpress.com/1342/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/12ghosts.wordpress.com/1342/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/12ghosts.wordpress.com/1342/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/12ghosts.wordpress.com/1342/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/12ghosts.wordpress.com/1342/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/12ghosts.wordpress.com/1342/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/12ghosts.wordpress.com/1342/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/12ghosts.wordpress.com/1342/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/12ghosts.wordpress.com/1342/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kix.in&#038;blog=12909480&#038;post=1342&#038;subd=12ghosts&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://kix.in/2011/11/11/111111/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>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 [...]<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> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/12ghosts.wordpress.com/1290/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/12ghosts.wordpress.com/1290/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/12ghosts.wordpress.com/1290/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/12ghosts.wordpress.com/1290/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/12ghosts.wordpress.com/1290/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/12ghosts.wordpress.com/1290/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/12ghosts.wordpress.com/1290/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/12ghosts.wordpress.com/1290/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/12ghosts.wordpress.com/1290/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/12ghosts.wordpress.com/1290/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/12ghosts.wordpress.com/1290/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/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 [...]<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> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/12ghosts.wordpress.com/842/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/12ghosts.wordpress.com/842/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/12ghosts.wordpress.com/842/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/12ghosts.wordpress.com/842/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/12ghosts.wordpress.com/842/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/12ghosts.wordpress.com/842/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/12ghosts.wordpress.com/842/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/12ghosts.wordpress.com/842/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/12ghosts.wordpress.com/842/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/12ghosts.wordpress.com/842/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/12ghosts.wordpress.com/842/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/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>Project Assemble</title>
		<link>http://kix.in/2011/02/02/project-assemble/</link>
		<comments>http://kix.in/2011/02/02/project-assemble/#comments</comments>
		<pubDate>Wed, 02 Feb 2011 05:37:50 +0000</pubDate>
		<dc:creator>Anant</dc:creator>
				<category><![CDATA[Fun]]></category>
		<category><![CDATA[Hacks]]></category>
		<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://kix.in/?p=738</guid>
		<description><![CDATA[Ever since I participated in the first Summer of Code 4 years ago, I&#8217;ve been using Macs almost exclusively.  I really enjoy using them &#8211; they&#8217;re great machines for developers, and the amazing virtualization options make them practically the only development computer you&#8217;ll ever need. However, I felt like I was drifting too far away [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kix.in&#038;blog=12909480&#038;post=738&#038;subd=12ghosts&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Ever since I participated in the first <a href="https://code.google.com/soc/">Summer of Code</a> 4 years ago, I&#8217;ve been using Macs almost exclusively.  I really enjoy using them &#8211; they&#8217;re great machines for developers, and the amazing virtualization options make them practically the only development computer you&#8217;ll ever need.</p>
<p>However, I felt like I was drifting too far away from what the majority of computer users operate on, even today. Not to mention, my roots are back in the Linux world, and in the back of my mind I&#8217;ve always wanted to switch back to a &#8220;PC&#8221; (the term in quotes, because Macs are PCs too!). I had heard great things about how much better Windows 7 and Ubuntu are than their predecessors, so I decided to take the plunge.</p>
<p>For work, I settled on a trusty, hardy <a href="http://www.amazon.com/gp/product/B0044SSRVI?ie=UTF8&amp;tag=k006-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=B0044SSRVI">Lenovo Thinkpad</a><img class=" ocfrvwsakgenzrrhjqbq" style="border:none!important;margin:0!important;" src="http://www.assoc-amazon.com/e/ir?t=k006-20&amp;l=as2&amp;o=1&amp;a=B0044SSRVI" alt="" width="1" height="1" border="0" />. The new x201s have great battery life, portability and power. I&#8217;ve really been enjoying dual booting Windows 7 and Ubuntu 10.10 on it.</p>
<p>When it came to my home computer, I wanted to get one of those beautiful 27&#8243; iMacs. However, Starcraft2 happened to release around the same time, and I found myself questioning the value of a computer that could not run it in ultra graphics mode. For the same price as the iMac, I was pleasantly surprised to learn that I could hand assemble a computer with most components near the cutting-edge. Awesome!</p>
<h2>Ingredients</h2>
<p>So I got to work. It is very convenient to order all the parts you need for a computer on Amazon. Let&#8217;s go through what you need:</p>
<ul>
<li><strong>CPU</strong>: Processor manufacturers have already hit the ceiling for how many transistors they can pack per square-inch, but now the race is towards how many separate &#8216;cores&#8217; are available. Most software don&#8217;t even bother using more than one core, so the quad-core CPUs from either Intel or AMD should be more than sufficient for the next few years: I opted to go for the <a href="http://www.amazon.com/gp/product/B002A6G3V2?ie=UTF8&amp;tag=k006-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=B002A6G3V2">Intel Core i7 950 3.06GHz</a><img class=" ocfrvwsakgenzrrhjqbq" style="border:none!important;margin:0!important;" src="http://www.assoc-amazon.com/e/ir?t=k006-20&amp;l=as2&amp;o=1&amp;a=B002A6G3V2" alt="" width="1" height="1" border="0" />. You&#8217;ll want to note the socket type of the CPU and make sure you get a compatible motherboard (the i7 CPUs fit into LGA-1366 sockets).</li>
<p></p>
<li><strong>Motherboard</strong>: Pretty standard choices these days, the differentiating factors are usually overclocking support, USB 3.0 &amp; SATA 6gb/s throughput, and the number of PCIe slots. You&#8217;ll want to make sure to get a motherboard that matches the socket type of your CPU. I opted to get the <a href="http://www.amazon.com/gp/product/B002WSHXQ2?ie=UTF8&amp;tag=k006-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=B002WSHXQ2">ASUS P6X58D Premium</a><img class=" ocfrvwsakgenzrrhjqbq" style="border:none!important;margin:0!important;" src="http://www.assoc-amazon.com/e/ir?t=k006-20&amp;l=as2&amp;o=1&amp;a=B002WSHXQ2" alt="" width="1" height="1" border="0" />.</li>
<p></p>
<li><strong>RAM</strong>: 32k may have been enough in the past, but you want to make sure you have atleast 4GB to stay competitive today <img src='http://s1.wp.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' />  DDR3 is pretty much the faster consumer memory you can get in the market. I&#8217;ve heard that 1600Mhz is the sweet spot for i7 processors, going any faster won&#8217;t give you any significant performance boosts. I got a handy pack of 3 x 2gb sticks: <a href="http://www.amazon.com/gp/product/B003BYRLE0?ie=UTF8&amp;tag=k006-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=B003BYRLE0">Corsair Dominator 6 GB 1600MHz</a><img class=" ocfrvwsakgenzrrhjqbq" style="border:none!important;margin:0!important;" src="http://www.assoc-amazon.com/e/ir?t=k006-20&amp;l=as2&amp;o=1&amp;a=B003BYRLE0" alt="" width="1" height="1" border="0" />.</li>
<p></p>
<li><strong>Graphics Card</strong>: It&#8217;s what puts pretty pixels on the screen; if you&#8217;re a gamer or design professional you&#8217;ll want to go all-out. I think having two cards in SLi (nVidia cards) or Crossfire (ATi cards) is much more efficient than getting a single very high-end card. Before you get two cards, make sure your motherboard supports the configuration and keep in mind that you can only link identical graphic cards. I chose to get two of the <a href="http://www.amazon.com/gp/product/B003UUEOPE?ie=UTF8&amp;tag=k006-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=B003UUEOPE">Gigabyte GeForce GTX460 1GB</a><img class=" ocfrvwsakgenzrrhjqbq" style="border:none!important;margin:0!important;" src="http://www.assoc-amazon.com/e/ir?t=k006-20&amp;l=as2&amp;o=1&amp;a=B003UUEOPE" alt="" width="1" height="1" border="0" /> cards.</li>
<p></p>
<li><strong>Power Supply</strong>: You get power supplies ranging typically from 400W to 1000W and you&#8217;ll want to choose one that keeps up with your hungry processor and graphics card, while still being economical. I got the <a href="http://www.amazon.com/gp/product/B003BYRLE0?ie=UTF8&amp;tag=k006-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=B003BYRLE0">Corsair CMPSU-850TX 850-Watt</a><img class=" ocfrvwsakgenzrrhjqbq" style="border:none!important;margin:0!important;" src="http://www.assoc-amazon.com/e/ir?t=k006-20&amp;l=as2&amp;o=1&amp;a=B003BYRLE0" alt="" width="1" height="1" border="0" /> to fuel the two GTX460s and to give me a little room for expansion in the future.</li>
<p></p>
<li><strong>Hard Drive</strong>: Solid state drives are catching on and becoming less expensive everyday. The performance boost is phenomenal, and I would highly recommend getting one for your boot drive. I got the <a href="http://www.amazon.com/gp/product/B0039SM0AS?ie=UTF8&amp;tag=k006-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=B0039SM0AS">Crucial Technology 128 GB RealSSD C300</a><img class=" ocfrvwsakgenzrrhjqbq" style="border:none!important;margin:0!important;" src="http://www.assoc-amazon.com/e/ir?t=k006-20&amp;l=as2&amp;o=1&amp;a=B0039SM0AS" alt="" width="1" height="1" border="0" /> because Crucial has been getting great reviews of late. You&#8217;ll still want a much larger regular spin disk, however, to store your movies, music and photos (the 128GB should be used only for your OS and frequently used applications). The <a href="http://www.amazon.com/gp/product/B0036Q7MV0?ie=UTF8&amp;tag=k006-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=B0036Q7MV0">Western Digital Caviar Black 1TB</a><img class=" ocfrvwsakgenzrrhjqbq" style="border:none!important;margin:0!important;" src="http://www.assoc-amazon.com/e/ir?t=k006-20&amp;l=as2&amp;o=1&amp;a=B0036Q7MV0" alt="" width="1" height="1" border="0" /> hard drive is a solid choice.</li>
<p></p>
<li><strong>Tower</strong>: Finally, you need a case to put all of these parts in! While choosing a tower there are two sizes you need to consider: the ATX size which specifies the largest motherboard the case can accommodate, and the tower size itself which defined how much room for expansion drives, cards and ventilation there is. I got the <a href="http://www.amazon.com/gp/product/B001EPUQAE?ie=UTF8&amp;tag=k006-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=B001EPUQAE">Cooler Master HAF932 ATX Full Tower</a><img class=" ocfrvwsakgenzrrhjqbq" style="border:none!important;margin:0!important;" src="http://www.assoc-amazon.com/e/ir?t=k006-20&amp;l=as2&amp;o=1&amp;a=B001EPUQAE" alt="" width="1" height="1" border="0" />.</li>
<p></p>
<li><strong>Keyboard, Mouse, Monitor, Optical Drive</strong>: These are all essential components of a computer but there really isn&#8217;t much to it. It&#8217;s mostly a matter of personal preferences. Just look around and pick one you are comfortable with. My choices were: <a href="http://www.amazon.com/gp/product/B000YDIA78?ie=UTF8&amp;tag=k006-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=B000YDIA78">Razer Lycosa Programmable Backlit Gaming Keyboard</a><img class=" ocfrvwsakgenzrrhjqbq" style="border:none!important;margin:0!important;" src="http://www.assoc-amazon.com/e/ir?t=k006-20&amp;l=as2&amp;o=1&amp;a=B000YDIA78" alt="" width="1" height="1" border="0" />, <a href="http://www.amazon.com/gp/product/B001WAKR3W?ie=UTF8&amp;tag=k006-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=B001WAKR3W">Razer Mamba Wireless Gaming Laser Mouse</a><img class=" ocfrvwsakgenzrrhjqbq" style="border:none!important;margin:0!important;" src="http://www.assoc-amazon.com/e/ir?t=k006-20&amp;l=as2&amp;o=1&amp;a=B001WAKR3W" alt="" width="1" height="1" border="0" />, <a href="http://www.amazon.com/gp/product/B002MT6SDU?ie=UTF8&amp;tag=k006-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=B002MT6SDU">HP 2509m 25-Inch Diagonal Full HD LCD Monitor</a><img class=" ocfrvwsakgenzrrhjqbq" style="border:none!important;margin:0!important;" src="http://www.assoc-amazon.com/e/ir?t=k006-20&amp;l=as2&amp;o=1&amp;a=B002MT6SDU" alt="" width="1" height="1" border="0" /> and <a href="http://www.amazon.com/gp/product/B0032XJDJ6?ie=UTF8&amp;tag=k006-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=B0032XJDJ6">Samsung Blu-Ray Internal SATA Drive with Lightscribe</a><img class=" ocfrvwsakgenzrrhjqbq" style="border:none!important;margin:0!important;" src="http://www.assoc-amazon.com/e/ir?t=k006-20&amp;l=as2&amp;o=1&amp;a=B0032XJDJ6" alt="" width="1" height="1" border="0" />.</li>
</ul>
<p>You do need a couple more things before you can being assembling your computer. A <a href="http://www.amazon.com/gp/product/B000EDMPQK?ie=UTF8&amp;tag=k006-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=B000EDMPQK">grounding wrist strap</a><img class=" ocfrvwsakgenzrrhjqbq" style="border:none!important;margin:0!important;" src="http://www.assoc-amazon.com/e/ir?t=k006-20&amp;l=as2&amp;o=1&amp;a=B000EDMPQK" alt="" width="1" height="1" border="0" /> and a <a href="http://www.amazon.com/gp/product/B00004Z5VS?ie=UTF8&amp;tag=k006-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=B00004Z5VS">toolkit</a><img class=" ocfrvwsakgenzrrhjqbq" style="border:none!important;margin:0!important;" src="http://www.assoc-amazon.com/e/ir?t=k006-20&amp;l=as2&amp;o=1&amp;a=B00004Z5VS" alt="" width="1" height="1" border="0" /> are highly recommended. Setup a nice hard, flat surface to work on.</p>
<h2>Recipe</h2>
<ol>
<li>The first thing you&#8217;ll want to do is to mount your CPU on your motherboard. For the LGA1366 this was as simple as gently placing the CPU over the socket to match the nudge and then pulling the lever to lock it in. I had to put some pressure to lock the lever, but I only did it after I was sure I placed the CPU in the right orientation.<br />
<a href="http://12ghosts.files.wordpress.com/2011/02/100_5672.jpg"><img class="aligncenter size-medium wp-image-897" style="border:1px dashed black;margin-top:10px;margin-bottom:10px;" title="CPU Mounted" src="http://12ghosts.files.wordpress.com/2011/02/100_5672.jpg?w=300&#038;h=225" alt="" width="300" height="225" /></a></li>
<p></p>
<li>All the AMD/Intel CPUs will come with their own stock coolers. Mounting them on top of the CPU is very easy these days, as they come with pre-applied cooling paste. Just follow the instructions from the CPU box. I opted to get my own cooler and coolant, however, so mounting it was a little more involved.<br />
<a href="http://12ghosts.files.wordpress.com/2011/02/100_5678.jpg"><img class="aligncenter size-medium wp-image-900" style="border:1px dashed black;margin-top:10px;margin-bottom:10px;" title="Applying Artic Silver" src="http://12ghosts.files.wordpress.com/2011/02/100_5678.jpg?w=300&#038;h=225" alt="" width="300" height="225" /></a><a href="http://12ghosts.files.wordpress.com/2011/02/100_5680.jpg"><img class="aligncenter size-medium wp-image-901" style="border:1px dashed black;margin-top:10px;margin-bottom:10px;" title="Screwing on the fan" src="http://12ghosts.files.wordpress.com/2011/02/100_5680.jpg?w=300&#038;h=225" alt="" width="300" height="225" /></a></li>
<p></p>
<li>Now you&#8217;ll want to attach your power supply to your ATX tower. It usually goes in the extreme bottom or top of the tower.</li>
<p></p>
<li>I prefer to attach RAM on the motherboard before mounting it on my tower so I have a better sense of where to place the PCIe cards. It&#8217;s also easier because your hands are constricted once the motherboard goes inside, and RAM sticks typically need to be absolutely vertical to their slots before they&#8217;ll go in.<br />
<a href="http://12ghosts.files.wordpress.com/2011/02/100_5682.jpg"><img class="aligncenter" style="border:1px dashed black;margin-top:10px;margin-bottom:10px;" title="Putting in RAM" src="http://12ghosts.files.wordpress.com/2011/02/100_5682.jpg?w=300&#038;h=225" alt="" width="300" height="225" /></a></li>
<p></p>
<li>Once you have the RAM in place, it is time to secure the motherboard onto the ATX tower. The most important step here is to first attach the double-edged screws that came with your motherboard. They raise your motherboard and provide screw sockets for the ATX to attach to. Do not try and attach your motherboard directly to the tower without putting these in between. There should be a half-inch gap between the metal casing and the lower side of the motherboard.<br />
<a href="http://12ghosts.files.wordpress.com/2011/02/100_5683.jpg"><img class="aligncenter size-medium wp-image-903" style="border:1px dashed black;margin-top:10px;margin-bottom:10px;" title="Motherboard mounted!" src="http://12ghosts.files.wordpress.com/2011/02/100_5683.jpg?w=300&#038;h=225" alt="" width="300" height="225" /></a></li>
<p></p>
<li>The hardest part is now behind you. Plug-in your video card, RAM and drives. Most of these are pretty much &#8220;push-click&#8221; based these days, really nothing much to it!</li>
<p></p>
<li>Done? Now all that remains is to tie everything together. This might actually be intimidating to some, but cables these days are designed not to fit in something they weren&#8217;t meant to. The basic steps are to connect power to your motherboard, video card, fans, optical and disk drives. Then, connect SATA cables from your drives to the motherboard. Motherboard control pins go to the front of the ATX (for LEDs and power switch).</li>
<p></p>
<li>Take a deep breath. Connect the monitor and a keyboard and flip the switch. If all goes well, the fans will start whirring; and you&#8217;ll get a beep from the motherboard indicating POST succeeded. wOOt!<br />
<a href="http://12ghosts.files.wordpress.com/2011/02/100_5685.jpg"><img class="aligncenter size-medium wp-image-905" style="border:1px dashed black;margin-top:10px;margin-bottom:10px;" title="BIOS screen!" src="http://12ghosts.files.wordpress.com/2011/02/100_5685.jpg?w=300&#038;h=225" alt="" width="300" height="225" /></a>If that didn&#8217;t happen, maybe you got something other than a single beep. Different kinds of beeps can mean different problems, go the Wikipedia page on <a href="https://secure.wikimedia.org/wikipedia/en/wiki/Power-on_self-test">POST </a>to troubleshoot. If you don&#8217;t get any kind of beep at all, and the fans aren&#8217;t spinning it means you missed a power supply cable somewhere. Double check to make sure the CPU cooler fan is running! If it isn&#8217;t your CPU will heat up very quickly &#8212; most processors will automatically shutdown when they overheat &#8212; but there&#8217;s a chance it may damage your computer, so double-check.</li>
<p></p>
<li>Get your installation media and put your favorite OS on your brand new computer. Give it a name, and learn to love it <img src='http://s1.wp.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </li>
</ol>
<p>That&#8217;s all there is to it. I certainly had a blast assembling my computer, it was a nice learning experience; not to mention very economical. Well, I&#8217;m off to play some HD-quality Starcraft2!</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/12ghosts.wordpress.com/738/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/12ghosts.wordpress.com/738/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/12ghosts.wordpress.com/738/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/12ghosts.wordpress.com/738/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/12ghosts.wordpress.com/738/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/12ghosts.wordpress.com/738/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/12ghosts.wordpress.com/738/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/12ghosts.wordpress.com/738/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/12ghosts.wordpress.com/738/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/12ghosts.wordpress.com/738/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/12ghosts.wordpress.com/738/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/12ghosts.wordpress.com/738/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/12ghosts.wordpress.com/738/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/12ghosts.wordpress.com/738/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kix.in&#038;blog=12909480&#038;post=738&#038;subd=12ghosts&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://kix.in/2011/02/02/project-assemble/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://www.assoc-amazon.com/e/ir?t=k006-20&#38;l=as2&#38;o=1&#38;a=B0044SSRVI" medium="image" />

		<media:content url="http://www.assoc-amazon.com/e/ir?t=k006-20&#38;l=as2&#38;o=1&#38;a=B002A6G3V2" medium="image" />

		<media:content url="http://www.assoc-amazon.com/e/ir?t=k006-20&#38;l=as2&#38;o=1&#38;a=B002WSHXQ2" medium="image" />

		<media:content url="http://www.assoc-amazon.com/e/ir?t=k006-20&#38;l=as2&#38;o=1&#38;a=B003BYRLE0" medium="image" />

		<media:content url="http://www.assoc-amazon.com/e/ir?t=k006-20&#38;l=as2&#38;o=1&#38;a=B003UUEOPE" medium="image" />

		<media:content url="http://www.assoc-amazon.com/e/ir?t=k006-20&#38;l=as2&#38;o=1&#38;a=B003BYRLE0" medium="image" />

		<media:content url="http://www.assoc-amazon.com/e/ir?t=k006-20&#38;l=as2&#38;o=1&#38;a=B0039SM0AS" medium="image" />

		<media:content url="http://www.assoc-amazon.com/e/ir?t=k006-20&#38;l=as2&#38;o=1&#38;a=B0036Q7MV0" medium="image" />

		<media:content url="http://www.assoc-amazon.com/e/ir?t=k006-20&#38;l=as2&#38;o=1&#38;a=B001EPUQAE" medium="image" />

		<media:content url="http://www.assoc-amazon.com/e/ir?t=k006-20&#38;l=as2&#38;o=1&#38;a=B000YDIA78" medium="image" />

		<media:content url="http://www.assoc-amazon.com/e/ir?t=k006-20&#38;l=as2&#38;o=1&#38;a=B001WAKR3W" medium="image" />

		<media:content url="http://www.assoc-amazon.com/e/ir?t=k006-20&#38;l=as2&#38;o=1&#38;a=B002MT6SDU" medium="image" />

		<media:content url="http://www.assoc-amazon.com/e/ir?t=k006-20&#38;l=as2&#38;o=1&#38;a=B0032XJDJ6" medium="image" />

		<media:content url="http://www.assoc-amazon.com/e/ir?t=k006-20&#38;l=as2&#38;o=1&#38;a=B000EDMPQK" medium="image" />

		<media:content url="http://www.assoc-amazon.com/e/ir?t=k006-20&#38;l=as2&#38;o=1&#38;a=B00004Z5VS" medium="image" />

		<media:content url="http://12ghosts.files.wordpress.com/2011/02/100_5672.jpg?w=300" medium="image">
			<media:title type="html">CPU Mounted</media:title>
		</media:content>

		<media:content url="http://12ghosts.files.wordpress.com/2011/02/100_5678.jpg?w=300" medium="image">
			<media:title type="html">Applying Artic Silver</media:title>
		</media:content>

		<media:content url="http://12ghosts.files.wordpress.com/2011/02/100_5680.jpg?w=300" medium="image">
			<media:title type="html">Screwing on the fan</media:title>
		</media:content>

		<media:content url="http://12ghosts.files.wordpress.com/2011/02/100_5682.jpg?w=300" medium="image">
			<media:title type="html">Putting in RAM</media:title>
		</media:content>

		<media:content url="http://12ghosts.files.wordpress.com/2011/02/100_5683.jpg?w=300" medium="image">
			<media:title type="html">Motherboard mounted!</media:title>
		</media:content>

		<media:content url="http://12ghosts.files.wordpress.com/2011/02/100_5685.jpg?w=300" medium="image">
			<media:title type="html">BIOS screen!</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. [...]<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> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/12ghosts.wordpress.com/726/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/12ghosts.wordpress.com/726/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/12ghosts.wordpress.com/726/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/12ghosts.wordpress.com/726/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/12ghosts.wordpress.com/726/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/12ghosts.wordpress.com/726/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/12ghosts.wordpress.com/726/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/12ghosts.wordpress.com/726/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/12ghosts.wordpress.com/726/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/12ghosts.wordpress.com/726/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/12ghosts.wordpress.com/726/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/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>
		<item>
		<title>Suspicion of Religion</title>
		<link>http://kix.in/2010/09/12/suspicion-of-religion/</link>
		<comments>http://kix.in/2010/09/12/suspicion-of-religion/#comments</comments>
		<pubDate>Sun, 12 Sep 2010 14:34:07 +0000</pubDate>
		<dc:creator>Anant</dc:creator>
				<category><![CDATA[Books]]></category>
		<category><![CDATA[India]]></category>
		<category><![CDATA[Life]]></category>
		<category><![CDATA[People]]></category>

		<guid isPermaLink="false">http://kix.in/?p=722</guid>
		<description><![CDATA[I usually avoid debates on religion with anyone except with people I know well for fear of it turning into a heated argument, which often happens when dealing with such a topic. I&#8217;m going to make an exception and make a post about it because I read something recently that has changed the way I [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kix.in&#038;blog=12909480&#038;post=722&#038;subd=12ghosts&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I usually avoid debates on religion with anyone except with people I know well for fear of it turning into a heated argument, which often happens when dealing with such a topic. I&#8217;m going to make an exception and make a post about it because I read something recently that has changed the way I approach religion.</p>
<p>Indeed, I have observed many of my peers from different countries and cultures increasingly identifying themselves as agnostic or atheist. In the Netherlands, where I spent the last two years, a large portion of the population (<a href="http://en.wikipedia.org/wiki/Religion_in_the_Netherlands#Demographics">42.7%</a>) specify that they are not affiliated with any religion. Even though the country where I am from, India, is regarded by many as a deeply religious (secular) state; I never cared much for religious teachings or rituals. I&#8217;ve met many students like me, who regarded science to be a guiding compass, with a few basic moral principles (such as: don&#8217;t hurt anyone) at the foundation. With the abundance of destructive events all over the world &#8211; inspired by religious fanaticism &#8211; it is not surprising that I grew increasingly suspicious of the concept in itself. I found the TED talk by Sam Harris, on <a href="http://www.ted.com/talks/lang/eng/sam_harris_science_can_show_what_s_right.html">how science can provide a moral compass</a>, greatly moving and convincing.</p>
<p>For those who think like me, and lay more faith on science than religion; or identify themselves as agnostic I present to you the following passages written by <a href="http://en.wikipedia.org/wiki/C._Rajagopalachari">C. Rajagopalachari</a>, a well respected Indian statesman, commonly hailed as the &#8216;conscience-keeper&#8217; of the Mahatma. Though it is rather long, I found it quite interesting:</p>
<blockquote><p>A little knowledge of the laws of nature and the wonders of science, specially when that knowledge is acquired second-hand without the chastening influence of effort and investigation, acts as a wine on some natures. Their sense of proportion is unset. The unknown is not only unknown but ceases to exist for them. Holy books and scriptures seem to them ancient folly; nay worse, they are looked upon as instruments and deliberate devices for the practice of fraud. But those who have struggled to obtain a deeper knowledge of the physical sciences and who, therefore, know enough to retain their sense of proportion and judgement know that the vast unknown is ever so much more than what is known and that while human intelligence may bring under its domain more and more as time goes on, there is a residue that cannot be either ignored or brought under the sway of man&#8217;s intelligence. Men of science not only preserve their humility but on account of their very knowledge of some secrets of nature, contemplate with increased humility and reverence that which must ever remain outside the pale of human analysis.</p>
<p>The cause of all causes, the law of all laws cannot be seized by the highest effort of human reasoning or investigation. Human reason is so perfectly fashioned and rounded off that there is no room for any sense of limitation. But the fact remains that the part cannot comprehend the whole, however excellent it may be shaped. The symbol of the serpent with the tail in its mouth as if swallowing itself illustrates the limitation of the human mind in its efforts to grasp the All. Even a giant cannot stand on a platform and lift itself also. We cannot jump off the ultimate cause on which we stand and on which we depend for every motion of the mind, in order that we may get round it or measure it.</p>
<p>This limitation of human knowledge is a familiar boundary in scientific and philosophical investigations. Dive into any truth or investigate any phenomenon or examine any distinction deep enough, and at a certain point we reach the unknowable and further progress is stopped. We strike against God, so to say, in everything. The unknowable is all-pervading. The known and knowable make up but a thin surface-crust over the mystery-sphere of infinite dimensions. Religions and holy books, and the saying and doings of holy men deal with this infinite unknown, not as a science deals with matter, but in a different way which is also the only possible way.</p>
<p>It may be asked why anyone should worry about the unknown. Of what use is it? The answer is that to ignore the real is foolish. The unknown is no less real because it is unknown. We know this much about it, that it is there and has profound relation to all that exists, including ourselves. How then, can we ignore it? The gap in human perception, we know, is not a void but filled with the most important reality, although we cannot dive into it, analyze it or understand it. In the material world, does not the mathematician deal with quantities that are too great or too small for definition, and with expressions that are for the human understanding wholly unreal?</p>
<p>Infinity, zero and surds are not neglected in mathematics, but go greatly to make up a science which actually helps engineers and mechanics to build real and useful construction. The insoluble and the infinite are thus neither unreal nor useless even for practical life. What is said in the holy books of the world may often not be as precise or clear as we would want it to be. The explanations are not as satisfying as the proofs we find in the physical sciences. This is necessarily so because the matter is wholly different and the approach and methods of application also must differ. Things within the domain of human reasoning can be defined and proved. But for the understanding of things beyond, faith and meditation have to function. The scriptures and holy books may be looked upon as helps to assist reverent meditation, by which alone the human mind can get glimpses into the truth beyond. By cultivation of purity of mind and action, and by meditation and prayer, what sounded first but as an empty jingle of antithetic phrases gets substance and meaning. What was obscure gets a strange and new light by which we may see through dimly, and though, even that, we may not all be able to relate to others. Thus it was our fathers saw, and thus again we may also see.</p>
<p>A reverent spirit is necessary to understand any religion. To start with a suspicion that the founders and teachers of religion in any land were skilful deceivers, interested in some sort of scheme of self-advancement or the advantage of some particular class, and that the rest of the people were duped to regard these deceivers with unbounded reverence and affection, is foolish in the extreme. The mass of people of ancient days, from whom, indeed, we have inherited all the intellect we possess were as practical as we are, were as interested in knowing the truth about men and things as we are, and were, if it may be so put, as suspicious as we are. They had probably as much intellectual acumen as we have, and had indeed more time to examine men and things. To believe that they were duped and that among them there were not men intelligent and bold enough to prevent the mischief is to proceed on a wholly wrong assumption. The religions that have commanded the devotion of successive generations of normal human beings in any country have done so because by direct personal contact at first, and by experience handed down as tradition from one generation to another, the founders and teachers of the religions were known by their contemporaries to be good, sincere and deep-thinking men, worthy of being followed. It is not merely wrong to display the detective-police mentality when studying a religion; it incapacitates one even to understand it. Undoubtedly personal and class interests have perverted religion as they have perverted other institutions. But to confuse the latter with the earlier and to impute fraud to the source is an unscientific attitude of the mind in the investigation of truth. It is in a spirit of reverent affection that we should approach the study of an ancient scripture.</p></blockquote>
<p>This is perhaps the most convincing argument I&#8217;ve personally heard in favor of not dismissing religion entirely.</p>
<p>I believe that the root cause for many kinds of suffering is because of man&#8217;s nature to try and convince another of the &#8216;right&#8217; way to live. I do not wish to fall in that trap, and thus I will leave it to you to interpret the passages as you please. But, I did feel it was worthy of sharing because the argument not only answers several doubts I previously had about religion, but has offered to me a scientific basis for at least being inquisitive about something that has survived for so long.</p>
<p>I&#8217;d love to know what you think.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/12ghosts.wordpress.com/722/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/12ghosts.wordpress.com/722/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/12ghosts.wordpress.com/722/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/12ghosts.wordpress.com/722/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/12ghosts.wordpress.com/722/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/12ghosts.wordpress.com/722/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/12ghosts.wordpress.com/722/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/12ghosts.wordpress.com/722/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/12ghosts.wordpress.com/722/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/12ghosts.wordpress.com/722/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/12ghosts.wordpress.com/722/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/12ghosts.wordpress.com/722/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/12ghosts.wordpress.com/722/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/12ghosts.wordpress.com/722/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kix.in&#038;blog=12909480&#038;post=722&#038;subd=12ghosts&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://kix.in/2010/09/12/suspicion-of-religion/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>
	</item>
		<item>
		<title>So, are you on Facebook?</title>
		<link>http://kix.in/2010/07/12/so-are-you-on-facebook/</link>
		<comments>http://kix.in/2010/07/12/so-are-you-on-facebook/#comments</comments>
		<pubDate>Mon, 12 Jul 2010 11:29:12 +0000</pubDate>
		<dc:creator>Anant</dc:creator>
				<category><![CDATA[Mozilla]]></category>
		<category><![CDATA[People]]></category>
		<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://kix.in/?p=704</guid>
		<description><![CDATA[This post is entirely inspired by David Ascher&#8217;s talk on &#8220;Messaging with Mozilla Values&#8221; at the Mozilla summit, and is also a result of me deciding not to simply let blog posts sit as drafts forever (looks like I haven&#8217;t made a post in a while!) It&#8217;s been a couple of months since I deleted [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kix.in&#038;blog=12909480&#038;post=704&#038;subd=12ghosts&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>This post is entirely inspired by David Ascher&#8217;s talk on &#8220;Messaging with Mozilla Values&#8221; at the Mozilla summit, and is also a result of me deciding not to simply let blog posts sit as drafts forever (looks like I haven&#8217;t made a post in a while!)</p>
<p>It&#8217;s been a couple of months since I deleted my facebook account. It wasn&#8217;t an impulse decision, and I had been mulling over it for a while before actually going through with it. I don&#8217;t really miss it, which I suppose, is a good thing. As a technology enthusiast however, I do want to keep up with what the biggest social network in the world is up to. Create an alias you say? While signing up for one, I noticed that the form very strongly notes that one is to use their &#8220;real name only&#8221;. Interesting. I&#8217;m just going to wait and see if they decide that I am a fake person.</p>
<p>All that is well and good, but my conversations with new and interesting young people I meet almost always ends with &#8220;are you on facebook?&#8221;. My response is usually met with either mild surprise or a sliver of disappointment. I quickly explain that it doesn&#8217;t mean they can&#8217;t get in touch with me but that leads to a look that I&#8217;ve come to interpret as &#8220;yeah right&#8221;, also known as &#8220;ugh, email&#8221;. Which explains why my personal inbox only contains messages from my mom, the British lottery council and my very wealthy friends in Nigeria.</p>
<p>This leads us to the burning question of why &#8220;standard&#8221; messaging protocols like SMTP have failed (or rather failed to evolve) to capture the interest of this generation. As Chris Beard very succinctly put, if you had said we&#8217;d be using a single Internet based service to communicate with each other in the 90s we&#8217;d have thought you were crazy, simply because we were just finished with the nightmare that was AOL. Yet, only a couple of decades later it seems we&#8217;re at a full circle.</p>
<p>Hypothetically speaking, if Google had decided that Gmail could only be used to send messages to other Gmail users, would it have gained as much traction as it did? Yet, millions of Facebook users seem to miss the absurdity in the fact that they can&#8217;t use the service to talk to anybody who is not a member of the network. If users fail to recognize this simple drawback, it must mean that playing the &#8216;privacy&#8217; trumpet or the &#8216;centralized control&#8217; horn is just wasted effort.</p>
<p>What can we as computer scientists do about the situation (or does the situation even need our attention)? David very rightly points out that the last thing on our minds should be to ask users to stop doing things they absolutely love. I enjoyed facebook. A lot. There is a reason (actually several) for why the service is so popular. It certainly seems to me that understanding the basics of why such a service is a grand success is an interesting exercise in itself.</p>
<p>So, are you on facebook? What do you love about it? What do you think could be better? Do you see initiatives like <a href="http://www.joindiaspora.com/">diaspora</a> succeeding?</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/12ghosts.wordpress.com/704/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/12ghosts.wordpress.com/704/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/12ghosts.wordpress.com/704/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/12ghosts.wordpress.com/704/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/12ghosts.wordpress.com/704/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/12ghosts.wordpress.com/704/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/12ghosts.wordpress.com/704/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/12ghosts.wordpress.com/704/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/12ghosts.wordpress.com/704/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/12ghosts.wordpress.com/704/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/12ghosts.wordpress.com/704/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/12ghosts.wordpress.com/704/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/12ghosts.wordpress.com/704/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/12ghosts.wordpress.com/704/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kix.in&#038;blog=12909480&#038;post=704&#038;subd=12ghosts&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://kix.in/2010/07/12/so-are-you-on-facebook/feed/</wfw:commentRss>
		<slash:comments>6</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>
