<?xml version="1.0" encoding="utf-8"?>
<rss xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title>LoopJ - Latest Comments in A Django Developer&amp;#8217;s Views on Rails</title><link>http://loopj.disqus.com/</link><description></description><atom:link href="https://loopj.disqus.com/a_django_developer8217s_views_on_rails_38/latest.rss" rel="self"></atom:link><language>en</language><lastBuildDate>Fri, 15 Apr 2011 14:39:52 -0000</lastBuildDate><item><title>Re: A Django Developer&amp;#8217;s Views on Rails</title><link>http://loopj.com/2009/05/23/a-django-developers-views-on-rails/#comment-185248007</link><description>&lt;p&gt;aaaaaggrgtgtg wants to be your friend in the Heyzap for Android.&lt;/p&gt;&lt;p&gt;Accept aaaaaggrgtgtg's invitation and find out what games he is playing at:&lt;/p&gt;&lt;p&gt;&lt;a href="http://www.heyzap.com/mobile?src=e" rel="nofollow noopener" target="_blank" title="http://www.heyzap.com/mobile?src=e"&gt;http://www.heyzap.com/mobil...&lt;/a&gt;&lt;/p&gt;&lt;p&gt;Your friends at Heyzap,&lt;br&gt;Accept Invitation: &lt;a href="http://www.heyzap.com/mobile?src=e" rel="nofollow noopener" target="_blank" title="http://www.heyzap.com/mobile?src=e"&gt;http://www.heyzap.com/mobil...&lt;/a&gt;&lt;/p&gt;&lt;p&gt;This email is intended for  To unsubscribe from Heyzap (Invite Requests) emails go here: &lt;a href="http://www.heyzap.com/mobile?unsubscribe_email=notifications-UGFC72MYAO%40disqus.net" rel="nofollow noopener" target="_blank" title="http://www.heyzap.com/mobile?unsubscribe_email=notifications-UGFC72MYAO%40disqus.net"&gt;http://www.heyzap.com/mobil...&lt;/a&gt; .&lt;br&gt;© Heyzap, 564 Howard Street, San Francisco, CA 94105&lt;/p&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">James Smith</dc:creator><pubDate>Fri, 15 Apr 2011 14:39:52 -0000</pubDate></item><item><title>Re: A Django Developer&amp;#8217;s Views on Rails</title><link>http://loopj.com/2009/05/23/a-django-developers-views-on-rails/#comment-22974921</link><description>&lt;p&gt;I really like this site.Thanks for sharing this.Thanks for giving good information.&lt;a href="http://www.mcsetoday.com" rel="nofollow noopener" target="_blank" title="http://www.mcsetoday.com"&gt;mcse practice exams&lt;/a&gt;&lt;br&gt;&lt;/p&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">pass4sure5</dc:creator><pubDate>Sat, 14 Nov 2009 04:40:15 -0000</pubDate></item><item><title>Re: A Django Developer&amp;#8217;s Views on Rails</title><link>http://loopj.com/2009/05/23/a-django-developers-views-on-rails/#comment-10807473</link><description>&lt;p&gt;Great article, I am both a ruby and python developer use django and rails all the time. To me the biggest thing missing from django is a default migration system.&lt;/p&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Vitaly Babiy</dc:creator><pubDate>Fri, 12 Jun 2009 13:44:20 -0000</pubDate></item><item><title>Re: A Django Developer&amp;#8217;s Views on Rails</title><link>http://loopj.com/2009/05/23/a-django-developers-views-on-rails/#comment-10700071</link><description>&lt;p&gt;There's a few other differences that I found extremely important but no one else has commented on yet.&lt;/p&gt;&lt;p&gt;1) Python documentation is significantly better than the equivalent Ruby documentation.  If you want to learn Python or look up a function, you go to the Python website and you're done.  For Ruby, you can find a large number of third party tutorials and published books...  The same comments apply for Django compared to Rails.&lt;/p&gt;&lt;p&gt;2) Based on relatively little experience but I get the distinct impression that Rails is willing to make seriously backwards incompatible changes for relatively minor reasons.  The few Rails developers I've had a chance to talk to personally also aren't too thrilled about this aspect.&lt;/p&gt;&lt;p&gt;3) Ruby makes much heavier use of magical function names.  If you know what they are, that's all fine and good.  If you need to consult documentation or are trying to link it back to how it was created however...&lt;/p&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">B.Keyes</dc:creator><pubDate>Wed, 10 Jun 2009 11:39:32 -0000</pubDate></item><item><title>Re: A Django Developer&amp;#8217;s Views on Rails</title><link>http://loopj.com/2009/05/23/a-django-developers-views-on-rails/#comment-10347656</link><description>&lt;p&gt;Argumentative? This has to be THE most rational discussion I've ever seen of Rails vs. Django. Usually, these things devolve into a Southparkian mess of namecalling...&lt;/p&gt;&lt;p&gt;Anyway, I'm not sure what he's talking about exactly when he says "rack apps." Whether he literally means microframeworks like Sinatra, or Rails own internal microframework, Metal. Both are very cool, but have sort of niche appeal.&lt;/p&gt;&lt;p&gt;If he's talking about Engines, then let me say +1. It doesn't quite get us to Djangoland, but it comes close.&lt;/p&gt;&lt;p&gt;The bottom line is it's good to see these frameworks growing and learning from one another... migrations to Django; engines to Rails.&lt;/p&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Aron Pilhofer</dc:creator><pubDate>Mon, 01 Jun 2009 07:23:52 -0000</pubDate></item><item><title>Re: A Django Developer&amp;#8217;s Views on Rails</title><link>http://loopj.com/2009/05/23/a-django-developers-views-on-rails/#comment-10347584</link><description>&lt;p&gt;I checked out Streamlined a long time ago, and it wasn't bad. Have not looked at Hobo, but will do so. Maybe I should have looked again before making such a blanket statement, but the Django Admin is so freakin' elegant, and gives you so much right out of the box, it would shock me if either one were close. &lt;/p&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Aron Pilhofer</dc:creator><pubDate>Mon, 01 Jun 2009 07:16:57 -0000</pubDate></item><item><title>Re: A Django Developer&amp;#8217;s Views on Rails</title><link>http://loopj.com/2009/05/23/a-django-developers-views-on-rails/#comment-10303662</link><description>&lt;p&gt;@Aron, I don't mean to appear argumentative but regarding your last point you should check Justin George's comment, a few comments above the comment you made. Loose coupling is on the way for Rails in a very big way. It's going to be an awesome improvement.&lt;/p&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Giles Bowkett</dc:creator><pubDate>Sat, 30 May 2009 18:15:07 -0000</pubDate></item><item><title>Re: A Django Developer&amp;#8217;s Views on Rails</title><link>http://loopj.com/2009/05/23/a-django-developers-views-on-rails/#comment-10303490</link><description>&lt;p&gt;It's an opinion piece Jason. I'm not saying rails/ruby is bad I'm saying&lt;br&gt;they are different and talking about pain points in transition.&lt;br&gt;If you've ever worked on a project with crazy developers you can probably&lt;br&gt;appreciate what I'm saying.&lt;/p&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">James Smith</dc:creator><pubDate>Sat, 30 May 2009 18:03:08 -0000</pubDate></item><item><title>Re: A Django Developer&amp;#8217;s Views on Rails</title><link>http://loopj.com/2009/05/23/a-django-developers-views-on-rails/#comment-10301812</link><description>&lt;p&gt;A door on an airplane will let you open it and jump out.  Should we get rid of the door?  It still serves an important purpose.  Just because someone may abuse something does not mean it should not exist.  I hate frameworks that act as though I am not intelligent enough to take care not to do things incorrectly.&lt;/p&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Jason</dc:creator><pubDate>Sat, 30 May 2009 16:05:38 -0000</pubDate></item><item><title>Re: A Django Developer&amp;#8217;s Views on Rails</title><link>http://loopj.com/2009/05/23/a-django-developers-views-on-rails/#comment-10301759</link><description>&lt;p&gt;I can't stand people that speak in absolutes when they know nothing about what they are speaking about.&lt;/p&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Jason</dc:creator><pubDate>Sat, 30 May 2009 16:02:02 -0000</pubDate></item><item><title>Re: A Django Developer&amp;#8217;s Views on Rails</title><link>http://loopj.com/2009/05/23/a-django-developers-views-on-rails/#comment-10294631</link><description>&lt;p&gt;nice comment, you should write a blogpost :)&lt;/p&gt;&lt;p&gt;By The Way, Streamlined and Hobo are pretty cool for admin UIs&lt;br&gt;&lt;/p&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">carlitus</dc:creator><pubDate>Sat, 30 May 2009 12:11:22 -0000</pubDate></item><item><title>Re: A Django Developer&amp;#8217;s Views on Rails</title><link>http://loopj.com/2009/05/23/a-django-developers-views-on-rails/#comment-10292102</link><description>&lt;p&gt;Hey,&lt;/p&gt;&lt;p&gt;I'm a Ruby/Rails guy with some Django experience, and I think you did a good job of hitting some of the bigger differences. I think you're absolutely right that these are more preferences than game-changing differences. I happen to like Ruby, but I come from a Perl background. So there you go.&lt;/p&gt;&lt;p&gt;Anyway, a few points, and corrections:&lt;/p&gt;&lt;p&gt;1) You can use regular expressions in Rails routes in just the way you can in Django. It's just not particularly common or well-documented. But you can do it.&lt;/p&gt;&lt;p&gt;2) I totally, totally agree with you on the view code. It is a very bad practice to throw app logic into the view, but people do it, and Rails allows it. As with all things Rails, however, there are options: Liquid, for example, is a port of the Django templatting language to Rails. We are looking at starting to use it for our projects as a "safe" alternative to erb -- so we can allow view code to be changed without worrying about exposing the full power of ruby in a view.&lt;/p&gt;&lt;p&gt;3) I'm surprised you didn't mention with Django admin, which almost all Django folks do. It is a big plus over Rails. There are plugins that kind of do the same thing, but (at least the last time I looked) nothing is anywhere near as good.&lt;/p&gt;&lt;p&gt;4) I'm equally surprised you didn't mention Django's seriously underwhelming ORM. I know it's getting (or maybe has gotten? The last version I touched was .96) a major re-write, but it was nowhere near as complete as AR for Rails.&lt;/p&gt;&lt;p&gt;4a) Of course, most Django folks don't see AR as a plus, given all the behind-the-scenes magic. They have a point, and at least right now we're sort of stuck with it. But there is hope: Rails 3 will make swapping in datamapper or sequel or another ORM easy as pie (we hope).&lt;/p&gt;&lt;p&gt;5) Loose coupling within Django apps is a HUGE win for Django, and I've wished there were something like it for Rails. Rails Engines are close, but the idea that you can just drop one app into another and off you go is pretty slick indeed.&lt;/p&gt;&lt;p&gt;Anyway. Nice piece.&lt;/p&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Aron Pilhofer</dc:creator><pubDate>Sat, 30 May 2009 09:52:32 -0000</pubDate></item><item><title>Re: A Django Developer&amp;#8217;s Views on Rails</title><link>http://loopj.com/2009/05/23/a-django-developers-views-on-rails/#comment-10289180</link><description>&lt;p&gt;Python: Ugly's ruby cousin&lt;/p&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">andrew</dc:creator><pubDate>Sat, 30 May 2009 04:34:35 -0000</pubDate></item><item><title>Re: A Django Developer&amp;#8217;s Views on Rails</title><link>http://loopj.com/2009/05/23/a-django-developers-views-on-rails/#comment-10284284</link><description>&lt;p&gt;For the purpose of sharing my models among other projects I simply make a symlink to my model folder.&lt;/p&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Moe</dc:creator><pubDate>Fri, 29 May 2009 23:25:30 -0000</pubDate></item><item><title>Re: A Django Developer&amp;#8217;s Views on Rails</title><link>http://loopj.com/2009/05/23/a-django-developers-views-on-rails/#comment-10284273</link><description>&lt;p&gt;I agree, but you often have to work with _bad_ developers too! :)&lt;/p&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">James Smith</dc:creator><pubDate>Fri, 29 May 2009 23:25:08 -0000</pubDate></item><item><title>Re: A Django Developer&amp;#8217;s Views on Rails</title><link>http://loopj.com/2009/05/23/a-django-developers-views-on-rails/#comment-10280618</link><description>&lt;p&gt;My big pet peeve in web development is the idea of a templating language. I just don't get it and try to steer away from frameworks that use them.  A good developer knows what level of code belongs in a view. And on top of it, MVC by its nature already removes 2/3 of the possible code that could go into a view via model &amp;amp; controller. So to add a templating language, which is programming logic anyway, to a view is pointless. The whole argument about making it easier on the designer is pointless too. I mean compare looping logic that iterates through a list in python and in the template language. Not that much different. It would be easier to just have to deal with the programming language 100%.&lt;/p&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">John</dc:creator><pubDate>Fri, 29 May 2009 20:07:29 -0000</pubDate></item><item><title>Re: A Django Developer&amp;#8217;s Views on Rails</title><link>http://loopj.com/2009/05/23/a-django-developers-views-on-rails/#comment-10277694</link><description>&lt;p&gt;@OtengiM&lt;br&gt;I think you'd be surprised with how awesome the Rails community is.  Don't let a few people skew your view of the Rails community as a whole.  Please check out &lt;a href="http://railsbridge.org/" rel="nofollow noopener" target="_blank" title="http://railsbridge.org/"&gt;http://railsbridge.org/&lt;/a&gt; as an example.&lt;/p&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">kblake</dc:creator><pubDate>Fri, 29 May 2009 18:56:38 -0000</pubDate></item><item><title>Re: A Django Developer&amp;#8217;s Views on Rails</title><link>http://loopj.com/2009/05/23/a-django-developers-views-on-rails/#comment-10277387</link><description>&lt;p&gt;Python and Django all the way for me!, I can't stand Rails community. They think they are the master of the universe or some shit as that.&lt;/p&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">OtengiM</dc:creator><pubDate>Fri, 29 May 2009 18:45:21 -0000</pubDate></item><item><title>Re: A Django Developer&amp;#8217;s Views on Rails</title><link>http://loopj.com/2009/05/23/a-django-developers-views-on-rails/#comment-10262071</link><description>&lt;p&gt;I don't know perl. I tried many times python before ruby however when I saw ruby first time I learned it in two hours it seems a lot more readable than python (and perl) to me.&lt;/p&gt;&lt;p&gt;"having multiple ways of doing the same thing" is not a problem for me, I like that, I like to have options and *choose*&lt;/p&gt;&lt;p&gt;"Multiple Apps in a Project" -&amp;gt; what about the engines? perhaps rails3' mountable apps will solve this issue.&lt;br&gt;&lt;/p&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Daniel</dc:creator><pubDate>Fri, 29 May 2009 12:13:38 -0000</pubDate></item><item><title>Re: A Django Developer&amp;#8217;s Views on Rails</title><link>http://loopj.com/2009/05/23/a-django-developers-views-on-rails/#comment-10258045</link><description>&lt;p&gt;len() is just a built-in, consistent alias to call instance.__len__, the same way type() calls instance.__class__.&lt;/p&gt;&lt;p&gt;What's wrong in that?&lt;/p&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Henrique</dc:creator><pubDate>Fri, 29 May 2009 10:12:16 -0000</pubDate></item><item><title>Re: A Django Developer&amp;#8217;s Views on Rails</title><link>http://loopj.com/2009/05/23/a-django-developers-views-on-rails/#comment-10240910</link><description>&lt;p&gt;Yea, this is true. The "older" string methods have been kept around for historical reasons &lt;a href="http://www.diveintopython.org/native_data_types/joining_lists.html#d0e7982" rel="nofollow noopener" target="_blank" title="http://www.diveintopython.org/native_data_types/joining_lists.html#d0e7982"&gt;http://www.diveintopython.o...&lt;/a&gt;&lt;/p&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Byron Ruth</dc:creator><pubDate>Thu, 28 May 2009 21:36:07 -0000</pubDate></item><item><title>Re: A Django Developer&amp;#8217;s Views on Rails</title><link>http://loopj.com/2009/05/23/a-django-developers-views-on-rails/#comment-10240637</link><description>&lt;p&gt;I completely agree Robert. I wasn't saying it makes for a bad framework,&lt;br&gt;more that it was more open to developer abuse.&lt;br&gt;Thanks for the comment.&lt;/p&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">James Smith</dc:creator><pubDate>Thu, 28 May 2009 21:24:44 -0000</pubDate></item><item><title>Re: A Django Developer&amp;#8217;s Views on Rails</title><link>http://loopj.com/2009/05/23/a-django-developers-views-on-rails/#comment-10240574</link><description>&lt;p&gt;Nice article James. Having done a fair amount of programming in Python and Ruby I have been through some of the transition pain you describe. For example, should I use 'and' or '&amp;amp;&amp;amp;' in Ruby? (Answer: use &amp;amp;&amp;amp;. It's got a higher precedence and is more canonical Ruby code.) Most of that kind of confusion goes away after a while. I've come to really love Ruby. IMO it's a beautiful and flexible language. If TMTOWTDI bothers you though, Ruby may not be a good fit for you.&lt;/p&gt;&lt;p&gt;You make a good point with the multiple apps in a project concern. But that's being addressed in Rails 3. There's also an interesting trend in the Ruby community (well, maybe not a trend just yet) of building several small, limited responsibility apps that talk via HTTP/REST. The Sinatra guys gave a talk about this at RubyConf 2008 (&lt;a href="http://rubyconf2008.confreaks.com/lightweight-web-services.html)" rel="nofollow noopener" target="_blank" title="http://rubyconf2008.confreaks.com/lightweight-web-services.html)"&gt;http://rubyconf2008.confrea...&lt;/a&gt; That approach definitely keeps your logic separate and contained, but makes your data available between apps. It's probably not the best approach in all situations but it works well for some.&lt;/p&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">tjstankus</dc:creator><pubDate>Thu, 28 May 2009 21:22:33 -0000</pubDate></item><item><title>Re: A Django Developer&amp;#8217;s Views on Rails</title><link>http://loopj.com/2009/05/23/a-django-developers-views-on-rails/#comment-10240479</link><description>&lt;p&gt;You have to be careful in saying things like "views allow business logic in them" as a con for Rails. The rails philosophy certainly doesn't support that approach and that is more of an issue with bad programming of the developer and not of rails itself.&lt;/p&gt;&lt;p&gt;I see arguments like this all the time where someone says, "Ruby/Rails lets you do this....so it's a bad language/framework to use". What a language or framework allows isn't necessarily the issue, but rather how the programmer uses it. &lt;/p&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Robert</dc:creator><pubDate>Thu, 28 May 2009 21:18:52 -0000</pubDate></item><item><title>Re: A Django Developer&amp;#8217;s Views on Rails</title><link>http://loopj.com/2009/05/23/a-django-developers-views-on-rails/#comment-10240181</link><description>&lt;p&gt;Actually Rails *does* separate business and template/view logic. James's complaint that "you can chuck as much rails code as you like in amongst your markup" is about what you could do, not about what you should do, or what Rails encourages you to do. I've looked at a lot of Rails code, some of it downright bad, but I've never seen gross and consistent abuse of model/view logic separation. It's just not a problem in the real world.&lt;/p&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">tjstankus</dc:creator><pubDate>Thu, 28 May 2009 21:07:30 -0000</pubDate></item></channel></rss>