5 things about Python I learned at PyCon 2016
PyCon is the official and the largest gathering of the Python community. I’ve wanted to attend one for the past three years, but this time the stars aligned. I was able to attend PyCon US 2016 in Portland, OR.
The three days of the conference were packed with keynotes, talks, open spaces and social meetings. It was a phenomenal event, and I intend to come back in the following years.
There were five tracks in the conference - meaning five concurrent talks - and only one of me. So, while I only saw about 20% of the talks, it was still a lot. (Side note: information overload at multi-track conferences is a problem). I enjoyed learning new things, and meeting a lot of new people, there’s a few points that stuck with me. I wanted to share these with you.
You can run C code inside Python
Why is this useful? You can profile your Python code, and swap out the slower Python code with C code. Here’s a StackOverflow page with an example. It’s amazing.
Upgrade to Python 3 already
I’m guilty of this. I refused to upgrade. I don’t know why - maybe because most of the packages are still not migrated to Py3, or because Py2 is the default on most unix machines. But the ecosystem, is moving on.
But the recent announcement that Python 2.7 will be retired in 2020 put the nail in the coffin. Just upgrade to Python 3 already!
Python is moving to Github
I did not know this was happening until Guido put it in his keynote. This is huge. Mercurial is good, but the world (of new developers) is on Git. As Guido joked in his keynote - “everyone seems to be born with a Github account now”. This transition will make it easier for a lot of people to contribute to Python core.
Distributing Python code is hard
I’ve written about this before, but sadly, the tooling for distributing Python libraries and apps is lacking. Or is it? Glyph, in his talk, talks about the different types of developers that want to distribute their code, and what tools they could use. My biggest takeaway from his talk was that (other than libraries/packages), the user should not have to care that the code is Python.
Automating workflow is better than instituting processes
As developers we use a lot of tools to automate our work - build tools, compile tools, testing frameworks etc. But we don’t write enough tools for ourselves. Alex Gaynor gave a good talk on this, and motivated me to look at creating bots to manage more of my development processes. His main argument is that automation is better than processes because automation is scalable and functionally easier to understand.