1

Question 1: What is an object pool?

Quoted because of impending edits:

What is an object pool?

What are some examples of Object Pools?

Could you consider stack memory to be an example of an Object Pool?

Question 2: What is a thread pool?

Question 1 attracted downvotes and close votes, but question 2 did not: in fact it is upvoted and has quality answers. Why is this?

  • I'd like to see the edits. I agree that the question is terse, but I think it could be salvaged with some editing. – Blrfl Feb 17 '15 at 18:38
  • @Blrfl correct, it could be salvaged, but this is about the question as asked due to the concern you raised about it. – user22815 Feb 17 '15 at 19:03
2

While both questions are similar in what they ask, the way they ask it is different.

Question 1 does not show any research effort, which is exactly what downvotes are for. The author tells that a “Wikipedia article references an "Object Pool Pattern"” and asks what is this thing, without showing that he made at least an effort to search for Object Pool Pattern article on Wikipedia itself, which is not the best way to obtain upvotes.

In question 2, on the other hand, the author found the article, but found it too difficult to understand. There is nothing wrong in asking those questions, because:

  • Indeed, Wikipedia articles may not be extremely clear. Moreover, some persons may find a given article easy to understand, while others won't.

  • By asking for clarification on Stack Exchange, the user attracts visitors from Google who, like the original poster, have read the Wikipedia article and found it too cryptic.

As an example, I encountered the exact same situation recently with a student asking for help on Stack Overflow. His question shows research effort and explains that the resources (mentioned through a link in the question) the author have found are too difficult to understand. Indeed, links lead to articles answering the question, but in a way which is not straightforward and may not be helpful to a student. This is very different from “Do my homework for me” questions which appear from time to time on Stack Exchange.

So questions similar to:

Please explain me what Dependency Injection is.

are not welcome, while questions like this are fine:

I've read Wikipedia article about Dependency Injection, as well as Martin Fowler's article and this answer on Stack Overflow. I feel like I understand how it works and how does it make testing easier, but I still don't get the concept. I learnt about Inversion of Control, and DI looks like the same thing (but according to Martin Fowler, it's not).

What is DI? How is it different from IoC?

This being said, I'm not sure whether the concerned question should be closed and on which basis. Currently, it has three close votes as “Too broad”, but I'm not sure it can be considered as such:

  • Are there too many possible answers? Probably not. There are several ways to explain a concept, but if we use this as a reference, every question I answered for the past three years should be closed as well, since there was always a different (and better) way to answer.

  • Would a good answer be too long? If we were on Stack Overflow, probably. On Programmers.SE, answers are expected to be long, so a definition of the term followed by explanation is not that long.

4

The questions are similar in that they both request a definition of a programming concept. They are different, however:

Question 1 asks for examples, which reads like a poll: provide your favorite object pool implementation. In addition, it asks two well-defined questions that have different answers.

Question 2 asks a single well-defined question. It shows a low but existing level of research: the author read the Wikipedia article on the topic but that did not help. Yes, this question could be improved, but it is focused and asks one question.

You must log in to answer this question.