Stack Overflow is both brilliant and terrible. As a web developer it's one of those sites that you just have to use, like Can I Use, MDN or CSS Tricks. You can Google any coding issue and the question will pop up in the first few results, you click through, scroll down to the accepted answer or the one with all the upvotes and 8 times out of 10 problem solved. Brilliant.
There's another side to it. The accepted answer is selected by the user who asked the question (the OP), someone who isn't an expert in this area. The solution works, they mark it as the accepted answer and get on with their lives. Meanwhile, others are providing different, possibly better, answers. These better answers may get some upvotes but a lot of visitors are just looking for a quick fix and won't read every answer and so won't upvote alternatives in any great numbers. So, the best answer can easily be overlooked.
There's also a bandwagon or snowball effect. As more people come past and use the "top" answer it gets more love, pushing other answers further into obscurity.
Then, there's another side to it. Time. On the web, things change. What was a great answer 5 years ago might be not be the best way of doing things today. So, you arrive at the question, see the accepted answer and answers with loads of votes and assume they must be right. Maybe not. It only means that they were the most popular answers at some point in time. There could be a much better answer lurking at the bottom with no votes. They need to consider recency as a factor in ranking answers like Google do. Nobody cares about an answer on browsers from 6 years ago.
Surely you can just ask the question again, a few years later? Oh no! "Duplicate question, duplicate question!" the moderators squeal and it gets binned. It's happened to me loads of times. "Possible duplicate of question 1917543" they sneer, pointing.
This, for me is the terrible side. It's not the flawed logic of the question and answer format, it's the snarky, show-off, know-it-alls who comment on each other's answers. Each of them is desperate to show off his or her (his, let's be honest) own knowledge and score points. Worthless, meaningless points.
It takes a lot of confidence to submit an answer, raising your head above the parapet, ready to be shot down. It makes me very reluctant to help my fellow developers, which I feel is a sad thing.
Rant over. I still use it daily so it must be doing something right. :)