Hacker News new | ask | show | jobs
by codinghorror 5052 days ago
> But consider a question like "What are the pros and cons of Sinatra vs Rails?" This sort of question (IMHO) absolutely has value as someone experienced with both could enumerate the relative merits of each in a pretty objective fashion without making an absolute determination. This is something that absolutely could have value to anyone evaluating Ruby Web frameworks.

I guess, but Zookeepers could also potentially talk about "What are the pros and cons of Gorillas vs Sharks?"

http://blog.stackoverflow.com/2011/08/gorilla-vs-shark/

> Database development mistakes made by application developers

This is a discussion, not a question. The entire text of said "question" is, quite literally, "What are common database development mistakes made by application developers?" If it can have infinite answers, is it really a question?

http://stackoverflow.com/questions/621884/database-developme...

Great post, indeed, but it belongs on your blog.

One of the biggest misconceptions about Stack Exchange is this idea that discussion is, in and of itself, a net good to the world -- and therefore we are monsters for not allowing discussion. I do not believe this to be true. There is, and will always be, an infinity of discussion. Like Jay Leno once said about Doritos, "type all you want, we'll make more". If something can be had in infinite amounts, what is its value?

Stack Exchange supports only the minimal subset of discussion necessary to get practical, useful answers to specific questions. The goal is not discussion, but science-in-the-small. Back up your claims. Show us references. Show us data. Share your specific experiences.

Otherwise you end up with Quora, a system where everything is a discussion, and all answers are opinions. Thus they can only be evaluated based on how famous the poster is, or how compelling a yarn they can spin.

Nothing against Robert Scoble and great storytelling (I used to work with Joel Spolsky, after all), but I've seen where that system leads. Given a choice, I'll always take tiny science. You should too.

3 comments

What are common database development mistakes made by application developers?

It is a question, an open question intended to provoke debate and teach about a subject, in effect it's a request for an FAQ. Now perhaps SO is not intended to be for that sort of question, and that is of course for SO to decide.

I suppose the reason many people come to SO to read questions is that they'd like to learn about a subject area, and the reason many people come is write answers is that they'd like to teach a little about a subject, and this sort of open-ended questions offer the opportunity for someone to answer questions the asker didn't even know they had - like should I add an index to my db, if so when? Should I use natural keys? etc. To in effect tell them to unask all those questions they would otherwise have asked in groping their way to familiarity with the subject. It functions as an FAQ for that particular subject, to prevent beginners from making the same mistakes/asking the same questions over and over.

So that sort of question can be very useful for someone starting out, for the kind of person your site targets. Maybe that sort of question belongs on some other site though, a sort of training site rather than a question/answer site, or maybe SO should just expand to encompass that sort of FAQ function?

I'm not so convinced that for this category of question there is a clear line between 'db x breaks when I do y, what should I do?', 'Do I need to use db transactions in db x?', and 'What are the common db mistakes?', and that one sort of question/answer is rational, and another narrative - is the division really that clear? Are there not many many borderline questions which solicit opinion (of someone who knows more about the subject), and yet are useful for others too? Are not many of these smaller 'science-in-the-small' questions actually answerable in many different ways, each of which may be somewhat valid and none of which is actually 'right' in some categorical way?

For example this question, which is equally open-ended, remains open (rightly so I think as it could be a useful discussion :)

http://stackoverflow.com/questions/327199/what-will-we-do-af...

> or maybe SO should just expand to encompass that sort of FAQ function?

Some of the tag wikis do this:

http://stackoverflow.com/tags/java/info

http://stackoverflow.com/tags/c%23/info

So Cletus' post might make more sense as the tag wiki for, say:

http://stackoverflow.com/tags/database/info

Yes it could although the wikis don't contain the other alternative questions or the dialogue which make Q&A sessions involving several people who know the subject well useful for other readers. For many questions (particularly open ones) there are many answers, and no right answer for all circumstances, so there is no clear division between this question/answers and other longer more specific ones as to being opinion or fact - they're mostly a mix of both.

Because people will inevitably continually ask/answer these questions and many similar more specific and yet still open ones and see the resulting debate as useful on any QA site, it might be good to have a more structured way of moving them to an FAQ section on SO, without destroying all the ad-hoc relations and rewards that users have built up using your QA format (i.e. not turning them into a wiki, which doesn't really suit them and loses all the attribution, comments, discussion etc).

It feels a little draconian at present sometimes when useful answers are marked as 'trivial' or 'not constructive' when they clearly are constructive, but are constructive in a direction SO didn't anticipate.

I have to wonder if the original plan was to leverage the question answering as a wiki generator, but if so they should put pointers on closed questions. I'm not sure whether I have a problem with how SO is conducting themselves, since it could simply be that they're opinionated about what constitutes valid content and aren't afraid to leave the other stuff to other sites. That is, I'm not sure Zawinsky's Law can be extended to GYOFB situations.
> I guess, but Zookeepers could also potentially talk about "What are the pros and cons of Gorillas vs Sharks?"

And on an appropriate forum with as many readers as SO/SE you'd likely get well-thought out responses going far into detail regarding purchase cost, habitat maintenance, prevalence of skilled keepers, etc. Someone who actually was deciding whether to add a Gorilla enclosure or a shark aquarium would find it a very enlightening post.

I understand you created SO/SE and want to see it move in a certain direction, but closing and deleting questions you don't like because it threatens your "science-in-the-small" goal is, I think, a terrible way to go about it.

(FTR, I understand Jeff is not personally going around deleting stuff on the site)

You hit the nail on the head... "an appropriate forum with as many readers as SO/SE"

Stack overflow on the other hand is for people to:

[A]sk practical, answerable questions based on actual problems that you face. Chatty, open-ended questions diminish the usefulness of our site and push other questions off the front page.

Thanks for the reply, Stefan, but I think you misunderstood what I meant by "appropriate" (thought I understand your use); I meant the zoological equivalent of SO/SE (Zoooverflow?)
* Chatty, open-ended questions diminish the usefulness of our site*

How, pray tell?

Because they scare off the experts who post the really useful (i.e. practical) answers.

If too many of them leave, the site becomes useless.

The people who answer (and upvote) questions like "What's your favourite programmer cartoon" do not think this through - they just see something funny and click the upvote button. People have argued "but this got upvoted so it must be good" since the site started, but it just isn't true.

There's a world of difference between "I want to learn Perl or Python, what are the pros and cons of each?" and "What's your favorite programming cartoon?"

I think moderation efforts would be much better spent directing the answers to the open-ended questions away from monoglotist flame wars and toward an honest discussion (there's that word again) of something.

I don't think anyone would complain about aggressively closing questions like the one you posited.

You start attracting the people more interested in discussion than actually Getting Things Done. Bikeshed discussions become the order of the day, and why not, because they are so fun and easy to answer -- everyone's got an opinion to share. And they generate huge amounts of reputation because they're easy to process. "Yup, GOTO sure is terrible, preach it brother, {upvote}"
> Database development mistakes made by application developers

This is a discussion, not a question. The entire text of said "question" is, quite literally, "What are common database development mistakes made by application developers?" If it can have infinite answers, is it really a question?

http://stackoverflow.com/questions/621884/database-developme....

Yes, it really is a question. I don't mean to come off as sarcastic, but it's got a question mark at the end of it - one that you, yourself, put there.

You're the one that's imposing esoteric semantics and restrictions on this.

Great post, indeed, but it belongs on your blog.

Except that:

1) no blogs have the visibility and user base that SO has - not even yours or Joel's. 2) a blog post isn't crowdsourced - at least not to the extent that SO is

One of the biggest misconceptions about Stack Exchange is this idea that discussion is, in and of itself, a net good to the world -- and therefore we are monsters for not allowing discussion. I do not believe this to be true. There is, and will always be, an infinity of discussion. Like Jay Leno once said about Doritos, "type all you want, we'll make more". If something can be had in infinite amounts, what is its value?

Nutpicking and a false dichotomy. Ease up on the defensiveness and try to see it from the point of view of the many people that want/need to know the answer to that question.

For Pete's sake, at least 568 people upvoted the question, and at least 1004 people upvoted the first answer alone.

The community has spoken - they see this as valuable content.

Stack Exchange supports only the minimal subset of discussion necessary to get practical, useful answers to specific questions. The goal is not discussion, but science-in-the-small. Back up your claims. Show us references. Show us data. Share your specific experiences.

This is an overly narrow, baffling and frustrating definition of "question"

(And the goal may not be discussion, but discussion is a characteristic of most answers. It's a community, after all.)

For Pete's sake, at least 568 people upvoted the question, and at least 1004 people upvoted the first answer alone.

The community has spoken - they see this as valuable content.

Popular is not necessarily the same thing as valuable. This is a problem that reddit's been hitting a lot lately (e.g. image macro posts everywhere). The most easily-digested simple things get lots of upvotes because everybody can relate, or at least understand. The more complex, useful answers to more specific problems get a lot less attention because a lot fewer people can recognize the value, or even understand the question.

I have to agree with Jeff Atwood, these types of discussion questions shouldn't be on SO. They're just fluff questions that drown out the important work of solving actual problems.

Popular is not necessarily the same thing as valuable

Fair enough, but we're not talking about "Why does Vista suck?"

Maybe he chose the wrong example to make his point. But the only other example he chose was Python vs Perl, for which he cited his own blog post in which he hyperbolically characterized that question as "Sharks vs Gorillas".

That's not a rational argument. That's refusing to reconsider your position and engaging in fallacies to justify your position.

They're just fluff questions that drown out the important work of solving actual problems.

Like. maybe, avoiding database development mistakes made by application developers?

I'm not sure what your point is. What's the fallacy? I haven't seen any examples of this sort of discussion question that are good arguments for allowing them on SO.

Like. maybe, avoiding database development mistakes made by application developers?

Nobody's saying don't post that information. Just, don't post it on Stack Overflow. There's plenty of other places to post long-form pieces about general discussion questions. The best of which is probably a blog. If I want to avoid database development mistakes I can google for that question pretty easily. I don't need to go trawling through Stack Overflow to find that sort of generic advice, and I don't need to drown out other people's legitimate questions with my own fluff question asking for a rehash of widely-known database development practices which I could have found elsewhere.