The case of Mr Snowden is a conundrum. He is described as a whistleblower and he has undoubtedly blown the whistle on practices which have shocked the naive. I should say that it hasn't shocked me in the least since I've always believed that long-winded program updates have hidden automatic reporting tools.
The whole definition is a problem, I cite just one such definition: "One who reveals wrongdoing within an organization to the public or to those in positions of authority."
It's the wrongdoing that presents the challenge. What is wrongdoing? Who decides? Is it something that's generally accepted as wrong by society in general, or is it a specific wrong which is contrary to the organisation's mission, its reason to be or its code of conduct? And when is it wrong? At what point is it right to move from loyalty to an organisation, where you might report the shortcomings and seek to change the outcomes from within, into blowing the whistle?
I offer no answers only the opportunity for the reader to ponder the matter and come to their own decision.