<?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: EnhanceJS: A library to progressively enhance</title>
	<atom:link href="http://ajaxian.com/archives/enhancejs/feed" rel="self" type="application/rss+xml" />
	<link>http://ajaxian.com/archives/enhancejs</link>
	<description>Cleaning up the web with Ajax</description>
	<lastBuildDate>Thu, 09 Feb 2012 06:55:33 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2</generator>
	<item>
		<title>By: BenGerrissen</title>
		<link>http://ajaxian.com/archives/enhancejs/comment-page-1#comment-279348</link>
		<dc:creator>BenGerrissen</dc:creator>
		<pubDate>Sun, 28 Feb 2010 00:33:09 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/?p=8640#comment-279348</guid>
		<description>@DavidMark
No one is in Rome yet, neither are you ;) We still have some ground to cover, but the foundations are being laid down.
.
Had a look at your MyLibrary documentation, will have to look at code soon, but looks interresting. The collection of utility is rather impressive, though it needs some API organisation to become mainstream. API clarity is paramount and whilst the method names are very descriptive, they are all attached to a single namespace, might as well throw it all in the global scope that way...
.
David, luckily your MyLibrary is not mainstream, that means you can tinker it to perfection still. The code probably doesn&#039;t need changing, just the organisation for clarity and usability. In fact, the documentation shows a very low level API, meaning there&#039;s room for an higher level API abstracting functionality further.
.
It&#039;s obviously all to your own discretion, it&#039;s your library afterall ;) but somehow I get the feeling you want us to use it as well and that means altering it a bit to make it more attractive for a larger audience. It&#039;s the only way you can break free from anonymity if thats your intent.</description>
		<content:encoded><![CDATA[<p>@DavidMark<br />
No one is in Rome yet, neither are you ;) We still have some ground to cover, but the foundations are being laid down.<br />
.<br />
Had a look at your MyLibrary documentation, will have to look at code soon, but looks interresting. The collection of utility is rather impressive, though it needs some API organisation to become mainstream. API clarity is paramount and whilst the method names are very descriptive, they are all attached to a single namespace, might as well throw it all in the global scope that way&#8230;<br />
.<br />
David, luckily your MyLibrary is not mainstream, that means you can tinker it to perfection still. The code probably doesn&#8217;t need changing, just the organisation for clarity and usability. In fact, the documentation shows a very low level API, meaning there&#8217;s room for an higher level API abstracting functionality further.<br />
.<br />
It&#8217;s obviously all to your own discretion, it&#8217;s your library afterall ;) but somehow I get the feeling you want us to use it as well and that means altering it a bit to make it more attractive for a larger audience. It&#8217;s the only way you can break free from anonymity if thats your intent.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: DavidMark</title>
		<link>http://ajaxian.com/archives/enhancejs/comment-page-1#comment-279320</link>
		<dc:creator>DavidMark</dc:creator>
		<pubDate>Fri, 26 Feb 2010 22:11:53 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/?p=8640#comment-279320</guid>
		<description>@Ben

Hello from Rome!  Lovely this time of year.

I have no comment on Steve Souders, YUI or Dojo at this time.  I&#039;ll just leave it at that.  :)</description>
		<content:encoded><![CDATA[<p>@Ben</p>
<p>Hello from Rome!  Lovely this time of year.</p>
<p>I have no comment on Steve Souders, YUI or Dojo at this time.  I&#8217;ll just leave it at that.  :)</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: BenGerrissen</title>
		<link>http://ajaxian.com/archives/enhancejs/comment-page-1#comment-279312</link>
		<dc:creator>BenGerrissen</dc:creator>
		<pubDate>Fri, 26 Feb 2010 12:36:23 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/?p=8640#comment-279312</guid>
		<description>@David Mark
&lt;blockquote cite=&quot;David Mark&quot;&gt;The bit about loading scripts without blocking is a major red flag though. &lt;/blockquote&gt;
Read Steve Souders articles. You&#039;re absolutely right if your application/page is JS dependant, but thats the whole point, making your pages work without JS and cutting down on useless load times. Offering content sooner in an opted or forced low tech environment.
&lt;blockquote cite=&quot;David Mark&quot;&gt;And (contrary to popular opinion) in browser scripting, the context-specific solution will always trump generalizations in terms of size, speed and maintainability.&lt;/blockquote&gt;
Hmm, yes and no. YUI3 and Dojo for example allows context-specific script loading solutions and is more maintainable and pluggable. Libs like OP offer partial solutions, pretty much like $LAB for libraries that either pollute the global scope or are namespaced nightmares. Size and Speed are relative to conditions and environments, maintainability depends on how you architecture your code and is thus a strawman argument.
.
There are many ways that lead to Rome.</description>
		<content:encoded><![CDATA[<p>@David Mark</p>
<blockquote cite="David Mark"><p>The bit about loading scripts without blocking is a major red flag though. </p></blockquote>
<p>Read Steve Souders articles. You&#8217;re absolutely right if your application/page is JS dependant, but thats the whole point, making your pages work without JS and cutting down on useless load times. Offering content sooner in an opted or forced low tech environment.</p>
<blockquote cite="David Mark"><p>And (contrary to popular opinion) in browser scripting, the context-specific solution will always trump generalizations in terms of size, speed and maintainability.</p></blockquote>
<p>Hmm, yes and no. YUI3 and Dojo for example allows context-specific script loading solutions and is more maintainable and pluggable. Libs like OP offer partial solutions, pretty much like $LAB for libraries that either pollute the global scope or are namespaced nightmares. Size and Speed are relative to conditions and environments, maintainability depends on how you architecture your code and is thus a strawman argument.<br />
.<br />
There are many ways that lead to Rome.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: sixtyseconds</title>
		<link>http://ajaxian.com/archives/enhancejs/comment-page-1#comment-279310</link>
		<dc:creator>sixtyseconds</dc:creator>
		<pubDate>Fri, 26 Feb 2010 11:58:39 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/?p=8640#comment-279310</guid>
		<description>@timdown - It was sincere! :)</description>
		<content:encoded><![CDATA[<p>@timdown &#8211; It was sincere! :)</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: timdown</title>
		<link>http://ajaxian.com/archives/enhancejs/comment-page-1#comment-279309</link>
		<dc:creator>timdown</dc:creator>
		<pubDate>Fri, 26 Feb 2010 11:23:16 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/?p=8640#comment-279309</guid>
		<description>@sixtyseconds: Was that sarcastic? I genuinely can&#039;t tell. I thought David&#039;s post was both thoughtful and polite.</description>
		<content:encoded><![CDATA[<p>@sixtyseconds: Was that sarcastic? I genuinely can&#8217;t tell. I thought David&#8217;s post was both thoughtful and polite.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: sixtyseconds</title>
		<link>http://ajaxian.com/archives/enhancejs/comment-page-1#comment-279308</link>
		<dc:creator>sixtyseconds</dc:creator>
		<pubDate>Fri, 26 Feb 2010 09:28:55 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/?p=8640#comment-279308</guid>
		<description>@DavidMark - Thanks for taking the time to thoughtfully and politely air your views. :)</description>
		<content:encoded><![CDATA[<p>@DavidMark &#8211; Thanks for taking the time to thoughtfully and politely air your views. :)</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: rdza</title>
		<link>http://ajaxian.com/archives/enhancejs/comment-page-1#comment-279306</link>
		<dc:creator>rdza</dc:creator>
		<pubDate>Fri, 26 Feb 2010 00:17:30 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/?p=8640#comment-279306</guid>
		<description>@vjeux - they seem to be pimping it as a companion to modernizr - a comment from the blog post reads
&quot;[Modernizr] provides a great suite of tests for HTML5 features, and its tests could be integrated with EnhanceJS if you wanted to enhance a page based on proper support for HTML5 features. &quot;

Personally, I&#039;m feeling lazy and I want a prefab integration ;-)</description>
		<content:encoded><![CDATA[<p>@vjeux &#8211; they seem to be pimping it as a companion to modernizr &#8211; a comment from the blog post reads<br />
&#8220;[Modernizr] provides a great suite of tests for HTML5 features, and its tests could be integrated with EnhanceJS if you wanted to enhance a page based on proper support for HTML5 features. &#8221;</p>
<p>Personally, I&#8217;m feeling lazy and I want a prefab integration ;-)</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: ScottJehl</title>
		<link>http://ajaxian.com/archives/enhancejs/comment-page-1#comment-279299</link>
		<dc:creator>ScottJehl</dc:creator>
		<pubDate>Thu, 25 Feb 2010 20:16:38 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/?p=8640#comment-279299</guid>
		<description>@Adam: Glad you like the framework. However, we find a lot of faults in the UA testing approach when compared to feature detection. The main problem we see in the Yahoo GBS model is that Grade X browsers get the same experience as Grade A. A whole lot of browsers (new and old) can be considered &quot;Grade X&quot;, and quite often, serving those browsers CSS and JS as if they are &quot;Grade A&quot; means the user receives a &quot;Grade F&quot; experience. :P

UA testing also means updating that whitelist every time a capable browser comes out, and assumes you know about every browser out there that should be getting enhancements. 

@V1: There&#039;s pretty simple way to prevent a FOUC with EnhanceJS. Check out this docs page if you&#039;re interested: http://code.google.com/p/enhancejs/wiki/IntegrationTips</description>
		<content:encoded><![CDATA[<p>@Adam: Glad you like the framework. However, we find a lot of faults in the UA testing approach when compared to feature detection. The main problem we see in the Yahoo GBS model is that Grade X browsers get the same experience as Grade A. A whole lot of browsers (new and old) can be considered &#8220;Grade X&#8221;, and quite often, serving those browsers CSS and JS as if they are &#8220;Grade A&#8221; means the user receives a &#8220;Grade F&#8221; experience. :P</p>
<p>UA testing also means updating that whitelist every time a capable browser comes out, and assumes you know about every browser out there that should be getting enhancements. </p>
<p>@V1: There&#8217;s pretty simple way to prevent a FOUC with EnhanceJS. Check out this docs page if you&#8217;re interested: <a href="http://code.google.com/p/enhancejs/wiki/IntegrationTips" rel="nofollow">http://code.google.com/p/enhancejs/wiki/IntegrationTips</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: V1</title>
		<link>http://ajaxian.com/archives/enhancejs/comment-page-1#comment-279295</link>
		<dc:creator>V1</dc:creator>
		<pubDate>Thu, 25 Feb 2010 19:23:19 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/?p=8640#comment-279295</guid>
		<description>I highly doubt that it has positive impact for performance. The demo&#039;s also feel more suggly because you sometimes see a FUOC. Makings the perceived performance allot slower than it actually is. 
.
Nice library but i highly doubt i would ever find a real use case for it.</description>
		<content:encoded><![CDATA[<p>I highly doubt that it has positive impact for performance. The demo&#8217;s also feel more suggly because you sometimes see a FUOC. Makings the perceived performance allot slower than it actually is.<br />
.<br />
Nice library but i highly doubt i would ever find a real use case for it.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: AdamGoldstein</title>
		<link>http://ajaxian.com/archives/enhancejs/comment-page-1#comment-279294</link>
		<dc:creator>AdamGoldstein</dc:creator>
		<pubDate>Thu, 25 Feb 2010 19:22:12 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/?p=8640#comment-279294</guid>
		<description>It is great to see another framework that makes it easier for people to follow progressive enhancement best practices.

There is another option for companies that don&#039;t want to make client-side changes or have a framework that would make it difficult to manage. You can conditionally exclude JS/CSS server-side based on UA. Following Yahoo graded browser support as a model you create whitelists and blacklists for who gets what.

We choose to always deliver a full set of CSS or JS if the UA wasn&#039;t on the blacklist. This allows feature detection and conditional comments in the browser, but allows us to skip markup and external assets for browsers we know it won&#039;t work for.</description>
		<content:encoded><![CDATA[<p>It is great to see another framework that makes it easier for people to follow progressive enhancement best practices.</p>
<p>There is another option for companies that don&#8217;t want to make client-side changes or have a framework that would make it difficult to manage. You can conditionally exclude JS/CSS server-side based on UA. Following Yahoo graded browser support as a model you create whitelists and blacklists for who gets what.</p>
<p>We choose to always deliver a full set of CSS or JS if the UA wasn&#8217;t on the blacklist. This allows feature detection and conditional comments in the browser, but allows us to skip markup and external assets for browsers we know it won&#8217;t work for.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: sixtyseconds</title>
		<link>http://ajaxian.com/archives/enhancejs/comment-page-1#comment-279293</link>
		<dc:creator>sixtyseconds</dc:creator>
		<pubDate>Thu, 25 Feb 2010 17:35:59 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/?p=8640#comment-279293</guid>
		<description>@BenGerrissen - &#039;faster development&#039;; oh...so by restructuring the whole way I architecture my websites and then adding this extra code, I will be able to develop faster? :)</description>
		<content:encoded><![CDATA[<p>@BenGerrissen &#8211; &#8216;faster development&#8217;; oh&#8230;so by restructuring the whole way I architecture my websites and then adding this extra code, I will be able to develop faster? :)</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: ScottJehl</title>
		<link>http://ajaxian.com/archives/enhancejs/comment-page-1#comment-279291</link>
		<dc:creator>ScottJehl</dc:creator>
		<pubDate>Thu, 25 Feb 2010 15:45:49 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/?p=8640#comment-279291</guid>
		<description>@RyanMorr: The IE sniff part is *only* there if you need to mimic a conditional comment. In other words, if your page uses an IE-only CSS file or something, EnhanceJS has a mechanism to support that for you. That detection is only used in that one case, so for all of the testing it only uses feature detection.  
Anyway, we agree that it&#039;d be nice to find a different way to include IE-only assets, and we&#039;re working on possibly using JS to inject conditional comments instead.</description>
		<content:encoded><![CDATA[<p>@RyanMorr: The IE sniff part is *only* there if you need to mimic a conditional comment. In other words, if your page uses an IE-only CSS file or something, EnhanceJS has a mechanism to support that for you. That detection is only used in that one case, so for all of the testing it only uses feature detection.<br />
Anyway, we agree that it&#8217;d be nice to find a different way to include IE-only assets, and we&#8217;re working on possibly using JS to inject conditional comments instead.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: ScottJehl</title>
		<link>http://ajaxian.com/archives/enhancejs/comment-page-1#comment-279290</link>
		<dc:creator>ScottJehl</dc:creator>
		<pubDate>Thu, 25 Feb 2010 15:29:52 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/?p=8640#comment-279290</guid>
		<description>Scott from Filament Group here (authors of EnhanceJS). Thanks, Ajaxian for covering our post! 

@PeteB: 
A while back, I thought the same thing, but the more we built sites with progressive enhancement, the more we saw that including unqualified, advanced CSS and JS on a page can be disastrous for users on older browsers and mobile devices (both old and new). Unfortunately, the norm these days is to test for the latest browsers (IE6-8,FF2+,Safari 2+, etc) and then turn a blind eye to the rest, assuming the page will probably &quot;just work&quot; in other browsers, even if it&#039;s not quite perfect.   Unfortunately, browser support for CSS and JS is not as clean as  support/doesn&#039;t support split, and when certain properties are improperly or incompletely supported, we often see a perfectly usable page get *enhanced* into a non-functional, unusable mess, and this is happening in browsers that are widely used today (particularly in developing nations). These days, the enhanced version of a site usually requires a tight synchronization of CSS and JS.  If either isn&#039;t supported well, the experience often breaks. For example, imagine creating a slider control, a dialog overlay, or client-side tabs without great CSS and JS support. This isn&#039;t limited to highly functional apps either - the problem exists in ordinary website layouts too, and plenty of popular sites offer up a broken experience to users who don&#039;t have the latest browsers.

The goal of EnhanceJS is universal accessibility, and applying progressive enhancement *only* when we know it&#039;ll work seems to be effective in achieving that that goal. As @Ben mentioned, there are other benefits to using EnhanceJS such as page load speed, since mobile devices won&#039;t have to download the JS and CSS they won&#039;t use. The &quot;low-fi toggle link&quot; even lets you cookie yourself for a low-fi experience if you have a browser that would normally pass, which is nice for iPhone users who just want a quick load, for instance. I know I&#039;d much prefer a perfectly functional, but less designed, page over a broken one. So our goal is trying to deliver the appropriate experience to the right browser. Sorry for the plug... you can read much more about all this in our new book :P http://filamentgroup.com/dwpe/</description>
		<content:encoded><![CDATA[<p>Scott from Filament Group here (authors of EnhanceJS). Thanks, Ajaxian for covering our post! </p>
<p>@PeteB:<br />
A while back, I thought the same thing, but the more we built sites with progressive enhancement, the more we saw that including unqualified, advanced CSS and JS on a page can be disastrous for users on older browsers and mobile devices (both old and new). Unfortunately, the norm these days is to test for the latest browsers (IE6-8,FF2+,Safari 2+, etc) and then turn a blind eye to the rest, assuming the page will probably &#8220;just work&#8221; in other browsers, even if it&#8217;s not quite perfect.   Unfortunately, browser support for CSS and JS is not as clean as  support/doesn&#8217;t support split, and when certain properties are improperly or incompletely supported, we often see a perfectly usable page get *enhanced* into a non-functional, unusable mess, and this is happening in browsers that are widely used today (particularly in developing nations). These days, the enhanced version of a site usually requires a tight synchronization of CSS and JS.  If either isn&#8217;t supported well, the experience often breaks. For example, imagine creating a slider control, a dialog overlay, or client-side tabs without great CSS and JS support. This isn&#8217;t limited to highly functional apps either &#8211; the problem exists in ordinary website layouts too, and plenty of popular sites offer up a broken experience to users who don&#8217;t have the latest browsers.</p>
<p>The goal of EnhanceJS is universal accessibility, and applying progressive enhancement *only* when we know it&#8217;ll work seems to be effective in achieving that that goal. As @Ben mentioned, there are other benefits to using EnhanceJS such as page load speed, since mobile devices won&#8217;t have to download the JS and CSS they won&#8217;t use. The &#8220;low-fi toggle link&#8221; even lets you cookie yourself for a low-fi experience if you have a browser that would normally pass, which is nice for iPhone users who just want a quick load, for instance. I know I&#8217;d much prefer a perfectly functional, but less designed, page over a broken one. So our goal is trying to deliver the appropriate experience to the right browser. Sorry for the plug&#8230; you can read much more about all this in our new book :P <a href="http://filamentgroup.com/dwpe/" rel="nofollow">http://filamentgroup.com/dwpe/</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: BenGerrissen</title>
		<link>http://ajaxian.com/archives/enhancejs/comment-page-1#comment-279288</link>
		<dc:creator>BenGerrissen</dc:creator>
		<pubDate>Thu, 25 Feb 2010 14:42:11 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/?p=8640#comment-279288</guid>
		<description>@RyanMorr, some people are not so skilled in CSS, hate degrading css hacks or have pixel perfect demanding clients and have a need for an IE6 only stylesheet. A lot of IE6 css quirks cannot be feature detected. (you don&#039;t need IE6 only stylesheets if a few pixels difference isn&#039;t an issue)
.
ps. I am in no way tied to EnhanceJS, but it&#039;s disturbing to see lack of common knowledge... Most frameworks are headed in this direction, not just EnhanceJS... It&#039;s not a fringe idea, it&#039;s becomming a standard... Get with the program.</description>
		<content:encoded><![CDATA[<p>@RyanMorr, some people are not so skilled in CSS, hate degrading css hacks or have pixel perfect demanding clients and have a need for an IE6 only stylesheet. A lot of IE6 css quirks cannot be feature detected. (you don&#8217;t need IE6 only stylesheets if a few pixels difference isn&#8217;t an issue)<br />
.<br />
ps. I am in no way tied to EnhanceJS, but it&#8217;s disturbing to see lack of common knowledge&#8230; Most frameworks are headed in this direction, not just EnhanceJS&#8230; It&#8217;s not a fringe idea, it&#8217;s becomming a standard&#8230; Get with the program.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: BenGerrissen</title>
		<link>http://ajaxian.com/archives/enhancejs/comment-page-1#comment-279287</link>
		<dc:creator>BenGerrissen</dc:creator>
		<pubDate>Thu, 25 Feb 2010 14:33:15 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/?p=8640#comment-279287</guid>
		<description>@PeteB....
- include non-js dependant files normally.
- use EnhanceJS to load js dependant files and css.
.
You know, display an Accordion as a list of articles without JS.
Add css files dynamically to transform an Accordion to an actual accordion.
Add Accordion behaviour through JS and kickstart the Accordion css by adding an js css class to the accordion container.
.
&#039;progressive enhancement&#039; means building sites with bare minimum dependencies FIRST and then progressively enhance it through JS. It&#039;s even better to only load the needed JS/CSS files when JS is actually present.
.
Furthermore, as a bonus, EnhanceJS adds files in such a way, your normally included css and html rendering doesn&#039;t get blocked/stalled.
.
Faster page load, smarter achitecture, better maintenance, faster development, faster working version for clients to see.
.
Gracefully degrading is not a technique, it&#039;s a result, progressive enhancement is THE technique to make sites gracefully degrading. If you don&#039;t get the benefit of EnhanceJS or similar frameworks, then you don&#039;t get &#039;Progressive enhancement&#039; at all and will be stuck with conditional comment abominations (which is a good technique that works, but worst choice of all the options at your disposal) and painful backwards enginering to make all your sugar and spice work without JS.
.
/shrug</description>
		<content:encoded><![CDATA[<p>@PeteB&#8230;.<br />
- include non-js dependant files normally.<br />
- use EnhanceJS to load js dependant files and css.<br />
.<br />
You know, display an Accordion as a list of articles without JS.<br />
Add css files dynamically to transform an Accordion to an actual accordion.<br />
Add Accordion behaviour through JS and kickstart the Accordion css by adding an js css class to the accordion container.<br />
.<br />
&#8216;progressive enhancement&#8217; means building sites with bare minimum dependencies FIRST and then progressively enhance it through JS. It&#8217;s even better to only load the needed JS/CSS files when JS is actually present.<br />
.<br />
Furthermore, as a bonus, EnhanceJS adds files in such a way, your normally included css and html rendering doesn&#8217;t get blocked/stalled.<br />
.<br />
Faster page load, smarter achitecture, better maintenance, faster development, faster working version for clients to see.<br />
.<br />
Gracefully degrading is not a technique, it&#8217;s a result, progressive enhancement is THE technique to make sites gracefully degrading. If you don&#8217;t get the benefit of EnhanceJS or similar frameworks, then you don&#8217;t get &#8216;Progressive enhancement&#8217; at all and will be stuck with conditional comment abominations (which is a good technique that works, but worst choice of all the options at your disposal) and painful backwards enginering to make all your sugar and spice work without JS.<br />
.<br />
/shrug</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: RyanMorr</title>
		<link>http://ajaxian.com/archives/enhancejs/comment-page-1#comment-279286</link>
		<dc:creator>RyanMorr</dc:creator>
		<pubDate>Thu, 25 Feb 2010 14:16:42 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/?p=8640#comment-279286</guid>
		<description>Seems like the code contradicts the purpose. A library that feature tests for potential enhancements, yet sniffs out IE?</description>
		<content:encoded><![CDATA[<p>Seems like the code contradicts the purpose. A library that feature tests for potential enhancements, yet sniffs out IE?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: stoimen</title>
		<link>http://ajaxian.com/archives/enhancejs/comment-page-1#comment-279285</link>
		<dc:creator>stoimen</dc:creator>
		<pubDate>Thu, 25 Feb 2010 13:52:13 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/?p=8640#comment-279285</guid>
		<description>Nice! But that&#039;s yet another js include :(</description>
		<content:encoded><![CDATA[<p>Nice! But that&#8217;s yet another js include :(</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: posaune</title>
		<link>http://ajaxian.com/archives/enhancejs/comment-page-1#comment-279284</link>
		<dc:creator>posaune</dc:creator>
		<pubDate>Thu, 25 Feb 2010 13:48:57 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/?p=8640#comment-279284</guid>
		<description>@PeteB The whole point of this library is so browsers with less capable engines don&#039;t get content they can&#039;t handle. So a user with JavaScript disabled will get a proper, functioning site without any CSS/images/HTML that are only designed for JavaScript functionality. It seems to me that this *enhances* the experience for no-JS users.</description>
		<content:encoded><![CDATA[<p>@PeteB The whole point of this library is so browsers with less capable engines don&#8217;t get content they can&#8217;t handle. So a user with JavaScript disabled will get a proper, functioning site without any CSS/images/HTML that are only designed for JavaScript functionality. It seems to me that this *enhances* the experience for no-JS users.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: vjeux</title>
		<link>http://ajaxian.com/archives/enhancejs/comment-page-1#comment-279283</link>
		<dc:creator>vjeux</dc:creator>
		<pubDate>Thu, 25 Feb 2010 13:30:41 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/?p=8640#comment-279283</guid>
		<description>Looks like to be an alternative to Modernizr
http://www.modernizr.com/</description>
		<content:encoded><![CDATA[<p>Looks like to be an alternative to Modernizr<br />
<a href="http://www.modernizr.com/" rel="nofollow">http://www.modernizr.com/</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: PeteB</title>
		<link>http://ajaxian.com/archives/enhancejs/comment-page-1#comment-279282</link>
		<dc:creator>PeteB</dc:creator>
		<pubDate>Thu, 25 Feb 2010 13:00:57 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/?p=8640#comment-279282</guid>
		<description>@Ben I do know that term, I also know the term &#039;graceful degradation&#039;.

It may be more convenient to load assets dynamically like this, but it isn&#039;t a very good service to users with JavaScript disabled; a better, although less slick, alternative is the conditional comments that most people are already using.</description>
		<content:encoded><![CDATA[<p>@Ben I do know that term, I also know the term &#8216;graceful degradation&#8217;.</p>
<p>It may be more convenient to load assets dynamically like this, but it isn&#8217;t a very good service to users with JavaScript disabled; a better, although less slick, alternative is the conditional comments that most people are already using.</p>
]]></content:encoded>
	</item>
</channel>
</rss>

