2

I'd like to discuss whether or not there is a difference between querying historic design decisions and asking for opinions. The difference is subtle enough... "why should I ..." can often be opinion based. "Why did ... happen" is often a matter of documented fact(?)

My own feeling on the matter is that historic decision logic was, at the time, a matter of opinion of authors and software venders. Yet this decision logic is often well documented, particularly where a significant change occurs after first release.

So "why did ... change to ..." is commonly going to be documented somewhere such as the software's issues database or release notes. This makes the final decision a matter of historic fact, not opinion. IE: the documented opinion at the time becomes historic fact. It can be answered in a factual way not a historic way.

As examples:


On the flip side I note that the definition of "opinion based" here is:

This question is likely to be answered with opinions rather than facts and citations. It should be updated so it will lead to fact-based answers.

This is subtly different from saying that fact-based answers are possible. Frustratingly, deciding which questions are likely to draw opinion over fact feels very much a matter of opinion. Unless a question has begun to draw opinion based answers it seems a very subjective categorisation.

8
  • What is suggesting you that historical reasons are considered as opinions on U&L? Sure, the "opinion-based" close reason seems to aim at preventing excessive discussion, regardless of whether a fact-based answer is ultimately possible, and its usage may be problematic sometimes. Is this the point you'd like to discuss? I fail to see it as a historical v. opinion issue, though.
    – fra-san
    Commented Mar 9, 2021 at 12:38
  • @fra-san there's a couple of things on my mind. I've felt in this past this has been a bone of contention. I'm deliberately not linking any such discussions to avoid re-opening old heated debates. The single point of difference has seemed to be whether or not it's okay to question / answer about other people's [historic] opinions. It doesn't seem obvious to me whether or not such questions are classified "opinion based". Practically I feel some questions are getting closed much too quickly. But on this specific point I'm less sure of myself and interested in other's thoughts. Commented Mar 9, 2021 at 13:03
  • [citation needed] for "commonly"
    – muru
    Commented Mar 10, 2021 at 2:19
  • @muru I'd say that's part of a standard software lifecycle. Changes in (team based) open source projects and commercial projects are brought by way of pull requests. These pull requests usually need to be justified in some way. Sure there are many smaller (one person) projects which don't operate this way. Commented Mar 10, 2021 at 9:33
  • No, I'd say that's a feature of projects which put a lot of importance on quality commit messages, and not a factor of team size. If the project is largely driven by a team that often decides things in verbal conversation, or in some corporate intranet channel, then reasoning for changes needn't be that well documented.
    – muru
    Commented Mar 10, 2021 at 9:38
  • @muru True, on the corporate level (though with this pandemic I'm starting to forget what "verbal" means). Is it really so common in open source to have such discussions verbally? My experience with them has always been mailing lists / gitter / issues logs etc. Commented Mar 10, 2021 at 9:42
  • In terms of number of projects, probably not. In terms of users, I'd say yes. Can you or I say for sure what drives various decisions in what's probably the most commonly used open source project by the general public: Android? Or, say, it's sibling, Chromium OS?
    – muru
    Commented Mar 10, 2021 at 9:54
  • @muru absolutely not. With context to this question I'll try to claim the benefit of the doubt... Documentation of design decisions exists on open source enough projects that such questions are not automatically "opinion based". They may frequently be unanswerable if, as you point out, projects are not well documented. Commented Mar 10, 2021 at 10:01

2 Answers 2

3

My own feeling on the matter is that historic decision logic was, at the time, a matter of opinion of authors and software venders.

It may have been based on the opinion of the author at the time. Worse, it may be that the author decided on a whim, or didn't even consider alternatives. Or there might have been real practical arguments.

Which ever it is, for historic cases, the answer often is something like "Because this guy made it so in the 70's", which is based on fact, not opinion. A more useful answer would continue with "...because at the time, these constraints made that the sensible choice, and they've said that in public [link].", or "...but I've looked at these and these records and can't find why they chose that.". But historic facts are still facts, and can be supported with evidence in the form of design documents, archived emails or other sorts of statements from the original author. They're not something that is based on the opinion of whoever presents those facts or answers questions on SE.

(That applies even if the person answering the question is the person who made the original choice based on their personal opinion. "It's like that because I felt like it was a nice way to do it back then" is still a factual statement. An addition to the tone of "...but on retrospect, I think that was a mistake", would appear to be somewhat opinion-based, though.)

Of course, if there are no facts or supporting evidence to be found, any answers other than "It seems we don't know" are likely to be somewhat weak, based on conjectures and interpretation of the person writing the answer. (And people sometimes do have a tendency to guess when there are not enough facts available.) But it's not really the question's or questioner's fault if an answer can not be found.

3

Unless we diligently remove all answers which are effectively non-authoritative opinion, such posts will devolve into people guessing.

Take the first example - the netstat question. OP has clarified that they want know why the developers deprecated it.

The accepted, highly-upvoted answer is garbage in that respect. Its main source is a blog post from a certain Doug Vitale. But! That blog post does not say anything about why netstat is deprecated. (Also: Who is Doug Vitale? What authority do they have for speaking about netstat?1) The other source in that answer is the Server Fault post mentioned at the very end. Nothing about the maintainers' opinions there either.

So we have two equally useless answers, both of which have been upvoted, one of which has been accepted, despite not answering the question. How is that an acceptable situation?

Sure, every now and then we might have the odd "why did they do X" or "why didn't they do Y" question for which an authoritative source can be found. Sometimes the authority themselves post the answer. But I contend that's not the general case, so I am in favour of keeping such questions closed until someone can prove that such a source exists, at which point of course we can re-open the question and have that posted as an answer. Why allow garbage to accumulate, when we can gate the post until an acceptable answer arrives?


1 I might be able to find out if I wanted to, but that's something the answer should include in the first place.

You must log in to answer this question.

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