Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

> Veering ever so slightly from the common, but entirely non-documented, approach makes it hard to get help. Places like StackOverflow are increasingly useless: instead of answers you get “Why are you doing this at all?”, “Yuck, you’re doing it all wrong, but I won’t tell you why” [...]

While I disagree with the premise (that using old approaches should still take you just as far (and further) 20 years later), I do agree with this particular quote.

Often on SO I see well-supported answers like, "that's because you're doing it wrong" without going into detail on what doing it right would mean, or better yet, suggesting alternative frameworks or patterns where what's "wrong" over here is "right" over there.

If programming in 2018 has become more like plumbing, then plumbers in 2018 have become more dogmatic, and less willing to steer novices that prefer tools like 'x' towards approaches that use tools like 'x' more often.



> Often on SO I see well-supported answers like, "that's because you're doing it wrong" without going into detail

Disagree, but that might be because we frequent different territories of the StackOverflow space. I admit I don't often delve in to web-dev topics. For .Net questions, I'm continually impressed by StackOverflow's answers.


While I agree that the quality of .net is impressive, I think that it follows the overall SO problem with outdated answers.

Recently I ran into the 'why Boolean.toString returns an odd "True" value', I visited SO to find a terrific [1] but outdated [2] answer.

Nowadays I shift my teams away from SO. My piece of advice would be to stay away from it (especially junior devs), until they reach a level were they can evaluate and cross check what they are reading.

[1] https://stackoverflow.com/questions/491334/why-does-boolean-... [2]https://msdn.microsoft.com/en-us/library/atahsch6(v=vs.110)....


Maybe I'm missing something obvious, but what's outdated there?

The correct solution remains `b ? "true" : "false"`, no?

If the XML spec requires exactly those strings, why do anything cute with `ToString`?


The function used to return "TrueString" or "FalseString" back then. Nowadays it returns "True" or "False".


Aren't those identical? If I understand correctly, .Net guarantees string internment for all string literals, even across assembly boundaries, so they should end up referring to the same String instances.

https://blog.jetbrains.com/dotnet/2015/02/12/string-internin...


It's not a matter of instance or memory. In the aforementioned example it was me trying to print valid JSON from a razor view, so the capital T in "True", was causing me headaches. I wouldn't of course use "toLower" as a workaround and actually found out the best practice. However this incident made me curious regarding this behavior and triggered my little "research".


I don't follow. Boolean.TrueString is "True", with a capital 'T'. I don't see that anything on SO is out of date.

The StackOverflowers note that the implementation technically doesn't match the spec, but in a way which can only be observed by using reflection https://stackoverflow.com/questions/491334#comment34617036_4...


I used to do .net and I admit that I was always impressed in that territory too. Good point!


I agree that SO is a great place in my experience.

The worst area seems to be JavaScript, since that world is full of trendy new options. The most common one I see here is where someone wants a solution to a JavaScript problem and gets a JQuery response; even though a JavaScript solution would be trivial and the OP's not mentioned JQuery. That has a tendency to push people into using libraries where they're not required.

For .Net questions most of the issues seem to be in the ORM space; i.e. the boundary between .Net and SQL; where people asking for help with SQL are pointed to LINQ, and people wanting to do database-first are pushed towards code-first solutions.

It's not really an SO problem (or at least not a problem that I can think of an easy way they'd be able to solve); more there are so many solutions and no best way; and giving the full context of the developer's experience, preferences, and situation would take several essays, then matching that to those qualified to supply a suitable answer for that particular scenario would require really intelligent filtering; assuming that such people exist and are active on SO. So the current solution of having lots of answers to pick from, and allowing people to up-vote and comment to help remove bad answers and help show which answers are the more generally preferred (thus driving those who don't have a preference to follow the general consensus and thus move towards some form of standard approach within the community) seems a pretty good one.


> a JQuery response; even though a JavaScript solution would be trivial

That's just SO reflecting the culture of JavaScript developers, right? As you say, not really SO's fault, and a forum can't hope to correct for a dev community's vices.

> .Net questions most of the issues seem to be in the ORM space

Disagree. There's plenty on .Net concurrency and asynchrony, for instance, with answers from top experts from Microsoft. That's a field where it's quite common for someone to be 'simply wrong' though, which as you say, isn't universal.


> someone wants a solution to a JavaScript problem and gets a JQuery response

It's a mixed bag, really. Since at least an year if jQuery is not mentioned either in the question or in the tags or in comments from OP, usually users suggesting to use jQuery get told off and, sometimes, downvoted.


> If programming in 2018 has become more like plumbing, then plumbers in 2018 have become more dogmatic, and less willing to steer novices that prefer tools like 'x' towards approaches that use tools like 'x' more often.

Do you think that real plumbers are excited to teach novices how to do their own plumbing? Plumbing is boring, and novice technique 'x' is even more boring. And in programming tools change so fast, that you'll be explaining the same thing again in six months from now.


Somehow SO has solved the problem of getting experts to weigh in on questions by novices, even though experts are typically busy and the landscape of tools/patterns changes quickly.

The remaining problem to solve is getting experts not only to weigh in, but to model patterns or point to alternatives that incorporate (rather than deride) the novice's original approach.


SO is getting useless. Search for anything and you have to wade through page after page of “use the search function” replies to legitimate questions. I am, you jackass. The original answer is now a broken link.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: