I had the pleasure of attending PyCon UK for the first time this year. This is a record of my experience of PyCon UK, where I’ll focus on the things that were the most interesting to me.
The conference was a five-day event with lectures/workshops on the first four days and sprint sessions on the fifth day. I was slightly worried that I wouldn’t quite fit in with a bunch of programmers since I have an engineering background, but I was blown away by how welcoming the python community was. I also have to hand it to the organisers and the volunteers on the nearly flawless execution, and for creating a very inclusive environment.
Language agnostic talks
There were a number of talks that weren’t python specific.
Software’s seven deadly wastes
A valuable talk by Jez Halford, which I’ll be talking about to everyone for quite a while! I don’t think his talk applies just to software companies by the way, even though it says software in the title.
When free is too expensive
This talk by Daniele Procida was an eye-opener for me. We talk about free software as something that’s accessible to everyone, but free software isn’t actually free. Even if you don’t have to buy the software, you still have to spend time and money to learn and make use of free software. Daniele showed us that there are those who can’t even afford the free software. Those of us who can afford it must recognise that free software is, in fact, a luxury.
from future import Truth
Michael Skelly shows us how to spot fake news. This talk feels very relevant to me in the current political climate, especially in the context of big mistakes like Brexit and Trump’s election.
Ryan Kirkbride gave a talk on FoxDot,a Python library for live coding music. He also created some music for us at the end of his presentation. I also found out that you can go to an algorave where people dance to music generated using live coding. Music + Python! How cool is that? I was very impressed.
A brief history of markup languages
I love history! I didn’t get a chance to see Tony Ibbs’s presentation in person, but I thoroughly enjoyed hearing about the evolution of markup languages over the years. Personally, I have only ever used LaTex, reStructuredText and markdown - all of which are amazing tools. I probably favour reStructuredText slightly more than the others.
Python beginner friendly talks
There were some talks specifically targeted at beginners:
The art of testing in Python
Jan Chwiejczak gave a very beginner friendly talk on testing in python. Testing is a really important skill for developers, so I highly recommend this one to beginners.
Efficient data mangling with pandas indexes
Alexander Hendorf gave a nice and easy tutorial on how to make the best use of pandas dataframes. Pandas is my favourite python package, and this video is a must watch for data analysts.
For more experienced Python programmers
In general, I think most of the talks were beginner friendly. That does not mean that you’ll understand every single thing, but it should be easy enough to understand the ‘message’ that each presenter is trying to convey.
Paul Jones showed us how to get started with functional programming using Python. I don’t see a use case for the paradigm in the short term, but it was still interesting. Paul did inspire me to make more use of map, filter and reduce.
Building quart from flask and asyncio
According to Phil Jones, the python world is moving towards asyncio web (micro) frameworks. Flask, a great micro framework, however, is incompatible with asyncio. So Phil made his own library to solve this problem (as you do).
On big computation and python
Russel Winder was so inspiring! A very captivating presenter. This is a must watch. His key message was to avoid depending on Python to solve every problem. Different languages are good at different things. So, if you want to be a pro, you’re going to have to be a polyglot. Sounds like sensible advice to me!
Fun with serverless applications
Lorna Mitchell was another wonderful speaker, and she inspired me to try out serverless applications by making it look so easy!
Understanding natural language with word vectors
I haven’t tried out natural language processing yet, but it’s something that I find quite exciting. I found it particularly interesting that natural language processors could be biased because the content that we feed into them are full of biases themselves! Enjoy this talk by Marco Bonzanini.
Visualising environmental data with python and bokeh
Jupyter notebooks and collaboration
Lazy Sequences working hard
Thomas Guest gave a fascinating talk on lazy sequences, i.e., things that give you values one at a time. Truly elegant solutions to a common problem.
Machine learning libraries you’d wish you’d known about
There are some great recommendations for machine learning tools in this talk by Ian Ozsvald, including ELI5 for understanding machine learning predictions and tpot for optimising machine learning pipelines. I even managed to get a copy of Ian Ozsvald’s book on Functional programming.
At the end of each day, there was an hour-long lightning talk session. This consists of each presenter talking for a maximum of five minutes. Each talk is timed and the presenter is clapped off stage when the timer runs out. Because there is no restriction on the topics, there is inevitably a wide variety of interesting talks.
I enjoyed the lightning talks, but I also loved the idea of using lightning talks as a tool to encourage people within a community to share ideas.
If you hate typing exit on a python shell only for python to tell you off and insist that you to use exit(), then this lightning talk (start at 39:21) is for you:
On a whim, I also did a lightning talk of my own on the subject of intuition. It was my very first time speaking to more than twenty people at once, and it felt incredible. Here is the video (start at 32:14):
List of things people recommended that I check out
The various presenters or other programmers I spoke to during the conference made me some recommendations which I have captured below:
- processing - graphics
- pyparsing - parsing files
- divio - Django platform
- micro:bit - a tiny programmable computer
- behave - behaviour driven development
- docker - software container
- pelican - python based static website generator
- wagtail - content management system
- tdda - test driven data development
- Dijkstra - famous programmer
- Deep Work: Rules for Focused Success in a Distracted World - book to help with focus
- hypothesis - testing library
- CFFI - interact with C code
- edublocks - to make the transition from scratch to python easier for children
- Anvil - drag and drop python web app builder
There were so many other interesting talks that I haven’t mentioned. The PyCon UK YouTube channel is worth checking out if you want to see some more talks about Python.
I also highly recommend attending a PyCon if you haven’t already. It’s a pretty transformational experience. I cannot wait for the next PyCon myself!