I’m watching the Apple vs FBI case with a cautious eye, worried about the outcome and really without much of a clue where its going to go. At this point we have a situation I can’t feel comfortable on either side of. Do I want an enormous multi-national billions-rich company refusing to follow court orders? That’s the kind of situation that would usually have me calling for pitchforks, probably metaphorically but increasingly physically. Yet, in this case, I can’t help but find that I agree with the specific case. Encryption, I believe whole heartedly, is a human right. … Don’t I? So what do I do when the hands that protect that are owned by share holders? We’re in a position that we shouldn’t be in. We have government agencies like the FBI and the NSA and the Department of Defense which should be tasked with protecting us and, therefor, with protecting the mechanisms that keep both our physical and ephemeral property safe. The NSA should be funding real encryption and promoting public awareness of keeping their data out of anyones hands, including their own. The FBI should be going after companies that offer shoddy encryption that puts our information in harms way, not strong arming them into crippling it. I worry that there will be a day when I look back at the Age of Encryption. I worry that I’ll have to explain the concept of secrets and privacy to a future generation the way I explain to my son today that our phones used to be tied to the walls.
At a small suggestion in #python, I wrote up a simple module that allows the use of many python statements in places requiring statements. This post serves as the announcement and documentation. You can find the release here . The pattern is the statement's keyword appended with a single underscore, so the first, of course, is print_. The example writes 'some+text' to an IOString for a URL query string. This mostly follows what it seems the print function will be in py3k. print_("some", "text", outfile=query_iostring, sep="+", end="") An obvious second choice was to wrap if statements. They take a condition value, and expect a truth value or callback an an optional else value or callback. Values and callbacks are named if_true, cb_true, if_false, and cb_false. if_(raw_input("Continue?")=="Y", cb_true=play_game, cb_false=quit) Of course, often your else might be an error case, so raising an exception could be useful
Comments