|Welcome to issue 51 of Python Weekly. Let's get straight to the links this week.
Articles, Tutorials and Talks
Fast Non-Standard Data Structures for Python
This article is an overview of external lesser known packages with fast C/C++ based data structures usable from Python.
The goal of this post is to explain what and how to install to ease python development providing sublime things like python autocompletion, lint support, pdb support, etc
This tutorial aims to teach you how to create and publish a simple Facebook app in about 20 minutes using PythonAnywhere. PythonAnywhere is a browser-based programming and web app hosting tool. It makes it really easy to get started with web programming, because you don't need to install any software, or configure a server - we do all that stuff for you. All you need is your web browser!
Jobtastic makes your user-responsive long-running Celery jobs totally awesomer. Celery is the ubiquitous python job queueing tool and jobtastic is a python library that adds useful features to your Celery tasks. Specifically, these are features you probably want if the results of your jobs are expensive or if your users need to wait while they compute their results.
This post explains how a broad analysis of the most popular python repositories on Github was done. You can view
the entire dataset online.
If you are hosting a several website processes on the same server, writing the log rotate entries for all log files manually can be pain. This post shows you how you can use a simple Python script which will auto discover all log files under a certain folder and its subfolders and generate logrotate entries for them.
You can monitor those stats yourself daily, but it would take up up to an hour of your time, if you were to import that data into a spreadsheet by hand. Using a simple Python script to pre-process the data before pasting it into a spreadsheet can save you a lot of time. It is also a good example of how using a few standard Python modules can help you save time processing data.
In the progression of this tutorial, you will be able to learn how dynamic web forms are created, how their field validation schemes work, and how easily they are linked with the database under the hood of Web2Py.
Interesting Projects, Tools and Libraries
SymPy is a Python library for symbolic mathematics. It aims to become a full-featured computer algebra system (CAS) while keeping the code as simple as possible in order to be comprehensible and easily extensible.
autopep8 formats Python code based on the output of the pep8 utility.
nflgame is an API to retrieve and read NFL Game Center JSON data. It can work with real-time data, which can be used for fantasy football.
It's an extensible caching library that refreshes stale cache items asynchronously using a Celery task. The key idea being that it's better to serve a stale item (and populate the cache asynchronously) than block the user in order to populate the cache synchronously.
Valideer is a Python package for simple and extensible data validation and adaptation that tries to "make easy things easy and hard things possible".
website-poller is a simple Python script you are supposed to attach to your crontab. Set it to poll once per hour or so. If/when a service goes down, a notification will pop up.
Djangonauts.org is a free site where you can list your Django-specific users group. If you have a Django users group, have it listed here for free.
Upcoming Events and Webinars
An overview of the Python scientific computing stack, with a focus on working with very large datasets. The talk will introduce the most widely used libraries for scientific computing, Numpy and Scipy, discuss techniques for using them with big data, and touch on some of the machine learning techniques (and possibly libraries) for reducing large data into something manageable.
This time we'll be talking about Objects and Classes. Even if you think this is a bit ahead of your current level of python, you'll gain some understanding. There will be plenty of examples and code to comb through, so bring your laptops and/or pen and paper for notes and working along!