4 months ago
This is obviously a rather profound escalation of their attacks on the news-gathering process and journalism. It’s bad enough to prosecute and imprison sources. It’s worse still to imprison journalists who report the truth. But to start detaining the family members and loved ones of journalists is simply despotic. Even the Mafia had ethical rules against targeting the family members of people they feel threatened by. But the UK puppets and their owners in the US national security state obviously are unconstrained by even those minimal scruples.
If the UK and US governments believe that tactics like this are going to deter or intimidate us in any way from continuing to report aggressively on what these documents reveal, they are beyond deluded. If anything, it will have only the opposite effect: to embolden us even further. Beyond that, every time the US and UK governments show their true character to the world – when they prevent the Bolivian President’s plane from flying safely home, when they threaten journalists with prosecution, when they engage in behavior like what they did today – all they do is helpfully underscore why it’s so dangerous to allow them to exercise vast, unchecked spying power in the dark.
MATLAB has its weaknesses but one of the best things I like about MATLAB is the
keyboard command. It allows you to halt the program at a given point and gives you an interactive session that has access to all the functions and variables that are available to your script.
There are a few ways to do this in python. Of course, you could use gdb, just like you would to debug a C program. I know there are extra “plugins” that allow you access to Python specific debugging commands but I haven’t tried it out yet.
My preferred method is to use the Python Debugger or
pdb. The easiest way to do it is to launch your Python program as follows:
python -m pdb script.py
Then when your program hits an error, it will halt execution and give you an interactive console to debug the program right where the error was raised. It gives you access to all the variables and functions within the program at that particular point as well as a whole range of commands to help you with the debugging. Very useful especially when debugging useless error messages from third-party libraries.
There is another method that is a lot more similar to the MATLAB
keyboard function. Just import the
code module and the insert the command
code.interact(local=locals()) wherever you want to do the debugging. It gives you an interactive console to debug your Python program. The
local=locals() bit is required to give you access to all the local functions and variables.
4 months ago
Eye of Sauron appears in London as full moon rises over The Shard…. pic.twitter.com/oQ46IkxM4N
— Sarah Knapton (@sarahknapton) July 28, 2013
4 months ago
via Hacker News.
4 months ago
4 months ago
“Governments must not use cybersecurity as an excuse for censorship or to deny people their opportunities that the internet represents”.
So said David Cameron in 2011, criticising internet censorship and monitoring carried out by other countries around the world.
In 2013, this is the same man who wants to see internet filters installed in homes across the country and whose government collects huge quantities of data from the transatlantic cables that form the internet’s backbone.
The argument trotted out by supporters is that Western spying programmes prevent terrorist attacks. They probably do, but have also been used in ways that chill the freedom of speech. Case in point: the NSA appear to have gathered phone metadata on New Zealand journalist Jon Stephenson on behalf of the New Zealand government, in order to help identify his sources.
4 months ago
Protect Whistleblowers: Often the best source of information about waste, fraud, and abuse in government is an existing government employee committed to public integrity and willing to speak out. Such acts of courage and patriotism, which can sometimes save lives and often save taxpayer dollars, should be encouraged rather than stifled. We need to empower federal employees as watchdogs of wrongdoing and partners in performance. Barack Obama will strengthen whistleblower laws to protect federal workers who expose waste, fraud, and abuse of authority in government. Obama will ensure that federal agencies expedite the process for reviewing whistleblower claims and whistleblowers have full access to courts and due process.
4 months ago
Microsoft, as a company, moves very slowly. Ballmer is trying to change this with the recent reorganization, but we won’t see the fruits of this for quite a while. Once Microsoft goes all in, it’s in for the long haul because it can’t correct its course fast enough. “Touch first” – which begat Windows 8 and the Surface – was the wrong move. That ship has sailed. The question now is how long it’ll take for Microsoft to get back on the right course.
5 months ago
Much of the recent outrage about the surveillance programs has been about the monitoring of U.S. Citizens, as it’s probably illegal. However, U.S. intelligence has the legal right to monitor foreign communications as they go through to U.S. service providers. However, even though something is legal doesn’t make it right. I’m not American; I don’t really care about what data is being collected about American citizens. I’m worried about us, the foreigners. After all, we foreigners make up 96 percent of the people on the planet.
The United States has an unfair advantage, as most of the popular cloud services, search engines, computer and mobile operating systems or web browsers are made by U.S. companies. When the rest of the world uses the net, they are effectively using U.S.-based services, making them a legal target for U.S. intelligence.
But foreigners are not automatically criminals or terrorists. And in a surveillance state, everybody is assumed guilty.
tl;dr: Use Anaconda
The scientific programming libraries available for Python are among the best available out there. Libraries such as scipy, scikit-learn and scikit-image the among the easiest to use that I have come across. Of course much of that is due to the fact that Python is an amazing language…but we won’t get into that in this post.
Using the any of these libraries is dead easy once you get the hang of Python. The documentation is also (usually) pretty good. However, installing the libraries and their dependencies can be a pain in the ass. Most of these libraries are updated pretty frequently so you really want to use the latest version at anytime. So while the Debian repository has most of the packages you would need (not sure about other distros), the versions on the repository is usually outdated (with good reason).
One option (for Debian users at least) is neurodebian but I have had some problems with neurodebian in the past. My initial solution was to install as many as of the dependencies as possible from the Debian repositories and using
pip for the latest versions of the different libraries. This works fine in most cases. Problem is, when you want to upgrade to newer versions keeping track of how you installed each library, deciding what to upgrade, etc. becomes a pain (which is why we have
apt-get…but we’ve already established that we can’t do that).
The next best solution that I have come across is Anaconda from Continuum Analytics. Anaconda installs everything you need for scientific programming in Python (including Python itself) within a directory anywhere on your machine. Works on Mac, Windows and Linux (any distro as far as I know) and is really simple to install. It even comes with Spyder, a MATLAB-like IDE for Scientific Python programming (although I prefer Vim+terminal).
For Mac and Windows, just download the GUI installer and follow the instructions…hard to mess up. For Linux systems, just download the shell script from
http://continuum.io/downloads and run it to install anywhere on machine. If you’re installing it within your home directory (or anywhere else you have permissions) you won’t need root access. However, if you are planning on allowing multiple users to have access to Anaconda, I suggest the following approach.
- Install Anaconda in
/etc/anaconda(you will probably need root access to do this)
sudo bash installer.sh
When asked if you want to install Anaconda in
- Create a user group called anaconda
sudo addgroup anaconda
- Next change the ownership of the
sudo chown -hR root:anaconda /etc/anaconda
- Add the root user to the group anaconda
sudo adduser root anaconda
- Now add any user needs access to Anaconda to the group anaconda. Make sure you use
usermodto do this (
usermoddoesn’t work sometimes)
sudo adduser username anaconda
- (optional) Check that the users were actually added to the group anaconda
sudo groups username
- Finally for each of those users, add the following line to the end of their
.bashrcfile (usually found in
/home/username/.bashrc) using a text editor of your choice
- Restart the machine (just in case)
That’s it! Just to see if everything is working fine, run Python. You should see something like the following in the first line.
Python 2.7.5 |Anaconda 1.6.1 (64-bit)| (default, Jun 28 2013, 22:10:09)
The important bit to lookout for is
...|Anaconda.... If you see that everything should be fine.
- I used
/etc/anacondabut you can use anything you want really
- I did this on a Debian 6.0 (squeeze) box. Should be the same for most other systems but just be careful
- If you ever need to uninstall Anaconda just delete the directory
/etc/anaconda…piece of pie
- If you need any help, first place to look is of course the Anaconda documentation. Otherwise, the Anaconda mailing list would be your best bet.