<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	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/"
		>
<channel>
	<title>Comments on: Compression of JavaScript programs</title>
	<atom:link href="http://www.bitsnbites.eu/?feed=rss2&#038;p=20" rel="self" type="application/rss+xml" />
	<link>http://www.bitsnbites.eu/?p=20</link>
	<description></description>
	<lastBuildDate>Tue, 01 May 2012 03:02:46 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1.1</generator>
	<item>
		<title>By: Alex Scott</title>
		<link>http://www.bitsnbites.eu/?p=20#comment-1298</link>
		<dc:creator>Alex Scott</dc:creator>
		<pubDate>Sun, 19 Feb 2012 19:23:11 +0000</pubDate>
		<guid isPermaLink="false">http://www.bitsnbites.eu/?p=20#comment-1298</guid>
		<description>Will you continue to develop on CrunchMe?</description>
		<content:encoded><![CDATA[<p>Will you continue to develop on CrunchMe?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: m</title>
		<link>http://www.bitsnbites.eu/?p=20#comment-38</link>
		<dc:creator>m</dc:creator>
		<pubDate>Mon, 09 May 2011 13:17:59 +0000</pubDate>
		<guid isPermaLink="false">http://www.bitsnbites.eu/?p=20#comment-38</guid>
		<description>Again, this is not about lowering network bandwidth nor faster page loads. It&#039;s about smaller JavaScript files, even if they are loaded locally (not from a server).</description>
		<content:encoded><![CDATA[<p>Again, this is not about lowering network bandwidth nor faster page loads. It&#8217;s about smaller JavaScript files, even if they are loaded locally (not from a server).</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: witek</title>
		<link>http://www.bitsnbites.eu/?p=20#comment-37</link>
		<dc:creator>witek</dc:creator>
		<pubDate>Sun, 08 May 2011 19:57:26 +0000</pubDate>
		<guid isPermaLink="false">http://www.bitsnbites.eu/?p=20#comment-37</guid>
		<description>Precompress using gzip -9, put as static file, and configure apache properly. Instant win and big compatibility. (removing comments and redudant whitespaces, semicolons will also help). As of using clousre compiler and other &quot;pseudo-compression&quot; methods I will be very cearfull (base64 and other can really mess output). But automatic renaming of variable, arguments and function names, as well inlineing functions used once should be safe (if you are not writing library, is shiping and not debuging code, and there are no &quot;eval&quot;).

PNG trick is not a trick. It is ugly hack.</description>
		<content:encoded><![CDATA[<p>Precompress using gzip -9, put as static file, and configure apache properly. Instant win and big compatibility. (removing comments and redudant whitespaces, semicolons will also help). As of using clousre compiler and other &#8220;pseudo-compression&#8221; methods I will be very cearfull (base64 and other can really mess output). But automatic renaming of variable, arguments and function names, as well inlineing functions used once should be safe (if you are not writing library, is shiping and not debuging code, and there are no &#8220;eval&#8221;).</p>
<p>PNG trick is not a trick. It is ugly hack.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: ElegantCoder</title>
		<link>http://www.bitsnbites.eu/?p=20#comment-35</link>
		<dc:creator>ElegantCoder</dc:creator>
		<pubDate>Sun, 08 May 2011 14:49:11 +0000</pubDate>
		<guid isPermaLink="false">http://www.bitsnbites.eu/?p=20#comment-35</guid>
		<description>Thank you for the great posting!
I translated this post into Korean. The translation is posted on my blog.
You may see it here:
http://elegantcoder.com/binary-compress-js
</description>
		<content:encoded><![CDATA[<p>Thank you for the great posting!<br />
I translated this post into Korean. The translation is posted on my blog.<br />
You may see it here:<br />
<a href="http://elegantcoder.com/binary-compress-js" rel="nofollow">http://elegantcoder.com/binary-compress-js</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: m</title>
		<link>http://www.bitsnbites.eu/?p=20#comment-28</link>
		<dc:creator>m</dc:creator>
		<pubDate>Mon, 02 May 2011 20:22:17 +0000</pubDate>
		<guid isPermaLink="false">http://www.bitsnbites.eu/?p=20#comment-28</guid>
		<description>Please keep in mind that it may not &lt;em&gt;always&lt;/em&gt; be true that compression saves power or even &quot;transfer&quot; time, though, since executing the unpacker takes both time and battery power (regardless if it&#039;s a JS unpacker or a &quot;native&quot; gzip unpacker).</description>
		<content:encoded><![CDATA[<p>Please keep in mind that it may not <em>always</em> be true that compression saves power or even &#8220;transfer&#8221; time, though, since executing the unpacker takes both time and battery power (regardless if it&#8217;s a JS unpacker or a &#8220;native&#8221; gzip unpacker).</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Dennis</title>
		<link>http://www.bitsnbites.eu/?p=20#comment-24</link>
		<dc:creator>Dennis</dc:creator>
		<pubDate>Sun, 01 May 2011 13:40:28 +0000</pubDate>
		<guid isPermaLink="false">http://www.bitsnbites.eu/?p=20#comment-24</guid>
		<description>Is there any reason that the mobile device keep cache in raw format? Even the cheapest compression saves IO time and power.</description>
		<content:encoded><![CDATA[<p>Is there any reason that the mobile device keep cache in raw format? Even the cheapest compression saves IO time and power.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Iouri Montreal</title>
		<link>http://www.bitsnbites.eu/?p=20#comment-21</link>
		<dc:creator>Iouri Montreal</dc:creator>
		<pubDate>Sat, 30 Apr 2011 05:49:56 +0000</pubDate>
		<guid isPermaLink="false">http://www.bitsnbites.eu/?p=20#comment-21</guid>
		<description>It would be cool if somebody added a service like that to google apps. I use google&#039;s optimizer that is hosted there. Pretty convenient.</description>
		<content:encoded><![CDATA[<p>It would be cool if somebody added a service like that to google apps. I use google&#8217;s optimizer that is hosted there. Pretty convenient.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: m</title>
		<link>http://www.bitsnbites.eu/?p=20#comment-19</link>
		<dc:creator>m</dc:creator>
		<pubDate>Fri, 29 Apr 2011 19:56:31 +0000</pubDate>
		<guid isPermaLink="false">http://www.bitsnbites.eu/?p=20#comment-19</guid>
		<description>Good comment. Actually, the decompression is quite fast in modern browsers, so for most applications it should not be noticeable, but you are right that if you (re)load pages alot it could give you a performance hit.

For comparison, you can try another demo of the LZG decompression &lt;a href=&quot;http://liblzg.bitsnbites.eu/demo/&quot; rel=&quot;nofollow&quot;&gt;here&lt;/a&gt; (I usually get over 10 MB/s in that test).</description>
		<content:encoded><![CDATA[<p>Good comment. Actually, the decompression is quite fast in modern browsers, so for most applications it should not be noticeable, but you are right that if you (re)load pages alot it could give you a performance hit.</p>
<p>For comparison, you can try another demo of the LZG decompression <a href="http://liblzg.bitsnbites.eu/demo/" rel="nofollow">here</a> (I usually get over 10 MB/s in that test).</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jared Jacobs</title>
		<link>http://www.bitsnbites.eu/?p=20#comment-18</link>
		<dc:creator>Jared Jacobs</dc:creator>
		<pubDate>Fri, 29 Apr 2011 16:46:36 +0000</pubDate>
		<guid isPermaLink="false">http://www.bitsnbites.eu/?p=20#comment-18</guid>
		<description>Great post, clever tricks. One thing I looked for in this post and comments, but didn&#039;t find, was a comparison of the running times of these different methods. I&#039;d imagine these methods are not recommended for any real website unless most of its visitors had fast computers and slow connections (AT&amp;T mobile customers, perhaps?). A significant disadvantage of these methods is that the browser has to do several layers of unpacking/decoding of JS code on every page navigation, even when the script is just coming from the browser cache.</description>
		<content:encoded><![CDATA[<p>Great post, clever tricks. One thing I looked for in this post and comments, but didn&#8217;t find, was a comparison of the running times of these different methods. I&#8217;d imagine these methods are not recommended for any real website unless most of its visitors had fast computers and slow connections (AT&amp;T mobile customers, perhaps?). A significant disadvantage of these methods is that the browser has to do several layers of unpacking/decoding of JS code on every page navigation, even when the script is just coming from the browser cache.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: m</title>
		<link>http://www.bitsnbites.eu/?p=20#comment-15</link>
		<dc:creator>m</dc:creator>
		<pubDate>Thu, 28 Apr 2011 21:00:43 +0000</pubDate>
		<guid isPermaLink="false">http://www.bitsnbites.eu/?p=20#comment-15</guid>
		<description>Oh, I see now. Maybe I wasn&#039;t clear in the post, but one of the constraints of this whole exercise is to keep both the unpacker and the packed data within the same file. If you are allowed to split the two, an even better approach is to load the packed JS from a separate PNG image (and never bother with UTF-16 encoding).</description>
		<content:encoded><![CDATA[<p>Oh, I see now. Maybe I wasn&#8217;t clear in the post, but one of the constraints of this whole exercise is to keep both the unpacker and the packed data within the same file. If you are allowed to split the two, an even better approach is to load the packed JS from a separate PNG image (and never bother with UTF-16 encoding).</p>
]]></content:encoded>
	</item>
</channel>
</rss>

