Is Ruby or Python not suitable for iPhone or Mac app development because of speed, and any compiler that can help boost the speed? (now closed) and https://stackoverflow.com/questions/6052578/why-is-c-faster-than-ruby (closed) have both been labelled "subjective and argumentative" (nowadays "Not constructive").

One of them asks about suitability of Ruby for iPhone and the like, while the other asks why Ruby is slower than C#. The former is also from someone who mainly develops in Ruby! Neither of them are "which is better, X or Y?" or "Your language suxx0rs because of Z".

Asking why Ruby implementations are slow is a legitimate question: What blocks Ruby, Python to get Javascript V8 speed? has 10 upvotes for the question, and 13 upvotes for the accepted answer, which comes from a 50K rep user.

Stop being so defensive about Ruby! Just because it's fast enough for you doesn't mean it's fast enough for everyone else. And if the person is mistaken about the speed of Ruby for a particular task, create a good answer dealing with that.

If there's other, legitimate, reasons that a question is bad, please mention those reasons in the comments section of the question. For example, I voted to close the C# one because it was a duplicate.

Related question: "Why is Python so slow" shouldn't have been closed and deleted

  • Your name is on the close vote list for the C# question. Did you vote to close for another reason? – jscs May 26 '11 at 0:58
  • @Josh: Yes, I voted to close the C# question because it was an exact duplicate, as I mentioned in this question. – Andrew Grimm May 26 '11 at 4:59
  • Sorry, yes, I missed that. So you think the question should've been closed, and it is; does it really matter the reason? If you're concerned about the link to the duplicate, you can edit that in. See Cody's comment on this question. – jscs May 26 '11 at 5:15
  • @Josh: Your point would be valid if I started a meta complaining about that question, and that question alone, was legitimately closed but for the wrong reason. But now that another question has been closed, which I feel shouldn't have been closed, it's relevant to mention the other question. – Andrew Grimm May 26 '11 at 5:27
  • @Andrew: Fair enough. – jscs May 26 '11 at 5:31
  • 2
    @josh, it matters a lot what reason questions are closed for. – Lance Roberts May 26 '11 at 13:31
  • @Lance: I disagree. If the specific close reason was important, the system would require that five votes accumulate for that one reason. Instead, a question is closed when it gets five strikes against it, no matter the combination of reasons. The question would be just as closed if everyone who voted to close had chosen a different one of the options from the list. – jscs May 26 '11 at 19:11
  • @Lance: Note that I am absolutely not suggesting that a close vote be used without having a real reason, i.e. "I don't like this, therefore NARQ" – jscs May 26 '11 at 19:19
  • 1
    @Josh, actually the proof that the reason matters is that the majority vote on the reason causes that reason to be picked. Ond of the reason is matters, is so that new users will see the message and be able to see why a question got closed, and the specifics that made it that way. If you closed all duplicates as S&A, they would never figure out the details of why duplicates suck. – Lance Roberts May 27 '11 at 1:44
  • @Lance I'm not saying that any individual close vote should be cast for the wrong reasons, just that once the total gets to five, it no longer matters. If you were correct, then all the reasons that were voted upon would be displayed; a kind of "what's wrong here" scorecard. Instead, everyone's vote gets subsumed and the question is simply closed. What's displayed as the close reason if two voters pick NARQ, two pick S&A, and one finds a dupe? There has to be an arbitrary selection made from those reasons, and it doesn't really matter which, unless one reason were "more sinful" than another. – jscs May 27 '11 at 1:51
  • Your question would be much clearer if you wrote "subjective and argumentative" rather than "S&A", or at least explained the abbreviation. – Keith Thompson May 25 '12 at 2:41
  • @KeithThompson Fixed. – Andrew Grimm May 25 '12 at 4:01

There's an extremely simple fix here that you seem to be ignoring:

If you think that there's an underlying question that is not "subjective and argumentative", but that the question may appear such to others because of the way it's phrased, then you should take the time to edit the question and remove whatever part or phrasing that you think might seem "subjective and argumentative" to others with close vote privileges.

To put it quite simply, the title: "Why Is C# Faster Than Ruby?" is not the mark of a productive question. However, as Rosinante points out, you could ask a very similar question, but instead phrase it as: "Why does the following Ruby microbenchmark run 20% slower than the following JS benchmark on comparable hardware" to turn it into a non-S&A question with an actual answer.

We don't need to change our policy on what questions get closed as S&A. If we stop closing questions that meet this criteria, all we'll get are a bunch of rambling, useless answers that focus on the part that is subjective and argumentative. Sure, there may be a small handful of users like yourself that are disciplined enough to look past that and post a real answer, but you're in the minority. And this is precisely why we close questions like this in the first place, to avoid those "noise" answers that add nothing or little of value to the community.

If you can improve the question and reword it to an extent that it is clearly not subjective and argumentative, then I very seriously doubt that the flow of close votes will continue. Most people do read the question before they cast a close vote. And if you're too late, happening upon a question that you think has value but after it's already accrued the magic number of close votes, clean it up anyway. It can be re-opened with 4 more votes (including your own), or, if you think that's unlikely, flag it for moderator attention along with an explanation of what happened to get it re-opened immediately.

Now, not only have you accomplished your goal of leaving/getting the question open(ed), but you've also helped to improve the community in a positive way, while averting the possible damage that the close voters were attempting to head off in the first place. Everyone is happy.

| improve this answer | |

Ruby isn't anything. Fast, slow, blue or green. Some particular implementation of Ruby has some performance characteristic in some specific, concrete circumstances. Which might be, by very careful benchmarking, compared to some implementation of some other language.

These questions are useless because they start from the flawed premise that a language, in general, has such a thing as a speed.

If someone wants to ask, 'why does the following Ruby microbenchmark run 20% slower than the following js benchmark on comparable hardware,' then you would have a question with an answer.

| improve this answer | |
  • 6
    -1: This is a tired, pedantic argument. – ire_and_curses May 26 '11 at 4:39
  • 2
    -1 Did you bother reading the link "What blocks Ruby, Python to get Javascript V8 speed?" in my question before posting this "answer"? – Andrew Grimm May 26 '11 at 5:02
  • 7
    @Andrew: The "What block Ruby" question is a perfectly legitimate way to phrase a question non-subjectively. "Why is Ruby slow?" is subjective and inappropriate here. – Gabe May 26 '11 at 6:29
  • @Gabe: Are you referring to the Ruby on iPhone question, or the C# and Ruby question, or a generic hypothetical question? – Andrew Grimm May 26 '11 at 7:12
  • 2
    But the question also asks what method can it be used to run faster natively. Isn't that a valid question? – nonopolarity May 26 '11 at 11:54
  • 9
    "Ruby isn't anything [...] blue or green." Silly, it's red. – BoltClock's a Unicorn May 26 '11 at 18:34
  • 1
    There have always been faster and slower languages, i.e. compiled vs interpreted, so therefore a language can be a slow language relative to any other language, and a relative speed is still a measurement of speed. Like saying twice the speed of light, or half. – Lance Roberts Aug 30 '11 at 7:16

I think such questions should only be closed if they set off an argument, not before. The question is not inherently argumentative (the asker wasn't rejecting Python or Ruby, they were in fact asking if/how they can be used) but could set off an argument anyway because some people are so defensive. As noted in this question, a productive discussion can be had if people stick to the facts; whether we get a productive discussion or a flamewar just depends on who chooses to post an answer.

| improve this answer | |

Speed is an important factor in applications programming. Nothing frustates my user experience more than a slow application/site. I think it is quite legitimate to ask questions on optimization and running-time.

A standard way of doing this is by comparison. A lot of programmers will know how fast one language is, so by asking for reasons that a different language/implementation is slower/faster they will have the perspective to give constructive answers.

I've asked questions about improving speed in VBA for certain tasks, and have gotten good input. If you check out the linked questions in the question, then you'll see some good answers, some based on objective parameters. These kind of answers do not have to be subjective, therefore the questions don't have to be subjective.

Speed can be measured relative to other languages, so slow or fast. Like saying twice the speed of light, or half the speed.

| improve this answer | |

Not the answer you're looking for? Browse other questions tagged .