

About choosing the right programming language for a software startup...  - Pratheeswaran
http://vettyofficer.blogspot.com/2010/10/which-is-right-programming-language-for.html

======
badmash69
OP -- you sound like an MBA : bland and completely devoid of any semblance of
originality.

I think hackers should be opinionated ( right or worong doesn't matter) and
have something original to say.

So let me answer the question for you.

Drum roll ....

The right programming language for a start up is Scala.

Programmers who have taught themselves Scala , with being virtually very
little job requirements for Scala , have self selected themselves into an
elite category.

It is statically typed.

It runs on JVM that you can instrument and monitor.

Java ecosystem is vast.

See .. having an opinion isn't that hard.

~~~
astrodust
The OP, to their credit, did manage to avoid igniting a language war. Now
you're standing in the town square with a sandwich board strapped to yourself
and shaking a noisy bell while crowing about Java.

Scala, awesome or not, is a pretty crazy thing to advocate. People complain
constantly about the lack of developer support for something as common-place
as Ruby and instead want to go with PHP or C# simply because they can't throw
a rock without hitting one of those developers.

The best language for a project is the one that fits the requirements and can
be supported. That short-lists things a bit.

~~~
xiongchiamiov
Ah, but you don't need to hire 10,000 mediocre programmers; you just need 5
good ones.

------
Jabbles
_Google is doing this, Facebook is doing this and so even your startup can do
this_

Whilst using more than one language may be acceptable, this is a very bad
justification for it.

~~~
abyssknight
I think this all comes down to using the right tool for the right job. I've
worked in polyglot environments where the decision to use multiple languages
and platforms was a complete disaster. There's just no need to use two tools,
which perform the same tasks at the same speed, for one job. It makes hiring a
nightmare, and means the team may become conversant in 10 languages, but never
master any of them.

That said, sometimes (and I do mean sometimes), there is a justification and
reason for this sort of thing. Facebook chat was written in Erlang for speed
and scalability purposes. That makes sense. The application needed more than
the standard platform (PHP) could handle.

------
moshezadka
Maaaan.

This says absolutely nothing, except for the ever-present "just start-up, it
doesn't matter." It doesn't matter only if you're a Blub programmer (see
<http://www.paulgraham.com/avg.html> though I imagine most people have already
seen it), or if you're a non-technical manager needing to convince himself
that it doesn't matter.

So here is some real advice: if you are doing a typical "mostly-web-but-a-lot-
of-little-elses" choose Python. Python has good frameworks like Django (that
will bring up you to speed clearly for a CRUD-based web site) and Twisted (for
the small "everything elses"). If you find performance bottlenecks, well, the
C-API is not a "pleasure" to work with, but it's reasonable at least. It is
easy to learn, so the whole "find an engineer familiar with it" is a bit of a
red herring.

Sure, this advice will not fit all start-ups, but if you think it doesn't
apply to yours, you better have fairly solid arguments.

(Some arguments that I think are solid: "We already know Ruby well, and the
difference is small enough that this tips the scales", "we need to write in
Davlik for Android". "But I know C++" isn't, for example.)

------
edw519
Sorry to say, but this is 370 words that say nothing.

 _choose a programming language that best suits and can easily accomplish your
product's requirements_

Such as? I would love to hear OP's thoughts about the relationship between
product requirements and language choice. Unfortunately, he doesn't offer any.

 _Frameworks are very important for startups to keep up their pace._

Why? I don't mean to be snarky, but I really want to understand what makes
frameworks so important, especially if we've already selected the best
language for the product. An explanation is better than a declaration.

 _Give more preference to the programming language which the team members are
familiar with_

What happens when this choice is the exact opposite of the best language for
the product requirements? I imagine this happens quite often. Then what do you
do?

 _Have an eye on the availability and cost of hiring a programmer in the
language you choose._

Again, conflicting advice. What do you do when this is totally different from
what the team members already know?

 _Do not blindly follow the trend_

 _A startup is not about the language, it's all about the people._

 _don't worry too much, just startup!!!_

These last 3 items sound more like fortune cookie content than blog advice.

It's hard to argue with much here because there isn't much here. If I turned
this report into any competent manager or professor, it would probably come
back with one word on it, "Obvious"

OP, please put some meat on these bones. You sound like you have something
important to add. So add it.

------
jhrobert
Well, if you are doing anything related to the web... chances are that you
cannot escape JavaScript

This reduces the question to: JavaScript or CoffeeScript? Problem solved.

OTOH, who enjoy living in a prison?

