List of videos

Andreas Dewes - Code is not text! How graph technologies can help us to understand our code better.

Andreas Dewes - Code is not text! How graph technologies can help us to understand our code better. [EuroPython 2015] [21 July 2015] [Bilbao, Euskadi, Spain] Today, we almost exclusively think of code in software projects as a collection of text files. The tools that we use (version control systems, IDEs, code analyzers) also use text as the primary storage format for code. In fact, the belief that "code is text" is so deeply ingrained in our heads that we never question its validity or even become aware of the fact that there are other ways to look at code. In my talk I will explain why treating code as text is a very bad idea which actively holds back our understanding and creates a range of problems in large software projects. I will then show how we can overcome (some of) these problems by treating and storing code as data, and more specifically as a graph. I will show specific examples of how we can use this approach to improve our understanding of large code bases, increase code quality and automate certain aspects of software development. Finally, I will outline my personal vision of the future of programming, which is a future where we no longer primarily interact with code bases using simple text editors. I will also give some ideas on how we might get to that future. More information about me: - Github: https://github.com/adewes - Twitter: https://twitter.com/japh44 - Website: http://www.andreas-dewes.de/en

Watch
Andreas Klostermann - Brainwaves for Hackers 2.0

Andreas Klostermann - Brainwaves for Hackers 2.0 [EuroPython 2015] [20 July 2015] [Bilbao, Euskadi, Spain] This talk is a sequel to "Brainwaves for Hackers" and illustrates some experiments you can do with a Neurosky Mindwave headset, a bluetooth enabled EEG device. I'll also talk some more about how to integrate the device with the IPython Notebook for real time viewing and how to use the Mindwave with the Raspberry Pi.

Watch
Fabio Pliger - Big data beautiful visualization on the browser with Bokeh

Fabio Pliger - Big data beautiful visualization on the browser with Bokeh [EuroPython 2015] [20 July 2015] [Bilbao, Euskadi, Spain] Bokeh is a Python interactive visualization library for large datasets that natively uses the latest web technologies. Its goal is to provide elegant, concise construction of novel graphics in the style of Protovis/D3, while delivering high-performance interactivity over large data to thin clients. The talk will go through it’s design providing details of the different API layers (bottom to top) concluding with a comprehensive showcase of examples to expose many of the features that make Bokeh so powerful and easy.

Watch
Kay Hayen - The Python Compiler

Kay Hayen - The Python Compiler [EuroPython 2015] [20 July 2015] [Bilbao, Euskadi, Spain] The Python compiler Nuitka has evolved from an absurdly compatible Python to C++ translator into a **statically optimizing Python compiler**. The mere peephole optimization is now accompanied by full function/module level optimization, with more to come, and only increased compatibility. Witness local and module **variable value propagation**, **function in-lining** with suitable code, and graceful degradation with code that uses the full Python power. (This is considered kind of the break through for Nuitka, to be finished for EP.) No compromises need to be made, full language support, all modules work, including extension modules, e.g. PyQt just works. Also new is a plugin framework that allows the user to provide workarounds for the standalone mode (create self contained distributions), do his own type hinting to Nuitka based on e.g. coding conventions, provide his own optimization based on specific knowledge. Ultimately, Nuitka is intended to grow the Python base into fields, where performance is an issue, it will need your help. Scientific Python could largely benefit from future Nuitka. Join us now.

Watch
Ionel Cristian Mărieș - Less known packaging features and tricks

Ionel Cristian Mărieș - Less known packaging features and tricks [EuroPython 2015] [20 July 2015] [Bilbao, Euskadi, Spain] You've been making packages for a while now. Everything works almost fine, however, lots of new features and tools have been developed recently. Some are really obscure. And there's a chance they can save you time and help you avoid _packaging-induced-pain_. I'm willing to bet couple of beers you haven't seen these features and/or tools before. This talk is going to show you: - Patterns and tricks you can use in your `setup.py`. - Obscure pip/setuptools/virtualenv/python features you can use to improve your packaging experience (be it as a user of packages or a package author). - Fledgeling alternative tools. [Slides (HTML with notes)][1] [1]: http://blog.ionelmc.ro/presentations/packaging/

Watch
Gianluca Nieri - Python for IT specialists' tasks automation

Gianluca Nieri - Python for IT specialists' tasks automation [EuroPython 2015] [20 July 2015] [Bilbao, Euskadi, Spain] This talks is about automation and the use of Python scripts to speed up repetitive tasks. It's for developers, sysops, devops, but also any kind of user that want improve his daily routine. I will talk about the use of Python with different tools for different platforms: Keyboard Maestro/Alfred/Hazel on OsX and Synapse/Kupfer/AutoKey on Linux. There will be presented some sample script to give an idea of the potentiality of Python mixed with great tools, and these are some of the topics that I will cover: - text manipulation; - document template management; - clipboard management; - stuff internet activities (url shortening, web scraping, etc.); - list management. - etc.

Watch
Oliver Braun - Multibody Simulation using sympy, scipy and vpython

Oliver Braun - Multibody Simulation using sympy, scipy and vpython [EuroPython 2015] [20 July 2015] [Bilbao, Euskadi, Spain] The talk is about the implementation of multibody simulation in the scientific python world on the way to a stage usefull for engineering and educational purposes. Multibody simulation (MBS) requires two major steps: first the formulation of the specific mechanical problem. Second step is the integration of the resulting equations. For the first step we use the package sympy which is on a very advanced level to perform symbolic calculation and which supports already Lagrange's and Kane's formalism. The extensions we made are such that a complex mechanical setup can be formulated easily with several lines of python code. The functionality is analogous to well known MBS-tools, with that you can assemble bodies, joints, forces and constraints. Also external forces even in a cosimulation model can be added on top. The second step, the integration is done via ode- integrators implemented in scipy. Finally for visual validation the results are visualized with the vpython package and for further analytics with matplotlib. Conclusion: not only highly constrained pendulums with many rods and springs but also driving simulation of passenger cars an be performed with our new extension using python packages off the shelf.

Watch
Daniel Pope - Writing Domain Specific Languages with Python

Daniel Pope - Writing Domain Specific Languages with Python [EuroPython 2015] [24 July 2015] [Bilbao, Euskadi, Spain] Python is an expressive general purpose programming language. Its syntax provides many ways to represent structure and minimise code repetition and boilerplate. But Python not always expressible enough. Perhaps when you've built a complicated enough system with hard-to-express inter-relationships, the code required to construct or operate on it can become complicated, repetitive and unreadable. Or perhaps you have users unfamiliar with Python who need to understand or edit a system. In cases like these, stepping beyond the syntax and semantics of basic Python can be an advantage. Daniel will describe various ways you can implement your own Domain Specific Languages, languages perhaps completely unlike Python that can succinctly describe more complicated Python systems. This talk will cover: * What and why of DSLs * Metaprogramming tricks * Writing simple parsers * The libraries PLY and PyParsing * Building tooling around your new DSLs

Watch
Hynek Schlawack - Beyond grep: Practical Logging and Metrics

Hynek Schlawack - Beyond grep: Practical Logging and Metrics [EuroPython 2015] [21 July 2015] [Bilbao, Euskadi, Spain] Knowing that your application is up and running is great. However in order to make informed decisions about the future, you also need to know in what state your application currently is and how its state is developing over time. This talk combines two topics that are usually discussed separately. However I do believe that they have a lot of overlap and ultimately a similar goal: giving you vital insights about your system in production. We'll have a look at their commonalities, differences, popular tools, and how to apply everything in your own systems while avoiding some common pitfalls. **Slides & Notes**: [https://hynek.me/talks/beyond- grep/](https://hynek.me/talks/beyond-grep/)

Watch