|Welcome to issue 56 of Python Weekly. Path is looking for Python Engineers, see the details in the job section.
Articles, Tutorials and Talks
The single quickest way to increase maintainability and decrease 'simple' bugs is to strive to write idiomatic Python. Whereas some dynamic languages embrace the idea there being no 'right' way to solve a problem, the Python community generally appreciates the liberal use of 'Pythonic' solutions to problems. This post gives you a list of Python idioms that programmers coming from other languages may find helpful.
Comtypes is built on top of ctypes and allows access to low level Windows APIs that use COM. This module allows you to write COM-compatible code using only Python. For example, the Dropbox desktop client feature that allows you to upload photos from a camera uses comtypes to access Windows Autoplay.
Machine learning lies at the intersection of IT, mathematics, and natural language and is typically used in big-data applications. This article discusses the Python programming language and its NLTK library, then applies them to a machine learning project.
An introduction to data modeling for scalable web applications using Google App Engine, Python, and the ndb library. This talk covers features of the App Engine datastore and how to use them from ndb, including creating and manipulating entities, performing pre-indexed queries, and enforcing data integrity with transactions. It also introduces features of ndb for implementing structured data, and managing application performance with memcache, asynchronous API calls, and tasklets.
As I mentioned in a previous blog post, I used Sphinx to write my book, Music for Geeks and Nerds
. With Sphinx I could generate HTML, Epub, Mobi (for the Kindle), and two PDF versions (black-and-white and color). Sphinx works quite nicely out-of-the-box for documenting computer programs, but I had to bend it a little to generate output more suitable for a book.
This is the first post in a series dedicated to building websites with Python and more notably Flask. This talks about setting up Flask with a database, using configuration environments, managing assets and deploying the app to production.
This post shows you how easy it can be to combine the two, using pyramid_persona and pyramid_macauth for the heavy lifting, and pyramid_multiauth to tie them both together.
The videos of the talks from this year's DjangoCon are now available.
Interesting Projects, Tools and Libraries
Python Jobs of the Week
Lantz is an automation and instrumentation toolkit with a clean, well-designed and consistent interface. It provides a core of commonly used functionalities for building applications that communicate with scientific instruments allowing rapid application prototyping, development and testing.
A simple webapp skeleton based on Bottle.
The Django Cache Panel is an add-on for the Django Debug Toolbar to track cache usage. It is a fork of the Cache Debug Toolbar. The project has been modified to be more generic, capturing only the functions found in the BaseCache so that it should be compatible with more cache backends.
Check your code for PEP8 requirements
A collection of Python scripts to read, store and process data from popular USB wireless weather stations. The software has been developed to run in a low power, low memory environment such as a router. It can be used to create graphs and web pages showing recent weather readings, typically updated every hour. It can also send data to Weather Underground and post messages to Twitter.
clize is a Python module that consists of a function decorator which Python programmers can use to quickly turn Python functions into usable command-line applications.
A django app that creates api explorer for RESTful APIs.
django-mathfilters is a pip-installable module that provides different simple math filters for Django. Django provides an add template filter, but no corresponding subtracting, multiplying or dividing filters.
Upcoming Events and Webinars
The Beginners Python Workshop is a 2-day free event focused on teaching the basics of programming in the Python language. This will be a judgement-free event, so even if you've never written a line of code in your life or if you've been a professional developer for years who just wants to learn something different we'd love to teach you.
Have you been wanting to learn how to use Django, the foremost web framework for Python? This is your chance! Kevin Grinberg will give an introduction to Django for those who have never used it.
Join us at LA Django this month for an in-depth look at Django project deployment. We will walk through how to deploy your site to several different of hosting platforms, using a variety of different server models, and discuss the pros and cons of each.
We are on the hunt for growth wizards, people who will obsess over our numbers to help Path grow smarter. The Growth Engineer role will be best filled by someone who can build the type of flexible and scalable infrastructure that empowers growth. It’s the kind of engineer who thrives in a space with complete ownership and accountability to move the numbers.