PyGrunn is the "Python and friends" conference with
a local footprint and global mindset. Firmly rooted
in the open source culture, it aims to provide the
leading lights in advanced internet technologies, a
platform to inform, inspire and impress their peers.

For all the latest info join our community on:

Speakers 2017

Kilian Evang

Viasock: Automagically Serverize Your Scripts

More information
Kilian Evang Kilian Evang

Viasock: Automagically Serverize Your Scripts

The Unix command line is incredibly powerful. You can freely compose programs into pipelines, and Makefiles allow you to orchestrate complex data flows.

Things turn nasty when you have to run one program frequently as part of a pipeline, and that program takes a long time to start up, e.g., because it has to read a large model file. The solution is to turn the program into a server that keeps running and serves multiple requests. But this can be a headache: do I have to add client/server code to every such program? How do I ensure the server is running when my pipeline needs it? How do I ensure the server is restarted when the inputs to the program change? Do I have to change my entire workflow and give up on pipes and files?

Viasock is a program, written in Python, that solves these problems. It acts as a transparent wrapper for your script and turns it into a server, invisibly in the background. You won’t even notice, except that your pipelines are suddenly much faster.

BIO information

Kilian is a researcher in natural language processing, with a keen interest in software engineering. He recently obtained his PhD from the University of Groningen.

Jonathan Barnoud

Looking at molecules using Python

More information
Jonathan Barnoud Jonathan Barnoud

Looking at molecules using Python

To understand our biology, we need to look at what happens at the molecular level. Except that we cannot "look" at such a small scale with a microscope; so we use computer simulations to study the motion of molecules at an atomic or near atomic resolution.

In this presentation, I will demonstrate how Python can be used throughout the workflow of molecular dynamic simulations. We will see how Python can be used to set up simulations, and how we can visualize simulations in a Jupyter Notebook with NGLView ( We will also see the MDAnalysis library ( to write analysis tools, and datreant ( to organize the data.

The use of Python is growing in all fields of academic research. This leads to a very rich ecosystem of libraries that becomes even richer every time a field communicates about its tools outside of its community. With this talk, I aim to illustrate the use of Python in a field that only rarely talks about its tools at Python conferences.

BIO information

I am a researcher at the Unversity of Groningen where I simulate proteins, fat, and alcohol.

Jos van Bakel

Functional Programming with Elm

More information
Jos van Bakel Jos van Bakel

Functional Programming with Elm

For a long time functional programming has been perceived as difficult and academic. Elm has changed that. I'll give a short introduction into Elm and show the superpowers it has.

BIO information

Jos van Bakel is a Software Engineer at Media2B. He has programmed in many different languages over the years and has a special liking for functional programming languages.

Ede Meijer

Deep learning with TensorFlow

More information
Ede Meijer Ede Meijer

Deep learning with TensorFlow

I've been working with TensorFlow a lot lately and would like to show people why it's so cool. TensorFlow has a Python frontend and is popular among Python programmers and researchers. Since the focus of this PyGrunn edition is A.I., I thought I couldn't go wrong with Python + machine learning.

This talk will be a quick introduction to machine learning and deep learning in general, and will show how Google's TensorFlow library can be used to implement a simple neural network.

BIO information

Ede has been working as a software developer professionally for nine years. Last year he founded his own company called Buybrain which is focused on leveraging Deep Learning to help companies improve their purchasing processes. Hobbies include playing keyboard, producing music, climbing and generally nerdy stuff.

Reinout van Rees

Querying Django models: fabulous & fast filtering

More information
Reinout van Rees Reinout van Rees

Querying Django models: fabulous & fast filtering

Django models give you a lot querying possibilities. But..... have you ever read the full documentation on .filter(), .values_list(), .prefetch_related() and .annotate()? I'll show you what you can do. This way you know whether something you want is possible and you can look it up in the documentation. I gave a similar talk on the django admin last year and I saw quite some "aha!" expressions among the listeners. You can do more with django models than you probably know. And you can do it faster.

BIO information

Civil engineer by education, programmer by experience. Maker of summaries: just google for "pygrunn" and "reinout", for instance. Doing lots of python behind-the-scenes automation + working on django projects: all for water management in the Netherlands and abroad.

Maarten Breddels

A billion stars in the Jupyter Notebook

More information
Maarten Breddels Maarten Breddels

A billion stars in the Jupyter Notebook

This talk will show what is possible huge datasets that are becoming more prevalent in the era of big data. I will demonstrate this and the 3d visualization in the Jupyter notebook, the by now almost standard environment of (data) scientists.

With large astronomical catalogues containing more than a billion stars becoming common, we are preparing for methods to visualize and explore these large datasets. Data volumes of this size requires different visualization techniques, since scatter plots become too slow and meaningless due to overplotting. We solve the performance and visualization issue using binned statistics, e.g. histograms, density maps, and volume rendering in 3d. The calculation of statistics on N-dimensional grids is handled by Python library called vaex, which I will introduce. It can process at least a billion samples per second, to produce for instance the mean of a quantity on a regular grid. This statistics can be calculated for any mathematical expression on the data (numpy style) and can be on the full dataset or subsets, specified by queries/selections.

However, to visualize higher dimensional data in the notebook interactively, no proper solution existed. This led to the development of ipyvolume, which can render 3d volumes and up to a million glyphs (scatter plots and quiver) in the Jupyter notebook as a widget. With the browser as a platform, and the release of ipywidgets 6.0, these 3d plots can also be embedded in static html files and renders on nbviewer. This allows for sharing with colleagues, rendering on your tablet (paperless office), outreach, press release material, etc. Full screen stereo rendering allows for a virtual reality experience using your phone and Google Cardboard, a minor investment compared to other VR head mountables. Overlaying 3d quiver plots on a 3d volume rendering allows exploring a 6d (or higher) space.

Vaex and ipyvolume can be used together to explore and visualize any large tabular data set, or separately to calculate statistics, and render 3d plots in the notebook and outside.

BIO information

Maarten Breddels is a Postdoctoral Researcher at the Kapteyn Astronomical Institute, University of Groningen (RUG), Netherlands. He earned a bachelor in Information Technology, and a bachelor, master and PhD in Astronomy. Maarten has experience in low level languages as assembly and C, to higher level languages from C++ to Java and Python. His PhD was on the field of galactic dynamics. He is now working for the Gaia mission, combing astronomy and IT, to enable visualization and exploration of the large dataset this satellite will yield.

Jaap Bresser

Beyond Role Based Authorization, implementing Discretionary Access Control using Postgres and SQLAlchemy

More information
Jaap Bresser Jaap Bresser

Beyond Role Based Authorization, implementing Discretionary Access Control using Postgres and SQLAlchemy

Many (web) applications start out using Role Based Authorization. And for good reason: it is simple and effective. It lacks, however, the flexibility to support more advanced use cases, such as users granting permissions to other users.

A more flexible way of authorization that does support such use cases, is Discretionary Access Control (DAC). The ways in which DAC can be implemented are manifold.

In this talk you will be introduced to different implementations of DAC in well-known software. Design choices that arise when implementing DAC are further examined by means of a practical case at the independent career platform "Profileermij" (a python web application based on Flask, SQLAlchemy with a Postgres data store). Detailed explanation, including code samples, will show you how Postgres features, like indexes on JSON columns, can be utilized to implement Access Control Lists in a simple and efficient manner. While DAC provides a very flexible way of authentication, there is a caveat: this flexibility comes with complexity. In the last part of this talk you will therefore receive some useful advice on how to manage this complexity and -equally important- considerations on when it might be better not to opt for DAC.

This talk will of interest for people who are completely new to the subject, but also for those who are considering implementing or already have implemented DAC, as I could provide them with practical implementation advice as well as some insight in the implications of different design choices. Finally, people with an general interest in authorization and security might also enjoy this talk.

BIO information

I have been interested in programming since high school. After receiving my master in Computer Science I have worked as a software developer for a number of companies. At those companies I have developed software in different programming languages, including C#, Java, JavaScript and of course Python. I have used Python a lot during the last five or so years of my career, mostly to build web applications. I am co-founder and lead developer at the independent career platform "Profileermij" where I currently work. My responsibilities include the development of the Profileermij back-end which is a Python web application built using Flask, SQLAlchemy and PostgreSQL.

Lee Boonstra

Machine Learning APIs for Python Developers

More information
Lee Boonstra Lee Boonstra

Machine Learning APIs for Python Developers

Think your business could make use of machine learning expertise when it comes to powering and improving your business applications, but do you get stuck on building and training your own custom model? During this talk, Lee Boonstra & Dmitriy Novakovskiy like to show you, a bunch of Machine Learning APIs for Python developers, (for image analysis, video analysis, speech to text, translation and sentiment detection) which can be easily integrated in your applications. We will discuss use cases, and dive into live coding demos.

BIO information

Lee Boonstra is a Customer Engineer at Google for the Google Cloud team.

Lee lives in Amsterdam and has experience in both front-end and back-end development. She spends her spare time developing web and mobile apps. Before Google, she worked for Sencha, where she traveled all the world to assist the Sencha sales team with technical knowledge. Further more, she speaks regularly at seminars and conferences and writes blogposts and articles for various magazines and websites. Also, she wrote a book for O'Reilly: Hands-on Sencha Touch 2.


Twitter username: ladysign

Kees Hink

The tale of Oscar and the API

More information
Kees Hink Kees Hink

The tale of Oscar and the API

How we use the Django-Oscar ecommerce platform to sell online tickets for a large park.

This will be a combined introduction / use case talk for most listeners. I shall introduce Oscar, and its possibilities. An important role is for django-oscar-api, which is based on Django RESTApi, and exposes Oscar's content through an API.

I plan to discuss the requirements to Oscar's dashboard and API, which we modified for this customer. The talk may give an interesting view in large organisations' IT challenges, and how Oscar helps meeting these.

BIO information

Formerly a Plone guy at Gw20e (Stad) and Der Freitag (Berlin), now still a Plone guy but also Django, Wagtail, Oscar at Four Digits (Arnhem). @keeshink

Laurens Bosscher

Advanced Django Admin

More information
Laurens Bosscher Laurens Bosscher

Advanced Django Admin

With a bit in depth knowledge the Django Admin is a very powerful tool that allows for far more customization than you would expect from just reading the Django docs.

This talk will give you a high level overview of the admin, explain the ModelAdmin in detail and I will share the problems we faced in using the Django Admin for more advanced use-cases, including the solutions and limitation we found.

BIO information

Software engineer at Target Holding.

Joshua Peper

Find that 🍌 in 10 minutes using Machine Learning

More information
Joshua Peper Joshua Peper

Find that 🍌 in 10 minutes using Machine Learning

A Machine Learning and computer vision in Python introduction. It is absolute beginner level, since the hardest part is making your test set, and not the Python plumbing.

After some background information about how computers can "see", and how they learn, I will give a demo of the application I have made, showing all the steps to take. Using a set of positive and negative pictures and some manual cropping I will guide you through the process of making a test set that you can use to teach OpenCV to recognise certain objects.

It will also cover how you can start your learning cycle, but since it takes hours/days (depending on your machine) we will quickly skip to a pre-learned set I've made. The result of the demo will be a Python application that can find and indicate where the bananas are using your MacBook's webcam.

Last but not least, the code is shared on GitHub. Since OpenCV is pretty hard to compile with the right flags I've included a Dockerfile.

BIO information

CTO App-team at Develop in Python for over a decade now. Founder of Peperzaken, work and live in and around Groningen. Always looking for new technology that can help us get to the next level.

German Gomez-Herrero

Polku: Serverless Stream Processing with Python

More information
German Gomez-Herrero German Gomez-Herrero

Polku: Serverless Stream Processing with Python

Polku is a serverless stream processing framework for the AWS cloud, written entirely in Python. Although it is still under heavy development, it has been battle-tested in a production setting at FindHotel for almost a year now, and we think is already stable enough for others to benefit from it. Polku follows Python's "batteries included" philosophy and lets you focus on high-level data transformations. Deploying, operating and extending Polku is very easy. If you have some basic Python skills and access to the AWS cloud, Polku is all you need to have a devops-free fully operational stream processing system in a matter of minutes or hours rather than weeks.

Polku has advanced features such as partial support for out of order events, stateful transformations, a plug-in system for user-defined transformations written in Python, advanced error handling and monitoring, reprocessing, a configuration-based pipeline definition, and built-in analytics.

More importantly, Polku has a flat learning curve. Any engineer without specialist knowledge should be able to have a fully functional system in a matter of minutes. Defining custom transformations requires only basic Python skills. We believe Polku can be generally useful to organisations like FindHotel that intend to process up to tens of thousands of events per second, but that don't want to spend any more time than absolutely necessary setting up and maintaining streaming infrastructure.

We are going to open source Polku before PyGrunn so if you attend this talk chances are you can have your own Polku up and running in less time that it will take for me to go through my slides.

BIO information

German Gomez-Herrero is Lead Data Scientist at FindHotel. He is responsible for FindHotel's data architecture and data science initiatives. Previously, he was a research scientist at The Netherlands Institute for Neuroscience where he developed analysis pipelines for terabytes of high-dimensional time-series of human brain activity.

German started his academic career as a Signal Processing researcher at Tampere University of Technology in Finland. He holds a Master of Science in Telecommunications Engineering from University of Zaragoza (Spain), and a Master and PhD degree in Information Technology from Tampere University of Technology (Finland).

Marco Vellinga

Creating abstraction between consumer and datastore

More information
Marco Vellinga Marco Vellinga

Creating abstraction between consumer and datastore

When using the full feature set of Django (ORM, Forms, Views), your application business logic is easily fragmented across multiple apps. This was especially true in our case where we had an API that contained duplicate business logic.

At VoIPGRID we started to separate our front-end from the back-end. To make this possible we need to create entry-points for our front-end to talk to the back-end. This could be done by implementing an HTTP API, but we wanted something more generic. We decided to create a 'Data Access Layer' that sits between a HTTP API and a datastore. This layer of abstraction holds all the business logic for accessing data. During my talk I will discuss design choices and questions that needed to be answered. An overview of inner workings and flow is also displayed. There will also be something about versioning in the talk.

We came across several issues that we did not find a ready solution for. Sharing this knowledge could be interesting as well as the open source packages that came out of this.

BIO information

Hi I'm Marco Vellinga a 25 year old programmer at Devhouse Spindle.

At Devhouse Spindle we have two main product which are VoIPGRID and Lily. I'm mainly focused on VoIPGRID which is written in Python and Django. I have a passion for security which is also incorporated in my day to day business.

When I'm not on the job I like to ride my motorbike and do some freelance work. Like every other programmer I have a 'few' unfinished project laying around which also consume time.

Òscar Vilaplana

Let's make a GraphQL API in Python

More information
Òscar Vilaplana Òscar Vilaplana

Let's make a GraphQL API in Python

GraphQL is a query language for APIs, Facebook's powerful, self-documenting alternative to the often self-baked REST interfaces. We'll look at how it works, how and when to use it, and how to write a GraphQL API in Python.

BIO information

I am a NodeJS and Python geek and Software Engineer.

As a child I started with dBase III and built games using C and x86 assembler. Later, I spent many years writing Java for banks, PHP payment processors to sell digital goods and subscriptions, and designing the architecture of distributed systems for event ticketing peak sales, after which I moved to the center of Europe for the challenging fun of NodeJS, CouchDB and mobile event technology. And now I am back in the Netherlands!

When I’m not coding or designing software I am biking around the Netherlands on my recumbent bike, working on a my short story collections, or figuring out how to get music out of my EWI.

I love to give talks and share knowledge.

Cees van Wieringen

Django L10N

More information
Cees van Wieringen Cees van Wieringen

Django L10N

How to use L10N in Django, Translation of static and dynamic content and conversion between units (e.g. meters vs. inches)

BIO information

Cees van Wieringen is a developer at Dacom. He is living in Noordbroek and is the father of 2 kids :-)

Zakarias Nordfäldt-Laws

HitWizard - Predicting the future Hit Songs

More information
Zakarias Nordfäldt-Laws Zakarias Nordfäldt-Laws

HitWizard - Predicting the future Hit Songs

The amount of data we collect these days from people listening to music is limitless and storing it is cheap. By applying Machine Learning and Artificial Intelligence to the data, meaningful relations in this data can be found and utilised.

To show how a large dataset of radio airplay can be put into meaning, HitWizard was developed by Goldmund, Wyldebeast & Wunderliebe in cooperation with RadioRadar. HitWizard uses past radio airplay in order to predict the hits of next week, validating its results against the Spotify top 200 charts. It uses the python toolkit Scikit Learn for preprocessing and classification of the data.

This talk will cover some basics of neural networks and classification, in combination with showing how this can be applied to predicting hit songs.

BIO information

I came from Sweden 3 years ago to study Computer Science at Vrije Universiteit, where I recently graduated. I am now working at Goldmund, Wyldebeast & Wunderliebe, a software development company with offices in Groningen and Amsterdam.

My favorite topics within Computer Science are Artificial Intelligence, Machine Learning and big data. Other than that I also develop websites and mobile applications. In my spare time I try to go paragliding and traveling as much as possible.

Artur Barseghyan

Django performance unchained

More information
Artur Barseghyan Artur Barseghyan

Django performance unchained

Tips to use for optimisation of a Django(CMS) web site (ORM, caching, measuring the results before and after optimisation).

Performance is a recurring subject. Our talk would be based on a real world example, where we had achieved to gain performance boost *1000 ratio.

BIO information

Employed by: Goldmund, Wyldebeast & Wunderliebe


Maarten Brugman

Docker do's and don'ts

More information
Maarten Brugman Maarten Brugman

Docker do's and don'ts

At Dacom Farm Intelligence we use Docker for managing our Python/Django environments. I have come to realise that we are not always using Docker 'the right way'. I will show some examples and share some do's and don'ts. I expect no or little prior knowledge of Docker.

This talk is interesting for people who want to hear some experiences with Docker as a deployment technology.

BIO information

Long-time developer, architect, software enthusiast.

Job Ganzevoort

Django performance unchained

More information
Job Ganzevoort Job Ganzevoort

Django performance unchained

Tips to use for optimisation of a Django(CMS) web site (ORM, caching, measuring the results before and after optimisation).

Performance is a recurring subject. Our talk will be based on a real world example, where we had to achieve a performance gain of a 1000-fold.

BIO information

Developer at Goldmund, Wyldebeast & Wunderliebe. Software engineer with systems background. Devops guy before that was a word.

Dmitriy Novakovskiy

Machine Learning APIs for Python Developers

More information
Dmitriy Novakovskiy Dmitriy Novakovskiy

Machine Learning APIs for Python Developers

Think your business could make use of machine learning expertise when it comes to powering and improving your business applications, but do you get stuck on building and training your own custom model? During this talk, Lee Boonstra & Dmitriy Novakovskiy like to show you, a bunch of Machine Learning APIs for Python developers, (for image analysis, video analysis, speech to text, translation and sentiment detection) which can be easily integrated in your applications. We will discuss use cases, and dive into live coding demos.

BIO information

Dmitriy is a Customer Engineer at Google for the Google Cloud team, focusing on Infrastructure and Big Data projects.

Dmitriy lives in Amsterdam (originally coming from Kharkiv, Ukraine) and has been working on IaaS and SaaS clouds over last 5 years. He enjoys solving business problems with technology and helping people understand each other better (especially when there are geeks and top managers sitting in the same room :)).

In his spare time, Dmitriy reads books about history in XXth century, travels and taps on legendary Amsterdam nightlife.



PyGrunn will take place on May 19th at Groninger Forum, the old Forum Images building, in Groningen.

Groninger Forum is a cultural living and working environment. A place where artists, creative people, entrepreneurs and enthusiasts can meet. A perfect spot for PyGrunn! It is a 3-minute walk from the central train station and in the heart of the city.

Hereplein 73, 9711 GD Groningen
+31 50 312 0433


Schedule 2017

Request For Proposals 2017

This is your chance to share your work with the PyGrunn community! Let us know your proposal for a talk at PyGrunn 2017.

All talks are 30 minutes and should inspire, impress and inform. Try to use the full 30 minutes to inspire your audience and save the discussions for the time between talks.


As the tagline says, PyGrunn is about Python and friends, so talks don't have to be about Python per se. But they should have some connection to Python. The audience is technically quite skilled so adjust your talk accordingly.

Speakers get free access. You don't have to buy a ticket if you speak at PyGrunn!

Please mail any questions you may have to You can send us any remarks you may have using the additional information field in the form.

Share your tips for 2017


PyGrunn is the largest conference in The Netherlands dedicated to Python and Friends. PyGrunn has always been a special gathering for enthousiasts and for those who wish to share their knowledge and passion about Python and related technologies. Its purpose is to provide a pleasant experience to every attendant. We are both excited and proud to present our sponsors, a list of former PyGrunn speakers and (if present) their recorded talk, and a few photographic moments of the latest edition of PyGrunn.

Code of Conduct

At PyGrunn, we don't believe in the need for a formal code of conduct, as there should be no need to codify good behaviour. We expect everyone to behave with common decency and we expect that everyone is treated with equal respect. PyGrunn staff will take any measures necessary to uphold these golden rules of life.



Your company could be here!


Our world is an unimaginable large store of locked up potential. Almost every object contains more data and functionality (‘kunnis‘) than is currently accessible to others. As of yet the overwhelming majority of the kunnis of the world is still untapped. Imagine a world where the kunnis of every object is made easily and safely accessible. Where these objects autonomously manage themselves without the danger of spinning out of control. A world that has built-in prevention mechanisms for pitfalls of the past such as power centralization. In short, a richer, fairer and more comfortable world that will improve our lives.

Media2B is building that world by running contributing software companies.

Hugo, a Fanbase and (email) Campaign Management platform for Organizers of Events and Festivals to measure expectation, experience and involvement of (potential) event visitors.

Paylogic is the fastest growing ticketing company in Europe with a realized growth of 2600% in 5 years. Over 20 million tickets have been sold by events in over 20 countries to visitors from over 150 countries. Paylogic’s mission statement: “To redesign the world of ticketing with creative and reliable ticketing solutions which empower the event organizer in their relation with their visitors.”

Google Cloud provides a set of modular cloud-based services with a host of development tools. For example, hosting and computing, cloud storage, data storage, translations APIs and prediction APIs.



Former Speakers


  • Lars de Ridder - MicroPython: The Pythonic Internet of Things (slides)
  • Andrii Mishkovskyi - Vacation from Python
  • Álex González - Python, Kubernetes and friends
  • Gijs Molenaar - Kliko - Compute Container specification and implementation (slides)
  • Oleg Pidsadnyi - Factory injection: Combining PyTest and Factoryboy
  • Emil Loer - Extending C programs with PyPy-powered code
  • Boaz Leskes - Elasticsearch for SQL users
  • Reinout van Rees - Improve your django admin: big gains with little effort
  • Bram Noordzij & Bob Voorneveld - Django Channels (slides)
  • Jelle Feringa - PythonOCC & industrial robotics for the building industry
  • Ben Meijering - Hello, Machine Learning! (slides)
  • Peter Odding & Bart Kroon - Understanding PyPy and using it in production
  • Hugo Buddelmeijer - The orientation of your DAGs matter!
  • Daan Vielen - How to survive your fellow team members and managers
  • Adam Powell & Denis Dallinga - Recommendation systems @ Catawiki
  • Dmitry Chaplinsky - Python superpowers on civic society's secret service.
  • K Rain Leander - Build a Simple Cloud with TripleO Quickstart
  • Bart Wesselink - Processing large quantities of online payments
  • Jasper Spaans - From code to configuration... and back again
  • Theo Wouters - How to create an ideal development team
  • Martijn Faassen - Morepath under the hood (keynote)
  • Steven Pemberton - The future of programming (keynote)



  • Jeff Knupp - Writing idiomatic Python (keynote)
  • Armin Ronacher - SSL, CAs and keeping your stuff safe
  • Kenneth Reitz - Documentation is King
  • Kilian Evang - Produce: Makefiles without the annoying bits
  • Pawel Lewicki - Sphinx + Robot Framework = documentation as result of functional testing
  • Rodrigo Bernardo Pimentel - A first look at
  • Guido Kollerie - Slice & Dice: Data Analysis using Pandas
  • Erik Romijn - Keeping Django chained: top security concerns for Django websites
  • Valerio Basile - Bad habits in academic code
  • Gijs Molenaar - SQLAlchemy and astronomical data
  • Dmitrijs Milajevs - Python for data scientists
  • Oscar Vilaplana - Scaling your system
  • Panel - Dangers of centralization. Options and solutions
  • Saul Ibarra Corretge - asyncio internals
  • Avi Flax - The impedance mismatch of web microframeworks
  • Denis Bilenko - Gevent, threads & async frameworks
  • Berco Beute - Python friends: CoffeeScript & AngularJS
  • Job Ganzevoort & Douwe van der Meij - From zero to hero - Professional Django setup, deploy and maintain
  • Dirk Zittersteyn - Advanced continuous integration
  • Kenneth Reitz - Growing Open Source Seeds
  • Henk Doornbos - Processes, Data and the rest
  • Greg Kowal - Geoprocessing with python
  • Artur Barseghyan - Modern authentication in Python web applications


  • Holger Krekel - Re-inventing Python packaging & testing (keynote)
  • Daniël & Gideon de Kok - What Python can learn from Haskell
  • Luuk van der Velden - Best practices for the lone coder syndrome
  • Peter Odding - Reliable deployment of large Python applications
  • Oscar Vilaplana - Handling massive traffic with Python
  • Álex González - Python and Scala smoke the peace pipe
  • Berco Beute - REST API design
  • Armin Ronacher - A year with MongoDB
  • Oleg Pidsadnyi - Behaviour driven design with PyTest
  • Remco Wendt - Component architectures in Python
  • Mark Vletter - Lean prototyping
  • Emil Loer - Python raytracing
  • Douwe van der Meij - MVC revisited with Diazo
  • Jan-Jaap Driessen - Fan/theme
  • Gijs Molenaar - LOFAR <3 Python
  • Alessandro Molina - High Performance Web Applications with Python and TurboGears
  • Dmitrijs Milajevs - Real Time discussion retrieval from Twitter
  • Kenneth Reitz - Python for humans


  • Michael Bayer - SQLAlchemy (keynote)
  • Bram Noordzij - Amazon Web Services. The good, bad & ugly
  • Alexandros Kanterakis - PyPedia
  • Oleg Pidsadnyi - Large number of markers on Google Maps
  • Emil Loer - Musical Python
  • Douwe van der Meij - AOP in Python API design
  • Remco Wendt - Profiling
  • Miguel Araujo - Django Uni-forms
  • Henk Doornbos & Berco Beute - Chronic Pythonic
  • Ivor Bosloper - GeoDjango
  • Oscar Vilaplana - Tornado in depth
  • Laurence de Jong - Continuous integration
  • Alexander Solovyov - Go: Python + /theme typing?
  • Niels Hageman - Distributed job scheduling
  • Armin Ronacher - A fresh look at HTTP from Python
  • Reinout van Rees - Optimize & automate your Python life
  • Dan Tofan & Spyros Ioakeimidis - Python tools for making architectural decisions
  • Rick Oost - Generalized traversals


  • Armin Ronacher - The state of Python and the web (keynote)
  • Henk Doorbos - Making large, untested code bases testable
  • Reinout van Rees - Practical project automation
  • Jobert Abma - The ten commandments of Security
  • Berco Beute - Growing up Pythonically
  • Alexander Solovyov - hg and complex development processes
  • Òscar Vilaplana - ØMQ
  • Pieter Noordhuis - Redis in practice
  • Duco Dokter - NLTK: natural language processing with Python
  • Gideon de Kok & Tom de Vries - Mobile Architectures
  • Kim Chee Leong - Buildout
  • Emil Loer - Embeddng Python interpreter in Ruby and vice versa
  • Rix Groenboom - MijnOverheid: performance testing in practice


  • Ivan Sagalaev (keynote)
  • Ivan Metzlar
  • Erik Huisman & Aldert Greydanus
  • Michiel Prins & Jobert Abma
  • Tom de Vries & Gideon de Kok
  • Oscar Vilaplana
  • Oleg Pidsadnyi
  • Merijn Terheggen - Minimal Viable Products
  • Henk Doornbos - Python and hardware programming
  • Berco Beute - A Python's Life?
  • Bart jan Wesselink - Advanced Payment Routing
  • Tim Bakker - Green Parking

Photographic Moments of PyGrunn 2015

Movies 2016

Movies 2015

Movies 2014

Jeff Knupp - Keynote: Writing Idiomatic Python

Armin Ronacher - SSL, CAs and keeping your stuff safe

Avi Flax - The impedance mismatch of Web Microframeworks

Saúl Ibarra Corretgé - asyncio internals

Oscar Vilaplana - Scaling your system

Panel Discussion - Dangers of centralization. Options and solutions.