|Welcome to issue 14 of Python Weekly. I wish you all Happy Holidays and I look forward to 2012, sending you the best Python related links.
Articles, Tutorials and Talks
MongoDB replica sets claim "automatic failover" when a primary server goes down, and they live up to the claim, but handling failover in your application code takes some care. This post walks you through writing a failover-resistant application in Python using a new feature in PyMongo 2.1: the ReplicaSetConnection.
This article shows how you can use python based crawler to crawl the android marketplace. The crawler script is available on github.
The article that shows benchmarking SockJS server performance with PyPy, CPython and Node. This test covers raw messaging performance over Websocket connection(s) for different server implementations of the SockJS protocol. The results are quite impressive with PyPy.
This post shows some of the things you should avoid when writing code using Python.
This series of articles explores how to use Python and Scripting Layer for Android (SL4A) to build applications for the Google Android platform. This article, the first in the series, shows what you need to do to get everything installed and running.
Tornado is one of the major async web frameworks for Python, but unit testing async code is a total pain. This post reviews what the problem is, look at some klutzy solutions, and propose a better way.
This post explains how to add a logout page to an AppEngine Python application, which will log out of the application only, without logging out of all of Google (e.g. Gmail, Calendar, Picasa, YouTube).
This post describes how Paylogic team got everything working using PyPy and some performance measurements and the outcome of a couple of simple benchmarks.
Interesting Projects, Tools and Libraries
Graphite provides real-time visualization and storage of numeric time-series data on an enterprise level
vbench is a super-lightweight Python library for running a collection of performance benchmarks over the course of your source repository's history.
Scrapy is a fast high-level screen scraping and web crawling framework, used to crawl websites and extract structured data from their pages. It can be used for a wide range of purposes, from data mining to monitoring and automated testing.
django-socketio is an application that brings together a variety of features that allow you to use WebSockets seamlessly with any Django project.
Cloud Scheduler manages virtual machines on clouds configured with Nimbus, Eucalyptus, or Amazon EC2 to create an environment for HTC batch job execution. Users submit their jobs to a Condor job queue, and Cloud Scheduler boots VMs to suit those jobs.
It is a django application which power dashboard modules with customer stats and charts
Sho is an interactive environment for data analysis and scientific computing that lets you seamlessly connect scripts (in IronPython) with compiled code (in .NET) to enable fast and flexible prototyping. The environment includes powerful and efficient libraries for linear algebra as well as data visualization that can be used from any .NET language, as well as a feature-rich interactive shell for rapid development.
Spring Python 1.1.1, 1.2.1 and 1.3.0.RC1
Versions 1.1.1 and 1.2.1 are maintenance releases that patch some bugs. Version 1.3.0.RC1 is the first release of 1.3.0.
IPython 0.12 contains several major new features, as well as a large amount of bug and regression fixes.
Upcoming Events and Webinars
By popular demand, data analysis and statistics guru Wes McKinney will be speaking at this meetup. He's got the floor the entire evening to answer questions, and discuss pretty much anything he wishes.
Come work on Python projects, get programming help, help others, and hang out. Bring your own project or work on one of the suggested projects
This class will pretty closely follow the material Google has provided for their crash-course on python.
This book provides an imperative-first introduction to Python focusing on computer applications and the process of developing them. The text helps develop computational thinking skills by covering patterns of how problems can be broken down and constructively solved to produce an algorithmic solution. The approach is hands-on and problem oriented.