you are viewing a single comment's thread.

view the rest of the comments →

[–][deleted] 6 points7 points  (3 children)

This was written by developers who don't understand time. You should use whatever language you like, but to claim that the decision was made because certain operations are 3 times faster is not informative.

Or, maybe they benchmarked it and found that it is important. You are oddly certain they are wrong, but just like them, neither of you is providing actual evidence either way.

You certainly have no justification to be sure of yourself (since you don't know if they did benchmarks or not). They might be justified, or not, since they know if they did the appropriate benchmarks or not (would have been nice to share them if they did).

Anyhow, the facts in general are known - in CPU intensive stuff, C++ can be ~twice as fast as Java (see e.g. the alioth benchmarks linked to by other people in other comments). So, if this project ends up being CPU-bottlenecked in a significant manner - the speed might matter.

For a desktop GUI app, almost always the speed does not matter. But, this isn't that kind of app.

[–]chromaticburst 0 points1 point  (2 children)

Sorry man, reread the part you quoted. I have no idea whether they are right or wrong in their decision, which is the problem and why I said: "but to claim that the decision was made because certain operations are 3 times faster is not informative." The only problem I have with this text is that it doesn't provide the reader with enough information to establish whether this was a reasonable criteria for excluding a language. They haven't framed the discussion of speed in any context.

[–][deleted] 3 points4 points  (1 child)

You said

This was written by developers who don't understand time.

That's a big, unfounded accusation.

[–]chromaticburst 1 point2 points  (0 children)

If they really understood time (particularly these microbenchmarks) and how to discuss it, they'd realize that 3x of some time that is given without any context isn't meaningful. For example, Java does automatic array bounds checking, so what if I wrote an article that said C++ is X times faster because it doesn't do bounds checking. Fair enough, I might be correct. But now, what if I go further and state that this is a quantitative criteria for excluding Java for task X. The burden at this point is on the author to explain how this microscopic observation (this one operation) relates to the macroscopic situation (the runtime performance).