<?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: Dear Railsists, Please Don&#8217;t be Obtrusive</title>
	<atom:link href="http://www.rubyrailways.com/dear-railsists-please-dont-be-obtrusive/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.rubyrailways.com/dear-railsists-please-dont-be-obtrusive/</link>
	<description>Experiences with Ruby and Rails, Web2.0 and other development technologies</description>
	<pubDate>Sun, 14 Mar 2010 04:05:38 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.7</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: Георгий Шумилов</title>
		<link>http://www.rubyrailways.com/dear-railsists-please-dont-be-obtrusive/comment-page-1/#comment-137704</link>
		<dc:creator>Георгий Шумилов</dc:creator>
		<pubDate>Thu, 22 Oct 2009 08:46:57 +0000</pubDate>
		<guid isPermaLink="false">http://www.rubyrailways.com/?p=437#comment-137704</guid>
		<description>&lt;p&gt;Очень понравился ваш сайт, спасибо. Удачи.&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>Очень понравился ваш сайт, спасибо. Удачи.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Виссарион Андреев</title>
		<link>http://www.rubyrailways.com/dear-railsists-please-dont-be-obtrusive/comment-page-1/#comment-137699</link>
		<dc:creator>Виссарион Андреев</dc:creator>
		<pubDate>Thu, 22 Oct 2009 05:59:36 +0000</pubDate>
		<guid isPermaLink="false">http://www.rubyrailways.com/?p=437#comment-137699</guid>
		<description>&lt;p&gt;ребята – не бросайте сайт, приятно читать&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>ребята – не бросайте сайт, приятно читать</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Виталий Ракутин</title>
		<link>http://www.rubyrailways.com/dear-railsists-please-dont-be-obtrusive/comment-page-1/#comment-135168</link>
		<dc:creator>Виталий Ракутин</dc:creator>
		<pubDate>Fri, 21 Aug 2009 10:40:19 +0000</pubDate>
		<guid isPermaLink="false">http://www.rubyrailways.com/?p=437#comment-135168</guid>
		<description>&lt;p&gt;спасибо, прочитал на одном дыхании&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>спасибо, прочитал на одном дыхании</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Андрей Краснов</title>
		<link>http://www.rubyrailways.com/dear-railsists-please-dont-be-obtrusive/comment-page-1/#comment-135159</link>
		<dc:creator>Андрей Краснов</dc:creator>
		<pubDate>Fri, 21 Aug 2009 01:53:52 +0000</pubDate>
		<guid isPermaLink="false">http://www.rubyrailways.com/?p=437#comment-135159</guid>
		<description>&lt;p&gt;Добротно сделано, контент порадовал, сам на многие блоги и не зашёл бы никогда…&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>Добротно сделано, контент порадовал, сам на многие блоги и не зашёл бы никогда…</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Владимир Осокин</title>
		<link>http://www.rubyrailways.com/dear-railsists-please-dont-be-obtrusive/comment-page-1/#comment-133343</link>
		<dc:creator>Владимир Осокин</dc:creator>
		<pubDate>Tue, 07 Jul 2009 13:31:07 +0000</pubDate>
		<guid isPermaLink="false">http://www.rubyrailways.com/?p=437#comment-133343</guid>
		<description>&lt;p&gt;Хм… Но, как говорят, а воз и ныне там&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>Хм… Но, как говорят, а воз и ныне там</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Леонтий Рамский</title>
		<link>http://www.rubyrailways.com/dear-railsists-please-dont-be-obtrusive/comment-page-1/#comment-133076</link>
		<dc:creator>Леонтий Рамский</dc:creator>
		<pubDate>Mon, 29 Jun 2009 14:58:03 +0000</pubDate>
		<guid isPermaLink="false">http://www.rubyrailways.com/?p=437#comment-133076</guid>
		<description>&lt;p&gt;Пост понравился, пишите еще. Я с удовольствием прочту.&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>Пост понравился, пишите еще. Я с удовольствием прочту.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Никанор Рабинов</title>
		<link>http://www.rubyrailways.com/dear-railsists-please-dont-be-obtrusive/comment-page-1/#comment-133070</link>
		<dc:creator>Никанор Рабинов</dc:creator>
		<pubDate>Mon, 29 Jun 2009 13:46:31 +0000</pubDate>
		<guid isPermaLink="false">http://www.rubyrailways.com/?p=437#comment-133070</guid>
		<description>&lt;p&gt;о да.. согласен&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>о да.. согласен</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Зигмунд Равилов</title>
		<link>http://www.rubyrailways.com/dear-railsists-please-dont-be-obtrusive/comment-page-1/#comment-133058</link>
		<dc:creator>Зигмунд Равилов</dc:creator>
		<pubDate>Mon, 29 Jun 2009 08:16:12 +0000</pubDate>
		<guid isPermaLink="false">http://www.rubyrailways.com/?p=437#comment-133058</guid>
		<description>&lt;p&gt;сайт в опере немного не корректо показывается, а так все супер! спасибки за умные мысли!&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>сайт в опере немного не корректо показывается, а так все супер! спасибки за умные мысли!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Gabe da Silveira</title>
		<link>http://www.rubyrailways.com/dear-railsists-please-dont-be-obtrusive/comment-page-1/#comment-129991</link>
		<dc:creator>Gabe da Silveira</dc:creator>
		<pubDate>Mon, 01 Jun 2009 08:45:14 +0000</pubDate>
		<guid isPermaLink="false">http://www.rubyrailways.com/?p=437#comment-129991</guid>
		<description>&lt;p&gt;I agree fundamentally here, but I think the message is muddied a bit by the prototype/jquery dichotomy, and also by the inclusion of so many inconsequential setup details.  If you were to strip down the examples to just the RJS version vs an equivalent pure javascript implementation it would be easier to compare.&lt;/p&gt;

&lt;p&gt;I have to admit that in the early days of Rails I was really enamoured with the Prototype integration and (when it was release later) RJS.  In retrospect I think this is simply because Javascript seemed difficult and error-prone, so better to encapsulate as much logic into well-tested Rails components.  However since then I've actually taken the time to learn Javascript properly (Javascript: The Good Parts by Douglas Crockford should be mandatory reading for any web developer period).  The fact is that the Prototype helpers in Rails give you some handy defaults, but the abstraction leaks horribly as soon as you need to customize anything.  You end up having to mentally translate the Ruby to Javascript and trace the AJAX flow through a bunch of different files anyway which negates any benefit you got in the first place.&lt;/p&gt;

&lt;p&gt;If instead you embrace Javascript and learn how to properly engineer Javascript code you will have a lot more freedom of how to construct the interface between your Javascript and your Ruby.  I recently converted an AJAX function from RJS to pure Javascript, and was able to realize incredible benefits to front-end performance, memory usage, clarity, integration to other AJAX features.  I replaced 200 lines of Ruby with 50 lines of Javascript.  That's not to say RJS doesn't have its place, but unless you really know Javascript you will be tempted to misuse it.&lt;/p&gt;

&lt;p&gt;Having significant Javascript code in templates, strings, or helpers is a definite smell.&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>I agree fundamentally here, but I think the message is muddied a bit by the prototype/jquery dichotomy, and also by the inclusion of so many inconsequential setup details.  If you were to strip down the examples to just the RJS version vs an equivalent pure javascript implementation it would be easier to compare.</p>
<p>I have to admit that in the early days of Rails I was really enamoured with the Prototype integration and (when it was release later) RJS.  In retrospect I think this is simply because Javascript seemed difficult and error-prone, so better to encapsulate as much logic into well-tested Rails components.  However since then I&#8217;ve actually taken the time to learn Javascript properly (Javascript: The Good Parts by Douglas Crockford should be mandatory reading for any web developer period).  The fact is that the Prototype helpers in Rails give you some handy defaults, but the abstraction leaks horribly as soon as you need to customize anything.  You end up having to mentally translate the Ruby to Javascript and trace the AJAX flow through a bunch of different files anyway which negates any benefit you got in the first place.</p>
<p>If instead you embrace Javascript and learn how to properly engineer Javascript code you will have a lot more freedom of how to construct the interface between your Javascript and your Ruby.  I recently converted an AJAX function from RJS to pure Javascript, and was able to realize incredible benefits to front-end performance, memory usage, clarity, integration to other AJAX features.  I replaced 200 lines of Ruby with 50 lines of Javascript.  That&#8217;s not to say RJS doesn&#8217;t have its place, but unless you really know Javascript you will be tempted to misuse it.</p>
<p>Having significant Javascript code in templates, strings, or helpers is a definite smell.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Ingemar Edsborn</title>
		<link>http://www.rubyrailways.com/dear-railsists-please-dont-be-obtrusive/comment-page-1/#comment-129667</link>
		<dc:creator>Ingemar Edsborn</dc:creator>
		<pubDate>Fri, 29 May 2009 10:55:16 +0000</pubDate>
		<guid isPermaLink="false">http://www.rubyrailways.com/?p=437#comment-129667</guid>
		<description>&lt;p&gt;oh hai guise! Wow, this is an old rotten corpse you've brought back to daylight! &lt;/p&gt;

&lt;p&gt;Unobtrusive Javascript might be cool for that small trendy little shopping-list application that you want to access from your iPhone, Lynx browser, web scraper and Tamagotchi. But trust me on this, as soon as your application grows big it &lt;em&gt;will&lt;/em&gt; be unmaintainable. Last 1,5 years or so I've been in a team building a huge application in Rails that relies heavily on AJAX. I'm certain that it would been a real suffering without the Prototype helpers provided by Rails. Sure, more complex javascript we've had to move out to a javascript file. But for all those zillions of forms and minor page updates we'll find the code where we expect and don't have to wade through miles of .js files to find some attached method.&lt;/p&gt;

&lt;p&gt;Rails Prototype helpers might give you ugly HTML source output, but I'm a pragmatist, I don't really care about that.&lt;/p&gt;

&lt;p&gt;And putting the response in application.js is a violation against the MVC-structure! It belongs there just as well as your HTML, XML or JSON response! I'm also pretty certain that those who dismiss RJS templates have not yet understood it's awesomeness. They are small, powerful and very easy to maintain. Each response has it's own place. If you have more than four-five controllers and do a little more than slide a div to the right, putting all your response in hand coded methods in application.js -- to me that sound like a recipe for a great mess!&lt;/p&gt;

&lt;p&gt;(uhm, sorry for the harsh tone. It was not my intent.)&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>oh hai guise! Wow, this is an old rotten corpse you&#8217;ve brought back to daylight! </p>
<p>Unobtrusive Javascript might be cool for that small trendy little shopping-list application that you want to access from your iPhone, Lynx browser, web scraper and Tamagotchi. But trust me on this, as soon as your application grows big it <em>will</em> be unmaintainable. Last 1,5 years or so I&#8217;ve been in a team building a huge application in Rails that relies heavily on AJAX. I&#8217;m certain that it would been a real suffering without the Prototype helpers provided by Rails. Sure, more complex javascript we&#8217;ve had to move out to a javascript file. But for all those zillions of forms and minor page updates we&#8217;ll find the code where we expect and don&#8217;t have to wade through miles of .js files to find some attached method.</p>
<p>Rails Prototype helpers might give you ugly HTML source output, but I&#8217;m a pragmatist, I don&#8217;t really care about that.</p>
<p>And putting the response in application.js is a violation against the MVC-structure! It belongs there just as well as your HTML, XML or JSON response! I&#8217;m also pretty certain that those who dismiss RJS templates have not yet understood it&#8217;s awesomeness. They are small, powerful and very easy to maintain. Each response has it&#8217;s own place. If you have more than four-five controllers and do a little more than slide a div to the right, putting all your response in hand coded methods in application.js &#8212; to me that sound like a recipe for a great mess!</p>
<p>(uhm, sorry for the harsh tone. It was not my intent.)</p>
]]></content:encoded>
	</item>
</channel>
</rss>
