Get Your Weekly Dose of Python
Welcome to issue 80 of Python Weekly. This is a bumper size issue. Enjoy it!
 
From Our Sponsor

Coming soon! Enthought Canopy, the comprehensive, Python based analysis desktop and Python distribution for scientific and analytic computing. Get more information here.

News

The goal of this project is to add two things to Django core, replacing South entirely:
  • A database-independent API for altering database schemas on a per-field or per-model basis
  • An all-new migrations framework, generator and runner


Articles, Tutorials and Talks

This is a great series of articles where the author is documenting his experience writing web applications in Python using the Flask microframework.
 
We're in the early stages of iOS automation, but Pythonista, Launch Center Pro, and x-callback-url are indicating the path other developers should follow. In this post, the author shows how he achieved iOS workflow nirvana using Pythonista.
 
Django has lots of "batteries" included, and makes it easy to get up and going. But all of the power means you can write low quality code that still seems to work. Effective Django development means building applications that are testable, maintainable, and scalable - not only in terms of traffic or load, but in terms of being able to add developers to projects. After reading Effective Django you should have an understanding of how Django's pieces fit together, how to use them to engineer web applications, and where to look to dig deeper.
Skip lists are a freaking awesome data structure you should go and read about today. Despite a full implementation fitting comfortably on a single A4 page they still manage to perform well compared to significantly more complex tree structures. That aside, who doesn't want to use a data structure that requires random.random()  in their code? Here is an implementation done in Python.
 
This lesson demonstrates how to add a "Contact" page that allow users to send you messages.
 
Serving static files, especially during development, is frequently a pain point. This post discusses the various settings and directory structure and how they interact with each other. 
 
Here are a few observations inspired by conversations the author had during the just concluded PyData conference. You can also find bunch of great tools mentioned in this post.
 
Testing is a very important part of being a developer and one that we definitely shouldn't skip. This lesson covers testing.
 
This article talks about how to compile Python source code on WP8, the changes made on the source code, and gives an example of using Python in a WP8 native app.

In an ideal world, you would just swap CPython with PyPy, everything would run tons of times faster and everyone would live happily ever after. However, we don't live in an ideal world and PyPy does not speed up everything you could potentially run. Chances are that you can run your stuff quite a bit faster, but it requires quite a bit more R&D than just that. This post is an attempt to explain certain steps that might help.
 
 
 
 
 
 
 
Books

Get started with Twisted, the event-driven networking framework written in Python. With this introductory guide, you'll learn the key concepts and design patterns to build event-driven client and server applications for many popular networking protocols. You'll also learn the tools to build new protocols using Twisted's primitives.
 
Create engaging and fun games with Pygame, Python's Game development library. This book is written in a concise and result-oriented format. Leading you through practical recipes, you'll find that this essential reference guide helps you to create visually appealing and thrilling games with a few clicks.


Interesting Projects, Tools and Libraries

django-c10k-demo handles 10 000 concurrent real-time connections to Django. This demo combines several interesting concepts: the C10k problem, the WebSocket protocol, the Django web framework, and Python's upcoming asynchronous IO support.
 
Meniscus is a Python based system for event collection, transit and processing in the large. It's primary use case is for large-scale Cloud logging, but can be used in many other scenarios including usage reporting and API tracing.
 
Simmetrica is a lightweight framework for collecting and aggregating event metrics as timeseries data. It also comes with beautiful customizable dashboard for visualizing metrics with charts.
 
Django antispam module with an invisible fake comment/contact form, cookie based middleware and Akismet verification.
 
A SQLAlchemy dialect which will consider a series of Pandas DataFrame objects as relational database tables, allowing them to be queried and manipulated in all the usual SQLAlchemy ways.
 
Grid-based Game Engine for Python. Making games can be scary if you've never done it before, what with all the graphics stuff that can end up making a simple game into a long and complicated looking piece of code. PyGrid attempts to make game programming easier for new programmers by providing you with a simple grid,
 
distil is an experimental packaging tool built on top of distlib. With distil, you can install, upgrade, uninstall. build, test and package Python distributions, whether pure-Python, or incorporating C libraries and extensions.

A Python app to check ip addresses, usernames and email address for their potential as spam, using the stopforumspam (http://stopforumspam.com) database.
 
Crawling as easy as an API.
 
Debug tool tracking Python memory allocations.
 
Scripts to retrieve videos, upload them to YouTube, and retrieve the automatically-generated transcriptions.
 
A Python to Javascript translator written in Python.


New Releases

 

Python Jobs of the Week

At our core, we use Swift, OpenStack's object storage technology.  We're one of Swift's most active contributors, and OpenStack is one of the world's most important open source projects.  And nearly everything we do is in Python. We're looking for a talented, energetic software developer to help us free the world from expensive, proprietary data storage solutions. 
 
We offer the perfect combination of basic research projects and real business problems, as well as the time, tools and environment to effectively tackle both. You will be exposed to discussions about the latest trends in many areas of life (e.g. social networks, telematics, smart homes), and will explore their impact on the insurance industry. Closer to today's business, we use a variety of modeling tools and algorithms to build sophisticated customer pricing models and gain insight into the causes of insurance claims.
 

Upcoming Events and Webinars

PLOG is the Plone meeting that, like a good espresso, best matches the definition of "italian style". Since 2007, people innovate Plone around-the-clock in a fabulous high end hotel, brainstorming by the pool in its mediterranean garden and sprinting in its meeting rooms. Alone, with your friends or with your family, you will find the accommodation that best suits your needs, and enjoy the renown italian hospitality and warmness. Be prepared to meet Plone community's best developers and sprint with them! You can't miss the oppotunity to be here!
 
This event is for women who have no programming experience or limited programming experience. Men are welcome as guests of women who are attending. Our goal is to provide a comfortable environment in which women can develop their programming skills with confidence. Instructors from PyStar Philly, PhillyPUG, and Monetate will be friendly guides throughout the event.
 
There will be following talks in addition to lightning talks 
  • Context Managers
  • Intro to Celery (Distributed Task Queue) and the Web
  • PANDAS - Python Data Analysis Library
 


Get Your Weekly Dose of Python