Live data from Hacker News

Programming Languages: What tool is right for which job?

therighttool.hammerprinciple.com

11–20 of 60 posts

Re: Programming Languages: What tool is right for which job?

#11
Really? Go is on there, but ActionScript is not?

I realize that the future of the Flash Platform is in doubt, but Flash is still a great choice for a lot of things, like:

- This language is good for beginners.

- This language is well documented.

- I find this language easy to prototype in.

Re: Programming Languages: What tool is right for which job?

#12
This isn't the right question to be asking.

There are certainly cases where one language at another for a given task, e.g. Ruby is better for string parsing than PHP. But in many (most?) scenarios the technique used for the job matters far more than the language. Sorting is an easy example: bubble sort is a crap solution regardless of the language.

Disclaimer: I can't read the actual page due to 503's and the cache isn't helpful, so I'm responding to the title and what I can divine from the linked page.

Re: Programming Languages: What tool is right for which job?

#13
post #7

Something the site didn't answer, what high-level languages are suitable for writing highly-parallel network code? I need to write some code that does stuff like: given a couple million URLs, download each, extract an element, gather all extracted elements in a list.

sounds like a job for clojure, lazy seqs and java's threading and network libraries make this sort of thing not too terrible

Re: Programming Languages: What tool is right for which job?

#14

Really? Go is on there, but ActionScript is not? I realize that the future of the Flash Platform is in doubt, but Flash is still a great choice for a lot of things, like: - This language is good for beginners. - This language is well documented. - I find this language easy to prototype in.

Why would a beginner want to learn a dying technologlash unless you were writing games, Flash was never the right answer.

Re: Programming Languages: What tool is right for which job?

#15

Really? Go is on there, but ActionScript is not? I realize that the future of the Flash Platform is in doubt, but Flash is still a great choice for a lot of things, like: - This language is good for beginners. - This language is well documented. - I find this language easy to prototype in.

Python and Ruby fit into all of those categories. And I'd guaranteed that in 5 years they'll be even more popular, easier to hire for and the languages will be more polished.

Can ActionScript say that?

Re: Programming Languages: What tool is right for which job?

#16
post #7

Something the site didn't answer, what high-level languages are suitable for writing highly-parallel network code? I need to write some code that does stuff like: given a couple million URLs, download each, extract an element, gather all extracted elements in a list.

`Highly-parallel network code` was the problem erlang was designed for. Haskell would also be a good fit.

Re: Programming Languages: What tool is right for which job?

#19
post #12

This isn't the right question to be asking. There are certainly cases where one language at another for a given task, e.g. Ruby is better for string parsing than PHP. But in many (most?) scenarios the technique used for the job matters far more than the language. Sorting is an easy example: bubble sort is a crap solution regardless of the language. Disclaimer: I can't read the actual page due to 503's and the cache i…

While I agree with this statement, that technique is more important than superficial or trivial language decisions, I think there is a second level of reasoning that needs to be brought into play here.

Once you know several techniques and several languages, and have started to get a skill at identifying the core bits of a project, the process (or series of questions to answer) becomes:

- what technique will effectively handle to core problems?

- What languages make this technique simple to implement?

and then the real kicker, which in a way comes full circle to the original naive analysis:

- in the best language for $technique, are there any problems with secondary and ancillary problems associated with it? (e.g. i have to do this really fast lookup table of simple operations, C would be great for this, except that the data is irregular and involves a lot of string parsing C sucks at that..., or the central problem here is just a big fold, i'll use Haskell, but it involves a lot of tricky memory optimization to be fast enough...)

Out of this of course arises a meta-technique of learning to partition problems into stages in different languages, which of course has its own problems.

Re: Programming Languages: What tool is right for which job?

#20
post #7

Something the site didn't answer, what high-level languages are suitable for writing highly-parallel network code? I need to write some code that does stuff like: given a couple million URLs, download each, extract an element, gather all extracted elements in a list.

I suppose if you use zeromq, any high level language that has zeromq bindings will be able to do the job. That is over 30+ languages including Python, Ruby, Lua, Perl, Node.js, Objective-c, Java, Scala etc etc
Post reply on HN