|Welcome to issue 35 of Python Weekly. Let's get straight to the links this week.
Articles, Tutorials and Talks
If you have made a text adventure in your mind that you really like, and you're tired of dictating it and would rather make it in a computer language, this post is for you! It teaches you a shortcut to make a text adventure, for those who actually know Python.
One of the really useful things in python are the setup scripts. When doing "serious" business, you really should look into them. This post attempts to summarize the important bits using a "Hello World" project and steeping through the process of creating the setup.py file.
Sublime Text 2 is a very powerful text editor which has gained popularity recently. This post is collection of tips how author squeezed more power out of the editor. The tips are written from OSX perspective, but should work fine on Linux and Windows too.
This post explains how you can use dynamic typing to create state machines.
In this article, the author argues that using Django's low-level ORM query methods (filter, order_by etc) directly in a view is (usually) an anti-pattern. Instead, we should be building custom domain-specific query APIs at the level of the model layer, where our business logic belongs. Django doesn't make this particularly easy, but by taking a deep-dive into the internals of the ORM, he shows you some neat ways to accomplish it.
This post shows you how you can use daemon module to create a daemon program.
The Yipit Django team recently finished the process of upgrading to the 6 week old Django 1.4 and they shared the process they went through and some gotchas they found.
Jython 2.7 is scheduled to release by July 15. In this presentation, Frank Wierzbicki talks about the new features for Jython 2.7 and plans for Jython 3.x. He also spends some time talking about techniques for integrating Jython with Java.
In this episode, Greg and Bryan discuss task queues and using Celery to handle delayed jobs.
Interesting Projects, Tools and Libraries
pyqcy is a test framework that supports unique testing model, inspired by the brilliant QuickCheck library for Haskell. Rather than writing fully-fledged test cases, you only need to define logical properties that your code has to satisfy. Based on that, pyqcy will automatically generate test cases - hundreds of them, in fact!
Plumbum is a small yet feature-rich library for shell script-like programs in Python. The motto of the library is "Never write shell scripts again", and thus it attempts to mimic the shell syntax (shell combinators) where it makes sense, while keeping it all pythonic and cross-platform.
Image palette detection in Python modelled after Paul Annesley's color detector in PHP. Colorific determines what the most important colors used in your image are, and if one of them is a background color.
GRequests allows you to use Requests with Gevent to make asyncronous HTTP Requests easily.
Metrology allows you to add instruments to your python code and hook them to external reporting tools like Graphite so as to better understand what's going on in your running python program.
The goal of Pykka is to provide easy to use concurrency abstractions for Python by using the actor model. Pykka provides an actor API with two different implementations: ThreadingActor and GeventActor.
The primary new feature for this release is Django. You can see other changes on a release page.
Upcoming Events and Webinars
Winners of the Ruby & Python hackathon will advance to the grand finale, and the winner of the final tournament will be awarded a demo spot at the NY Tech Meetup! Get the chance to show off at the biggest monthly event in tech.
For this month, we're doing a freeform hacking and drinking (Beer & Code) night. Bring a computer/something to work on and whatever alcohol or food you'd like to consume while you're there.
We'll kick off the evening with shorts talks on fundamental topics--iteration, classes, and basics of object-oriented programming. These talks are ideal for beginning- and intermediate-level Python coders. We'll wrap up the night with more advanced talks and brief demos from two of Monetate's developers.
Expand your Python skills by working with data structures and algorithms in a refreshing context--through an eye-opening exploration of complexity science. Whether you're an intermediate-level Python programmer or a student of computational modeling, you'll delve into examples of complex systems through a series of exercises, case studies, and easy-to-understand explanations.