It does not "do more good" in the open.
Open carry should be legal (2nd Amendment, and all that), but I feel that it's generally a bad idea. Open carry telegraphs to a potential criminal who is armed and who is not. Not knowing who may be armed is a much greater deterrent, and prevents criminals from simply selecting a victim who is unarmed.
Secondly, open carry can make armed citizens targets for crime, in some instances. Stolen handguns are very valuable to criminals, and are tempting targets of theft. And, in the case of a shooting, you can be certain that the shooter will target an obviously armed person first.
Thirdly, open carry needlessly frightens and intimidates people. No, an armed citizen is not responsible for anybody else's feelings, but there's no need to knowingly make people uncomfortable. If you and I are in an argument, that argument would probably feel very different to you if I have a gun visibly strapped to my hip. People open carrying will frequently find that they're drawing unwanted attention to themselves, and are frequently asked to leave stores because somebody else is nervous.
These reasons will dissuade most people from open carrying, even in areas where it is legal. Unfortunately, that leaves the douchebags that open carry specifically for attention. This means that looking like a badass is a higher priority than avoiding unwanted attention, being targeted by criminals, and making people nervous, and those are the last people that the gun community needs representing them. It's always some tacti-cool Hot Topic commando whose palpable insecurity is not even remotely masked by his "don't f*ck with me" bravado exterior. This is what anti-gun people think that all gun owners are, and we don't need any more of that kind of press.
Concealed carry solves all of these problems, and introduces no new problems that I can think of. I do think open carry should be legal, but I think it's a right that gun owners should choose not to exercise, opting instead to carry concealed.