ASKHN: Django OR Rails
I am a ASP.NET developer, but want to learn other frameworks/language (open source). I don't know from where i should start and why? Django and Rails both seems promising, but i am confused which one i should choose to start, or i should choose some other framework. I know learning the language (python or ruby) is must before start Django or Rails.
Please advise.
[+] [-] michael_scheibe|16 years ago|reply
As others have said, try some tutorials for each to get a feel.
Django Tutorial: http://docs.djangoproject.com/en/1.2/
Rails Guides: http://guides.rails.info/getting_started.html
The soon to be released Rails 3 looks excellent, so I would personally use that over Django 1.2.
Also, the Rails community is a bit more organized as everyone uses GitHub, so there are some fantastic and well maintained gems that can help you speed through your development.
Rails Resources:
http://ruby5.envylabs.com/ - Great podcast discussing recent developments in the Ruby/Rails community.
http://ruby-toolbox.com/ - Overview of gems by category. Great to figure out what people are using for pagination or search or whatever.
http://railscasts.com/ - Screencasts covering new gems and Rails features.
http://railsconf.blip.tv - Videos from the latest RailsConf, if you want to get a feel for the community.
Django Resources:
http://djangodose.com/ - Good Django podcasts. There is one for the community stuff, and one for the newest features of Django trunk.
http://djangocon.blip.tv/ - DjangoCon, check it out for the same reasons as RailsConf.
[+] [-] huwshimi|16 years ago|reply
[+] [-] jpcx01|16 years ago|reply
[+] [-] stephenjudkins|16 years ago|reply
Most of the complaints I had about Rails have been addressed by the upcoming Rails 3. If you're learning Rails for fun, you might as well start using the Rails 3 beta since there are tons of new goodies in it.
Network effects are very important for these kind of things, so I'd recommend checking out local user groups for both languages/frameworks to see where you'd fit in best. It seems a good deal more people in my town (Portland, OR) are familiar with Rails than Django. Anecdotally, while there are more Ruby/Rails developers around, their average proficiency is lower than Python/Django devs. Also, the culture surrounding each framework has a different vibe.
I don't want to draw too many generalizations, but in my personal view differences in culture do exist. Getting to know other developers who use both tools should be an important part of picking which language/framework to use.
Or, learn to use both. It'll be good for you. Knowing the strengths and weaknesses of each language will make you a better developer, and reduce the chance of you becoming an--excuse the term--ignorant zealot.
[+] [-] AENGINE|16 years ago|reply
2. Free hosting on Google App Engine (note: to Heroku proponents 5Mb storage is a joke)
3. Python is extensible in a way ruby isnt, even OpenCV has a python port
Finally ruby is more popular with hip programmer crowd (HN reading, Latte sipping, Apple fanbois, with no CS degrees )
While Python is more popular with "gets work done", Googler's and Advanced CS degree holders (E.g. nearly all top CS departments prefer Python after C++ and maybe java), you would be lucky if you found someone using Ruby. If you dont believe me, here is State Of Art OSS in Machine Learning http://mloss.org/software/search/?searchterm=python&post...
Finally Since you are from ASP.NET background, have a look at SCALA it seems to be a nice language and its based on JVM. And twitter started using it after running in issues with Ruby. (Another reason why Ruby should be avoided, consider that python was used for Youtube)
[+] [-] oomkiller|16 years ago|reply
[+] [-] alanthonyc|16 years ago|reply
http://flask.pocoo.org/
It's a lightweight framework on Python. The author is using it to explore the basics of building a famework.
I'm a little over a year into using Django now, but what I've learned is heavily biased towards getting something out the door versus learning the fundamentals. Because of this, I've started looking into Flask so I can gain deeper knowledge.
[+] [-] boyter|16 years ago|reply
Honestly when it comes down to productivity there isn't much to be gained from using one over the other.
I guess one thing that is in Djangos favour are the free out of the box Admin screens which are truly awesome.
[+] [-] robosox|16 years ago|reply
Another thing to consider is what your goals are here. Is this just learning for learning's sake, or is there a project you have in mind that you want to build/prototype? In my experience the differences between Django & RoR are minor, but your end goals obviously will also help guide you toward one framework over the other.
[+] [-] mhd|16 years ago|reply
There are other interesting systems, but I think looking at the two "big dogs" of the open source framework world is always a good start. Let's leave Nitrogen, Compojure and Hunchentoot for later…
[+] [-] fr0man|16 years ago|reply
Edit: Anyone care to explain the downvoting? I'm not whining; I'm just genuinely curious. I thought my post was fairly informative, and I tried to give love to both Django and Rails. I had problems going from C# Webforms to Rails, partly because I was a noob, partly because I was trying to learn a new framework (Rails), a new language (Ruby, which is very different from C#), and partly because Ruby and Rails both have some configuration issues on Windows. It's nothing you can't overcome, but added all together it made for a very steep entry to becoming a Rails developer. The OP sounded like he was coming from a very similar situation to me.
[+] [-] tobiassteele|16 years ago|reply
[+] [-] ItarPeyo|16 years ago|reply
[deleted]
[+] [-] c00p3r|16 years ago|reply
In short, python is clean and very pragmatic, while ruby is nice and different. ^_^
Personally I think RoR3 is going very fast toward becoming a new J2EE - at least being equally popular and bloated. ^_^