1. listopad 2016
Mergado at PyCon CZ 2016
PyCon CZ is the largest conference in the Czech Republic designated for all fans of the Python programming language. This year the conference was once again held in the largest Moravian city – Brno. More than two hundred people gathered in Brno to learn, discuss or give talks on one of the most popular and widely-used programming languages Python.
This year the event lasted three days and was scheduled on the end of October starting on Friday 28. During the first two days, more than 30 talks were given in three parallel tracks along with 4 keynotes. Sunday was reserved for workshops and sprints. PyCon CZ took place at the Faculty of Information Technology and was supported by more than two hundred participants as well as several companies along with Mergado. Since Mergado is written in Python and PHP, our whole team of backend developers was very excited to attend the event as well.
The people behind PyCon CZ who organized the whole event, provided technical support, took care of social media or sent pull requests on GitHub are all volunteers. In each room reserved for talks, there were moderators who introduced speakers to the audience, informed participants about changes in schedule, when and where to sing up for lightining talks or register for workshops. Some talks were moved to a different time slot or completely canceled during the event which was announced beforehand. Compared to PyCon CZ 2015, there was more food and beverage, even proper lunch where attendants could choose from vegetarian or meat.
Fortunately, the Moravian cakes and other sweets made it to the PyCon as well, although it was usually gone by lunch time so we had to search and ask at the booths if there were still some cakes left.
Presentations and Keynotes#
This year there were some really good talks from very experienced speakers. Amongst the most popular topics on PyCon CZ 2016 was testing, mocking and web APIs. There were also presetations about embedded Python, MicroPython (including one workshop), data science and analytics tools in Python. As a result of the three parallel tracks format of PyCon, we've seen only about one half of all presentations. Some talks we attended are elaborated a bit more bellow.
User-centered Open Source#
The first keynote talk by Jacqueline Kazil's was about the importance of user-centered design in open source projects. People who choose to use your library are also users, not machines, so the API should be intuitive and easy to use. Jackie made her point by comparing two HTTP libraries, urllib2 from Python's standard library with Python-Requests by Kenneth Reitz which was actually made for humans. You can find the slides from Jackie's keynote here.
Jackie Kazil also mentioned one of her open source projects called Mesa. If you know NetLogo or a similar project for agent-based modeling (ABM), you might be interested in knowing that it's written in Python. You can check the project on GitHub.
GIL: What's the Hassle and Why Should I Care?#
Jacek Kołodziej talk was about mechanism used in Python's threading module called the Global Interpreter Lock (GIL). Probably every experienced Python programmer already heard about GIL, that it may lead to lower performance in threaded application and should be avoided in some cases. In the first part of the presentation, Jacek talked about how GIL evolved over time and mentioned that today it's not such a big problem some programmers still think (at least in most cases). The second part of the talk was more technical, you can check the slides and other materials here.
Peewee: A Simple Yet Powerful ORM#
Viliam Križan's talk was about an ORM framework for Python called Peewee. In Mergado, we are only familiar with SQLAlchemy ORM which we use a lot, however, Peewee seems like a good alternative since it can do joins, unions, window functions, subqueries and all the usual SQL stuff that can't be done in Django's ORM. Also the problem with SQLAlchemy ORM is that sometimes it is very hard to figure out what is going on when your code is broken. When we switched to PyPy we came accross an issues in the weakref module which is used in SQLAlchemy and it was incredibly hard to find the root cause of the problem.
Humanizing Among Coders#
A keynote by Ana Balica. Ana is probably one of the best speakers who gave a talk in PyCon CZ this year, the presentation was really well prepared with incredible attention to details. The talk was about how experienced programmers can often discourage newbies from participating in open source projects by passive aggressive comments on their first pull requests. The point being that good advice from professionals are very expensive, however, they can be very beneficial in the long run. So the next time someone creates a pull request with a very poor test coverage, you should probably try to explain as courteously as possible if there are some issues with the merge.
Other Notable Talks#
Here is a list of a few more very good talks:
- The Great Fork by Benny Daon – This keynote wasn't really about programming and Python but it was still fun to listen to the guy speaking about his 33 years long experience in programming. Benny's slides can be downloaded here.
- Testing of Web Applications Using Python by Magdalena Kabátová – Very entertaining talk from someone who has learned programming relatively recently and with the help of courses like Django Girls and PyLadies. The presentation was about types of software testing, manual and automated testing, continuous integration, importance of integration tests and role of Python in all of this.
- Introduction to Data Wrangling with Python by Katharine Jarmul – Really interesting talk about data processing, how hard it is to prepare and have clean data, how data can be misleading and how to correctly analyze data. Slides from Katharine's are available here.
- Doksit – Generating Documentation from Code by "Nait Aul" – Very good presentation from someone who wrote an API documentation generator Doksit and who couldn't code just a year ago.
- TMOU, Puzzlehunts & Cracking (im)possible Problems with Python by Honza Klusáček – Great talk presented with a lot of enthusiasm on problem solving in Python and an outdoor puzzle hunting game called TMOU.
One of the best part of the whole event were the lightning talks. Lightning talks are very short presentations lasting only several minutes (in the case of PyCon only 5 minutes) which require the speaker to present their material, make their point as fast as possible and without going into much details. All lightning talks were delivered in an hour lasting session by about 10 speakers with the moderator (Petr Viktorin) filling the void space between presentations by, for example, convincing people in the audience to tell an IT joke. If a speaker ran out of time, the moderator took away his or her microphone.
There were some really good and entertaining lightning talks. We've seen how Petr Viktorin created his own game console using only Python and a 3D printer, a Python beginner tried to encourage members of the Python community to help organize free IT courses also for men, and finally Jakub Vysoký with his two companions (@ing_vladimir and @starenka) played ukulele promoting Pyvo.
Apart from presentations and lightning talks, there was also an after party. Unfortunately, we didn't come as we went to Klub cestovatelů instead, there we shared our thoughts on PyCon and we also came with an idea to translate git commands, Python expressions and built-in functions to Czech. During PyCon, there was a Svratka river swim at night which locals in Brno supposedly do. On Sunday morning at 7AM, there was also a 5 km run in Lužánky, although only a handful of people (including one member representing Mergado) were able to get up despite the CEST to CET time-zone transition.
Overall, it was a great conference with a lot of fantastic people. There is also a lot of photos of the event, just check the album shared by Luboš Horák. Big thanks from Mergado team goes to all organizers for their incredible job, to all amazing speakers for some very interesting talks, and to all participants who seemed in high spirits during the whole event. See you next year on PyCon CZ 2017!
P.S. Odlehčená verze článku vyšla i na Mergado.cz blogu v češtině.