Live data from Hacker News

Ask HN: What programming language to use?

news.ycombinator.com

1–10 of 31 posts

Ask HN: What programming language to use?

#1
Hi.

I create various web applications and am an old-school PHP programmer. Usually I rapid-prototype these myself and then hand them off to other programmers to finish.

It's time to get up-to-speed with the way things are now and I'm looking for advice on what programming language to adopt and get skilled in.

Most of my future applications will be hosted, so I do not need to worry about end-server environments.

They need to be robust languages that they can easily scale as the things I create tend to get a lot of users fast.

I'm open to the end product being flash-based or html/js based. The end answer may remain PHP. Pros and cons are most welcome. I suspect flash may be a greater learning curve, but I could be quite wrong.

It would be a great bonus if there are decent debuggging tools etc, and code libraries for the selected language.

Your suggestions are greatly appreciated, along with the reasoning behind them so that I can make an informed decision.

Thank you very much for your help. John.

Re: Ask HN: What programming language to use?

#5

Python and Ruby are pretty much the players when it comes to web apps these days. If you want to stick with a Microsoft Stack, you could try ASP.NET (shudder).

No interest in going with Microsoft. :-)

What are the pros and cons between Python and Ruby and how does Ruby on Rails fit into it?

Thank you!

Re: Ask HN: What programming language to use?

#6
post #5

Python and Ruby are pretty much the players when it comes to web apps these days. If you want to stick with a Microsoft Stack, you could try ASP.NET (shudder).

No interest in going with Microsoft. :-) What are the pros and cons between Python and Ruby and how does Ruby on Rails fit into it? Thank you!

You're kind of asking what's better between vi and emacs.

I would recommend spending some time checking out either Django (http://djangoproject.com/) or Pylons (http://pylonshq.com/) on the Python side and I think Rails is probably going to be the best place to start on the Ruby side of the equation.

Any of those should be a good place to start, it's really a matter of personal preference between the three at this point.

Re: Ask HN: What programming language to use?

#8
The biggies have been mentioned. Ruby/Rails has a very fast time-to-market, but suffers runtime performance issues. However, it might very well be "fast enough" for what you want to do.

Python has a screaming gajillion well written and supported libraries, and the language itself is very...orderly. That suits some people very well, and others is an anathema.

A new one on the block is Scala and /Lift/. Probably not as mature as either of the above, but runs on the JVM so you can stick it on Tomcat or any other java web container, and as such you have a lot of hosting opportunities.

Re: Ask HN: What programming language to use?

#9
I program in PHP and Perl (intermediate skill in both) and had to decide which one to use recently for a new project I'm starting. I plan on using Amazon Web Services including SimpleDB and SQS. This made my choice of language a little easier.

Perl natively supports multiple threads whereas PHP does not. Multiple threads can assist greatly in speeding overall access to SQS, etc.

I also prefer the structure that Perl provides. Coupled with the Catalyst framework and lots of module availability on CPAN, I'm happy with my choice for now.

Does anyone else have any feedback on my choice of Perl for its multi-threaded capability for use with AWS - I'd appreciate a sanity check :)

Re: Ask HN: What programming language to use?

#10
I suspect flash may be a greater learning curve, but I could be quite wrong.

Flash actually doesn't have much of a learning curve - in particular, actionscript doesn't have many ideas you won't have seen already if you know javascript.

The trouble with flash development isn't that it's hard to learn, it's that the environment and tools are incredibly ghetto and hard to integrate into a sane tool-chain.

Post reply on HN