|
Grex > Jelly > #79: Python or Ruby (or Something Else) for Web Development? |  |
|
| Author |
Message |
remmers
|
|
Python or Ruby (or Something Else) for Web Development?
|
Aug 19 18:05 UTC 2007 |
Which should I learn - Python or Ruby?
|
| 67 responses total. |
cross
|
|
response 1 of 67:
|
Aug 19 21:22 UTC 2007 |
Why not both? Either is sufficiently intuitive that one can be usably
proficient in a day or two; picking up both should not be that hard.
Personally, from a pure language-design perspective, I prefer Ruby over
Python. Steve Yegge, however, feels that it is not an acceptable substitute
for LISP and gives a number of reasons why:
http://steve-yegge.blogspot.com/2006/04/lisp-is-not-acceptable-lisp.html
Python feels a bit rougher around the edges, but is still useful.
|
djdoboy
|
|
response 2 of 67:
|
Aug 20 00:25 UTC 2007 |
Remmers, with all do respect, isn't it rogaine and viagra time for you?
|
djdoboy
|
|
response 3 of 67:
|
Aug 20 00:48 UTC 2007 |
I've never dealt with ruby and spent maybe 2 hours with python. Maybe I wasn't
fully understanding python, but from what I could tell, python names it's
chunk of memory. Here is how I understood it. In C, I would go like
char i = 6;
char *p = &i;
in C, &i is just a chunk of unamed memory. The only thing that has a name is
the shit associated with the variable i.
However in python this would be a reference (ie not a pointer) and this
reference would have a name. This means I can do true variable rebinding as
opposed to simulatng variable rebinding in C.
|
cross
|
|
response 4 of 67:
|
Aug 20 01:32 UTC 2007 |
It is true that, in python, variables are references.
To me, Python feels a bit more hacked together; you can tell that some things
were bolted onto the side of the language, often rather clumsily. Ruby is
much cleaner in this respect.
|
sholmes
|
|
response 5 of 67:
|
Aug 20 01:58 UTC 2007 |
I find some of the syntax of ruby very elegant. Never did any serious
coding with python to really compare. But really like ruby.
|
remmers
|
|
response 6 of 67:
|
Aug 20 16:44 UTC 2007 |
Re #1: I'm sure you're correct that it's not difficult to pick up the
basics of both languages, so let me clarify the question a bit.
Do folks have a preference for one over the other as an environment for
developing web applications? Or some third language? PhP (with which
I've had a bit of experience) is another candidate to throw into the mix.
|
nharmon
|
|
response 7 of 67:
|
Aug 20 16:53 UTC 2007 |
I prefer to write my web applications in PHP, and do any back-end
scripting using Perl.
|
cross
|
|
response 8 of 67:
|
Aug 20 17:12 UTC 2007 |
Regarding #6; Ah, that's a little clearer. Ruby, hands down. Rails is the
`killer app' for web type stuff.
|
remmers
|
|
response 9 of 67:
|
Aug 20 18:59 UTC 2007 |
I've been hearing a lot of buzz about Rails, most of it favorable,
although apparently there are scalability issues (Twitter is written in
Rails and has run into some problems).
Yeah, I've done some PHP development - my jremmers.org website is all
PHP-based, currently. What would be the advantages of Ruby+Rails over
PHP, or PHP+Perl?
|
remmers
|
|
response 10 of 67:
|
Aug 20 19:01 UTC 2007 |
(I've retitled this item to better reflect its purpose.)
|
cross
|
|
response 11 of 67:
|
Aug 20 20:28 UTC 2007 |
Regarding #9; The usual: A better underlying language, a huge amount of 3rd
party support, and some others: Rails has a good implementation of model 2
for web applications, which is really nice to work with. It makes developing
really fast; and hopefully, a lot of of the scalability issues will be
resolved with future upgrades to the Ruby interpreter. But how big do you
expect your demands to be? Do you really expect to run into a lot of scaling
problems?
|
maus
|
|
response 12 of 67:
|
Aug 21 03:13 UTC 2007 |
Java + JSP in a Websphere or JES container, using Struts for the
presentation framework and Oracle or DB2 or Postgres on the backend.
Ok, that is probably overkill for what the average person plans to
develop, but it would certainly be scalable and well supported, and
marketable.
|
remmers
|
|
response 13 of 67:
|
Aug 21 14:17 UTC 2007 |
Linked from Jellyware 79 to Web 14.
|
remmers
|
|
response 14 of 67:
|
Aug 21 19:20 UTC 2007 |
Re #11: I don't expect to run into scaling problems for a while.
I've done some cursory reading up on Rails (and also Django, its Python
counterpart). Is it correct to say that these frameworks are geared to
using a relational database as the backend data store? Or are they more
general than that?
I'm also discovering that some web hosting companies support Rails and
others (like my current web host) don't.
|
cross
|
|
response 15 of 67:
|
Aug 21 23:04 UTC 2007 |
Geared toward, but not required.
|
trancequility
|
|
response 16 of 67:
|
Aug 22 00:44 UTC 2007 |
I really wouldn't use Perl or the Perl DBI when connecting to any kind of
proudction level database. My whole gripe is because Perl OOP paradigm still
lacks the maturity needed to be used in a production level setting. I also
think the whole reference counting garbage collector that Perl uses is a
bigger load of shit than organized religion. Cross, admit it. The perl
garbage collector lags 3 decades behind the lisp garbage collector.
Going off on a tangent, Perl sort used to suck ass because the sorting was
unstable. However, I think as of Perl 5.6, they switched over to mergesort
and hence you can finally get a stable sort. I refuse to comment on perl
hashes.
However, for a personal website or writing hobbyist code, I would use perl
to connect to my database.
|
cross
|
|
response 17 of 67:
|
Aug 22 01:17 UTC 2007 |
I don't care for perl.
|
trancequility
|
|
response 18 of 67:
|
Aug 22 01:22 UTC 2007 |
Is this because nharmon and vive fagged up your perl experience?
|
cross
|
|
response 19 of 67:
|
Aug 22 02:44 UTC 2007 |
No, because it's a sucky language.
|
mcnally
|
|
response 20 of 67:
|
Aug 22 03:57 UTC 2007 |
I don't care for perl either, and agree that it's a "sucky language",
though I still use it for quick jobs -- usually nothing that I think
I'm going to have to go back to, because when I'm done the code
usually looks like line noise and a month later I find it borderline
unreadable.
But #16 is a pretty silly thing to say. Perl is obviously being used
in a really whopping number of production environments all around the
world. The comments about the garbage collector and OOP paradigm are
true, but pretty much totally beside the point.
|
mcnally
|
|
response 21 of 67:
|
Aug 22 03:58 UTC 2007 |
I probably should play around with Ruby the next time I have a
project..
|
keesan
|
|
response 22 of 67:
|
Aug 22 04:45 UTC 2007 |
Perl put a ridiculous number of man pages onto my computer so I removed it.
|
scholar
|
|
response 23 of 67:
|
Aug 22 05:27 UTC 2007 |
...
|
mcnally
|
|
response 24 of 67:
|
Aug 22 05:47 UTC 2007 |
re #22: Why not just remove the man pages?
|