Last month, PyCon US 2014 was held in Montreal, Canada – and with Montreal being just a few hours drive from Dyn’s Manchester, NH headquarters, it was time for an Engineering road trip to the largest Python programming language gathering of the year.
PyCon’s a chance to talk Python with thousands of like-minded developers, learn what’s new, what’s coming, and tips for using the many tools and libraries in the Python ecosystem. Above all else, like any conference, it’s about getting energized over improving the way we develop software on a day to day basis.
While it’s difficult to recap everything that was crammed into the 5 days we were at the conference, we thought we’d share with you some of the key takeaways and sessions we attended this year.
PyCon does a great job of recording video of almost every tutorial and session and makes them available online. You can find the videos from this year’s conference here. Below we’ll list some of our favorites that you can go watch if they sound interesting to you too.
How to get new engineers up to speed quickly to be a productive part of your team. Introduces the concept of ‘team debt.’
An interesting talk about ‘impostor syndrome’ – an issue that causes insecurity, anxiety, and lack of confidence in otherwise skilled programmers, and how to fight back against it.
There will be no new Python 2.x releases. Now is the time to migrate to Python 3.x. Python 3.4 is best version of Python to date, and you should be using it!
A talk on porting your older Python 2.x codebase to Python 3.x, while maintaining backwards compatibility. Tips and common pitfalls focusing on test coverage, unicode, and touches on C modules.
This talk takes a code base handling client requests and adds concurrency a few different ways to demonstrate just how little code it takes to use the new asyncio library in Python 3.4 compared to previous methods.
Designing APIs that are intuitive and elegant takes takes concerted effort and is our duty to internal and external customers.
This talk should be part of the official Django getting started documentation. Go watch it!
While not specific to Python necessarily, this talk gets into some of the internals of memcached that are good to keep in mind if ou’re using this caching solution.
If you’re interesting in using Twisted’s large selection of built in protocol support, but haven’t wanted to fully commit and write your entire program in Twisted, this talk describes ways of blending Twisted asynchronous code with blocking code or other asynchronous code.
If you’re finding yourself sprinkling prints throughout your code to debug a problem because you’re not used to PDB, this talk is a great refresher and shows some common workflows to use PDB for significantly more efficient debugging.
py.test is an alternative testing framework to unittest/nose while maintaining compatibility with your existing tests. It has many helpful features to make writing repeatative tests and identifying problems easy.
This talk covers test driven development with a focus on doing it in a web context with Django.
Machine learning is a great tool for particular problems. This tutorial guides you through the tools and terminology to get started with machine learning in Python.
An example of a problem where machine learning can be used to process data so you don’t have to.
If you haven’t used iPython before, it’s worth checking out both as an interactive Python prompt and iPython notebook as a means of including runable code with your web documentation and presentations.