I asked https://softwareengineering.stackexchange.com/questions/440554 and defined what I though were objective criteria, and hoped to leverage the site's expertise in a software engineering topic (I certainly couldn't find it myself online) - I expected users here might be familiar with studies into the ease of use of programming languages. I also looked in the help center's on-topic section and recommendations for scholarly papers might be considered off topic, but I'm not looking for casual recommendations but conclusive results.

I looked for similar questions anyway, for example questions about studies and noticed some closed and some still open. Even the closed ones seem to often get good answers, so perhaps it was just a case of making sure I didn't fall foul of these issues: https://softwareengineering.meta.stackexchange.com/a/6487/42685

It wasn't one of these:

Recommend tools, libraries, programming languages, resources (including books, blogs, tutorials, and examples), or projects to undertake

It wasn't a

book review or suggestion

It's not:

Asking for a link to something or statistics

Because a good answer would be helping to unpack and explain the study, and why it was/wasn't conclusive. You need software engineering expertise for that.

Which leads me onto:

  • No actual problem to solve
  • Not drawing from expert knowledge of the community
  • Will suffer from link rot or become out of date

However, I stated my problem, I need expert know to both find and explain any potential study, and as most journals don't go out of print and destroy their archives, it seems unlikely to suffer link rot. A properly answered question can cite the paper and summarise it, meaning there's no concern of transient external sources (say if the paper is, or becomes stuck behind a paywall).

Is there a place where I can ask such questions?

This section only send to deal with Software Recommendations, which this definitely isn't.

I've also seen posts of this sort answered with "ask in chat", but I already lined before posting, and to paraphrase Pulp Fiction:

Chat's dead Duga, chat's dead.

After my question got closed, I hoped to find out in the comments why and ask for advice on making form slightly off topic, to being on-topic - perhaps my earnest question could be improved.

But it looks like anything that even looks like a recommendation is considered blatantly off-topic, and the status quo is to delete first, allow asking these questions never.

Perhaps the overzealous deletion is why I didn't see as many similar questions as I'd hoped.

So was my question really so blatantly off-topic, or can the community leverage it's expertise and knowledge and answer it?

  • Does this answer your question? Is empirical evidence off topic here?
    – gnat
    Commented Aug 25, 2022 at 13:35
  • @gnat I fixed my title to explain it's about my specific question, which the linked dupe target doesn't cover. Thanks for finding that though Commented Aug 25, 2022 at 14:37

4 Answers 4


It wasn't one of these:

Recommend tools, libraries, programming languages, resources (including books, blogs, tutorials, and examples)

It may not be immediately clear to you, but our community here has developed a consensus that 3rd party resource requests like the request for a scientific study fall into this category. This is somewhat different to the situation before ~2015, when the site had a different name ("Programmers.Stackexchange") and covered a wider scope. Hence you may be able to find some older questions about such resources - but don't take that as a justification to ask such questions today.

I cannot say I am 100% behind this rule, since such studies as backup references may indeed contribute to the quality of an answer. However, explicitly asking such questions is frowned upon on this site, and our community does not see this as a huge contradiction.

For the particular question you asked, however, I think it is pretty likely that in case it would have been left open it would not have gotten any answer. One clue here is the fact that you could not find any study using the usual search engines by yourself. Another clue here is that the question's topic isn't really a mainstream software engineering topic. To my understanding, it is more a neuro-psychological topic, and you may ask about it at Psychology & Neuroscience Stack Exchange. But beware, if you ask there, I would recommend to primarily ask for their experts knowledge about it, not for scientific papers.


The question falls into what we consider recommending resources, but would also typically turn into the equivalent of asking for a link since we would not be able to reproduce the paper here. Even if it's not a link and a citation, there's no guarantee that the question would be valuable to someone in the future without reproducing the whole paper, which isn't permitted.

Finding resources like scholarly articles is something that you would use Google Scholar, ResearchGate, or CiteSeerX. These are search engines designed to find relevant material.

When you post a question to Software Engineering, or any of the other Stack Exchange sites, you are asking a question of hundreds of people. We aren't search engines. The expectation is that the questions asked here take advantage of the things that people have - their knowledge, education, and (perhaps most importantly) experience.

The best questions to ask here are ones about problems that you are facing. The inability to find a paper or study isn't a problem. Why do you need that paper? What problem do you hope to solve by reading it? That would make a good question to ask here. However, you would need to be open to people applying their knowledge, education, and experience rather than just giving links to third-party resources that may become unavailable in the future.

I'd also point out that the "overzealous deletion" is what helps keep the quality of the questions that remain much higher. It has been a standard practice to quickly close and delete questions that are off-topic and have a low chance of being salvaged for over 6 years now. Prior to deletion, people were using previously asked and closed questions to justify their question remaining, thinking that it was better or that they had addressed the reasons for closure, when the real reason is that the community doesn't want those types of questions here at all. It also prevents people from answering in the comments, which only promotes more bad questions since they get the info one way or another.

If you do want to leverage the expertise of this community, I'd take a step back and look at what problem you are facing. Instead of asking for information that you would get out of a search engine or perhaps a librarian, think about what you would ask a colleague in the office. Then, try asking that here.

  • I'm not asking for the paper to be "reproduced", I'm asking for Software Engineering expertise on a relevant topic, and trying to recognise what would make it objective not subjective. "The best questions to ask here are ones about problems that you are facing" I've stated my problem in the question. As for the standard practice – it didn't stop me, in fact it got in the way. And now I can't edit and improve my question. Blatantly off-topic questions are ones that can't be salvaged, but you're asking me to do that by re-asking with a slight reframing. That's not helpful. Commented Aug 23, 2022 at 2:31
  • @AncientSwordRage You can still edit a deleted question. Feel free to edit it and then either post here or flag it for moderator review and undeletion. However, if you don't remove requests for references and material, it almost certainly won't be undeleted. Beyond "I can't find a paper that conclusive evidence", it is not clear to me (and seemingly three other users who voted to close and/or flag the question) what problem you are facing or how the expert knowledge of software engineers can help solve that problem.
    – Thomas Owens Mod
    Commented Aug 23, 2022 at 10:56
  • I've made some tiny tweaks to appease policy Commented Aug 23, 2022 at 11:51
  • @AncientSwordRage It's still not clear what types of solution you are looking for. So you have a problem understanding TypeScript. What do you want us, as professional software engineers, do? If you're looking for validation that you're right or someone to tell you you're wrong, that has nothing to do with the practice of engineering.
    – Thomas Owens Mod
    Commented Aug 23, 2022 at 15:09
  • I would like to see if that language is harder to understand in general vs. JavaScript for people with learning difficulties/differences. I don't need validation - I find that assumption dismissive. The answer would inform me of how to approach that software language, for instance Commented Aug 23, 2022 at 16:12
  • @AncientSwordRage I don't see how a software engineer could do anything than provide their opinion or act as a librarian and point to studies. I don't see an argument for this question belonging here.
    – Thomas Owens Mod
    Commented Aug 23, 2022 at 16:30
  • I was expecting an answer like "I noticed someone on my team struggling/not struggling when we transitioned to TypeScript, so I looked into it and found <hard to find source> on the subject which I will summarise". Commented Aug 24, 2022 at 14:42
  • @AncientSwordRage If that is the answer you expect, then the question is a resource request. Answers should be able to be written by a software engineer based on their knowledge and experience in software engineering. Although including links or references is good, if the bulk of the answer can't be written by knowledge or experience typically associated with software engineering, it's not a good fit.
    – Thomas Owens Mod
    Commented Aug 24, 2022 at 16:24
  • That's why I said "I noticed..." Not "I found". The summary would both be impossible without expert knowledge nor as relevant Commented Aug 24, 2022 at 19:17

The fundamental issue is we need questions that have answers that are so objectively correct that the first answer to get it right will squeeze out room for any others. When that fails the votes are meaningless because for all anyone knows all the answers are correct and the highest votes just go to the first answers posted.

That breaks the site. It lowers its usefulness. That’s why we have to be picky.

And remember, were fallible humans. So we make mistakes. But we err on the side of protecting the site.

That said there are cases where subjective questions have worked out. A redeeming answer gets posted and casts the question in a new light. That's fine, so long as this answer squeezes out others. It's why we have the lifeboat badge.

But that's fairly rare and can take time. A poor reception needs to happen quickly because the new questions tell people what the site is about louder than any rules we post.

In short, asking a subjective question is risky. It's not off topic or against the rules. But can cause problems that we preemptively guard against. You'll find the actual rules for them here.

If this seems arbitrary and unfair that's only because it is. Some of my highest voted questions were subjective. And were actually closed as such. But some answers got in quickly enough to redeem my question. As the response came in people voted to reopen. Doesn't always happen. It can be nerve wracking.

The fact that it's hard to post a well received question is part of what makes it so worth it.

  • The help center mentions good subjective answers are allowed, is that not the case here? Also, if an expert brought conclusive evidence, would that not squeeze out room for any other answers? Commented Aug 25, 2022 at 2:30
  • 1
    You’ll find the guide on subjective questions here. And yes it would. That’s why we have the lifeboat badge. Sometimes an answer redeems a question. But sometimes the life boat doesn’t make it in time. Commented Aug 25, 2022 at 11:31
  • That would be a good addition to the answer I think, and an explanation that subjective questions are ok if a quick answer can redeem it. Commented Aug 25, 2022 at 12:18
  • @AncientSwordRage better? Commented Aug 25, 2022 at 14:51
  • Much better now Commented Aug 25, 2022 at 15:23
  • 1
    @AncientSwordRage you did the right thing by bringing this to meta. We are much better at communicating here. The close process can be frustratingly opaque. Which is a shame because we need people willing to ask questions. Commented Aug 25, 2022 at 15:29
  • @candied_orange: "We are much better at communicating here." - well, some of us are, Unfortunately, the two or three sual suspects who cast 80% of all the uncommented close votes and down votes have decided not to participate here in such discussions any more.
    – Doc Brown
    Commented Aug 25, 2022 at 19:25
  • @DocBrown sorry if I ever gave you cause to count me among those. Commented Aug 25, 2022 at 19:57
  • @candied_orange: you are joking, are you?
    – Doc Brown
    Commented Aug 25, 2022 at 20:37
  • @DocBrown actually no. I don't get a lot of feed back on my personal contribution here. I don't exactly check meta every day either. I see Thomas, Robert and you giving people feedback and contributing. Gnat is merciless at closing but better at explaining why than anyone I know on any site. I'm just plodding along with a generic one size fits all welcome to the site msg. Commented Aug 25, 2022 at 20:54

You might want to take your issue and completely reframe it as a different question.

I took a look at your deleted question. And while I don't have dyspraxia (that I know of) I am dyslexic. So I know a little about the struggles of being different. But I think the problem here goes beyond either of our problems. I think this code just sucks to look at.

customSortBy = (field: string) => <T>(sort: Comparator<T>) =>
  (a: { [key: string]: T }, b: { [key: string]: T }): number => sort(a[field], b[field]);

Yuck. That's barely better than a stream of word wrapped noise.

I've talked about word wrapped noise before and the shame is this code doesn't have to be. The failure here is not using whitespace to effectively highlight the structure of this code.

Typescript ignores whitespace. Which means it exists for humans only. As a human you should use it and demand it when needed. I think it's needed here.

customSortBy = 
  (field: string) => 
  <T>(sort: Comparator<T>) =>
  (a: { [key: string]: T }, 
   b: { [key: string]: T }): number => 
  sort(a[field], b[field])

That's a first pass by someone who actually hasn't touched typescript before. My point is, even without mastery of typescript I can say that code was written without enough care for how hard it is to read. It's not just you.

Now it may be the shop that wrote it is suffering under some ridiculous standards / style guide or worse a code formatter that people blindly cling to so they never have to make a judgement call. But no academic paper will save you from these people. You have to make them actually care. That's about being human. Not about being right.

But don't take my word for it. Turn this into a question about how to deal with this problem. Hell maybe a paper about this exists. But rather than demand a paper ask about this problem and see what the community says. We may surprise you in a good way.

Keep in mind we don't help with writing code. That's a Stack Overflow thing. But issues like how to layout code to make it readable, how to put those ideas in a style guide, or how to ensure code is readable in a peer review, are the sorts of things we deal with. We focus on the development process.

We even have a sister site dedicated to Code Reviews. Consider them if you have a large chunk of working code and you want an outside review.

In short, please try again. Failure is an excellent teacher if you don't let it keep you down.

You must log in to answer this question.

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