<?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: Don&#039;t Host Static Assets</title>
	<atom:link href="http://mallinson.ca/post/static-assets/feed/" rel="self" type="application/rss+xml" />
	<link>http://mallinson.ca/post/static-assets/</link>
	<description>by Chris Mallinson</description>
	<lastBuildDate>Sat, 28 Apr 2012 07:24:42 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
	<item>
		<title>By: Russ</title>
		<link>http://mallinson.ca/post/static-assets/#comment-36</link>
		<dc:creator>Russ</dc:creator>
		<pubDate>Fri, 05 Jun 2009 00:42:34 +0000</pubDate>
		<guid isPermaLink="false">http://mallinson.ca/?p=121#comment-36</guid>
		<description>The only problem with reverting to local files if remote files are unavailable is that your code could get stuck waiting for the remote files to be found, which would drag down your site speed if you checked for remote file existence upon every request.
However, if you checked for remote file existence at the start of an application or session, then individual page load time wouldn&#039;t be affected. I think that would be the best way to do it.</description>
		<content:encoded><![CDATA[<p>The only problem with reverting to local files if remote files are unavailable is that your code could get stuck waiting for the remote files to be found, which would drag down your site speed if you checked for remote file existence upon every request.<br />
However, if you checked for remote file existence at the start of an application or session, then individual page load time wouldn&#8217;t be affected. I think that would be the best way to do it.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Chris</title>
		<link>http://mallinson.ca/post/static-assets/#comment-35</link>
		<dc:creator>Chris</dc:creator>
		<pubDate>Thu, 04 Jun 2009 21:48:45 +0000</pubDate>
		<guid isPermaLink="false">http://mallinson.ca/?p=121#comment-35</guid>
		<description>I think that, given the amount of high profile sites using the Google code version of jQuery, they would make sure that the availability was extremely high.

I would be a cool experiment to work out a way to programatically ensure that your JS files were loaded.  The first thing that comes to mind would be a tiny JS file loaded locally that could determine if the jQuery (if that&#039;s what you&#039;re using) namespace existed, and if not, load a local, or alternatively hosted JS file.  I think that would work.  You could also use some fancy DNS tricks to use your own server as failover for the remote file.  I&#039;d build something like that if I was relying on a site for income.</description>
		<content:encoded><![CDATA[<p>I think that, given the amount of high profile sites using the Google code version of jQuery, they would make sure that the availability was extremely high.</p>
<p>I would be a cool experiment to work out a way to programatically ensure that your JS files were loaded.  The first thing that comes to mind would be a tiny JS file loaded locally that could determine if the jQuery (if that&#8217;s what you&#8217;re using) namespace existed, and if not, load a local, or alternatively hosted JS file.  I think that would work.  You could also use some fancy DNS tricks to use your own server as failover for the remote file.  I&#8217;d build something like that if I was relying on a site for income.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Rob Dudley</title>
		<link>http://mallinson.ca/post/static-assets/#comment-34</link>
		<dc:creator>Rob Dudley</dc:creator>
		<pubDate>Thu, 04 Jun 2009 20:50:17 +0000</pubDate>
		<guid isPermaLink="false">http://mallinson.ca/?p=121#comment-34</guid>
		<description>Great idea and I wholeheartedly agree with the concept of progressive enhancement.

That said the DNS for Google reader was fritzed for 5 minutes before reading this and I&#039;m not convinced that some of our clients would understand sporadic outages. Now if there were some way to programmaticly determine availability and include or fail back to local - that would be frickin&#039; sweet!</description>
		<content:encoded><![CDATA[<p>Great idea and I wholeheartedly agree with the concept of progressive enhancement.</p>
<p>That said the DNS for Google reader was fritzed for 5 minutes before reading this and I&#8217;m not convinced that some of our clients would understand sporadic outages. Now if there were some way to programmaticly determine availability and include or fail back to local &#8211; that would be frickin&#8217; sweet!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Chris</title>
		<link>http://mallinson.ca/post/static-assets/#comment-33</link>
		<dc:creator>Chris</dc:creator>
		<pubDate>Thu, 04 Jun 2009 18:27:40 +0000</pubDate>
		<guid isPermaLink="false">http://mallinson.ca/?p=121#comment-33</guid>
		<description>Both good points Russ

As for reliance on third party severs, for many people these third party servers are more reliable than their own servers. Also, I design most of my sites to use JS only to add functionality, keeping the site completely functional for users without JS at all (this also applies to CSS).  Progressive enhancement is how JavaScript should be used if you want to reach the biggest audience.

In the case of loading jQuery from the Google code link, the jQuery.com even uses that.  I think relying on Google to have their servers up is a pretty good gamble.

And with respect to Amazon Web Services, many many huge websites rely on AWS to host not only static assets, but dynamic assets, and assets that need to be secured.  It&#039;s an incredible service.

Crazy things can happen, and I agree that you need to be able to back out of any reliance on a third party, but that can be done easily by changing a couple of settings in your application.</description>
		<content:encoded><![CDATA[<p>Both good points Russ</p>
<p>As for reliance on third party severs, for many people these third party servers are more reliable than their own servers. Also, I design most of my sites to use JS only to add functionality, keeping the site completely functional for users without JS at all (this also applies to CSS).  Progressive enhancement is how JavaScript should be used if you want to reach the biggest audience.</p>
<p>In the case of loading jQuery from the Google code link, the jQuery.com even uses that.  I think relying on Google to have their servers up is a pretty good gamble.</p>
<p>And with respect to Amazon Web Services, many many huge websites rely on AWS to host not only static assets, but dynamic assets, and assets that need to be secured.  It&#8217;s an incredible service.</p>
<p>Crazy things can happen, and I agree that you need to be able to back out of any reliance on a third party, but that can be done easily by changing a couple of settings in your application.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Russ</title>
		<link>http://mallinson.ca/post/static-assets/#comment-32</link>
		<dc:creator>Russ</dc:creator>
		<pubDate>Thu, 04 Jun 2009 18:00:23 +0000</pubDate>
		<guid isPermaLink="false">http://mallinson.ca/?p=121#comment-32</guid>
		<description>In theory, this idea sounds good. In practice, I&#039;m less convinced.
Potential issues:

1. Reliance on remote third party servers for core functionality seems like an unnecessary risk. There is no guarantee that those files will always be available.
And what becomes of your site when the remote JS files are unavailable? Users would be able to see your site but not use it, which would hurt your reputation much more than if your server went down and the site was entirely unavailable for a while.

2. Non-standard practices can cause confusion for future developers. If I hadn&#039;t read this article, I would be confused if I came across some code referencing remote JS files, and then I would probably &quot;fix&quot; it, which would be a total waste of time.</description>
		<content:encoded><![CDATA[<p>In theory, this idea sounds good. In practice, I&#8217;m less convinced.<br />
Potential issues:</p>
<p>1. Reliance on remote third party servers for core functionality seems like an unnecessary risk. There is no guarantee that those files will always be available.<br />
And what becomes of your site when the remote JS files are unavailable? Users would be able to see your site but not use it, which would hurt your reputation much more than if your server went down and the site was entirely unavailable for a while.</p>
<p>2. Non-standard practices can cause confusion for future developers. If I hadn&#8217;t read this article, I would be confused if I came across some code referencing remote JS files, and then I would probably &#8220;fix&#8221; it, which would be a total waste of time.</p>
]]></content:encoded>
	</item>
</channel>
</rss>

<!-- Performance optimized by W3 Total Cache. Learn more: http://www.w3-edge.com/wordpress-plugins/

Page Caching using disk: enhanced
Object Caching 313/315 objects using disk: basic
Content Delivery Network via Amazon Web Services: S3: assets.mallinson.ca

Served from: mallinson.ca @ 2012-05-18 16:43:38 -->
