
PHP, python, perl, ruby - which to use? - dmg123
Hi All,<p>I know this is probably an age-old debate, but I need help deciding.  Has a winner emerged as the clear definitive choice for quick ramp up time and scalability? I'm seeing a lot of buzz around Ruby on Rails. I need something can eventually handle huge volumes of traffic and DB intensive tasks.<p>disclaimer: I'm not a backend developer....I'll be outsourcing.
======
ccashell
I hate PHP. Personally, I just don't like the language. However, it's still
incredibly popular in the web world.

As for the rest? Ruby on Rails was super hot a year or so ago, because it was
a new concept in simplicity for certain types of web apps. However, Perl and
Python both have comparable frameworks that are just as good now, and in the
minds of a lot of people, better. Rails does have a bit of a reputation for
limited scalability, compared to Perl and Python solutions.

Realistically, the scalability of your application will be limited by your
database design and application architecture to a far greater extent than the
language you use. In all but a few special cases, Perl, Python, Ruby, and eve
PHP will be fast enough, assuming you don't create bottlenecks with the
application design.

Personally, I would go with Perl. I like the language, I love the rapid
advances and direction it's taken in the past couple of years, and I think
Moose and Catalyst are awesome. However, it sounds like this is for something
of a startup, so the language you write the app in should be whichever one the
developer writing it is most comfortable with. You want them to be at maximum
productivity, and that'll happen with their preferred language. Find the right
person, then pick the language.

------
sneak
Don't use PHP.

As much as I've loved it for many years, in 2011 I can now safely say "Don't
use Perl."

Python and ruby are probably both acceptable, though I personally don't like
ruby very much. You'd be hard pressed to go wrong using Python, considering
the widespread adoption and flexibility inherent in the language.

Oh, and one more time just to be sure you got it: Don't use PHP.

~~~
chromatic
_in 2011 I can now safely say "Don't use Perl."_

Really? In the past 18 months I've (very conservatively) doubled my
productivity at least twice thanks to improvements in the Perl ecosystem. The
only reason I'd tell someone "Don't use Perl" is if I didn't want competition.

~~~
sneak
Perl is fantastic and I love it.

For a lot of workloads, though, Python is better or equivalent, and probably
easier to find devs for.

~~~
ccashell
Careful with that assumption. In my experience on a recent project, finding
Perl developers was a good bit easier than finding Python developers.
Generally, though, I think both are pretty prevalent.

The only problem I've had with Perl programmers is that a lot of the more
casual Perl programmers (those who aren't exclusively Perl) tend to not keep
up with the (significant and important) advances in Perl from the last 2-3
years.

------
steventruong
Will you be bringing on a technical cofounder later after building the
prototype? If so, it probably wouldn't matter much. There's a chance it'll get
scrapped and be redone. And at that point, your technical cofounder will
probably have a preference.

Also if you are planning on bringing on someone else, there are more php
developers available to choose from and possibly you might get better pricing
due to the number of developers out there (I could be wrong on this).

Aside from that, I have a strong personal preference for Python.

~~~
dmg123
Excellent question. I do plan to bring on a technical cofounder, but would
that technical cofounder who most likely will become the CTO...really be the
right person to code the guts of the site or would the be better used for
architecting out entire systems and not concerned with what the language will
be? I'm not quite sure, but it would be nice to have that person build the
site I guess.

~~~
steventruong
Then outsource for cheap to get the MVP done. Ignore the language choice and
all that. Because in all reality, there is a very high chance it'll be redone
anyway and your future technical cofounder will probably be doing that. That
said, they'll be doing both. You're wrong if you think language choice isn't
going to matter. Different coders will have a preference, sometimes a very
strong preference.

Ignore language choice for now and just get the MVP done.

~~~
dmg123
What is considered cheap these days? I did some preliminary calling around for
RoR firms and they're charging at least $50k. Most are around $100k-$150k for
a v1.

~~~
pbreit
You should be able to get an MVP for less than 50k (there was guy on hn
recently who would do it for 5). As others have stated, the language doesn't
matter that much and don't worry about scaling (you'll be lucky to have that
problem). Your impression of a tech cofounder is off. That person would
typically roll up his sleeves and code. Startups require doers, not thinkers.

------
ricardobeat
Be realist to begin with. You're not getting millions in traffic in your first
month, so don't worry about performance for now.

That said, Ruby seems to have the quickest turn around times. But it depends
100% on _what_ you are gonna be building, you can't choose the tool if you
don't know whether you'll build a house or a boat.

~~~
dmg123
I just don't want to end up having to rewrite something 6 months down the
line.

~~~
willba
You are probably going to rewrite it all anyway, regardless of wether you
stick with the same language. Unless you know precisely what you want and how
you want it build and are lucky enough to get someone to do that for you
there's probably going to be a quite a few rewrites, there always are.
Rewrites aren't a bad thing. The point is by then you know the basics and you
know what doesn't work.

