Get Your Weekly Dose of Python
Welcome to issue 77 of Python Weekly. This week's issue is also jam packed with great stuff. Enjoy it!

I will be attending PyCon next week and looking forward to seeing some of you there. If you are not able to make it to PyCon this year, you can follow PyCon 2013 Live and Curated Updates that I have set up.
 

From Our Sponsor

Get started for free building Python applications on Google App Engine
We support Python 2.5 and 2.7 allowing you to take take advantage of the many libraries, tools, and frameworks that professional developers use to build world-class web applications.


News

PyCon Australia 2013 is pleased to announce that its Call for Proposals is now open! The conference this year will be held on Saturday 6 and Sunday 7 July 2013 in Hobart, Tasmania. 
 
 
 
Articles, Tutorials and Talks

This post introduces an approach for recommender engines using graph concepts to recommend novel and interesting items. It builds a graph-based how-to tutorials recommender engine using the data available on the website SnapGuide, the graph database Neo4J and the graph traversal language Gremlin.
 
If you've ever seen bots on reddit like qkme_transcriber, you may wonder how they're able to make posts without human intervention. Well wonder no longer! By examining how OKCupid handles HTTP requests, I'll show you how to first deconstruct the undocumented APIs of other sites, then manipulate them with nary a mouse click.
 
Logistic Regression is a statistical technique capable of predicting a binary outcome. It's a well-known strategy, widely used in disciplines ranging from credit and finance to medicine to criminology and other social sciences. This is a post about using logistic regression in Python.
 
Stop using classes as shapeless bags in which to dump functions. Chances are, either that big ol' function is actually the state of a different kind of object entirely, or there are several smaller concerns in there you could break apart.
 
Blaze is a library that is being designed to allow handling data resident in the different layers of the memory hierarchy in a transparent way (basically following the NumPy data access paradigm at user level). For this, a new format (internally called BLZ) that is aware of the properties of each memory layer for storing data is being implemented.
 
Nikola has had the capabilities to create generic sites. For example, Nikola's own site is a fairly generic one. Let's go step by step on how you can do something like that.
 
Github recently introduced its new and improved search feature. While the improvements make search for content much easier, it has certainly introduced its share of problems as well. This is just another example.
 
In step with our recent article about essential R packages, this post explores tools for data analysis in Python.
 
This article showcases basic ember features and ember application development process for a Django-Tastypie-Ember application. You need at least basic Django and django-tastypie (REST API-making application for your models). 
 
Timing and profiling code is all sorts of useful, and it's also just good ol' fashioned fun (and sometimes surprising!). This post introduces how to capture some of the information through IPython magic functions.

A post showing how to send business cards directly to email via SMS.
 
 
 
 
 

Does your startup rely on social network analysis? This concise guide provides a statistical framework to help you identify social processes hidden among the tons of data now available. Through expert SNA researchers, you'll learn concepts and techniques for recognizing patterns in social media, political groups, companies, cultural trends, and interpersonal networks. You'll also learn how to use Python and other open source tools--such as NetworkX, NumPy, and Matplotlib--to gather, analyze, and visualize social data.
 
Some of the changes in this beta release are
  • Added 50+ pages of content while reducing the file size from 5.1 MB to 1.5 MB.
  • Dramatically improved the chapters on security, testing, logging, admin, and many more.
  • Added so many more code samples that even with the new example numbering system we lost count. 
  • Speaking of code examples, most of the code samples in the book are loaded directly out of fully tested projects.
 
 
 
Interesting Projects, Tools and Libraries

Ferris is an MVC framework written in Python and makes developing App Engine applications a breeze. The Ferris framework employs a model-view-controller architecture to help accelerate app development, automatic CRUD (create, read, update and delete) scaffolding, Jinja2 Python templating and theme engine implementation, and integrates with the Google Client API and OAuth2 authentication protocol.
 
OctoPrint provides a responsive web interface for controlling a 3D printer. The intended usecase is to run OctoPrint on a single-board computer like the Raspberry Pi and a WiFi module, connect the printer to the server and therefore create a WiFi-enabled 3D printer. If you want to add a webcam for visual monitoring and timelapse support, you'll need a powered USB hub.
 
A Django `cache_page` decorator on steroids.
 
Quinico is an open source web application designed to help you easily improve your website's performance, reduce errors and optimize for search engines (SEO).  Quinico can constantly monitor your websites and alert you when there is a problem that requires attention.  Using Quinico, you can automate the continual tracking, reporting and alerting.
 
Elevator is a Key-Value store written in Python and based on levelDB. It allows high performance on-disk bulk read/write.
 
Class2Go is Stanford's open-source platform for online courses. It was built to be an open platform for learning and research.
 
EmeraldBox is a boilerplate framework for developing python web applications with database access. The framework is based on Flask, werkzeug, jinja2 and good intentions. Flask gives a complete basic package. EmeraldBox gives structure and helper tools to speed up development and app deployment on servers. Several basic packages commonly used in developing web applications are included.
 
Django SSL Server is a SSL-enabled development server for the Django Framework.
 
petl is a tentative Python module for extracting, transforming and loading tables of data.
 
Lurker is a tiny mysql wrapper built on the top of python-mySQLdb.

Exhibitionist is a Python library that let's you build tiny web-apps which serve as views for live python objects in your favorite python shell. It's built on top of Tornado, so you can do everything it allows you to do.
 

Python Jobs of the Week

The AWS Elastic Beanstalk team is searching for Python experts eager to make AWS the place to develop, deploy and manage applications. This is your chance to influence developers worldwide through services, tools and programming models that make it easy to build on the cloud.
 
As a Senior Software Engineer you will work on many technical challenges of a ticketing system in an international team of (~20) friendly Python experts.  You are a passionate software engineer with a hacker mind-set, a professional attitude and a love for open source and Python.


Upcoming Events and Webinars

The talk will provide a high-level overview of using MongoDB with the Python driver PyMongo.
 
Arts Alliance Media is at the forefront of cinema technology and develops cutting edge systems to power film and theatres like never before. There's going to do demos and live coding at this event, so if you want to see how to hack digital cinema with Node, Python and a host of other tech, then this is the event for you
 
 
 

Get Your Weekly Dose of Python