When there is an opportunity to enlighten those around you, any time you don't act on it is basically withholding potentially helpful information, which could have negative effects.
You will probably encounter many scenarios where you have a different opinion than someone, or you are asked what you think about a problem or solution. If you happen to have some knowledge on the topic, don't feel like your voice doesn't matter. You'd be surprised at where great ideas come from.
Not always. Wording your expressions in just the right fashion can express your care and devotion to spreading knowledge when it is needed. Coming from a place of "I've experienced that too, and let me show/tell you how I solved it in my scenario" is better than "This is the right way to do this, if you don't do this, you're wrong"
Accept the challenge. The point of presenting an alternative view is to compare and agree on a solution that works best for each other. If one solution works for you, it may not work for another person's case. It is excruciatingly difficult to find one-size-fits-all solutions that helps everyone. Accept the fact that your opinion might not always be the answer, just express that your opinion exists and move on.
I decided that there have been so many comments on DEV articles where they express their opinion in such a negative context, like "Why did you choose that language, it sucks!" or "I can't believe you think that...". As a community, we should spread awareness that your views on a given topic are solely observational analysis and is subject to research that supports or refutes the opinion. I'd like to see this as a teachable moment for those who go about teachable moments in a demotivating manner.