Which Python web framework is most like Ruby on Rails?

S

seberino

I'm interested in knowing which Python web framework is most like Ruby
on Rails.

I've heard of Subway and Django.


Are there other Rails clones in Python land I don't know about?

Which one has largest community/buzz about it?


Chris
 
B

bonono

I like TurboGears best(haven't used any of those you mentioned, just a
brief browse and don't like any of them) and it has a very helpful
community.
 
G

gene tani

I'm interested in knowing which Python web framework is most like Ruby
on Rails.

I've heard of Subway and Django.


Are there other Rails clones in Python land I don't know about?

Which one has largest community/buzz about it?


Chris

Subway and Django are *exactly* like rails, and they have buzz. And
have you looked at slashdot codebase?

Seriously, these frameworks are broad and deep, write more about your
app, platform, databases and DBMS and you'll get a better anwer, e.g.
you like has_and_blongs_to_many, you want an ActiveRecord clone, or you
like the naming defaults in rails' scaffolding, you like the DSL
quality of the rails code, ...
 
S

seberino

Gene

Thanks for your kind email. I am a newbie web developer that just was
hoping
*any* framework was bubbling to surface to standout amongst all the
rest.
I don't know /why/ Rails is getting buzz. I've just heard some good
things
about it but don't want to switch to Ruby.

My main goal is to support any framework that looks like it has a
chance
of taking over the marketspace Rails is competing in. Hence, I want
to avoid any "also rans" aka "Yet Another Python Web Framework".

Chris
 
G

gene tani

Gene

Thanks for your kind email. I am a newbie web developer that just was
hoping
*any* framework was bubbling to surface to standout amongst all the
rest.
I don't know /why/ Rails is getting buzz. I've just heard some good
things
about it but don't want to switch to Ruby.

My main goal is to support any framework that looks like it has a
chance
of taking over the marketspace Rails is competing in. Hence, I want
to avoid any "also rans" aka "Yet Another Python Web Framework".

Chris

I realized the first line of my post was pretty evil. *Don't* look at
the slashdot (200+k lines of perl). What i suggested to a friend who
recently asked the same thing is to pull up tags like "rails python" in
del.icious, furl and digg, see what other people like. That's a pretty
good way to measure buzz, actually. (My friend chose PHP, even tho i
told him he'd have unmaintainable, easily defaced code.)
 
A

Alex Martelli

gene tani said:
the slashdot (200+k lines of perl). What i suggested to a friend who
recently asked the same thing is to pull up tags like "rails python" in
del.icious, furl and digg, see what other people like. That's a pretty
good way to measure buzz, actually. (My friend chose PHP, even tho i

Alternatively, counting Google hits:

rails python django 112,000
rails python subway 81,600
rails python turbogears 32,000

This isn't exactly "buzz", of course, but it's SOME measure of "critical
mass" -- and with django about equal to subway+turbogears, it does not
appear to show any emerging dominance. A significant measure of "buzz"
might be obtained by redoing the same search in, say, two weeks, and
noticing the deltas...


Alex
 
L

Luis M. Gonzalez

As fas as I know, TurboGears is not very different.
But it is a project that unifies many different third party components
into one integrated package.
Its main component is CherryPy, which is a known python web framework.
 
D

DH

Alex said:
Alternatively, counting Google hits:

rails python django 112,000
rails python subway 81,600
rails python turbogears 32,000

This isn't exactly "buzz", of course, but it's SOME measure of "critical
mass" -- and with django about equal to subway+turbogears, it does not
appear to show any emerging dominance. A significant measure of "buzz"
might be obtained by redoing the same search in, say, two weeks, and
noticing the deltas...

Actually the turbogears mailing list has ~850 subscribers while
the django one has ~650. I don't think that should be interpreted
as anything, but it does show the opposite of what you found with
the google search. They both have "buzz".
Also others are working on another rails-like framework
called pylons: http://pylons.groovie.org/project
Because of course if other languages have 1 or two frameworks, python
needs a dozen.
 
G

gene tani

DH said:
Alex Martelli wrote:
Because of course if other languages have 1 or two frameworks, python
needs a dozen.

["there are still fewer %s than py keywords"%x for x in ["IDEs","web
app frameworks","GUI frameworks"]]

and 37000 google hits for "Snakes and Rubies"?!
 
M

Mike Meyer

[Not sure if this attribution is correct.]
Alex Martelli wrote:
Because of course if other languages have 1 or two frameworks, python
needs a dozen.

People keep talking about Python's wealth of web frameworks as if it
were a bad thing. I just don't see it. Just like I like to have more
than 1 or 2 languages available for programming, I like to have more
than 1 or 2 web frameworks available for building web sites. That I
can get the flexibility I want in this area *without* having to
abandon Python is a plus for Python.

Or are the web frameworks for the languages with an impoverished
selection really that flexible? Is Ruby on Rail, for instance, really
going to do the things that Zope does well almost as well as Zope does
them, and the things that Cheetah does well almost as well as Cheetah
does them, and the things that web.py does well almost as well as
web.py does them? If that's the case, the complaint isn't "Python has
to many web frameworks", it's "Python doesn't have a good web
framework."

Thanks,
<mike
 
B

Ben Sizer

Mike said:
[Not sure if this attribution is correct.]
Alex Martelli wrote:
Because of course if other languages have 1 or two frameworks, python
needs a dozen.

People keep talking about Python's wealth of web frameworks as if it
were a bad thing. I just don't see it. Just like I like to have more
than 1 or 2 languages available for programming, I like to have more
than 1 or 2 web frameworks available for building web sites. That I
can get the flexibility I want in this area *without* having to
abandon Python is a plus for Python.

Flexibility is good, but personally I think the problem is that instead
of useful variety, we have redundant overlap. How many different
templating systems, sql<-->object mappings, and URL dispatch schemes do
we need? And what exactly is the difference between them all, except
for slightly different syntax?

One major benefit of reducing the number of such frameworks is that a
larger community would form around each product, meaning better
documentation and examples. Also, it would be easier to know which one
to recommend for a given task, when there are fewer available and they
are more distinct. In particular, it would be helpful to have something
simple in the standard library, as currently there's a large barrier to
entry for the Python newbie who wants to get into web programming,
compared to ASP or PHP, or even Java servlets.
 
G

gene tani

Ben said:
Mike said:
[Not sure if this attribution is correct.]
Alex Martelli wrote:
Because of course if other languages have 1 or two frameworks, python
needs a dozen.

People keep talking about Python's wealth of web frameworks as if it
were a bad thing. I just don't see it. Just like I like to have more
than 1 or 2 languages available for programming, I like to have more
than 1 or 2 web frameworks available for building web sites. That I
can get the flexibility I want in this area *without* having to
abandon Python is a plus for Python.

Flexibility is good, but personally I think the problem is that instead
of useful variety, we have redundant overlap. How many different
templating systems, sql<-->object mappings, and URL dispatch schemes do
we need? And what exactly is the difference between them all, except
for slightly different syntax?

One major benefit of reducing the number of such frameworks is that a
larger community would form around each product, meaning better
documentation and examples. Also, it would be easier to know which one
to recommend for a given task, when there are fewer available and they
are more distinct. In particular, it would be helpful to have something
simple in the standard library, as currently there's a large barrier to
entry for the Python newbie who wants to get into web programming,
compared to ASP or PHP, or even Java servlets.

as to the actual substance of this thread, i searched and couldn't find
the number of committers for rails, django, zope, subway etc, anybody
know?
 
A

Alex Martelli

gene tani said:
Ben said:
Mike said:
[Not sure if this attribution is correct.]
Alex Martelli wrote:
Because of course if other languages have 1 or two frameworks, python
needs a dozen.

woops, that attribution is absolutely *wrong*, DH said that, sorry Alex

NP, I noticed but decided not to comment, particularly since I roughly
agree with the spirit of DH's comment. Graham and Norvig, among others,
have often argued that there are parallels between Lisp and Python; the
proliferation of frameworks for a given task, I think, is one of them.
Good thing we have more things "nailed down" in the standard library...
but even then, e.g. with asyncore vs Twisted, there's no holding down a
different [here, better] implementation of similar ideas from emerging
as a third-party framework, anyway.


Alex
 
M

Mike Meyer

Ben Sizer said:
Mike said:
[Not sure if this attribution is correct.]

And it was apparently wrong. Apologies to both DH and AM.
Flexibility is good, but personally I think the problem is that instead
of useful variety, we have redundant overlap. How many different
templating systems, sql<-->object mappings, and URL dispatch schemes do
we need? And what exactly is the difference between them all, except
for slightly different syntax?

Well, they come in at least three major variants: complete publishing
system (ake zope), templating system (aka psp), and modules (aka
cgi). Each of these is focused on a different level of the problem,
and hence is suitable for different things.

Syntax can be very important, especially for templating
systems. Typically, those are used in situations where you have a lot
of X/HTML and want a bit of dynamic content. Ideally, you want to be
able to treat this just like a static HTML page. If the syntax of a
templating system makes your standard web tools puke, you probably
want to avoid it.

<mike
 
C

chuck

People keep talking about Python's wealth of web frameworks as if it
were a bad thing.

I disagree somewhat. While variety and choice are nice, sometimes
having too many choices may inhibit people from trying the language
because they don't know where to start in terms of framworks. Maybe
I'm wrong but if there is an element of truth what I suggest then that
would be a terrible shame since Python is such a great language.
Python's popularity might improve if there were a bit more unity within
the Python community with regards to (web) frameworks.
 
A

Alex Martelli

chuck said:
I disagree somewhat. While variety and choice are nice, sometimes
having too many choices may inhibit people from trying the language
because they don't know where to start in terms of framworks. Maybe
I'm wrong but if there is an element of truth what I suggest then that
would be a terrible shame since Python is such a great language.
Python's popularity might improve if there were a bit more unity within
the Python community with regards to (web) frameworks.

I agree with chuck. I've seen excellent programmers explain why for
some urgent problem they chose Ruby on Rails rather than Java or Python:
Ruby has ONE web framework (that matters), so the choice was finished
there; to evaluate properly 50 frameworks for Java or 20 for Python
would have taken weeks or months...


Alex
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,769
Messages
2,569,579
Members
45,053
Latest member
BrodieSola

Latest Threads

Top