My (awesome) experience at PyCon 2018 in Cleveland!

It’s been almost 3 years that I have been programming in Python. I picked up Python as a useful tool to solve some critical problems at work and quickly started appreciating all that it had to offer. I used different mediums to learn python. I sought guidance from other senior python developers. I read blog posts. I took online courses. I did side projects in python and blogged about them. Finally, I watched as many PyCon videos I could find on youtube from previous years.

PyCon always stood out to me as one of the few conferences where you can actually learn a lot from the talks. Many conferences are too high level and are primarily used as an advertising platform by the sponsors. PyCon, on the other hand, offers a great opportunity for python developers from different regions and companies to get together and learn from each other as well as from experts of the industry.

For those who aren’t familiar with PyCon, it’s the most popular python conference which started in 2003 and was first held in Washington D.C. It grew from 200 attendees in its first year to almost ~4000 attendees. It’s held in a different city in US every two years. PyCon 2016 and PyCon 2017 were in Portland and this year’s PyCon (2018) was held in Cleveland, Ohio.

This year was my first year attending PyCon and I was glad that it had a great selection of talks. You can find the entire schedule here. The conference began on May 9th, 2018 and lasted 5 days. Wednesday and Thursday were occupied by training sessions and Friday, Saturday and Sunday were dedicated to all the talks. I wasn’t able to attend the training sessions but I did hear, from many attendees, that they were very useful and can be quite in-depth.

I was in Cleveland from Thursday evening to Sunday afternoon. I registered on Thursday evening and got to see all the companies that had set their booths to attract python developers by giving away a lot of swag. Most companies stuck to cool t-shirts with Microsoft Azure having the best design, in my opinion. Surprisingly, a lot of companies were giving out funky socks. Is that a thing at conferences nowadays? Needless to say, I now own a lot of funky socks!

Spot the Hooli booth!

After socializing with representatives of a lot of companies and collecting all the swag, it was time to attend the actual talks next few days. I attended a lot of talks on a variety of topics so I will try to only highlight the ones that I really liked or ones that stood out to me. Here they are:

Keynote by Dan Callahan (video)

 

In this keynote, Dan discusses the future of python being linked to the web. Earlier, the platform you were on would dictate which language you could use. Now, we have languages that are platform agnostic and modern browsers are a power platform themselves that can run code from different languages. While python is a very versatile language and can be used to build web apps, javascript is still the dominating language for the web. Dan believes python can take over javascript to become the go-to language for web apps in future.

Highlight of the keynote was Dan showing a demo of Web Assembly which allows you to run compiled code in browser. This opens up a lot of possibilities with basically any compiled code being able to run in a browser. In his demo, Dan ran Netscape browser on Windows 3 from his Mozilla Firefox browser!

Thinking outside GIL with AsyncIO and Multiprocessing by John Reese (video)

Is it possible to go to a python conference and not have a talk on GIL? This talk was interesting to me because I knew very little about concurrency in python. The kind of daily work I do at my job doesn’t require me to write multiprocessing code. Through this talk, I learnt about the challenges that python developers face and how existing code can be run faster by making some simple changes. Towards the end of the talk, John announced that he has open-sourced a library called AsyncIO which makes it easier to write asynchronous applications.

I also learnt about async and await keywords that were introduced in python 3.5.

Performance Python: Seven Strategies for Optimizing Your Numerical Code by Jake VanderPlas (video)

I do a lot of data analysis at work in python so this talk was quite relevant. I also like talks that are about improving code because they teach you these nifty tricks that can not only make your code faster but also help you show off a little!

Mention of Cython and Numba grabbed my attention. I have heard of them but haven’t used them.

I won’t list all the seven strategies that Jake covered here so make sure to watch the video.

Adapting from Spark to Dask: what to expect by Irina Truong (video)

Recently, I have started picking up Apache Spark as it’s the go-to tool for data processing of large datasets. However, it can be a little messy if you are not familiar with Java/Scala. If you code in python, you might want to look into Dask which is a very handy library for processing large datasets on a cluster. Irina’s talk gave me a quick overview of Dask and gave me the motivation to start playing around with it at home.

Democratizing Distributed Computing with Dask and JupyterHub by Matthew Rocklin (video)

This was one of my favorite talks at PyCon 2018. Matthew is a great speaker and discussed the usage of Dask, JupyterHub, Kubernetes and xarray. He went over using a library called xarray for working with scientific datasets that might be multi-dimensional such as change in ocean’s surface over time (latitude, longitude and time). He also showed how scientists use JupyterHub/Labs to analyze large datasets.

Inside the Cheeseshop: How Python Packaging Works by Dustin Ingram (video)

This was the most crowded talk that I attended. There was not even any space left to sit on the floor! I went to the talk thinking I would learn how to package my modules but instead I learnt the history of packaging in python. Dustin covered how packaging has evolved since inception and why, contrary to common perception, packaging in python actually works quite well. The talk was hilarious and informative!

There were some other talks that I really wanted to attend but didn’t get a chance. I would like to mention them here as well:

  • Debugging PySpark — Or trying to make sense of a JVM stack trace when you were minding your own bus by Holden Karau (video)
  • Dataclasses: The code generator to end all code generators by Raymond Hettinger (video)
  • Python Performance Investigation by Example by Matt Davis (video)
  • Efficient shared memory data structures by Claudio Freire (video)
  • Effortless Logging: A deep dive into the logging module by Mario Corchero (video)

Take these to assist for order cheap cialis both your written and road test after your Texas drivers ed. Bigger and stiff male organ helps to create a feeling of fullness and satisfaction cheap levitra prescription without the bulk and heart-clogging properties of a triple cheeseburger. Men outnumber women among alcoholics There viagra soft tabs are 3.9 million women alcoholics in the United States which is staggering. Seeds are levitra 20 mg triangular in shape and have wings.
Overall, PyCon 2018 was a great learning experience and provided me with an opportunity to meet some really cool developers from all sorts of companies!

Also, special shoutout to Cleveland for being a great host city. It was my first time there as well and loved it!

As a reminder, you can watch all the PyCon 2018 videos on YouTube. Enjoy!

Leave a comment

Your email address will not be published. Required fields are marked *