I'm currently working on a side project (that hopefully will grow into something more), and right now its strictly static front-end stuff; HTML, CSS and jQuery. So in the meantime, I have time to do heavy research on choosing Ruby on Rails vs. Python/Django.
I've read countless articles comparing the two, which usually come down to "what language do you prefer?" and considerations of the development community.
My question here is strictly of a technical nature, comparing the frameworks (and their respective languages) as such:
Between Ruby/Rails vs. Python/Django:
I understand that scalability comes down to architecture, so the question is what framework and its respective tools, APIs, plug-ins, community, documentation, etc. "guides" you towards the best scalable web architecture from the "get-go"?
Thanks!
If we compare the two frameworks, Ruby on Rails is faster than Django by 0.7%. Learning Curve. Because of a flexible interface, RoR features a smoother learning curve, but Django may be easier to get started with for developers with some experience in Python.
In the battle of Django vs Ruby on Rails performance, it is observed that Rails is faster by 0.7%. It is because Rails has the advantage of a rich repository of amazing libraries and plugins to enhance the speed and eventually the performance of this framework.
Django is great for building complex sites with dynamic content, with scalability in mind; big projects that require out-of-the-box solutions can be deployed really fast. Flask is perfect for developing simple web apps.
Python is generally better for educational use or for people who want to build quick programs rather than work as developers, while Ruby is better for commercial web applications. There are more specific differences when comparing Ruby versus Python, and they have in common that there are many ways to learn both.
That's the wrong approach to thinking about the problem.
Scalability on the web comes from expanding the number of application servers rather than speeding up an individual application server.
Ruby and Python are both slow languages with problematic multithreading and problematic garbage collectors. We use them anyway because they are very good at permitting the developer to write simpler programs that do the job better. It's not worth bothering about the question, which of these two runtimes performs better.
So long as you keep good web architecture, where your application server stateless (where all state is kept in the database or in cookies, but not in server-side sessions), you should not care what the actual performance of an individual request is, so long as it is reasonable. Because if your application server is stateless, you can scale that tier horizontally to cope with any need for scalability.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With