Blurring the line between internal and external discussion in this is silly. You should be free to speak up internally and having fear there is detrimental.
But hanging internal disagreements out for the competition? Stupid. There's no upsides.
there's never been any particular ethical reason why an employee shouldn't publicly speak their mind short of spilling trade secrets
It's not about ethics. The public perception of a company matters. Hanging internal disagreements out there does not help so you're just hurting yourself.
Hi, I was harsh on your other reply -- too harsh. Sorry.
Here, I totally agree. Mozilla grew a dysfunctional pattern of participants (more likely to be employees than not in my experience, but Mozilla hired most of the active contributors) stabbing projects, individuals, and other sub-groups in the back, under cover of "being open". This was inevitable given the framing in the "open vs. transparent" document:
Even now, Mozilla punches itself in the face too often, with punchers (and sometimes punchees!) claiming it's all for the best.
Taking care to give colleagues a chance to interact over a nascent or less-than-clear technical controversy, before blogging or tweeting, is not being "closed". It is standard peer review with scalability via layers-of-the-onion socializing combined with the "hermeneutic spiral".
Shooting first, fast, and in public in a large community with competitors and press listening is "open" in a vacuous sense, but it has the downside risks you note.
But hanging internal disagreements out for the competition? Stupid. There's no upsides.
there's never been any particular ethical reason why an employee shouldn't publicly speak their mind short of spilling trade secrets
It's not about ethics. The public perception of a company matters. Hanging internal disagreements out there does not help so you're just hurting yourself.